/** * SECURITY MODEL, TRUST BOUNDARY * * Hook commands are user-defined and execute with full process privileges * via `sh -c `. Shell injection is by design: users author their * own hook commands and are responsible for the content of hooks.json. * * hooks.json is a TRUST BOUNDARY: * - Only hooks.json files that belong to the current user or that the * user has explicitly opted into should be loaded. * - The HookDispatcher logs a warning if the file is world-writable. * - Never load hooks.json from untrusted sources (e.g., project * directories you did not create or audit). */ import type { HookDefinition, HookResult, HookEvent } from '../types.js'; /** * Run a shell command hook. * The event JSON is written to stdin; stdout is parsed as HookResult JSON. * If stdout is not valid JSON, returns { ok: true } (fire-and-forget semantics). */ export declare function run(hook: HookDefinition, event: HookEvent): Promise; //# sourceMappingURL=command.d.ts.map