import { Dayjs } from 'dayjs'; import { Event, IEvent } from './Event'; import { Ressource, IRessource } from './Ressource'; import { LitElement, TemplateResult } from 'lit-element'; interface TimelineOptions { ressources?: Array; items?: Array; } interface TimelineContent { ressources: Array; items: Array; } declare type dayjsUnit = "y" | "M" | "d" | "h" | "m" | 's'; declare type UnitLegend = { [k in dayjsUnit]: string; }; declare class Timeline extends LitElement { static styles: import("lit-element").CSSResult; private rows; private items; private selectedList; private ressourceWidth; private _start; get start(): string; set start(value: string); private _end; get end(): string; set end(value: string); private _slotDuration; get slotDuration(): number; set slotDuration(value: number); private _legendSpan; get legendSpan(): number; set legendSpan(value: number); private rowHeight; private slotWidth; private rowsTitle; private legendUnitFormat; private legend; constructor(options?: TimelineOptions); set defaultBackground(value: string); get defaultBackground(): string; setLegendUnitFormatAll(legend: Partial): void; setLegendUnitFormat(unit: dayjsUnit, format: string): void; addRessources(list: Array): (IRessource | undefined)[]; addRessource(ressource: IRessource): IRessource | undefined; removeRessourceById(id: string): TimelineContent; _removeRessourceById(id: string, depth?: number): TimelineContent; getRessources(): Array; getRessourceFromId(id: string): Ressource | null; setRowsTitle(title: string): void; addTimeSlots(list: Array): (Event | null)[]; addTimeSlot(slot: IEvent): Event | null; removeTimeslotById(id: string): Array; updateTimeslotById(id: string): Event | null; private updateTimeslotPosition; getTimeSlots(): Array; updateLegend(): void; _handleResizeX(e: CustomEvent): void; _grabHeader(e: MouseEvent): void; _getEventResizerHandler(slot: Event, direction: "end" | "start"): (evt: MouseEvent) => void; _getEventGrabHandler(slot: Event, editable: boolean, ressourceEditable: boolean, callback: (e: MouseEvent, wasModified: boolean) => void): (evt: MouseEvent) => void; private _clearSelectedItems; private _clearSelectionhandler; private _getEventClickHandler; firstUpdated(): void; renderTimeslot(slot: Event): TemplateResult; _getCollapseRessourceHandler(item: Ressource): (e: MouseEvent) => void; _onRessourceDragStart(item: Ressource): (event: DragEvent) => void; _onRessourceDragEnter(event: DragEvent): void; _onRessourceDragLeave(event: DragEvent): void; _onRessourceDrop(event: DragEvent): void; renderRessource(item: Ressource): TemplateResult; renderGridRow(columns: Array, rowId?: number, height?: number): TemplateResult; render(): TemplateResult; } export default Timeline;