import View from '@arcgis/core/views/View';
import { IToggleTrafficInfoParams } from '../../types';
export default class TrafficFlow {
    private view;
    private mapConfig;
    private objectsLayer;
    private webSocket;
    /** 交通对象最大坚持帧数（连续多少个数据包没有数据就删除） */
    private readonly maxMissCount;
    /** 记录每个交通对象连续多少个数据包没收到数据 */
    private objectMissCount;
    /** 是否显示车牌号码 */
    private showVehiclePlate;
    /** 是否显示地面车辆 */
    private showGroundVehicle;
    /** 是否显示高架车辆 */
    private showElevatedVehicle;
    private showLog;
    constructor(view: View);
    /**
     * 开始显示交通流数据
     * @param url
     * @param options
     */
    connectTrafficFlow(url: string, options?: any): void;
    /**
     * 停止显示交通流数据
     */
    disconnectTrafficFlow(): void;
    /**
     * 切换交通信息可见性
     * @param params
     */
    toggleTrafficInfo(params: IToggleTrafficInfoParams): void;
    /**
     * 切换交通对象可见性
     * @param params
     */
    toggleTrafficObject(params: IToggleTrafficInfoParams): void;
    private focusVehNo;
    private handleTrafficFlowData;
    /**
     * 新增交通对象
     * @param objects
     */
    private addTrafficObjects;
    private getVehicleVisibility;
    /**
     * 更新交通对象
     * @param objects
     */
    private updateTrafficObjects;
    /**
     * 基于轨迹数据创建cim符号，显示车辆图标和车牌号码
     * @param vehTrack
     * @returns
     */
    private createCIMSymbol;
    /**
     * 删除交通对象
     * @param ids
     */
    private deleteTrafficObjects;
    private buildVehicleTrackData;
    /**
     * 根据车身颜色属性返回对应的车辆图标
     * @param carColor
     * @returns
     */
    private getCarPic;
    /**
     * 根据号牌颜色属性获取填充色和背景色
     * @param plateColor
     * @returns
     */
    private getPlateFontColor;
}
