All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.in.shabinder.soundbound.utils.DevicePreferences.kt Maven / Gradle / Ivy

package `in`.shabinder.soundbound.utils

import androidx.compose.runtime.Immutable
import app.cash.zipline.ZiplineService
import `in`.shabinder.soundbound.models.AudioFormat
import `in`.shabinder.soundbound.models.AudioQuality


@Immutable
interface DevicePreferences : ZiplineService {
    val preferredAudioQuality: AudioQuality

    val preferredAudioFormat: AudioFormat

    fun getSystemTimeMillis(): Long

    fun getTimeZoneId(): String

    fun getStringOrNull(key: String): String?
    fun putString(key: String, value: String)


    fun getIntOrNull(key: String): Int?
    fun putInt(key: String, value: Int)

    fun getBooleanOrNull(key: String): Boolean?
    fun putBoolean(key: String, value: Boolean)

    fun getLongOrNull(key: String): Long?
    fun putLong(key: String, value: Long)

    fun getFloatOrNull(key: String): Float?
    fun putFloat(key: String, value: Float)

    fun remove(key: String)

    fun clear()
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy