import * as React from "react";
import * as PropTypes from "prop-types";
import "./Modal.less";
export interface Props {
    className?: string;
    width?: number;
    title: React.ReactNode;
    closeModal: () => void;
    children: React.ReactNode;
    focusLocked?: boolean;
    createPortal?: boolean;
}
interface State {
    windowHeight: number;
}
export declare class Modal extends React.Component<Props, State> {
    static propTypes: {
        className: PropTypes.Requireable<string>;
        width: PropTypes.Requireable<number>;
        title: PropTypes.Validator<PropTypes.ReactNodeLike>;
        closeModal: PropTypes.Validator<(...args: any[]) => any>;
        children: PropTypes.Validator<PropTypes.ReactNodeLike>;
        focusLocked: PropTypes.Requireable<boolean>;
        createPortal: PropTypes.Requireable<boolean>;
    };
    static defaultProps: {
        width: number;
        focusLocked: boolean;
        createPortal: boolean;
    };
    constructor(props: Props);
    componentDidMount(): void;
    componentWillUnmount(): void;
    handleKeyUp(e: any): void;
    handleResize(): void;
    render(): any;
}
export {};
