import type { SnapshotService } from "./snapshot-service.js";
import type { ChangeSet } from "./snapshot-types.js";
export type ChangeSetSelector = {
    type: "list";
    count: number;
} | {
    type: "id";
    id: number;
} | {
    type: "range";
    from: number;
    to: number;
} | {
    type: "last";
    count: number;
};
export interface ResolvedChangeSetSelection {
    selector: ChangeSetSelector;
    changeSets: ChangeSet[];
}
export interface RenderChangeHistoryOptions {
    maxList?: number;
    maxDiffChars?: number;
}
export declare function parseChangeSetSelector(input: string): ChangeSetSelector;
export declare function resolveChangeSetSelection(allChangeSets: readonly ChangeSet[], selector: ChangeSetSelector): ResolvedChangeSetSelection;
export declare function renderChangeSetSelection(selection: ResolvedChangeSetSelection, snapshotService: SnapshotService, options?: RenderChangeHistoryOptions): Promise<string>;
//# sourceMappingURL=change-history.d.ts.map