/** Stable canonical names used to compare hook surfaces without replacing runtime event types. */ export declare const HookEventKind: { readonly UserPromptSubmit: "user_prompt_submit"; readonly PreToolUse: "pre_tool_use"; readonly PostToolUse: "post_tool_use"; readonly Stop: "stop"; readonly SessionStart: "session_start"; readonly SessionShutdown: "session_shutdown"; }; export type HookEventKind = (typeof HookEventKind)[keyof typeof HookEventKind]; export declare const HookAuthority: { readonly Constrained: "constrained"; readonly Command: "command"; readonly InProcess: "in-process"; }; export type HookAuthority = (typeof HookAuthority)[keyof typeof HookAuthority]; export declare const HookSourceConvention: { readonly NativeGjc: "native-gjc"; readonly ClaudeCode: "claude-code"; readonly Codex: "codex"; readonly CodexManagedJson: "codex-managed-json"; readonly GjcPlugin: "gjc-plugin"; readonly InProcess: "in-process"; }; export type HookSourceConvention = (typeof HookSourceConvention)[keyof typeof HookSourceConvention]; export interface HookEventSchemaContract { kind: HookEventKind; input: string; output: string; } /** * Canonical schema references. These point at existing runtime types; they are not a * second runtime event union and do not change payloads dispatched by the hook runners. */ export declare const HOOK_EVENT_SCHEMAS: Record; export type HookOrdering = "sequential" | "external-runtime"; export type HookAwaitBehavior = "awaited" | "external-runtime"; export type HookErrorBehavior = "isolate" | "fail-closed" | "external-runtime"; export type HookProcessAuthority = "none" | "hook-api" | "command" | "ambient-host"; export type HookTrustRequirement = "not-enforced" | "provider-owned"; export type HookRedaction = "none" | "provider-owned"; export interface HookExecutionContract { kind: HookEventKind; runtimeEvent: string; authority: HookAuthority; awaitBehavior: HookAwaitBehavior; ordering: HookOrdering; canCancel: boolean; mutation: readonly string[]; timeoutMs: number | null; errorBehavior: HookErrorBehavior; processAuthority: HookProcessAuthority; trustRequirement: HookTrustRequirement; redaction: HookRedaction; logging: string; semanticNotes: string; } /** Per-convention execution truth. Missing entries are unsupported. */ export declare const CONVENTION_EVENT_CONTRACTS: Record>>; export declare const EXTERNAL_EVENT_ALIASES: Readonly>;