import Component from '@glimmer/component'; import MapCacheService from '@prysmex-engineering/ember-mapbox-gl/services/map-cache'; import type Owner from '@ember/owner'; import type { Layer, LayerSpecification, Map as MapboxMap } from 'mapbox-gl'; /** * Adds a data source to the map. * The API matches the mapbox [source docs](https://www.mapbox.com/mapbox-gl-js/api/#sources). * * Example: * ```hbs * * * * * * ``` * * @class MapboxGLSource * * A hash to pass on to the mapbox [layer](https://www.mapbox.com/mapbox-gl-js/style-spec/#layers). * @argument {Object} layer * * The ID of an existing layer to insert the new layer before. * If this argument is omitted, the layer will be appended to the end of the layers array. * @argument {string} before */ export interface MapboxGlLayerArgs { map: MapboxMap; layer?: Partial; before?: string; cacheKey?: string; cache?: boolean; _sourceId?: string; onDidInsert?: (layer: Layer) => void; onDidUpdate?: (layer: Layer) => void; } export interface MapboxGlLayerSignature { Args: MapboxGlLayerArgs; Blocks: { default: [ { id: string; } ]; }; } export default class MapboxGlLayerComponent extends Component { mapCache: MapCacheService; layerId: string; cacheKey?: string; cache?: boolean; map?: MapboxMap; get _sourceId(): string | undefined; get _layerType(): Layer['type']; get _envConfig(): Pick; get _layout(): LayerSpecification['layout']; get _paint(): LayerSpecification['paint']; get _layer(): Layer; constructor(owner: Owner, args: MapboxGlLayerArgs); updateLayer: void; willDestroy(): void; removeOrHideLayer(): void; } //# sourceMappingURL=layer.d.ts.map