import type { LancamentoItem, SelectOption, } from "@/components/lancamentos/types"; export type CalendarEventType = "lancamento" | "boleto" | "cartao"; export type CalendarEvent = | { id: string; type: "lancamento"; date: string; lancamento: LancamentoItem; } | { id: string; type: "boleto"; date: string; lancamento: LancamentoItem; } | { id: string; type: "cartao"; date: string; card: { id: string; name: string; dueDay: string; closingDay: string; brand: string | null; status: string; logo: string | null; totalDue: number | null; }; }; export type CalendarPeriod = { period: string; monthName: string; year: number; }; export type CalendarDay = { date: string; label: string; isCurrentMonth: boolean; isToday: boolean; events: CalendarEvent[]; }; export type CalendarFormOptions = { pagadorOptions: SelectOption[]; splitPagadorOptions: SelectOption[]; defaultPagadorId: string | null; contaOptions: SelectOption[]; cartaoOptions: SelectOption[]; categoriaOptions: SelectOption[]; estabelecimentos: string[]; }; export type CalendarData = { events: CalendarEvent[]; formOptions: CalendarFormOptions; };