import type { ComponentProps, ComponentType, PropsWithChildren, ReactNode, Ref } from 'react';
import { type PopperLikePlacement } from '../Dialog/hooks/usePopoverPosition';
type DropdownContextValue = {
    close(): void;
};
export declare const useDropdownContext: () => DropdownContextValue;
export type DropdownTriggerProps = Pick<ComponentProps<'button'>, 'aria-expanded' | 'onClick'> & {
    children?: ReactNode;
    referenceRef?: Ref<HTMLElement>;
};
export type DropdownProps = PropsWithChildren<{
    className?: string;
    matchReferenceWidth?: boolean;
    onClose?: () => void;
    onOpen?: () => void;
    placement?: PopperLikePlacement;
    TriggerComponent?: ComponentType<DropdownTriggerProps>;
    triggerProps?: Omit<DropdownTriggerProps, 'aria-expanded' | 'onClick' | 'referenceRef'>;
    referenceElement?: HTMLElement | null;
}>;
export declare const Dropdown: ({ children, className, matchReferenceWidth, onClose, onOpen, placement, referenceElement, TriggerComponent, triggerProps, }: DropdownProps) => import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=Dropdown.d.ts.map