/*! * Copyright (c) Microsoft Corporation. * Licensed under the MIT License. */ import { Core } from "./main.js"; interface IIconsJSON { key: string; items: IIconJSON[]; } interface IIconJSON { key: string; u0: number; v0: number; u1: number; v1: number; } export declare class Icon { key: string; width: number; height: number; distances: Uint8ClampedArray; gradientsX: Uint8ClampedArray; gradientsY: Uint8ClampedArray; pixels: Uint8ClampedArray; u0: number; v0: number; u1: number; v1: number; toJSON(): IIconJSON; } export interface IIconsVisual { isInitialized: boolean; icons: Icons; update(): void; } export declare class IconsVisual implements IIconsVisual { isInitialized: boolean; icons: Icons; update(): void; constructor(icons: Icons); } export declare class Icons { private _core; private _keys; private _hasChanged; private _rasterizer; private _previousSize; key: string; items: { [key: string]: Icon; }; get atlas(): IconsAtlas; get count(): number; hasChangedCallback: () => void; constructor(core: Core, rasterizer: IconsRasterizer); add(key: string, imgData: ImageData): void; update(): void; toJSON(): IIconsJSON; } export interface IIconsRasterizerOptions { key: string; atlas: IconsAtlas; border: number; edgeValue: number; maxDistance: number; } export declare class IconsAtlas { imageData: ImageData; x: number; top: Uint16Array; constructor(width: number, height: number); } export declare class IconsRasterizer { private _core; private _border; private _iconRasterizer; private _maxDistance; private _edgeValue; private _atlas; private _icons; private _key; get icons(): Icons; get atlas(): IconsAtlas; constructor(core: Core, options: IIconsRasterizerOptions); draw(key: string, imgData: ImageData): void; } interface IIconRasterizerOptions { border: number; edgeValue: number; maxDistance: number; } export declare class IconRasterizer { private _core; private _border; private _maxDistance; private _edgeValue; private _gridOuter; private _gridInner; private _f; private _z; private _v; constructor(core: Core, options: IIconRasterizerOptions); draw(key: string, imgData0: ImageData): Icon; private _edt; private _edt1d; } export {};