import * as React from 'react'; import ResizeObserver from 'resize-observer-polyfill'; interface ResizeObserverProps { children: React.ReactNode; disabled?: boolean; /** Trigger if element resized. Will always trigger when first time render. */ onResize?: (size: { width: number; height: number; }) => void; } interface ResizeObserverState { height: number; width: number; } declare type RefNode = React.ReactInstance | HTMLElement | null; declare class ReactResizeObserver extends React.Component { static displayName: string; resizeObserver: ResizeObserver | null; childNode: RefNode; currentElement: Element | null; state: { width: number; height: number; }; componentDidMount(): void; componentDidUpdate(): void; componentWillUnmount(): void; onComponentUpdated(): void; onResize: ResizeObserverCallback; setChildNode: (node: RefNode) => void; destroyObserver(): void; render(): React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>[] | null; } export default ReactResizeObserver;