export interface HermesSupervisorBinding { path: string; runtime: string; sha256: string; } export declare const HERMES_OPT_OUT = ".no-bundled-skills"; declare const EVENTS: readonly ["pre_llm_call", "pre_tool_call"]; export declare function parseHermesConfig(text: string | null): Record; export declare function hermesHookDefinitions(supervisor: Pick): Record; export declare function configureHermesHooks(text: string | null, supervisor: HermesSupervisorBinding, previous?: HermesSupervisorBinding): string; export declare function assertHermesEnvironment(home: string): void; export declare function assertHermesProtection(home: string, config: Record, command: string, profile: string, supervisor: HermesSupervisorBinding): void; /** skill_view also searches legacy .md with rglob, including hidden and * dependency directories that the normal SKILL.md index skips. Check the one * name admitted by the native tool guard without reading any candidate bytes. * Only support folders directly under a real skill descriptor are excluded, * matching Hermes is_skill_support_path. Every other bounded path is checked. */ export declare function assertNoHermesLegacyShadow(root: string): void; export declare function normalizeHermesHookInput(input: Record): Record; export declare function assertHermesTool(input: Record): void; /** Hermes 0.20.5 treats some empty/non-directive child failures as no directive, * even with fail_closed. This owned supervisor produces its explicit blocking * wire shape and exit 2 for every observed Skills child failure. Native host or * supervisor death is outside that guarantee; no native runtime is patched. */ export declare function renderHermesSupervisor(command: string, profile: string): string; export {};