import type { PropsWithChildren } from 'react';
import React from 'react';
import type { Placement } from '../_utils/types';
/**
 * @deprecatedSince 9
 * @deprecated Never officially documented/supported
 */
export interface AnchorConfig {
    canFlip?: boolean;
    dependencies?: Array<any>;
    onLayout?: (anchor: AnchorApi) => any;
    overlayRef: React.RefObject<HTMLElement>;
    padding?: number;
    placement?: Placement;
    targetRef: React.RefObject<HTMLElement>;
    shrinkOverlay?: boolean;
    isFlyout?: boolean;
}
/**
 * @deprecatedSince 9
 * @deprecated Never officially documented/supported
 */
export interface AnchorProps extends PropsWithChildren<AnchorConfig> {
}
/**
 * @deprecatedSince 9
 * @deprecated Never officially documented/supported
 */
export interface AnchorApi {
    left: number;
    /**
     * @deprecated
     *
     * use `shrinkOverlay` boolean property to set `minWidth`
     *
     * @deprecatedSince 10.20.0
     */
    minWidth: number;
    placement: Placement;
    top: number;
}
/**
 * @deprecatedSince 9
 * @deprecated Never officially documented/supported
 */
export declare const initAnchor: AnchorApi;
/**
 * @deprecatedSince 9
 * @deprecated Never officially documented/supported
 */
export declare function useAnchor({ canFlip, dependencies, onLayout, padding, placement, overlayRef, targetRef, shrinkOverlay, isFlyout, }: AnchorConfig): AnchorApi;
/**
 * @deprecatedSince 9
 * @deprecated Never officially documented/supported
 */
export declare function Anchor({ children, overlayRef, targetRef, ...props }: AnchorProps): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
