import { InstanceProvider } from "../../instance-provider/instance-provider"; import { Bounds } from "../../math/primitives"; import { IFontResourceRequest } from "../../resources"; import { KernedLayout } from "../../resources/text/font-map"; import { ILayerProps, Layer } from "../../surface/layer"; import { ILayerConstructionClass, LayerInitializer } from "../../surface/surface"; import { IProjection } from "../../types"; import { IAutoEasingMethod } from "../../util/auto-easing-method"; import { Vec } from "../../util/vector"; import { ScaleMode } from "../types"; import { GlyphInstance } from "./glyph-instance"; import { IGlyphLayerOptions } from "./glyph-layer"; import { LabelInstance } from "./label-instance"; export interface ILabelLayerProps extends ILayerProps { animate?: { anchor?: IAutoEasingMethod; color?: IAutoEasingMethod; offset?: IAutoEasingMethod; origin?: IAutoEasingMethod; }; customGlyphLayer?: ILayerConstructionClass>; resourceKey?: string; scaleMode?: ScaleMode; truncation?: string; } export declare class LabelLayer> extends Layer { static defaultProps: ILabelLayerProps; glyphProvider: InstanceProvider; propertyIds: { [key: string]: number; } | undefined; fullUpdate: boolean; labelToGlyphs: Map; labelToKerningRequest: Map; labelWaitingOnGlyph: Map>; truncationKerningRequest?: IFontResourceRequest; truncationWidth: number; getInstancePickingMethods(): { boundsAccessor: (label: T) => Bounds<{}>; hitTest: (label: T, point: [number, number], view: IProjection) => boolean; }; childLayers(): LayerInitializer[]; draw(): void; private insert; handleGlyphReady: (glyph: GlyphInstance) => void; hideGlyphs(instance: T): void; initShader(): null; invalidateRequest(instance: T): void; layoutGlyphs(instance: T): void; managesInstance(instance: T): boolean; showGlyphs(instance: T): void; updateAnchor(instance: T): void; updateGlyphs(instance: T, layout: KernedLayout): void; updateGlyphColors(instance: T): void; updateGlyphOrigins(instance: T): void; updateGlyphMaxScales(instance: T): void; updateKerning(instance: T): boolean; willUpdateProps(newProps: U): void; }