import type { CanUseTool } from './types/sdk-types.js'; export type ToolPermissionMode = 'allow' | 'deny' | 'ask'; export interface ToolPermission { tool: string; mode: ToolPermissionMode; reason?: string; } export interface ToolPermissionRules { defaultMode?: ToolPermissionMode; tools?: Record; list?: ToolPermission[]; } export interface CanUseToolContext { toolName: string; input: Record; } export interface PermissionDecision { behavior: 'allow' | 'deny'; reason?: string; } export declare function createCanUseToolHook(options: { rules: ToolPermissionRules; onAsk?: (ctx: CanUseToolContext) => Promise; onDecision?: (ctx: CanUseToolContext, decision: PermissionDecision) => void; }): CanUseTool;