/** * hook-bridge — cross-provider hook translation per ADR-3. * * Public API: bridgeAll(sources, providers, opts) translates every source * for every provider, returning a flat list of TranslateResult. Per ADR-3 * §7 autoInstall policy, the orchestrator passes the explicitly-enabled * providers (operator opts in via --enable-cross-provider-hooks plus per- * provider flags); this module doesn't make that policy decision itself. * * @module smiths/hook-bridge */ import type { HookSource, TranslateOptions, TranslateResult, ProviderTranslator } from './types.js'; export type { HookSource, HookEvent, HookExitSemantic, TranslateOptions, TranslateResult, ProviderTranslator } from './types.js'; export { AIWG_ENV_VARS, NATIVE_ENV_VAR_MAP } from './types.js'; export { substituteEnvVars, generateShimBash, EXIT_CODE_MAP } from './shim.js'; export { translateForCodex, renderCodexHookToml, injectHookBlock as injectCodexHookBlock } from './codex-translator.js'; export { translateForCopilot } from './copilot-translator.js'; export { translateForFactory } from './factory-translator.js'; export { translateForHermes } from './hermes-translator.js'; export { loadHookSources } from './loader.js'; /** * Provider id → translator function. Adding a new provider requires: * 1. New file `-translator.ts` exporting a ProviderTranslator * 2. Entry below * 3. Native env var entry in types.ts NATIVE_ENV_VAR_MAP * 4. Native exit code entry in shim.ts EXIT_CODE_MAP * 5. Native event mapping in the per-provider file */ export declare const TRANSLATORS: Record; /** * Translate one source across an explicit list of providers. Per-provider * failures are captured as TranslateResult entries (skipped=true with * reason); they do not throw to the caller. */ export declare function bridgeAll(sources: HookSource[], providers: string[], options: TranslateOptions): Promise; //# sourceMappingURL=index.d.ts.map