import { FC } from 'react'; import { UseFocusTrapProps } from '../../hooks/useFocusTrap'; import { TakeoverHeader, TakeoverHeaderProps } from './TakeoverHeader'; import { TakeoverSection, TakeoverSectionProps } from './TakeoverSection'; import { TakeoverFooter, TakeoverFooterProps } from './TakeoverFooter'; export interface TakeoverPropsStrict { /** Content for Action area next to close button */ actions?: TakeoverHeaderProps['actions']; /** * Use animation for show/hide transitions * Defaults to false because Takeovers are used as full page layouts */ animate?: boolean; /** Label for Back button. Turns Back button into `Back to {backLabel}` button */ backLabel?: TakeoverHeaderProps['backLabel']; /** Add components to be rendered in the */ children: TakeoverSectionProps['children']; /** Adds one or more classnames to an element */ className?: string; /** Adds one or more classnames to TakeoverContent */ contentWrapperClass?: string; /** Footer Elements */ footer?: TakeoverFooterProps['children']; /** Align TakeoverFooter content using flexbox justify-content properties */ footerAlign?: TakeoverFooterProps['align']; /** False will automatically wrap children with */ sectioned?: boolean; /** If passed an onBack function, gets a Back button in the top right */ onBack?: TakeoverHeaderProps['onBack']; /** If passed an onClose function, gets a Close button in the top right */ onClose?: TakeoverHeaderProps['onClose']; /** Set visibility of the Takeover */ open?: boolean; /** Theme of Takeover */ theme?: TakeoverHeaderProps['theme']; /** Name of Takeover */ title: TakeoverHeaderProps['title']; /** Render in a React Portal */ portal?: boolean; /** Options passed into useFocusTrap */ focusTrapOptions?: UseFocusTrapProps; } export interface TakeoverProps extends TakeoverPropsStrict { [propName: string]: any; } export interface Takeover extends FC { Header: typeof TakeoverHeader; Section: typeof TakeoverSection; Footer: typeof TakeoverFooter; } export declare const Takeover: Takeover;