import Track from "./Track";
/**
 * 历史轨迹控制
 * @example
 * ```ts
 * let tc = new BC.TrackController(viewer)
 * ```
 */
declare class TrackController {
    private _viewer;
    private _cache;
    private _delegete;
    private _activedTrack;
    private _viewMode;
    private _viewOption;
    private _stopTime;
    private _state;
    /**
     * @param viewer 3D 场景
     */
    constructor(viewer: any);
    get delegate(): Cesium.EntityCollection;
    get state(): string;
    /**
     * @private
     */
    private _onPostRender;
    /**
     * 添加轨迹
     * @param track 轨迹
     * @returns {TrackController}
     */
    addTrack(track: Track): TrackController;
    /**
     * 添加轨迹数组
     * @param tracks 轨迹数组
     * @returns {TrackController}
     */
    addTracks(tracks: Track[]): TrackController;
    /**
     * 根据业务唯一标识获取轨迹
     * @param id 业务唯一标识
     * @returns 轨迹
     */
    getTrack(id: string): Track | undefined;
    /**
     * 移除轨迹
     * @param track 轨迹
     * @returns {TrackController}
     */
    removeTrack(track: Track): TrackController;
    /**
     * 获取所有轨迹
     * @returns 轨迹数组
     */
    getTracks(): Track[];
    /**
     * 播放
     * @returns {TrackController}
     */
    play(): TrackController;
    /**
     * 暂停
     */
    pause(): this;
    /**
     * 继续播放
     */
    restore(): this;
    /**
     * 跟踪某一条路径
     * @param track 路径
     * @param viewOption 配置信息
     * @returns {TrackController}
     * @example
     * ```ts
     * // 属性参数（可选）
     * {
     *   "mode": null, // 视角模式：BC.TrackViewMode
     *   "pitch": 0, // 俯仰角，第一视角有效
     *   "range": 1000 // 距离
     * }
     * ```
     */
    viewTrack(track: Track, viewOption?: any): TrackController;
    /**
     * 取消跟踪某一条轨迹
     * @param track 轨迹
     * @returns {TrackController}
     */
    releaseTrack(track: Track): TrackController;
    /**
     * 移除所有路径
     * @returns {TrackController}
     */
    clear(): TrackController;
}
export default TrackController;
