import { LitElement } from 'lit'; export interface OkSchedulerResource { /** Identificador único del recurso (clave para asociar eventos). */ id: string; /** Texto visible del recurso (columna izquierda sticky). */ label: string; /** URL opcional de avatar/imagen mostrada antes del label. */ avatar?: string; } export interface OkSchedulerEvent { /** Identificador único del evento. */ id: string; /** Id del recurso (fila) al que pertenece el evento. */ resourceId: string; /** Hora de inicio: ISO (`...THH:MM`) o `HH:MM`. Se usa solo la hora local. */ start: string; /** Hora de fin: ISO o `HH:MM`. */ end: string; /** Texto visible dentro del bloque. */ title: string; /** Color del bloque; cadena CSS (hex, var, etc.). Por defecto, el primario. */ color?: string; } export interface OkSchedulerLabels { /** aria-label del botón "día anterior". */ prevDay: string; /** aria-label del botón "día siguiente". */ nextDay: string; /** Texto cuando no hay recursos que mostrar. */ empty: string; } export declare class OkScheduler extends LitElement { static styles: import("lit").CSSResult; /** Recursos (filas); el consumidor los pasa por propiedad. */ resources: OkSchedulerResource[]; /** Eventos/turnos; el consumidor los pasa por propiedad. */ events: OkSchedulerEvent[]; /** Día mostrado (`YYYY-MM-DD`). Vacío = hoy. */ date: string; /** Primera hora visible de la franja (0–23). */ startHour: number; /** Última hora visible de la franja (1–24). */ endHour: number; /** Minutos por celda/columna. (attr `slot-minutes`: `slot` colisiona con HTMLElement.slot.) */ slotMin: number; /** Locale BCP-47 para formatear la fecha del día (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 dayKey; private parseDay; private minutesOf; private fmtTime; private get rangeMinutes(); private get slotCount(); private navDay; private clickEvent; private clickSlot; private dayLabel; private initials; private renderTimelineHead; private renderLane; private renderRow; render(): unknown; } declare global { interface HTMLElementTagNameMap { 'ok-scheduler': OkScheduler; } }