import{type PropertyValues,type TemplateResult}from'lit';import{LyraElement}from'../../../internal/lyra-element.js';import{type LyraSearchChangeDetail,type LyraTextViewerTargetEventMap}from'../../../internal/text-viewer-target.js';import type{AnchorResultDetail,TextSelectDetail}from'../document-viewer/anchors.js';export type ParsedCalendarTimeKind='date'|'date-time';export interface ParsedCalendarEvent{uid:string;summary:string;start:Date|null;end:Date|null; /** Preserves RFC 5545 DATE versus DATE-TIME semantics through the parse model. */ startKind:ParsedCalendarTimeKind|null; /** Preserves the end value's type; DATE ends are exclusive when formatted. */ endKind:ParsedCalendarTimeKind|null;location:string;description:string;}export interface LyraCalendarViewerEventMap extends LyraTextViewerTargetEventMap{'lr-render-error':CustomEvent<{error:unknown;}>;'lr-search-change':CustomEvent;'lr-anchor-result':CustomEvent;'lr-text-select':CustomEvent;}declare class LyraCalendarViewerBase extends LyraElement{}declare const LyraCalendarViewer_base:Omit &(new(...args:ConstructorParameters)=>InstanceType &import("../../../lyra.js").LyraTextViewerTarget&{renderAnchorLiveRegion():unknown;}); /** * Parses `.ics` calendars with the optional `ical.js` peer and renders each * VEVENT as plain text, preserving summaries, DATE/DATE-TIME semantics, locations, and details. * Early all-day years retain UTC calendar semantics and the exclusive DTEND display boundary. * At most 250 events and 2 MiB of rendered event text are retained so search, selection and * text-quote anchors continue to cover the complete accepted document without eager 10k-row DOM. * The inherited fragment path performs an exact DOM `id` lookup, but generated event markup has * no fragment ids; such a jump reports `found: false`. Use a text-quote anchor for event content. * * @customElement lr-calendar-viewer * @event lr-render-error - Fired when fetching or parsing the calendar fails. * @event {CustomEvent} lr-search-change - Fired whenever search state * changes. `matchCountExact=false` makes the retained count a lower bound. Bubbling, composed, * and non-cancelable. * @event {CustomEvent} lr-anchor-result - Fired after an `anchor` assignment or * `scrollToAnchor()` call is applied. `detail: { found: boolean }`. Bubbling, composed, and * non-cancelable. * @event {CustomEvent} lr-text-select - Fired after a selection ends inside the * rendered calendar. `detail: { text: string; anchor: LyraAnchor | null; rects: DOMRect[] }`. * Bubbling, composed, and non-cancelable. * @csspart base - The root container with explicit `aria-busy` loading state. * @csspart body - The scrollable calendar body. * @csspart event-list - The event list. * @csspart event - One calendar event. * @csspart event-summary - The event title. * @csspart event-time - The formatted event time. * @csspart event-location - The event location. * @csspart event-description - The event description. * @csspart error - The error region. * @csspart spinner - The visible tokenized loading treatment and ordinary text label. * @cssprop [--lr-calendar-viewer-max-height=none] - Maximum block size of `[part="body"]` before it * scrolls internally. The `maxHeight` property sets this token inline on `[part="base"]`. * @status stable * @since 4.0.0 */ export declare class LyraCalendarViewer extends LyraCalendarViewer_base{static styles:import("lit").CSSResultGroup[]; /** URL to fetch and parse as an iCalendar document. */ src:string; /** Display name associated with the calendar. It names `[part='base']` when host `aria-label` is * absent, before the localized fallback. A non-empty host label remains on the host; an * explicitly empty one is preserved on the shadow owner. */ name:string; /** CSS length that caps the scrollable event body. */ /** A CSS `max-height`; invalid values are ignored. */ maxHeight:string; /** Shared text search and anchor-target API for the rendered calendar body. */ search(query:string):Promise;searchNext():Promise;searchPrevious():Promise;clearSearch():void;private fetchState;private generation;private lastLoadSrc;private readonly announcements;connectedCallback():void;disconnectedCallback():void;adoptedCallback():void;protected updated(changed:PropertyValues):void;private load;private parse;private renderEvent;private renderBody;render():TemplateResult;}declare global{interface HTMLElementTagNameMap{'lr-calendar-viewer':LyraCalendarViewer;}}export{};