import { PureComponent, ReactNode } from 'react';
import ResizeObserver from 'resize-observer-polyfill';
declare type DomElement = Element | null;
interface ResizeObserverProps {
    children?: ReactNode;
    disabled?: boolean;
    onResize?: (width: number, height: number, target: DomElement) => void;
    resizeProp?: 'width' | 'height' | 'both';
    immediately?: boolean;
    boxSize?: 'borderBox' | 'contentBox';
}
declare class ReactResizeObserver extends PureComponent<ResizeObserverProps> {
    static defaultProps: {
        resizeProp: string;
        boxSize: string;
    };
    resizeObserver: ResizeObserver | null;
    width: number;
    height: number;
    componentDidMount(): void;
    componentDidUpdate(): void;
    componentWillUnmount(): void;
    onComponentUpdated(): void;
    onResize: ResizeObserverCallback;
    destroyObserver(): void;
    render(): {} | null;
}
export default ReactResizeObserver;
