import { TemporalMixinInterface } from "../../../elements/EFTemporal.js"; import { FocusContext } from "../../focusContext.js"; import { TrimChangeDetail } from "../TrimHandles.js"; import * as _$lit from "lit"; import { LitElement, PropertyValueMap, ReactiveController, TemplateResult, nothing } from "lit"; //#region src/gui/timeline/tracks/TrackItem.d.ts declare class ElementTrackController implements ReactiveController { private host; private track; private lastDuration; private durationCheckFrame?; constructor(host: LitElement, track: TrackItem); remove(): void; hostDisconnected(): void; hostConnected(): void; private checkDuration; hostUpdated(): void; } declare const TrackItem_base: typeof LitElement; declare class TrackItem extends TrackItem_base { static styles: _$lit.CSSResult[]; focusContext?: FocusContext; focusedElement?: HTMLElement | null; get isFocused(): boolean; /** * Get element type for styling and icons */ protected getElementType(): "video" | "audio" | "image" | "text" | "timegroup" | "captions" | "unknown"; /** * Get color for element type using shared theme utility */ protected getElementTypeColor(): string; /** * @deprecated Use getElementTypeColor() instead */ protected getElementTypeColorOld(): string; /** * Get icon for element type */ protected getElementIcon(): TemplateResult | typeof nothing; /** * Format duration for display */ protected formatDuration(ms: number): string; /** * Get tooltip text with element info */ protected getTooltipText(): string; element: TemporalMixinInterface & LitElement; pixelsPerMs: number; enableTrim: boolean; hideSelectors?: string[]; showSelectors?: string[]; get gutterStyles(): { position: string; left: string; width: string; }; get trimPortionStyles(): { width: string; left: string; }; protected handleTrimChange(e: CustomEvent): void; contents(): TemplateResult | typeof nothing; animations(): never[]; renderChildren(): Array | typeof nothing> | typeof nothing; render(): TemplateResult<1>; protected trackController?: ElementTrackController; update(changedProperties: PropertyValueMap | Map): void; } declare global { interface HTMLElementTagNameMap { "ef-track-item": TrackItem; } } //#endregion export { TrackItem }; //# sourceMappingURL=TrackItem.d.ts.map