UNPKG

terra-draw

Version:

Frictionless map drawing across mapping provider

70 lines (69 loc) 2.21 kB
import { TerraDrawModeState } from "../common"; import { HistoryCause, HistoryChange, TerraDrawUndoRedoInterface, TerraDrawUndoRedoOptions } from "./undo-redo-types"; export interface TerraDrawModeUndoRedoInterface extends TerraDrawUndoRedoInterface { getMaxStackSize?(): number; register(options: { getModeState: () => string; getModeHistorySizes: () => { undoSize: number; redoSize: number; }; undoMode: () => void; redoMode: () => void; clearModeHistory: () => void; onHistoryChange: (historyChange: HistoryChange) => void; }): void; canUndo(): boolean; canRedo(): boolean; getHistorySizes(): { undoSize: number; redoSize: number; }; emitPushIfHistoryChangedFromLastSnapshot(): void; emitPushIfHistoryChanged(before: { undoSize: number; redoSize: number; }): void; emitHistoryChange(cause: HistoryCause): void; } export declare class TerraDrawModeUndoRedo implements TerraDrawModeUndoRedoInterface { private getModeState; private getModeHistorySizes; private undoMode; private redoMode; private clearModeHistory; private onHistoryChange; private readonly maxStackSize; private lastHistorySizes; constructor(options?: TerraDrawUndoRedoOptions); getMaxStackSize(): number; register(options: { getModeState: () => TerraDrawModeState; getModeHistorySizes: () => { undoSize: number; redoSize: number; }; undoMode: () => void; redoMode: () => void; clearModeHistory: () => void; onHistoryChange: (historyChange: HistoryChange) => void; }): void; private inDrawingState; canUndo(): boolean; canRedo(): boolean; undo(): boolean; redo(): boolean; clearHistory(): void; getHistorySizes(): { undoSize: number; redoSize: number; }; undoSize(): number; redoSize(): number; emitPushIfHistoryChangedFromLastSnapshot(): void; emitPushIfHistoryChanged(before: { undoSize: number; redoSize: number; }): void; emitHistoryChange(cause: HistoryCause): void; }