export interface YcmdRefactorParams {
    filepath: string;
    line: number;
    column: number;
    contents?: string;
    command: 'rename' | 'extract_method' | 'organize_imports' | 'fix_it';
    newName?: string;
    fixitIndex?: number;
}
export interface RefactorEdit {
    filepath: string;
    range: {
        start: {
            line: number;
            column: number;
        };
        end: {
            line: number;
            column: number;
        };
    };
    newText: string;
}
export interface RefactorResult {
    edits: RefactorEdit[];
    description?: string;
}
export declare function ycmdRefactor(params: YcmdRefactorParams): Promise<{
    success: boolean;
    result?: RefactorResult;
    message: string;
}>;
