export type HookHostKind = "pi" | "omp"; export interface HookHostProfile { readonly kind: HookHostKind; readonly agentDir: string; } export interface HookHostProfileConfiguration { readonly kind: HookHostKind; readonly agentDir?: string; } /** * Configure the process-wide host profile. The first explicit configuration * wins; subsequent identical configuration is harmless, while a conflicting * host or agent directory is rejected. */ export declare function configureHookHostProfile(configuration: HookHostProfileConfiguration): HookHostProfile; /** * Return the active profile. Until explicitly configured, each read derives a * frozen Pi default without committing process state, so a later OMP * registration can still configure its active agent directory. */ export declare function getHookHostProfile(): HookHostProfile; /** Return the explicitly configured profile, if registration has occurred. */ export declare function getConfiguredHookHostProfile(): HookHostProfile | undefined; /** Build a normalized frozen profile for deterministic dependency injection. */ export declare function createHookHostProfile(configuration: HookHostProfileConfiguration): HookHostProfile; export declare function __resetHookHostProfileForTests(): void;