import * as React from 'react';
import Popper from 'popper.js';
import type { TetherProps, TetherState, PopperDataObject } from './types';
declare class Tether extends React.Component<TetherProps, TetherState> {
    static defaultProps: {
        anchorRef: any;
        onPopperUpdate: () => any;
        placement: "auto";
        popperRef: any;
        popperOptions: {};
    };
    popper?: Popper;
    popperHeight: number;
    popperWidth: number;
    anchorHeight: number;
    anchorWidth: number;
    state: {
        isMounted: boolean;
    };
    componentDidMount(): void;
    componentDidUpdate(prevProps: TetherProps, prevState: TetherState): void;
    componentWillUnmount(): void;
    initializePopper(): void;
    onPopperUpdate: (data: PopperDataObject) => void;
    destroyPopover(): void;
    render(): string | number | true | React.ReactElement<any, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode>;
}
export default Tether;
