import type { WorkbookAxisEntrySnapshot } from '@bilig/protocol';
import type { WorkbookAxisEntryStore } from './workbook-axis-entry-store.js';
import type { SheetRecord } from './workbook-sheet-record.js';
type WorkbookStructuralAxis = 'row' | 'column';
export interface WorkbookStructuralAxisOperationContext {
    readonly axisEntryStore: Pick<WorkbookAxisEntryStore, 'moveAxisEntries' | 'spliceAxisEntries'>;
    readonly getOrCreateSheet: (sheetName: string) => SheetRecord;
    readonly bumpSheetStructureVersion: (sheet: SheetRecord) => void;
}
export declare class WorkbookStructuralAxisOperations {
    private readonly context;
    constructor(context: WorkbookStructuralAxisOperationContext);
    insert(axis: WorkbookStructuralAxis, sheetName: string, start: number, count: number, entries?: readonly WorkbookAxisEntrySnapshot[]): void;
    delete(axis: WorkbookStructuralAxis, sheetName: string, start: number, count: number): WorkbookAxisEntrySnapshot[];
    move(axis: WorkbookStructuralAxis, sheetName: string, start: number, count: number, target: number): void;
}
export {};
