import RealtimeEngine from '../../common/utils/RealtimeEngine'; import Layer from './Layer'; import type { CanvasSourceSpecification, LayerSpecification } from 'maplibre-gl'; import type { RealtimeEngineOptions } from '../../common/utils/RealtimeEngine'; import type { AnyCanvas, AnyMapGlMap } from '../../types'; import type { LayerOptions } from './Layer'; export type RealtimeLayerOptions = LayerOptions & RealtimeEngineOptions; /** * A Maplibre layer able to display data from the [geOps Realtime API](https://developer.geops.io/apis/realtime/). * * @example * import { Map } from 'maplibre-gl'; * import { RealtimeLayer } from 'mobility-toolbox-js/maplibre'; * * // Define the map * const map = new Map({ ... }); * * // Define your layer map * const layer = new RealtimeLayer({ * apiKey: "yourApiKey" * // url: "wss://api.geops.io/tracker-ws/v1/", * }); * * // Add the layer to your map * * map.on('load', () => { * map.addLayer(layer); * }); * * * @see RealtimeAPI * @see