Package-level declarations

Types

Link copied to clipboard
data class ConfirmationConfig(val title: String, val message: String, val titleRes: Int, val messageRes: Int, val confirmText: String, val confirmTextRes: Int, val cancelText: String, val cancelTextRes: Int, val isDangerous: Boolean)
Link copied to clipboard
fun interface FieldChangeListener<V>

Listener for specific field changes.

Link copied to clipboard
fun interface SettingChangeListener<T>

Listener for setting changes.

Link copied to clipboard
interface SettingField<T, V>

Represents a single setting field with type-safe get/set operations.

Link copied to clipboard
data class SettingMeta(val title: String, val description: String, val titleRes: Int, val descriptionRes: Int, val category: KClass<*>, val categoryOrder: Int, val type: KClass<*>, val key: String, val dependsOn: String, val min: Float, val max: Float, val step: Float, val options: List<String>, val optionsRes: Int, val actionClass: KClass<out SettingAction>? = null, val validation: ValidationRules? = null, val confirmation: ConfirmationConfig? = null, val noReset: Boolean = false, val confirmReset: String? = null, val platforms: Set<SettingPlatform> = setOf(SettingPlatform.ALL))

Runtime metadata for a setting field.

Link copied to clipboard
class SettingsRepository<T>(dataStore: DataStore<Preferences>, val schema: SettingsSchema<T>)

Repository for reading/writing settings via DataStore.

Link copied to clipboard
interface SettingsSchema<T>

Schema definition for a settings data class. Generated by KSP from annotated properties.

Link copied to clipboard
data class ValidationRules(val range: ClosedFloatingPointRange<Double>? = null, val length: IntRange? = null, val pattern: Regex? = null, val required: Boolean = false, val errorMessage: String = "", val errorMessageRes: Int = 0)