type Coordinate = Array; type DataItem = { coordinate: Coordinate; time?: number; _time?: number; _distance?: number; _passed?: boolean; }; type RoutePlayerOptions = { speed?: number; unitTime?: number; debug?: boolean; autoPlay?: boolean; repeat?: boolean; isCartesian?: boolean; }; type FormatDataOptions = { duration?: number; coordinateKey?: string; timeKey?: string; unitTime?: number; isCartesian?: boolean; }; export declare function formatRouteData(data: Array>, options?: FormatDataOptions): Array | Error; declare const RoutePlayer_base: any; export declare class RoutePlayer extends RoutePlayer_base { options: RoutePlayerOptions; private dirty; private startTime; private endTime; private time; private playing; private playend; tempRotationX: number; tempRotationZ: number; private coordinate; private data; private removed; private id; private index; private dirtyHasLog; private tempPlayingEvent; constructor(data: Array, options?: RoutePlayerOptions); _resetDataPassed(): void; _init(): this; isDirty(): boolean; isRemoved(): boolean; isAvailable(): boolean; add(): this; remove(): this; dispose(): this; isPlaying(): boolean; isPlayend(): boolean; _setCurrentCoordinate(coordinate: Coordinate): this; _calRotationInfo(c1: Coordinate, c2: Coordinate): { rotationZ: number; rotationX: number; }; _loop(t: number): this; _firePlayStart(): { coordinate: Coordinate; rotationZ: number; rotationX: number; time: number; }; _play(): this; reset(): this; cancel(): this; play(): this; pause(): this; finish(): this; replay(): this; getSpeed(): number; setSpeed(speed: number): this; setIndex(index: any): this; setTime(time: any): this; setPercent(percent: number): this; setData(data: Array): this; getItem(index: number): DataItem | null; getCurrentTime(): number; getStartCoordinate(): Coordinate; getStartRotation(): { rotationZ: number; rotationX: number; }; getStartInfo(): { coordinate: Coordinate; rotationX: number; rotationZ: number; }; getData(): DataItem[]; getStartTime(): number; getEndTime(): number; getUnitTime(): number; setUnitTime(ut: number): this; getCurrentCoordinate(): Coordinate; getCoordinates(): Array; getCurrentVertex(): Array; } export {};