export interface SupervisedAction { label?: string; supervisorPolicy?: string; } export interface SupervisorAuthorization { /** Grant id to send as `approval_id`; undefined when the caller bypassed. */ approvalId?: string; } export interface AuthorizeOptions { model?: string; recordId?: string; /** Free-form audit data stored with the grant (document folio, motive…). */ context?: Record; description?: React.ReactNode; } /** * Resolves the authorization for `action`, `{}` when it needs none, or null when * the operator cancelled the PIN prompt (do NOT dispatch). */ export declare function useSupervisor(): { authorize: (action: SupervisedAction, opts?: AuthorizeOptions) => Promise; }; /** Adds `approval_id` to an action payload when a grant was collected. */ export declare function withApproval>(payload: T, auth: SupervisorAuthorization | null | undefined): T & { approval_id?: string; }; //# sourceMappingURL=supervised-action.d.ts.map