import type { GovernanceServiceCredential } from './capability-grant.js'; import type { GovernanceServiceCapability } from './service-protocol.js'; export declare const GOVERNANCE_DAEMON_STARTUP_TIMEOUT_MS = 10000; export type GovernanceDaemonAvailability = { readonly kind: 'available'; readonly entrypoint: URL; } | { readonly kind: 'missing-build'; }; export type GovernanceDaemonLaunchErrorCode = 'missing_build' | 'spawn_failed' | 'startup_timeout' | 'startup_busy' | 'startup_failed' | 'owner_conflict' | 'endpoint_invalid' | 'invalid_handshake' | 'process_exited'; export declare class GovernanceDaemonLaunchError extends Error { readonly code: GovernanceDaemonLaunchErrorCode; constructor(code: GovernanceDaemonLaunchErrorCode, message: string); } export interface LaunchGovernanceProjectDaemonOptions { readonly projectRoot: string; readonly projectId: string; readonly clientId: string; readonly capabilities: readonly GovernanceServiceCapability[]; readonly ttlMs: number; readonly timeoutMs?: number | undefined; } export interface GovernanceProjectDaemonLaunch { readonly pid: number; readonly projectRoot: string; readonly projectId: string; readonly instanceId: string; readonly startedAt: string; readonly grantId: string; readonly expiresAt: string; readonly credential: GovernanceServiceCredential; } interface GovernanceDaemonRuntime { readonly entrypoint: URL; readonly execArgv?: readonly string[] | undefined; readonly cwd?: string | undefined; readonly detached?: boolean | undefined; readonly environment?: NodeJS.ProcessEnv | undefined; } export declare function governanceDaemonEnvironment(source: NodeJS.ProcessEnv): NodeJS.ProcessEnv; export declare function resolveGovernanceDaemonAvailability(moduleUrl?: string, exists?: (filePath: string) => boolean): GovernanceDaemonAvailability; export declare function launchGovernanceProjectDaemon(options: LaunchGovernanceProjectDaemonOptions): Promise; /** Internal seam for source-level process tests; public callers use the built entrypoint above. */ export declare function launchGovernanceProjectDaemonWithRuntime(options: LaunchGovernanceProjectDaemonOptions, runtime: GovernanceDaemonRuntime): Promise; export {}; //# sourceMappingURL=daemon-launcher.d.ts.map