package com.diegocayo.organizame.presentation.features.main.tasks.list

import com.diegocayo.organizame.domain.model.Task

data class TasksListState(
    val tasks: List<Task> = emptyList(),
    val pendingTasks: List<Task> = emptyList(),
    val completedTasks: List<Task> = emptyList(),
    val selectedDate: Long = System.currentTimeMillis(),
    val isLoading: Boolean = false,
    val error: String? = null
)

sealed class TasksListEvent {
    data object LoadTasks : TasksListEvent()
    data class UpdateTaskStatus(val taskId: Long, val completed: Boolean) : TasksListEvent()
    data class DeleteTask(val task: Task) : TasksListEvent()
    data object NavigateToCreateTask : TasksListEvent()
    data class ChangeDate(val date: Long) : TasksListEvent()
    data object NextDay : TasksListEvent()
    data object PreviousDay : TasksListEvent()
} 