import { MDCDialog } from '@material/dialog/';
import MaterialComponent from '../Base/MaterialComponent';
import { Button } from '../Button';
export interface IDialogHeaderProps {
}
export interface IDialogHeaderState {
}
export declare class DialogHeader extends MaterialComponent<IDialogHeaderProps, IDialogHeaderState> {
    protected componentName: string;
    protected mdcProps: never[];
    protected materialDom(props: any): JSX.Element;
}
export interface IDialogBodyProps {
    scrollable?: boolean;
}
export interface IDialogBodyState {
}
export declare class DialogBody extends MaterialComponent<IDialogBodyProps, IDialogBodyState> {
    protected componentName: string;
    protected mdcProps: string[];
    protected materialDom(props: any): JSX.Element;
}
export interface IDialogFooterProps {
}
export interface IDialogFooterState {
}
export declare class DialogFooter extends MaterialComponent<IDialogFooterProps, IDialogFooterState> {
    protected componentName: string;
    protected mdcProps: never[];
    protected materialDom(props: any): JSX.Element;
}
export interface IDialogFooterButtonProps {
    accept?: boolean;
    cancel?: boolean;
}
export interface IDialogFooterButtonState {
}
export declare class DialogFooterButton extends Button<IDialogFooterButtonProps, IDialogFooterButtonState> {
    protected componentName: string;
    protected mdcProps: string[];
    protected materialDom(props: any): JSX.Element;
}
export interface IDialogProps extends JSX.HTMLAttributes {
    onAccept?: JSX.GenericEventHandler;
    onCancel?: JSX.GenericEventHandler;
}
export interface IDialogState {
}
export declare class Dialog extends MaterialComponent<IDialogProps, IDialogState> {
    MDComponent?: MDCDialog;
    protected componentName: string;
    protected mdcProps: never[];
    componentDidMount(): void;
    componentWillUnmount(): void;
    protected onAccept(e: any): void;
    protected onCancel(e: any): void;
    protected materialDom(props: any): JSX.Element;
}
export default class extends Dialog {
    static readonly Header: typeof DialogHeader;
    static readonly Body: typeof DialogBody;
    static readonly Footer: typeof DialogFooter;
    static readonly FooterButton: typeof DialogFooterButton;
}
