import type { GovernanceServiceCredential } from './capability-grant.js'; import { type GovernanceServiceCapability } from './service-protocol.js'; export declare const GOVERNANCE_DAEMON_BOOTSTRAP_PROTOCOL_VERSION: 2; interface GovernanceDaemonBootstrapRequest { readonly type: 'bootstrap'; readonly protocolVersion: typeof GOVERNANCE_DAEMON_BOOTSTRAP_PROTOCOL_VERSION; readonly nonce: string; readonly clientId: string; readonly capabilities: readonly GovernanceServiceCapability[]; readonly ttlMs: number; } export type GovernanceDaemonBootstrapErrorCode = 'invalid_bootstrap' | 'owner_conflict' | 'startup_busy' | 'endpoint_invalid' | 'startup_failed'; export type GovernanceDaemonBootstrapMessage = { readonly type: 'ready'; readonly protocolVersion: typeof GOVERNANCE_DAEMON_BOOTSTRAP_PROTOCOL_VERSION; readonly projectRoot: string; readonly projectId: string; readonly pid: number; readonly instanceId: string; readonly startedAt: string; } | { readonly type: 'bootstrap_result'; readonly protocolVersion: typeof GOVERNANCE_DAEMON_BOOTSTRAP_PROTOCOL_VERSION; readonly nonce: string; readonly projectRoot: string; readonly projectId: string; readonly pid: number; readonly instanceId: string; readonly startedAt: string; readonly grantId: string; readonly expiresAt: string; readonly credential: GovernanceServiceCredential; } | { readonly type: 'bootstrap_error'; readonly protocolVersion: typeof GOVERNANCE_DAEMON_BOOTSTRAP_PROTOCOL_VERSION; readonly code: GovernanceDaemonBootstrapErrorCode; readonly message: string; }; interface GovernanceDaemonProtocolIssue { readonly path: string; readonly message: string; } type GovernanceDaemonBootstrapRequestDecodeResult = { readonly decoded: true; readonly request: GovernanceDaemonBootstrapRequest; } | { readonly decoded: false; readonly issues: readonly GovernanceDaemonProtocolIssue[]; }; type GovernanceDaemonBootstrapMessageDecodeResult = { readonly decoded: true; readonly message: GovernanceDaemonBootstrapMessage; } | { readonly decoded: false; readonly issues: readonly GovernanceDaemonProtocolIssue[]; }; export declare function decodeGovernanceDaemonBootstrapRequest(input: unknown): GovernanceDaemonBootstrapRequestDecodeResult; export declare function decodeGovernanceDaemonBootstrapMessage(input: unknown): GovernanceDaemonBootstrapMessageDecodeResult; export {}; //# sourceMappingURL=daemon-protocol.d.ts.map