import { LitElement } from 'lit'; export interface OkCalendarEvent { /** Identificador único del evento. */ id: string; /** Fecha del evento en `YYYY-MM-DD` o ISO (se normaliza al día local). */ date: string; /** Texto visible del evento (chip / fila de agenda). */ title: string; /** Color del chip; cadena CSS (hex, var, etc.). Por defecto, el primario. */ color?: string; } export type OkCalendarView = 'month' | 'agenda'; export interface OkCalendarLabels { /** Etiqueta del botón de vista Mes. */ month: string; /** Etiqueta del botón de vista Agenda. */ agenda: string; /** Indicador de eventos extra por día; `{n}` = cantidad. */ more: string; /** Texto cuando la agenda no tiene próximos eventos. */ agendaEmpty: string; /** aria-label del botón "mes anterior". */ prevMonth: string; /** aria-label del botón "mes siguiente". */ nextMonth: string; } export declare class OkCalendar extends LitElement { static styles: import("lit").CSSResult; /** Eventos a mostrar; el consumidor los pasa por propiedad. */ events: OkCalendarEvent[]; /** Día seleccionado (`YYYY-MM-DD`). */ value: string; /** Vista actual: 'month' | 'agenda'. */ view: OkCalendarView; /** Máximo de chips de evento por celda antes de mostrar "+X más". */ maxPerDay: number; /** Locale BCP-47 para formatear meses/días/fechas (Intl). Default 'en-US'. */ locale: string; /** Textos humanos sobreescribibles (i18n). Default INGLÉS. */ labels: Partial; /** Textos efectivos: defaults INGLÉS mezclados con los del consumidor. */ private get t(); private cursor; private seeded; private weekdays; private dayKey; private parseDate; private indexEvents; private navMonth; private setView; private selectDay; private clickEvent; private monthLabel; private buildDays; private renderMonth; private renderAgenda; render(): unknown; } declare global { interface HTMLElementTagNameMap { 'ok-calendar': OkCalendar; } }