import { Coordinate } from '../../coordinate'; import { EventsKey } from '../../events'; import BaseEvent from '../../events/Event'; import Feature, { FeatureLike } from '../../Feature'; import Geometry from '../../geom/Geometry'; import VectorTileLayer from '../../layer/VectorTile'; import { Pixel } from '../../pixel'; import { FrameState } from '../../PluggableMap'; import Projection from '../../proj/Projection'; import BuilderGroup from '../../render/canvas/BuilderGroup'; import Style from '../../style/Style'; import Tile from '../../Tile'; import VectorRenderTile from '../../VectorRenderTile'; import { HitMatch } from '../Map'; import { FeatureCallback } from '../vector'; import CanvasTileLayerRenderer from './TileLayer'; export default class CanvasVectorTileLayerRenderer extends CanvasTileLayerRenderer { constructor(layer: VectorTileLayer); forEachFeatureAtCoordinate( coordinate: Coordinate, frameState: FrameState, hitTolerance: number, callback: FeatureCallback, matches: HitMatch[], ): T | undefined; /** * Asynchronous layer level hit detection. */ getFeatures(pixel: Pixel): Promise[]>; getTile(z: number, x: number, y: number, frameState: FrameState): Tile; /** * Perform action necessary to get the layer rendered after new fonts have loaded */ handleFontsChanged(): void; isDrawableTile(tile: VectorRenderTile): boolean; /** * Determine whether render should be called. */ prepareFrame(frameState: FrameState): boolean; prepareTile( tile: VectorRenderTile, pixelRatio: number, projection: Projection, queue: boolean, ): boolean | undefined; /** * Render declutter items for this layer */ renderDeclutter(frameState: FrameState): void; renderFeature( feature: FeatureLike, squaredTolerance: number, styles: Style | Style[], builderGroup: BuilderGroup, opt_declutterBuilderGroup?: BuilderGroup, ): boolean; /** * Render the layer. */ renderFrame(frameState: FrameState, target: HTMLElement): HTMLElement; renderQueuedTileImages_(hifi: boolean, frameState: FrameState): void; on(type: string | string[], listener: (p0: any) => any): EventsKey | EventsKey[]; once(type: string | string[], listener: (p0: any) => any): EventsKey | EventsKey[]; un(type: string | string[], listener: (p0: any) => any): void; on(type: 'change', listener: (evt: BaseEvent) => void): EventsKey; once(type: 'change', listener: (evt: BaseEvent) => void): EventsKey; un(type: 'change', listener: (evt: BaseEvent) => void): void; on(type: 'error', listener: (evt: BaseEvent) => void): EventsKey; once(type: 'error', listener: (evt: BaseEvent) => void): EventsKey; un(type: 'error', listener: (evt: BaseEvent) => void): void; }