package com.atridad.ascently.data.sync

import kotlinx.coroutines.flow.StateFlow

interface SyncProvider {
    val type: SyncProviderType
    val isConfigured: StateFlow<Boolean>
    val isConnected: StateFlow<Boolean>

    suspend fun sync()
    suspend fun testConnection()
    fun disconnect()
}

enum class SyncProviderType {
    NONE,
    SERVER,
}
