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