import { ZoomSettings } from "@dt/core-viewer"; import { GcImageViewer } from "../GcImageViewer"; import { OpenParameters } from "../Models"; /** * Interface for undo commands. * @example * // The UndoCommandSupport interface implementation example. * function CustomUndoCommand() { } * CustomUndoCommand.prototype = { * name: "CustomUndoCommand", * execute: function(viewer) { * return new Promise((resolve)=>{ * // Put your action code here * resolve(); * }) * }, * undo: function(viewer) { * return new Promise((resolve)=>{ * // Put your undo action here * resolve(); * }) * } * }; **/ export interface UndoCommandSupport { /** * Optional. The unique name of the command. Used by the undo.skipCommands option setting. **/ name?: string; /** * Action implementation. * @param viewer **/ execute(viewer: GcImageViewer): Promise; /** * Undo action implementation. * @param viewer **/ undo(viewer: GcImageViewer): Promise; } /** * Open command. **/ export declare class OpenCommand implements UndoCommandSupport { viewer: GcImageViewer; file: any; params: OpenParameters; private _prevFile; private _prevOpenParameters; private _prevFrameIndex; /** * OpenCommand constructor. * @param dataUri * @param params **/ constructor(viewer: GcImageViewer, file: any, params: OpenParameters); name: string; execute(viewer: GcImageViewer): Promise; undo(viewer: GcImageViewer): Promise; } /** * Close command. **/ export declare class CloseCommand implements UndoCommandSupport { viewer: GcImageViewer; private _prevDataUri; private _prevOpenParameters; /** * CloseCommand constructor. **/ constructor(viewer: GcImageViewer); name: string; execute(viewer: GcImageViewer): Promise; undo(viewer: GcImageViewer): Promise; } /** * StartAnimation command. **/ export declare class StartAnimationCommand implements UndoCommandSupport { startFrameIndex: number; /** * Constructor. * @param frameIndex **/ constructor(startFrameIndex: number); name: string; execute(viewer: GcImageViewer): Promise; undo(viewer: GcImageViewer): Promise; } /** * StopAnimation command. **/ export declare class StopAnimationCommand implements UndoCommandSupport { stopFrameIndex: number; startFrameIndex: number; /** * Constructor. * @param stopFrameIndex * @param startFrameIndex **/ constructor(stopFrameIndex: number, startFrameIndex: number); name: string; execute(viewer: GcImageViewer): Promise; undo(viewer: GcImageViewer): Promise; } /** * Frame Index command. **/ export declare class FrameIndexCommand implements UndoCommandSupport { frameIndex: number; prevFrameIndex: number; /** * Constructor. * @param frameIndex * @param prevFrameIndex */ constructor(frameIndex: number, prevFrameIndex: number); name: string; execute(viewer: GcImageViewer): Promise; undo(viewer: GcImageViewer): Promise; } /** * Zoom command. * @example * ```javascript * viewer.executeCommand(new ZoomCommand( { mode: 0, factor: 0.5 }, { mode: 0, factor: 1.0 } )); * ``` **/ export declare class ZoomCommand implements UndoCommandSupport { zoom: ZoomSettings; prevZoom: ZoomSettings; /** * * @param zoom new zoom settings. * @param optional, previous zoom settings. **/ constructor(zoom: ZoomSettings, prevZoom: ZoomSettings); name: string; execute(viewer: GcImageViewer): Promise; undo(viewer: GcImageViewer): Promise; }