import Foundation enum HabitFrequency: String, Codable { case daily, weekly, monthly var displayName: String { switch self { case .daily: return "Ежедневно" case .weekly: return "Еженедельно" case .monthly: return "Ежемесячно" } } } struct Habit: Codable, Identifiable { let id: Int var name: String var description: String? var icon: String? var color: String? var frequency: HabitFrequency var reminderTime: String? var targetDays: Int? var currentStreak: Int? var longestStreak: Int? var completedToday: Bool? var totalCompleted: Int? enum CodingKeys: String, CodingKey { case id, name, description, icon, color, frequency case reminderTime = "reminder_time" case targetDays = "target_days" case currentStreak = "current_streak" case longestStreak = "longest_streak" case completedToday = "completed_today" case totalCompleted = "total_completed" } } struct HabitLogRequest: Codable { var completedAt: String? var note: String? enum CodingKeys: String, CodingKey { case completedAt = "completed_at" case note } }