import type { OrgBus } from './bus.js'; import { type ToolCallTrace } from './tool-providers.js'; import type { OrgRole, ToolProviderConfig } from './types.js'; export interface ProviderContext { org: string; run: string; role: string; /** Daemon project root. */ root: string; } export declare function providerPrefix(p: Pick): string; /** Tool-name prefixes (`__`) a role's providers contribute. */ export declare function roleProviderPrefixes(role: Pick): string[]; export declare function providerEnv(p: ToolProviderConfig, ctx: ProviderContext): Record; export declare function configHash(p: ToolProviderConfig): string; /** Fill schema defaults for a provider entry that did not come through * RoleSchema.parse (e.g. a hot-reloaded or hand-built role). */ export declare function normalizeProvider(p: ToolProviderConfig): Required> & ToolProviderConfig; /** One provider's call-side process for one role session. */ export declare class ProviderProcess { readonly cfg: ReturnType; private ctx; private cwd; private bus?; private client?; private starting?; private idleTimer?; private inflight; private crashes; private lastCrash; private closed; constructor(cfg: ReturnType, ctx: ProviderContext, cwd: string | undefined, bus?: OrgBus | undefined); get pid(): number | undefined; private unavailable; private ensure; call(tool: string, args: Record, trace: ToolCallTrace): Promise; private armIdle; close(): void; } //# sourceMappingURL=tool-providers-process.d.ts.map