import { type ReactNode } from 'react';
import { type IUseMessageBoxReturn } from './useMessageBox';
/**
* Props for the MessageBoxProvider component.
*
* @public
*/
export interface IMessageBoxProviderProps {
/**
* Child components that will have access to the message box context.
*/
children: ReactNode;
}
/**
* Provider component that makes message box 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 message box 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 MessageBoxProvider({ children }: IMessageBoxProviderProps): ReactNode;
/**
* Hook to access the message box context.
*
* @remarks
* This hook must be used within a MessageBoxProvider. If you don't need the provider pattern,
* use `useMessageBox` directly instead.
*
* @example
* ```tsx
* function MyComponent() {
* const messageBox = useMessageBoxContext();
*
* return (
*
* );
* }
* ```
*
* @public
* @returns The message box context value.
* @throws Error if used outside of a MessageBoxProvider.
*/
export declare function useMessageBoxContext(): IUseMessageBoxReturn;
//# sourceMappingURL=MessageBoxContext.d.ts.map