export type ProjectSnapshotKind = "manual" | "pre_migration" | "pre_restore" | "scheduled"; export type ProjectSnapshotProfile = "snapshot"; export type ProjectSnapshotStatus = "running" | "ready" | "failed" | "expired"; export interface SnapshotNextAction { type: string; command?: string; message: string; [key: string]: unknown; } export interface ProjectSnapshotDto { snapshot_id: string; operation_id: string; project_id: string; kind: ProjectSnapshotKind | (string & {}); profile: ProjectSnapshotProfile | (string & {}); status: ProjectSnapshotStatus | (string & {}); manifest_sha256: string | null; size_bytes: number; live_release_id: string | null; captured_at: string | null; expires_at: string | null; error: unknown | null; created_at: string; updated_at: string; next_actions: SnapshotNextAction[]; } export interface ProjectSnapshotsListOptions { limit?: number; after?: string; kind?: ProjectSnapshotKind | (string & {}); } export interface ProjectSnapshotsListResult { snapshots: ProjectSnapshotDto[]; has_more: boolean; next_cursor: string | null; } export interface SnapshotRestoreOptions { includeAuth?: boolean; } export interface SnapshotRestorePlanEnvelope { restore_plan: SnapshotRestorePlan; } export interface SnapshotRestorePlan { snapshot_id: string; project_id: string; snapshot_at: string; data_loss_statement: string; auth: { mode: "not_restored" | "restore_on_confirm" | (string & {}); users: number; passkeys: number; message: string; }; release: { snapshot_live_release_id: string | null; current_live_release_id: string | null; }; target: { current_schema_slot: string; behavior: "offline_materialize_then_atomic_flip" | (string & {}); }; confirm: { token: string; expires_at: string; }; next_actions: SnapshotNextAction[]; } export interface SnapshotRestoreResult { operation_id: string; project_id: string; snapshot_id: string; pre_restore_snapshot_id: string; old_schema_slot: string; new_schema_slot: string; migration_registry_rows: number; status: "ready" | (string & {}); next_actions: SnapshotNextAction[]; } //# sourceMappingURL=snapshots.types.d.ts.map