import * as React from "react"; import { EasingFunction } from "react-native"; import { ITheme } from "@ef-carbon/react-native-style"; import IWidthHeight from "../../IDimensions"; import IResource from "../../Resource/index"; import IDimensions, { IOptions as IDimensionsOptions } from "../IDimensions"; export interface IProps extends Pick, "onDimensions"> { dimensions: IWidthHeight | undefined; aspect?: number; onSize(dimensions: IWidthHeight): void; animate?: boolean; scaleDelay?: number; scaleDuration?: number; scaleEasing?: EasingFunction; onScaleBegin?(): void; onScaleEnd?(): void; theme?: ITheme; } export interface IState { width?: number; minHeight: number; } declare class Dimensions extends React.PureComponent, IState> implements Pick>> { constructor(props: IProps); componentWillReceiveProps({ dimensions, aspect: explicit }: IProps): void; render(): React.ReactNode; readonly width: number; readonly height: number; private readonly dimensions; private readonly aspect; private readonly handleLayout; private readonly viewStyle; private calculate; private readonly handleAnimationBegin; private readonly handleAnimationEnd; } export interface IStatic extends React.ComponentClass> { } declare const component: IStatic; export { component as Component }; export default Dimensions;