package com.peachpasswords.vault import kotlinx.serialization.Serializable @Serializable data class VaultSettings( val accentColor: String = "peach", val breachMonitoring: Boolean = true, val autoLockMinutes: Int? = null, val reduceMotion: Boolean = false, /** Browser-parity text size: "small" | "medium" | "large". */ val textSize: String = "medium", /** Large-screen layout sizing: "compact" | "auto" | "large". */ val uiScale: String = "auto", /** U1 site icons in lists; off (default) keeps the cleaner initials-only look. */ val faviconsEnabled: Boolean = false, val biometricsEnabled: Boolean = false, val trashRetentionDays: Int? = null, val sortOrder: String = "url-first", /** Keyboard chips and suggestion rows show only "Peach" until tapped. */ val hideAutofillPreviews: Boolean = false, // Default-on for new installs (Peach handles passkey sign-in / creation through // the Android Credential Manager). Existing users are not migrated: the stored // setting is preserved on load, so anyone who explicitly disabled it stays // off until they re-enable it in Settings → Passkeys. val passkeyProviderEnabled: Boolean = true, val duressConfigured: Boolean = false, val shortcuts: Map = emptyMap(), val allowScreenshots: Boolean = false, ) @Serializable data class ShortcutBinding( val key: String, val ctrl: Boolean = false, val meta: Boolean = false, val shift: Boolean = false, val alt: Boolean = false, )