import { Extension } from '@codemirror/state';
import { DecorationSet, EditorView, ViewPlugin, ViewUpdate } from '@codemirror/view';
import { DiffBlockData } from '../diff-builder/common';
import { DiffData } from '../types';
/** Build decorations from diff blocks for a specific side */
declare function buildDecorations(view: EditorView, blocks: DiffBlockData[], side: 'before' | 'after' | 'unified', selectedBlock: string | null): DecorationSet;
/** View plugin that manages diff decorations */
declare const diffDecorationsPlugin: ViewPlugin<{
    decorations: DecorationSet;
    update(update: ViewUpdate): void;
    buildDecorations(view: EditorView): DecorationSet;
}, undefined>;
/** Create diff decorations extension */
export declare function diffDecorations(data: DiffData, config: {
    side: 'before' | 'after' | 'unified';
}): Extension;
/** Theme styles for diff decorations */
export declare const diffDecorationsTheme: Extension;
export { diffDecorationsPlugin, buildDecorations };
