import { IAccessor, IMutationInfo, IObjectMatrixPrimitiveType, IRange, Nullable, Dimension, ObjectMatrix } from '@univerjs/core'; import { IDeleteRangeMutationParams, IInsertRangeMutationParams } from '../../basics/interfaces/mutation-interface'; /** * Generate undo mutation of a `InsertRangeMutation` * * @param {IAccessor} accessor - injector accessor * @param {IInsertRangeMutationParams} params - do mutation params * @returns {IDeleteRangeMutationParams} undo mutation params */ export declare const InsertRangeUndoMutationFactory: (accessor: IAccessor, params: IInsertRangeMutationParams) => IDeleteRangeMutationParams; /** * InsertRange is not a mutation but combination of `SetRangeValuesMutation` and `MoveRangeMutation`. * @param accessor * @param params * @returns */ export declare function getInsertRangeMutations(accessor: IAccessor, params: IInsertRangeMutationParams): { redo: IMutationInfo[]; undo: IMutationInfo[]; }; export declare function getRemoveRangeMutations(accessor: IAccessor, params: IDeleteRangeMutationParams): { redo: IMutationInfo[]; undo: IMutationInfo[]; }; export declare function handleInsertRangeMutation(cellMatrix: ObjectMatrix, range: IRange, lastEndRow: number, lastEndColumn: number, shiftDimension: Dimension, cellValue?: IObjectMatrixPrimitiveType): void; /** * Generate undo mutation of a `DeleteRangeMutation` * * @param {IAccessor} accessor - injector accessor * @param {IDeleteRangeMutationParams} params - do mutation params * @returns {IInsertRangeMutationParams} undo mutation params */ export declare const DeleteRangeUndoMutationFactory: (accessor: IAccessor, params: IDeleteRangeMutationParams) => Nullable; export declare function handleDeleteRangeMutation(cellMatrix: ObjectMatrix, range: IRange, lastEndRow: number, lastEndColumn: number, shiftDimension: Dimension): void;