import { type ReactNode } from 'react'; import { type IUseDialogReturn } from './useDialog'; /** * Props for the DialogProvider component. * * @public */ export interface IDialogProviderProps { /** * Child components that will have access to the dialog context. */ children: ReactNode; } /** * Provider component that makes dialog functionality available to all child components. * * @remarks * Place this provider at the root of your application or at a level where all * components that need dialog access are descendants. * * @example * ```tsx * // In your app root * function App() { * return ( * * * * ); * } * ``` * * @public * @param props - The provider props. * @returns The provider component wrapping children. */ export declare function DialogProvider({ children }: IDialogProviderProps): ReactNode; /** * Hook to access the dialog context. * * @remarks * This hook must be used within a DialogProvider. If you don't need the provider pattern, * use `useDialog` directly instead. * * @example * ```tsx * function MyComponent() { * const dialog = useDialogContext(); * * return ( * * ); * } * ``` * * @public * @returns The dialog context value. * @throws Error if used outside of a DialogProvider. */ export declare function useDialogContext(): IUseDialogReturn; //# sourceMappingURL=DialogContext.d.ts.map