import { IPaintCommand, IPaintExecuteOptions, IPaintObjectDesigner, IUndoableCommand, PaintCommandName, PaintObjectPropertyName, PointerTriggerType } from "../../../ImageViewer/Layers/types"; import { PointLocation } from "../../../ImageViewer/Models/SelectionBoxTypes"; import { PaintToolbar } from "./../PaintToolbar"; export declare const DEFAULT_PENCIL_SIZE = 1; export declare const DEFAULT_BRUSH_SIZE = 12; export declare const DEFAULT_BRUSH_HARDNESS = 70; export declare const DEFAULT_ERASER_SIZE = 12; export declare const DEFAULT_ERASER_HARDNESS = 70; export declare const DEFAULT_CLONE_STAMP_SIZE = 60; export declare const DEFAULT_CLONE_STAMP_HARDNESS = 70; export declare const DEFAULT_FONT_SIZE = 14; export declare const DEFAULT_FONT_NAME = "Verdana"; export declare const DEFAULT_PENCIL_OPACITY = 100; export declare const DEFAULT_BRUSH_OPACITY = 100; export declare const DEFAULT_ERASER_OPACITY = 100; export declare const DEFAULT_CLONE_STAMP_OPACITY = 100; export declare const DEFAULT_FONT_OPACITY = 100; /** * Paint command execution options. **/ export declare type PaintExecuteOptions = { context: PaintToolbar; } & IPaintExecuteOptions; export declare class PaintCommandBase implements IPaintCommand { name: PaintCommandName; point: PointLocation; trigger: PointerTriggerType; opacity?: number; constructor(); setGlobalCompositeOperation(ctx: CanvasRenderingContext2D): void; /** * Clone the current command. **/ clone(): IPaintCommand; execute(mainCtx: CanvasRenderingContext2D, backCtx: CanvasRenderingContext2D, options: PaintExecuteOptions): void; } export interface IObjectPaintCommand extends IPaintCommand { paintObjectDesigner?: IPaintObjectDesigner; objectIndex?: number; } export declare class ObjectPaintCommandBase implements IObjectPaintCommand { paintObjectDesigner?: IPaintObjectDesigner | undefined; objectId: string; name: PaintCommandName; point?: PointLocation | undefined; trigger: PointerTriggerType; constructor(objectId: string); /** * Clone the current command. **/ clone(): IPaintCommand; execute(mainCtx: CanvasRenderingContext2D, backCtx: CanvasRenderingContext2D, options: IPaintExecuteOptions): void; } export declare class UpdateObjectPositionCommand extends ObjectPaintCommandBase { point: PointLocation; moveDisatance?: { x: number; y: number; } | undefined; name: PaintCommandName; trigger: PointerTriggerType; constructor(objectId: string, point: PointLocation, moveDisatance?: { x: number; y: number; } | undefined); execute(mainCtx: CanvasRenderingContext2D, backCtx: CanvasRenderingContext2D, options: PaintExecuteOptions): void; } export declare class SetObjectPropertyCommand extends ObjectPaintCommandBase implements IUndoableCommand { propertyName: PaintObjectPropertyName; value: any; prevValue: any; name: PaintCommandName; trigger: PointerTriggerType; point: PointLocation; constructor(objectId: string, propertyName: PaintObjectPropertyName, value: any, prevValue: any); execute(ctx: CanvasRenderingContext2D, backCtx: CanvasRenderingContext2D, options: PaintExecuteOptions): void; undo(options: PaintExecuteOptions): void; } export declare class SelectObjectCommand extends ObjectPaintCommandBase { name: PaintCommandName; constructor(objectId: string); execute(ctx: CanvasRenderingContext2D, backCtx: CanvasRenderingContext2D, options: PaintExecuteOptions): void; } export declare class UnselectObjectCommand extends ObjectPaintCommandBase { name: PaintCommandName; constructor(objectId: string); execute(ctx: CanvasRenderingContext2D, backCtx: CanvasRenderingContext2D, options: PaintExecuteOptions): void; } export declare class DeleteObjectCommand extends ObjectPaintCommandBase { name: PaintCommandName; trigger: PointerTriggerType; constructor(objectId: string); execute(mainCtx: CanvasRenderingContext2D, backCtx: CanvasRenderingContext2D, options: PaintExecuteOptions): void; }