/** * Terminal v3 run → Saved Workflow actions. * * The action payload carries no identity or destination. The callback reloads * the immutable run envelope and derives owner/app/chat from there. Nonces are * consistency/freshness checks, not authorization secrets. */ import type { V3RunEnvelope } from '../../workflows/v3/run-envelope.js'; export declare const V3_RUN_SAVE_ACTION = "v3_run_save"; export declare const V3_RUN_SAVE_CONFIRM_ACTION = "v3_run_save_confirm"; export type V3RunSaveScope = 'chat' | 'global'; export interface V3RunSaveActionValue { action: typeof V3_RUN_SAVE_ACTION | typeof V3_RUN_SAVE_CONFIRM_ACTION; runId: string; scope: V3RunSaveScope; nonce: string; /** Present only for the explicit unsafe-literal confirmation stage. */ warningDigest?: string; } export declare function v3RunSaveNonce(envelope: V3RunEnvelope, scope: V3RunSaveScope, warningDigest?: string): string; export declare function buildV3RunSaveActionValue(envelope: V3RunEnvelope, scope: V3RunSaveScope, warningDigest?: string): V3RunSaveActionValue; export declare function buildV3RunSaveWarningCard(input: { envelope: V3RunEnvelope; scope: V3RunSaveScope; warnings: readonly string[]; warningDigest: string; }): string; export declare function buildV3RunSavedCard(input: { runId: string; displayName: string; workflowId: string; humanVersion: number; revisionId: string; scope: V3RunSaveScope; /** When a replay requested another scope, first valid commit still wins. */ requestedScope?: V3RunSaveScope; }): string; //# sourceMappingURL=v3-run-save-card.d.ts.map