import { LitElement } from 'lit';
import { DateItemEvent } from '../event-item/event-item.js';
import '../event-item/event-item.js';
export type { DateItemEvent };
/**
 * `<obc-event-list>` – A component that displays a list of events with a date header.
 *
 * @summary Shows a formatted date header (day, month, date, year) followed by a list of event items.
 * Reuses the `obc-event-item` component for each event entry.
 *
 * **Synonyms:** event list, schedule, agenda, appointment list, calendar events
 *
 * ### Example
 * ```html
 * <obc-event-list
 *   .date=${new Date(2025, 0, 11)}
 *   .events=${[
 *     {title: "Meeting", startTime: "07:00", endTime: "10:00", hasTime: true, hasEndTime: true, hasArrow: true},
 *     {title: "Review", startTime: "14:00", endTime: "15:00", hasTime: true, hasEndTime: true, hasArrow: true}
 *   ]}
 * ></obc-event-list>
 * ```
 *
 * ### Slots
 * This component does not use slots. All content is provided via properties.
 *
 * ### Events
 * This component does not emit custom events directly. Events from child `obc-event-item` components
 * bubble up and can be listened to on this component (e.g., `event-click`).
 *
 * ### Properties
 * - `date` (Date | number): The date to display in the header. Accepts Date object or timestamp.
 * - `events` (DateItemEvent[]): Array of events to display in the list.
 * - `showHeader` (boolean): Whether to show the date header. Default: `true`.
 * - `locale` (string): Locale for date formatting (e.g., 'en-US', 'nb-NO'). Uses browser default if not specified.
 *
 * @slot - No slots. All content is provided via properties.
 */
export declare class ObcEventList extends LitElement {
    /**
     * Whether to hide the date header.
     * @default false
     */
    showHeader: boolean;
    /**
     * The date to display in the header. The component will extract
     * day name, month name, date number, and year from this Date object.
     * Also accepts a timestamp (number) for compatibility with Storybook.
     */
    date: Date | number;
    /**
     * Array of events to display in the list.
     */
    events: DateItemEvent[];
    /**
     * Locale for date formatting. Uses browser default if not specified.
     * @example 'en-US', 'nb-NO', 'de-DE'
     */
    locale?: string;
    /**
     * Get the normalized Date object (handles both Date and timestamp).
     */
    private get _normalizedDate();
    /**
     * Get the formatted day name (e.g., "Saturday").
     */
    private get _dayName();
    /**
     * Get the formatted month name (e.g., "January").
     */
    private get _monthName();
    /**
     * Get the date number (e.g., "11").
     */
    private get _dateNumber();
    /**
     * Get the year (e.g., "2025").
     */
    private get _year();
    render(): import('lit-html').TemplateResult<1>;
    static styles: import('lit').CSSResult;
}
declare global {
    interface HTMLElementTagNameMap {
        'obc-event-list': ObcEventList;
    }
}
//# sourceMappingURL=event-list.d.ts.map