import { FileStateCache } from '../../state/file-cache.js';
import { FileUndoManager } from '../../state/file-undo.js';
import type { EditInput, JupyterNotebook, NotebookCell, NotebookOperation } from './types.js';
export declare function normalizeSource(source: string | string[]): string[];
export declare function validateNotebook(parsed: unknown): parsed is JupyterNotebook;
export declare function resolveCellId(cells: NotebookCell[], cellId: string): number;
export declare function generateCellId(existingCells?: NotebookCell[]): string;
export declare function readNotebookFile(resolvedPath: string, fileCache: FileStateCache): {
    notebook: JupyterNotebook;
    rawContent: string;
} | {
    error: string;
};
export declare function applyNotebookOperations(notebook: JupyterNotebook, operations: NotebookOperation[]): {
    success: boolean;
    applied: number;
    summary: string;
    error?: string;
};
export declare function formatNotebookOutput(opsResult: {
    applied: number;
    summary: string;
}, outputFormat: 'count_only' | 'minimal' | 'with_diff' | 'verbose', dryRun: boolean, rawContent: string, newContent: string, resolvedPath: string, diffContext: number): string;
export declare function executeNotebookEdit(input: EditInput, env: {
    fileCache: FileStateCache;
    cwd: string;
    fileUndoManager?: FileUndoManager | undefined;
}): Promise<{
    success: boolean;
    output?: string;
    error?: string;
}>;
//# sourceMappingURL=notebook.d.ts.map