commonMain.s2.sourcing.dsl.event.EventRepository.kt Maven / Gradle / Ivy
package s2.sourcing.dsl.event
import kotlinx.coroutines.flow.Flow
import s2.dsl.automate.Evt
import s2.dsl.automate.model.WithS2Id
interface EventRepository
where EVENT : Evt, EVENT : WithS2Id {
suspend fun load(id: ID): Flow
suspend fun loadAll(): Flow
suspend fun persist(event: EVENT): EVENT
suspend fun persistFlow(event: Flow): Flow
suspend fun createTable()
}