import React from 'react'; import Spring from 'simple-performant-harmonic-oscillator'; import { InternalSpringyProps } from './types'; declare type ReconcileScheduler = { values: { [key: string]: string; }; scheduled?: Promise | null; }; declare type CustomValueMapper = (value: number) => number; export default class SpringyDOMElement extends React.PureComponent { static contextType: React.Context<{ registerChild: (child: SpringyDOMElement) => any; unregisterChild: (child: SpringyDOMElement) => any; registerChildIndex: (child: SpringyDOMElement, index: number) => any; unregisterChildIndex: (child: SpringyDOMElement, index: number) => any; }>; _reconcileUpdate: ReconcileScheduler; _ref: HTMLElement | null; _resizeObserver: ResizeObserver | null; _isSecondRender: boolean; _needsSecondRender: boolean; _springMap: Map; _removalBlocked: boolean; _transitionOutCloneElement: HTMLElement | null; render(): JSX.Element; componentDidMount(): void; componentDidUpdate(prevProps: InternalSpringyProps): void; componentWillUnmount(): void; blockRemoval(): () => void; getSpringForProperty(property: string): Spring | null; isUnmounting(): boolean; setSpringToValueForProperty(property: string, toValue: number | 'auto', overridingFromValue?: number, customValueMapper?: CustomValueMapper): void; getDOMNode(): HTMLElement | null; _checkAndTakeOverExistingSpringyDOM(globalUniqueIDForSpringReuse: any): void; _processSpringyStyle(): void; _flipAutoPropsIfNecessary(springyStyle: { [key: string]: number | 'auto'; }): void; _setupOrUpdateSpringForProperty(property: string, propValue: number | 'auto', overridingFromValue?: number): any; _listenToSpring(spring: Spring, property: string): void; _updateValueForProperty(property: string, value: number): void; _dealWithPotentialResizeObserver(springyStyle: { [key: string]: number | 'auto'; }): void; _rerenderToUseTrueSize(): void; _killResizeObserver(): void; _handleOnExitIfExists(): void; _cleanUpSprings(): void; } export {};