import { ToolbarItemType } from "../../ImageViewer/Models/IImageViewer"; import { PaintToolsPluginOptions } from "./PaintToolsPluginOptions"; import { ImageViewerPluginBase, PluginType } from "../../ImageViewer/Core/ImageViewerPluginBase"; import { PropertiesPanel } from "./Objects/Properties/PropertiesPanel"; import { IPaintDesignerContext, IPaintObjectDesigner } from "../../ImageViewer/Layers"; export declare function mirrorImage(ctx: CanvasRenderingContext2D, image: HTMLImageElement, x?: number, y?: number, horizontal?: boolean, vertical?: boolean): void; /** * Paint tools toolbar button key. **/ /** * PaintToolsPlugin class. * Adds the "Paint tools", "Effects" and "Text and Objects" buttons. * @example * ```javascript * * * * ``` * @param {any} options **/ export declare class PaintToolsPlugin extends ImageViewerPluginBase { /** * Unique plugin identifier. **/ readonly id: PluginType; /** * Plugin options **/ options: PaintToolsPluginOptions; private _propertiesPanelHandle; propertiesPanel: PropertiesPanel; paintDesignerContext: IPaintDesignerContext; /** * PaintToolsPlugin constructor. * @param options plugin options */ constructor(options?: PaintToolsPluginOptions); /** * Returns the layout for the effects tools toolbar. * * If the value is `true`, `undefined`, or `null`, a default layout is returned. * If the value is `false`, an empty layout is returned. * Otherwise, the provided custom layout is used. * * @returns {ToolbarItemType[]} An array of toolbar item types. */ get effectsToolbarLayout(): ToolbarItemType[]; /** * Returns the layout for the paint tools toolbar. * * If the value is `true`, `undefined`, or `null`, a default layout is returned. * If the value is `false`, an empty layout is returned. * Otherwise, the provided custom layout is used. * * @returns {ToolbarItemType[]} An array of toolbar item types. */ get paintToolbarLayout(): ToolbarItemType[]; /** * Returns the layout for the text tools toolbar. * * If the value is `true`, `undefined`, or `null`, a default layout is returned. * If the value is `false`, an empty layout is returned. * Otherwise, the provided custom layout is used. * * @deprecated This option is deprecated in favor of the "Text and Objects" toolbar, * where text tools are available directly. * @see objectsToolbarLayout * * @returns {ToolbarItemType[]} An array of toolbar item types. */ get textToolbarLayout(): ToolbarItemType[]; /** * Returns the layout for the objects toolbar. * * If the value is `true`, `undefined`, or `null`, a default layout is returned. * If the value is `false`, an empty layout is returned. * Otherwise, the provided custom layout is used. * * @returns {ToolbarItemType[]} An array of toolbar item types. */ get objectsToolbarLayout(): ToolbarItemType[]; setPaintDesignerContext(paintDesignerContext: IPaintDesignerContext): void; initialize(viewer: any): void; dispose(): void; private _selectedObjectDesigner; closeObjectProperties(): void; openObjectProperties(): void; hideObjectProperties(objectDesigner: IPaintObjectDesigner): Promise; showObjectProperties(objectDesigner: IPaintObjectDesigner): Promise; private _onBeforeOpen; private _ensureOptions; }