import * as React from 'react';
import { InteractionType } from '@base-ui-components/utils/useEnhancedClickHandler';
import type { Side, Align } from "../../utils/useAnchorPositioning.js";
import type { BaseUIComponentProps } from "../../utils/types.js";
import type { TransitionStatus } from "../../utils/useTransitionStatus.js";
/**
* A container for the popover contents.
* Renders a `
` element.
*
* Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)
*/
export declare const PopoverPopup: React.ForwardRefExoticComponent
>;
export interface PopoverPopupState {
/**
* Whether the popover is currently open.
*/
open: boolean;
side: Side;
align: Align;
transitionStatus: TransitionStatus;
}
export interface PopoverPopupProps extends BaseUIComponentProps<'div', PopoverPopup.State> {
/**
* Determines the element to focus when the popover is opened.
*
* - `false`: Do not move focus.
* - `true`: Move focus based on the default behavior (first tabbable element or popup).
* - `RefObject`: Move focus to the ref element.
* - `function`: Called with the interaction type (`mouse`, `touch`, `pen`, or `keyboard`).
* Return an element to focus, `true` to use the default behavior, or `false`/`undefined` to do nothing.
*/
initialFocus?: boolean | React.RefObject | ((openType: InteractionType) => void | boolean | HTMLElement | null);
/**
* Determines the element to focus when the popover is closed.
*
* - `false`: Do not move focus.
* - `true`: Move focus based on the default behavior (trigger or previously focused element).
* - `RefObject`: Move focus to the ref element.
* - `function`: Called with the interaction type (`mouse`, `touch`, `pen`, or `keyboard`).
* Return an element to focus, `true` to use the default behavior, or `false`/`undefined` to do nothing.
*/
finalFocus?: boolean | React.RefObject | ((closeType: InteractionType) => void | boolean | HTMLElement | null);
}
export declare namespace PopoverPopup {
type State = PopoverPopupState;
type Props = PopoverPopupProps;
}