/** * Symbol editor for modifying symbol definitions in source files. * Provides atomic operations to replace, insert before, or insert after symbols. */ /** * Result from a symbol edit operation. */ export interface EditResult { /** Whether the edit was successful */ success: boolean; /** Updated file path */ filepath: string; /** Symbol that was edited */ symbolName: string; /** New line range of the edited content */ newRange?: { startLine: number; endLine: number; }; /** Error message if failed */ error?: string; } /** * Options for replace_symbol_body. */ export interface ReplaceSymbolOptions { /** Name path of the symbol to replace */ namePath: string; /** Relative path to the file containing the symbol */ relativePath: string; /** The new body content for the symbol */ body: string; } /** * Options for insert_before_symbol or insert_after_symbol. */ export interface InsertSymbolOptions { /** Name path of the reference symbol */ namePath: string; /** Relative path to the file containing the symbol */ relativePath: string; /** The content to insert */ body: string; } /** * Symbol editor for modifying source files. */ export declare class SymbolEditor { private projectPath; private symbolExtractor; constructor(projectPath: string); /** * Replace a symbol's body with new content. */ replaceSymbolBody(options: ReplaceSymbolOptions): Promise; /** * Insert content before a symbol. */ insertBeforeSymbol(options: InsertSymbolOptions): Promise; /** * Insert content after a symbol. */ insertAfterSymbol(options: InsertSymbolOptions): Promise; /** * Find a symbol by name path pattern. */ private findSymbolByPattern; /** * Detect the indentation used on a line. */ private detectIndentation; /** * Apply indentation to a block of code. */ private applyIndentation; /** * Write a file atomically (write to temp file, then rename). */ private atomicWrite; } //# sourceMappingURL=symbol-editor.d.ts.map