package com.syncflow.domain.model

import java.time.Instant

data class SyncEvent(
    val id: Long = 0,
    val syncPairId: Long,
    val timestamp: Instant,
    val eventType: SyncEventType,
    val filePath: String?,
    val message: String?,
    val bytesTransferred: Long,
)

enum class SyncEventType {
    SYNC_STARTED,
    SYNC_COMPLETED,
    SYNC_FAILED,
    FILE_UPLOADED,
    FILE_DOWNLOADED,
    FILE_DELETED,
    FILE_SKIPPED,
    CONFLICT_DETECTED,
    CONFLICT_RESOLVED,
}
