import React from "react"; import type { BlocksFieldClient, SanitizedFieldPermissions } from "payload"; export interface BeforeOpenDrawerInfo { field: Omit & Partial>; path: string; schemaPath: string; readOnly: boolean; permissions?: SanitizedFieldPermissions; /** Current blocks data for this field */ blocksData: unknown[]; /** Full form data */ formData: Record; } /** * Callback that runs before the "Add block with preset" drawer opens. * Receives field info for validation. * Return `true` (or resolve to `true`) to allow the drawer to open. * Return `false` to prevent it. */ export type BeforeOpenDrawerFn = (info: BeforeOpenDrawerInfo) => boolean | Promise; export declare const BeforeOpenDrawerProvider: React.FC<{ beforeOpenDrawer: BeforeOpenDrawerFn; children: React.ReactNode; }>; export declare function useBeforeOpenDrawer(): BeforeOpenDrawerFn | undefined;