export type ChangeSetStatus = "active" | "reverted" | "partially_reverted";
export type ChangedFileStatus = "created" | "modified" | "deleted" | "skipped";
export interface ChangedFile {
    path: string;
    status: ChangedFileStatus;
    beforeHash?: string;
    afterHash?: string;
    currentExpectedHash?: string;
    binary?: boolean;
    large?: boolean;
    skippedReason?: string;
}
export interface ChangeSetSummary {
    created: number;
    modified: number;
    deleted: number;
    skipped: number;
}
export interface ChangeSet {
    id: number;
    sessionId: string;
    turnId?: string;
    userMessageId?: string;
    assistantMessageId?: string;
    createdAt: number;
    status: ChangeSetStatus;
    files: ChangedFile[];
    summary: ChangeSetSummary;
}
export interface RevertRecord {
    id: number;
    createdAt: number;
    sessionId: string;
    changeSetIds: number[];
    status: "applied" | "blocked" | "failed";
    operation?: "revert" | "unrevert";
    preRevertChangeSetId?: number;
    message?: string;
}
//# sourceMappingURL=snapshot-types.d.ts.map