type ResumeBundleSource = "tool_result" | "cli" | "system" | "manual";
interface ResumeBundle {
    schemaVersion: 1;
    bundleId: string;
    recordedAt: string;
    sessionKey: string;
    source: ResumeBundleSource;
    scope: string;
    summary: string;
    objectiveStateSnapshotRefs?: string[];
    workProductEntryRefs?: string[];
    commitmentEntryRefs?: string[];
    keyFacts?: string[];
    nextActions?: string[];
    riskFlags?: string[];
    metadata?: Record<string, string>;
}
interface ResumeBundleStatus {
    enabled: boolean;
    rootDir: string;
    bundlesDir: string;
    bundles: {
        total: number;
        valid: number;
        invalid: number;
        bySource: Partial<Record<ResumeBundleSource, number>>;
        latestBundleId?: string;
        latestRecordedAt?: string;
        latestSessionKey?: string;
    };
    latestBundle?: ResumeBundle;
    invalidBundles: Array<{
        path: string;
        error: string;
    }>;
}
declare function resolveResumeBundleDir(memoryDir: string, overrideDir?: string): string;
declare function validateResumeBundle(raw: unknown): ResumeBundle;
declare function buildResumeBundleFromState(options: {
    memoryDir: string;
    sessionKey: string;
    bundleId: string;
    recordedAt: string;
    scope: string;
    source?: ResumeBundleSource;
    transcriptEnabled?: boolean;
    objectiveStateMemoryEnabled?: boolean;
    objectiveStateStoreDir?: string;
    creationMemoryEnabled?: boolean;
    workProductLedgerDir?: string;
    commitmentLedgerEnabled?: boolean;
    commitmentLedgerDir?: string;
    maxRefsPerStore?: number;
}): Promise<ResumeBundle>;
declare function recordResumeBundle(options: {
    memoryDir: string;
    resumeBundleDir?: string;
    bundle: ResumeBundle;
}): Promise<string>;
declare function getResumeBundleStatus(options: {
    memoryDir: string;
    resumeBundleDir?: string;
    enabled: boolean;
}): Promise<ResumeBundleStatus>;

export { type ResumeBundle, type ResumeBundleSource, type ResumeBundleStatus, buildResumeBundleFromState, getResumeBundleStatus, recordResumeBundle, resolveResumeBundleDir, validateResumeBundle };
