import type { BaseProps } from '@astryxdesign/core';
import type { Instant, ScheduleCategory, ScheduleEventSource, SchedulePlugin, ScheduleView, ScheduleViewOptions } from './types';
export interface ScheduleProps<Options extends ScheduleViewOptions = ScheduleViewOptions> extends BaseProps<HTMLDivElement> {
    /** View object returned by a `createSchedule*View()` factory. */
    view: ScheduleView<Options>;
    /** Static calendar events or an async loader called with the active Instant range. */
    events: ScheduleEventSource;
    /** Category definitions used to style and label events by their `category` value. */
    categories?: ReadonlyArray<ScheduleCategory>;
    /** Focused Instant used to choose the currently rendered range. */
    date: Instant;
    /** Instant highlighted as the user's focus/current date. Defaults to mount time. */
    focusDate?: Instant;
    /** Called by pagination plugins when the rendered range should change. */
    onChangeDate?: (date: Instant) => void;
    /** IANA timezone ID used for date math and localized rendering. Defaults to browser timezone. */
    timezoneID?: string;
    /** Header/rendering plugins. Defaults to pagination controls. */
    plugins?: ReadonlyArray<SchedulePlugin>;
    /** Heading level for sub-headings (day labels, weekday headers) within the schedule. @default 3 */
    headingLevel?: 2 | 3 | 4 | 5 | 6;
}
export declare function Schedule({ view, events, categories, date, focusDate: focusDateProp, onChangeDate, timezoneID: timezoneIDProp, plugins, headingLevel, xstyle, className, style, ...rest }: ScheduleProps): import("react").JSX.Element;
//# sourceMappingURL=Schedule.d.ts.map