import type { StructuralAxisTransform } from '@bilig/formula';
import type { SheetGridAxisRemapScope } from '../sheet-grid.js';
export interface StructuralRemappedCell {
    readonly cellIndex: number;
    readonly fromRow: number;
    readonly fromCol: number;
    readonly fromRowId?: string;
    readonly fromColId?: string;
    readonly toRow: number | undefined;
    readonly toCol: number | undefined;
}
export interface StructuralInvalidationSpan {
    readonly axis: 'row' | 'column';
    readonly start: number;
    readonly end: number;
}
export interface StructuralTransaction {
    readonly sheetName: string;
    readonly sheetId: number;
    readonly transform: StructuralAxisTransform;
    readonly scope: SheetGridAxisRemapScope;
    readonly remappedCells: readonly StructuralRemappedCell[];
    readonly removedCellIndices: readonly number[];
    readonly invalidationSpans: readonly StructuralInvalidationSpan[];
}
export declare function structuralScopeForTransform(transform: StructuralAxisTransform): SheetGridAxisRemapScope;
export declare function buildStructuralTransaction(input: {
    readonly sheetName: string;
    readonly sheetId: number;
    readonly transform: StructuralAxisTransform;
    readonly remappedCells: readonly StructuralRemappedCell[];
}): StructuralTransaction;
