import type { LocalVault, ScopedLocalVault } from '@dharma-ai-labs/agent-fabric-local-vault'; import { type LocalCodexSetupSessionRequest, type LocalCodexSetupSessionResult } from '@dharma-ai-labs/agent-fabric-local-vault/setup-session'; import { type BootstrapHostScope } from './bootstrapHostScope.js'; import { type CodexSetupExecutionLease, type CodexSetupIntent } from './codexSetupAdmission.js'; import { type NamedSessionChildOwner } from './namedSessionChildOwner.js'; import type { OrganizationPolicy } from '@dharma-ai-labs/agent-fabric-policy'; import { type CodexSetupFailureObserver } from './codexSetupDiagnostic.js'; export declare function codexSetupSessionPolicyHash(policy: OrganizationPolicy): string; type SenderVault = Pick; type ReceiverVault = Pick; type Sender = Readonly<{ scope: BootstrapHostScope; vault: SenderVault; lease: Readonly; intent: Readonly; active: { value: boolean; }; }>; /** Private original-lease continuation. Public-shaped JSON is not admission. */ export declare function withCodexSetupSessionSender(input: { scope: BootstrapHostScope; vault: SenderVault; lease: Readonly; }, operation: () => Promise): Promise; export declare function originalCodexSetupSessionSender(scope: BootstrapHostScope): Promise; /** Original setup caller stages a request; it never starts or adopts a daemon. */ export declare function awaitCodexSetupSession(input: { vault: SenderVault; scope: BootstrapHostScope; leaseId: string; request: LocalCodexSetupSessionRequest; waitMs?: number; acceptedWaitMs?: number; }): Promise>; export interface AcceptedSetupSessionScope { readonly request: Readonly; step(operation: () => Promise): Promise; } /** Closed descendants keep the closed context; they never become unscoped. */ export declare function currentAcceptedSetupSessionScope(): AcceptedSetupSessionScope | undefined; /** Only an existing standing owner can consume once. This component does not * confer signed policy, enrollment or provider authority on a JSON request. */ export declare function consumeCodexSetupSessions(input: { vault: ReceiverVault; owner: NamedSessionChildOwner; signal: AbortSignal; authorize(request: Readonly): Promise; start(scope: AcceptedSetupSessionScope): Promise; onFailure?: CodexSetupFailureObserver; }): Promise; export {}; //# sourceMappingURL=codexSetupSessionHandoff.d.ts.map