import { ReactNode } from 'react';
import { BodyProps } from './Body';
import { FooterProps } from './Footer';
import { HeaderProps } from './Header';
import { SIZES } from '../../constants';
import { BoxProps } from '../box/Box';
import { GenericComponent } from '../../@types/types';
interface WidgetProps extends Omit<BoxProps, 'children' | 'ref'> {
    /** The content to display inside the widget. */
    children?: ReactNode;
    /** The size which controls the padding of the children. */
    size?: Exclude<typeof SIZES[number], 'fullscreen' | 'smallest' | 'tiny' | 'hero'>;
}
interface WidgetComponent extends GenericComponent<WidgetProps> {
    Body: GenericComponent<BodyProps>;
    Header: GenericComponent<HeaderProps>;
    Footer: GenericComponent<FooterProps>;
}
export declare const Widget: GenericComponent<WidgetProps>;
declare const WidgetWithSubComponents: WidgetComponent;
export default WidgetWithSubComponents;
