import { TimeCapsule } from '@donkeyclip/motorcortex-utils'; declare global { interface Window { ResizeObserver: typeof ResizeObserver; } } type PlayingStates = "paused" | "idle" | "transitional" | "armed" | "blocked"; type PlayerOptions = { clip?: any; loop?: boolean; volume?: number; mute?: boolean; autoPlay?: boolean; scaleToFit?: boolean | "cover"; watermark?: boolean; initParams?: any; speed?: number; backgroundColor?: string; millisecond?: number; host?: any; fullscreen?: boolean; onMillisecondChange?: null | ((ms: number) => void); muted?: boolean; loopStartMillisecond?: number; loopEndMillisecond?: number; }; declare function calcClipScale(containerParams: any, platoDims: any, cover?: boolean): { scale: number; position: { top: number; left: number; }; }; declare class Player { clip: any; id: number; options: PlayerOptions; state: PlayingStates; elements: any; settings: any; timeCapsule: TimeCapsule; debounceTimer: undefined | NodeJS.Timeout; resizeObserver: ResizeObserver | null; constructor(options: PlayerOptions); onResize(): void; subscribeToTimer(): void; setNewHost(newHost?: HTMLElement | null | undefined): void; checkIfHostChanged(newHost?: HTMLElement | null | undefined): boolean; initializeOptions(options: PlayerOptions): PlayerOptions; get checkObject(): { watermark: () => void; muted: () => any; volume: () => any; scaleToFit: () => void; }; get checkWhenInitial(): string[]; changeSettings(newOpts: PlayerOptions, initial?: boolean): void; millisecondChange(millisecond: number): void; calculateJourney(millisecond: number): boolean; calcClipScale: typeof calcClipScale; scaleClipHost(): void; cloneClipWithNewDefinition(definition: ReturnType): { result: boolean; clip: any; }; changeInitParams(initParams: ReturnType["props"]["initParams"], host?: HTMLElement | null): { result: boolean; clip: any; } | undefined; play(): void; pause(): void; goToMillisecond(ms: number, { before, after }?: { before?: "play" | "pause"; after?: "play" | "pause"; }): void; findBestMatchingDimensions(hostWidth: number, hostHeight: number): { width: number; height: number; } | null; _observeResize(): void; _updateDefinition(modifyDefinition?: (oldDefinition: ReturnType) => ReturnType): { result: boolean; clip: any; } | undefined; _checkAndUpdateContainerParams(): false | { result: boolean; clip: any; } | undefined; _cleanup(): void; } export { calcClipScale, Player as default }; export type { PlayerOptions };