package com.photobooth.app

data class ColorPreset(
    val id: String,
    var name: String,
    val themeCategory: String,
    val isEditable: Boolean,
    val basic: BasicAdjustments,
    val advanced: AdvancedEffects,
    val toneCurve: ToneCurveEmulation,
    val grain: FilmGrain
)

data class BasicAdjustments(
    var brightness: Float,   // -1.0f đến 1.0f
    var contrast: Float,     // -1.0f đến 1.0f
    var saturation: Float,   // -1.0f đến 1.0f
    var vibrance: Float,     // -1.0f đến 1.0f -> Bảo vệ màu da người
    var temperature: Float,  // -1.0f đến 1.0f -> Ấm (vàng) / Lạnh (xanh)
    var tint: Float          // -1.0f đến 1.0f -> Xanh lá / Hồng dâu
)

data class AdvancedEffects(
    var clarity: Float,       // -1.0f đến 1.0f -> Giảm để làm mịn thơ mộng
    var dehaze: Float,        // -1.0f đến 1.0f -> Giảm để tạo lớp sương hoài cổ
    var vignetteAmount: Float //  0.0f đến 1.0f -> Bo tối 4 góc ảnh
)

data class ToneCurveEmulation(
    var fadedBlackLevel: Float, // Nâng đáy màu đen thành xám sờn
    var shadowsTintR: Float,
    var shadowsTintG: Float,
    var shadowsTintB: Float     // Ám màu xanh rêu/xanh biển vào vùng tối
)

data class FilmGrain(
    var grainAmount: Float,  // Độ đậm hạt nhiễu
    var grainSize: Float     // Kích thước hạt nhiễu phim
)
