import React from 'react';
import { ViewStyle } from 'react-native';
import modalStyles from './styles';
export { modalStyles };
export interface ModalProps {
    style?: ViewStyle | ViewStyle[];
    containerStyle?: ViewStyle | ViewStyle[];
    cancelable?: boolean;
    scrollable?: boolean;
    backdropColor?: string;
    viewportWidth?: number;
    viewportHeight?: number;
    offsetX?: number;
    offsetY?: number;
    animatedTranslateX?: number | null;
    animatedTranslateY?: number | null;
    onOpen?: any;
    onOpened?: any;
    onClose?: any;
    onClosed?: any;
}
export declare class Modal<T extends ModalProps> extends React.Component<T, any> {
    animated: any;
    modalState: any;
    static defaultProps: {
        cancelable: boolean;
        scrollable: boolean;
        backdropColor: any;
        viewportWidth: number;
        viewportHeight: number;
        offsetX: number;
        offsetY: number;
        animatedTranslateX: null;
        animatedTranslateY: null;
        containerStyle: {};
        style: {};
        onOpen: null;
        onOpened: null;
        onClose: null;
        onClosed: null;
    };
    constructor(props: any);
    init(props: any, syncTag?: boolean): void;
    componentWillReceiveProps(nextProps: any): void;
    componentWillUnmount(): void;
    componentDidUpdate(prevProps: any, prevState: any): void;
    handlePressBackdrop: () => void;
    handleLayout: (e: any) => void;
    getContent(inner?: any): JSX.Element;
    renderInnerView(innerView: any): JSX.Element;
    close(...args: any[]): any;
    open(c?: any, args?: any): Promise<any>;
    render(): null;
}
