import { TileLayer, type TileLayerOptions, type TileTemplate } from "../layers/tile-layer.js"; import type { Orihon } from "../map.js"; export type TrafficState = "idle" | "loading" | "ready" | "error"; export interface TrafficLayerOptions extends TileLayerOptions { dataTime?: Date | string | number | null; refreshIntervalMs?: number; } export interface TrafficEventMap { datatimechange: { dataTime: Date | null; }; refresh: { dataTime: Date | null; }; statechange: { state: TrafficState; dataTime: Date | null; }; } export declare class TrafficLayer extends TileLayer { #private; state: TrafficState; dataTime: Date | null; refreshIntervalMs: number; _refreshTimer: ReturnType | null; _pendingTiles: number; constructor(provider: TileTemplate, options?: TrafficLayerOptions); onAdd(map: Orihon): void; onRemove(): void; setDataTime(value: Date | string | number | null): this; getDataTime(): Date | null; getState(): TrafficState; refresh(dataTime?: Date | string | number | null): this; } export declare function trafficLayer(provider: TileTemplate, options?: TrafficLayerOptions): TrafficLayer; //# sourceMappingURL=traffic-layer.d.ts.map