import type { TimelineItem, TimelineGroup, TimelineMarker, TimelineScale, TimelineScales } from '../types/timeline.ts';
declare const __VLS_export: <GTimelineItem extends TimelineItem, GTimelineGroup extends TimelineGroup, GTimelineMarker extends TimelineMarker>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
    props: import("vue").PublicProps & __VLS_PrettifyLocal<{
        groups?: GTimelineGroup[];
        items?: GTimelineItem[];
        markers?: GTimelineMarker[];
        viewportMin?: number;
        viewportMax?: number;
        minViewportDuration?: number;
        maxViewportDuration?: number;
        initialViewportStart?: number;
        initialViewportEnd?: number;
        renderTimestampLabel?: (timestamp: number, scale: {
            unit: string;
            step: number;
        }) => string;
        fixedLabels?: boolean;
        minTimestampWidth?: number;
        maxZoomSpeed?: number;
        activeItems?: TimelineItem["id"][];
        maxOffsetOutsideViewport?: number;
        scales?: TimelineScales[];
        weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
    } & {
        onPointermove?: (value: {
            time: number;
            event: PointerEvent;
            item: GTimelineItem | GTimelineMarker | null;
        }) => any;
        onPointerdown?: (value: {
            time: number;
            event: PointerEvent;
            item: GTimelineItem | GTimelineMarker | null;
        }) => any;
        onPointerup?: (value: {
            time: number;
            event: PointerEvent;
            item: GTimelineItem | GTimelineMarker | null;
        }) => any;
        onWheel?: (value: WheelEvent) => any;
        onClick?: (value: {
            time: number;
            event: MouseEvent;
            item: GTimelineItem | GTimelineMarker | null;
        }) => any;
        onContextmenu?: (value: {
            time: number;
            event: MouseEvent;
            item: GTimelineItem | GTimelineMarker | null;
        }) => any;
        onTouchmove?: (value: {
            time: number;
            event: TouchEvent;
        }) => any;
        onTouchstart?: (value: {
            time: number;
            event: TouchEvent;
        }) => any;
        onTouchend?: (value: {
            event: TouchEvent;
        }) => any;
        onMousemoveTimeline?: (value: {
            time: number;
            event: MouseEvent;
        }) => any;
        onMouseleaveTimeline?: (value: {
            event: MouseEvent;
        }) => any;
        onChangeViewport?: (value: {
            start: number;
            end: number;
        }) => any;
        onChangeScale?: (value: TimelineScale) => any;
    }> & (typeof globalThis extends {
        __VLS_PROPS_FALLBACK: infer P;
    } ? P : {});
    expose: (exposed: import("vue").ShallowUnwrapRef<{
        setViewport: (start?: number, end?: number) => void;
        onWheel: (e: WheelEvent) => void;
        clearCache: () => void;
    }>) => void;
    attrs: any;
    slots: {
        [x: `items-${string}`]: (props: {
            group: GTimelineGroup;
            itemsInViewport: GTimelineItem[];
            viewportStart: number;
            viewportEnd: number;
        }) => any;
    } & {
        'timestamps-before'?: (props: {
            scale: {
                unit: any;
                step: any;
            };
        }) => any;
    } & {
        timestamp?: (props: {
            timestamp: number;
            scale: {
                unit: any;
                step: any;
            };
        }) => any;
    } & {
        'timestamps-after'?: (props: {
            scale: {
                unit: any;
                step: any;
            };
        }) => any;
    } & {
        marker?: (props: {
            item: GTimelineMarker;
        }) => any;
    } & {
        marker?: (props: {
            item: GTimelineItem;
        }) => any;
    } & {
        'group-label'?: (props: {
            group: GTimelineGroup;
        }) => any;
    } & {
        item?: (props: {
            item: GTimelineItem;
        }) => any;
    } & {
        marker?: (props: {
            item: GTimelineMarker;
        }) => any;
    } & {
        marker?: (props: {
            item: GTimelineMarker;
        }) => any;
    };
    emit: {
        (e: "pointermove", value: {
            time: number;
            event: PointerEvent;
            item: GTimelineItem | GTimelineMarker | null;
        }): void;
        (e: "pointerdown", value: {
            time: number;
            event: PointerEvent;
            item: GTimelineItem | GTimelineMarker | null;
        }): void;
        (e: "pointerup", value: {
            time: number;
            event: PointerEvent;
            item: GTimelineItem | GTimelineMarker | null;
        }): void;
        (e: "wheel", value: WheelEvent): void;
        (e: "click", value: {
            time: number;
            event: MouseEvent;
            item: GTimelineItem | GTimelineMarker | null;
        }): void;
        (e: "contextmenu", value: {
            time: number;
            event: MouseEvent;
            item: GTimelineItem | GTimelineMarker | null;
        }): void;
        (e: "touchmove", value: {
            time: number;
            event: TouchEvent;
        }): void;
        (e: "touchstart", value: {
            time: number;
            event: TouchEvent;
        }): void;
        (e: "touchend", value: {
            event: TouchEvent;
        }): void;
        (e: "mousemoveTimeline", value: {
            time: number;
            event: MouseEvent;
        }): void;
        (e: "mouseleaveTimeline", value: {
            event: MouseEvent;
        }): void;
        (e: "changeViewport", value: {
            start: number;
            end: number;
        }): void;
        (e: "changeScale", value: TimelineScale): void;
    };
}>) => import("vue").VNode & {
    __ctx?: Awaited<typeof __VLS_setup>;
};
declare const _default: typeof __VLS_export;
export default _default;
type __VLS_PrettifyLocal<T> = (T extends any ? {
    [K in keyof T]: T[K];
} : {
    [K in keyof T as K]: T[K];
}) & {};
