import * as React from 'react'; import type { AgToolPart } from '../types.js'; import type { ApprovalResponseDetail, ToolCallLabels } from './ToolCall.js'; type AnyToolPart = AgToolPart | (Omit & { type: 'dynamic-tool'; toolName: string; }); export interface ToolCallApprovalProps { part: AnyToolPart; labels?: ToolCallLabels | undefined; onApprovalResponse?: ((detail: ApprovalResponseDetail) => void) | undefined; /** Focus returns to the ToolCall trigger after a response. */ triggerRef?: React.RefObject | undefined; } /** * REQ-SURF-121: Approve / Deny (Deny reveals a CMP TextField reason). A * response fires once and disables both buttons until `part.state` or the * approval id changes — the response state is keyed by both, so a new * approval request re-enables the controls even if the component stays * mounted. */ export declare function ToolCallApproval({ part, labels, onApprovalResponse, triggerRef }: ToolCallApprovalProps): React.JSX.Element; export {}; //# sourceMappingURL=ToolApproval.d.ts.map