/** Mirror of HookEvent from @anthropic-ai/claude-agent-sdk */
export type HookEvent = 'PreToolUse' | 'PostToolUse' | 'PostToolUseFailure' | 'Notification' | 'UserPromptSubmit' | 'SessionStart' | 'SessionEnd' | 'Stop' | 'SubagentStart' | 'SubagentStop' | 'PreCompact' | 'PermissionRequest';
/** Mirror of HookCallback from @anthropic-ai/claude-agent-sdk */
export type HookCallback = (input: Record<string, unknown>, toolUseID: string | undefined, options: {
    signal: AbortSignal;
}) => Promise<Record<string, unknown>>;
/** Mirror of HookCallbackMatcher from @anthropic-ai/claude-agent-sdk */
export interface HookCallbackMatcher {
    matcher?: string;
    hooks: HookCallback[];
    timeout?: number;
}
export interface AgentHook {
    name: HookEvent;
    pre: boolean;
    implemented: boolean;
    description: string;
    notes: string;
}
export declare const agentHooks: AgentHook[];
/**
 * Builds the SDK hooks config from the implemented agentHooks registry.
 * Only hooks present in both the registry (implemented: true) and the
 * callbacks map are included in the output.
 */
export declare function buildHooksConfig(callbacks: Partial<Record<HookEvent, HookCallback>>): Partial<Record<HookEvent, HookCallbackMatcher[]>>;
