import { IFontResourceRequest } from "../../../src/resources"; import { InstanceProvider } from "../../instance-provider/instance-provider"; import { Bounds } from "../../math/primitives"; 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 { RectangleInstance } from "../rectangle"; import { GlyphInstance } from "./glyph-instance"; import { IGlyphLayerOptions } from "./glyph-layer"; import { LabelInstance } from "./label-instance"; import { TextAreaInstance, TextAreaLabel } from "./text-area-instance"; export interface ITextAreaLayerProps extends ILayerProps { animateLabel?: { anchor?: IAutoEasingMethod; color?: IAutoEasingMethod; offset?: IAutoEasingMethod; origin?: IAutoEasingMethod; }; animateBorder?: { color?: IAutoEasingMethod; location?: IAutoEasingMethod; }; customGlyphLayer?: ILayerConstructionClass>; resourceKey?: string; whiteSpaceKerning?: number; } export declare class TextAreaLayer> extends Layer { static defaultProps: ITextAreaLayerProps; providers: { labels: InstanceProvider; rectangles: InstanceProvider; }; propertyIds: { [key: string]: number; } | undefined; fullUpdate: boolean; areaToLabels: Map; areaToLines: Map; areaWaitingOnLabel: Map>; areaTokerningRequest: Map; areaToWords: Map; getInstancePickingMethods(): { boundsAccessor: (TextArea: T) => Bounds<{}>; hitTest: (TextArea: T, point: [number, number], view: IProjection) => boolean; }; childLayers(): LayerInitializer[]; draw(): void; private insert; handleLabelReady: (label: LabelInstance) => void; hideLabels(instance: T): void; initShader(): null; clear(instance: T): void; seperateLabel(instance: TextAreaInstance, label: LabelInstance, glyphToHeight: Map, word: string, index: number, currentX: number, currentY: number, spaceWidth: number, glyphWidths: number[]): [number, number]; updateLabelLineWrap(instance: T): void; updateLabelLineHeight(instance: T): void; updateTextAreaSize(instance: T): void; updateBorderWidth(instance: T): void; updateBorder(instance: T): void; updateLetterSpacing(instance: T): void; layoutBorder(instance: T): void; layoutLabels(instance: T): void; layout(instance: T): void; updateKerning(instance: T): boolean; managesInstance(instance: T): boolean; showLabels(instance: T): void; updateLabels(instance: T): void; updateLabelColors(instance: T): void; updateLabelFontSizes(instance: T): void; updateLabelOrigins(instance: T): void; willUpdateProps(newProps: U): void; }