/**
* @license
* Copyright Akveo. All Rights Reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*/
import React from 'react';
import { Frame } from './type';
export interface MeasureElementProps {
force?: boolean;
shouldUseTopInsets?: boolean;
onMeasure: (frame: Frame) => void;
children: React.ReactElement;
}
export type MeasuringElement = React.ReactElement;
/**
* Measures child element size and it's screen position asynchronously.
* Returns measure result in `onMeasure` callback.
*
* Usage:
*
* ```tsx
* const onMeasure = (frame: Frame): void => {
* const { x, y } = frame.origin;
* const { width, height } = frame.size;
* ...
* };
*
*
*
*
* ```
*
* By default, it measures each time onLayout is called,
* but `force` property may be used to measure any time it's needed.
* DON'T USE THIS FLAG IF THE COMPONENT RENDERS FIRST TIME OR YOU KNOW `onLayout` WILL BE CALLED.
*/
export declare const MeasureElement: React.FC;