import type { MarkdownLoggable } from '../../../platform/inlineEdits/common/inlineEditLogContext';
import { StringEdit, StringReplacement } from '../../../util/vs/editor/common/core/edits/stringEdit';
import { OffsetRange } from '../../../util/vs/editor/common/core/ranges/offsetRange';
import { NesRebaseConfigs } from '../common/editRebase';
import { CachedOrRebasedEdit } from './nextEditCache';
export interface RebaseResult {
    readonly edit: CachedOrRebasedEdit | undefined;
    readonly failureInfo?: RebaseFailureInfo;
}
export declare class RebaseFailureInfo implements MarkdownLoggable {
    readonly originalDocument: string;
    readonly editWindow: OffsetRange | undefined;
    readonly originalEdits: readonly StringReplacement[];
    readonly userEditSince: StringEdit;
    readonly currentDocument: string;
    readonly currentSelection: readonly OffsetRange[];
    readonly nesRebaseConfigs: NesRebaseConfigs;
    constructor(originalDocument: string, editWindow: OffsetRange | undefined, originalEdits: readonly StringReplacement[], userEditSince: StringEdit, currentDocument: string, currentSelection: readonly OffsetRange[], nesRebaseConfigs: NesRebaseConfigs);
    toMarkdown(): string;
    private _generateTest;
}
//# sourceMappingURL=rebaseResult.d.ts.map