import type { ChildProcess } from 'node:child_process'; import type { LocalVault } from '@dharma-ai-labs/agent-fabric-local-vault'; import { type LocalCodexSetupSessionRequest } from '@dharma-ai-labs/agent-fabric-local-vault/setup-session'; import type { AcceptedSetupSessionScope } from './codexSetupSessionHandoff.js'; import type { NamedSessionChildOwner } from './namedSessionChildOwner.js'; export interface CodexSetupChildMessage { schema: 'dharma.codex-setup-child-start/v1'; operationId: string; intentDigest: string; } /** Only the standing owner's captured fresh child handle receives public IDs. * The IPC message itself grants nothing; the child verifies encrypted state. */ export declare function sendCodexSetupChildStart(input: { owner: NamedSessionChildOwner; child: ChildProcess; scope: AcceptedSetupSessionScope; }): Promise; type IpcProcess = Pick; export declare function receiveCodexSetupChildStart(input: { process: IpcProcess; signal: AbortSignal; waitMs?: number; }): Promise>; export interface CodexSetupChildScope { readonly request: Readonly; step(operation: () => Promise): Promise; } /** A one-time child startup continuation, not authority for future work turns. */ export declare function runCodexSetupChildStartup(input: { vault: Pick; message: CodexSetupChildMessage; name: string; workspaceId: string; signal: AbortSignal; authorize(request: Readonly): Promise; }, operation: (scope: CodexSetupChildScope) => Promise): Promise; export {}; //# sourceMappingURL=codexSetupChildStartup.d.ts.map