import * as React from 'react';
/**
 * Props for {@link Dropdown} component.
 *
 * @see {@link Dropdown}
 */
export interface DropdownProps {
    /**
     * Additional CSS class for the component.
     */
    className?: string;
    /**
     * Whether the dropdown should be rendering in the expanded state.
     */
    expanded: boolean;
    /**
     * Component to display as a toggle for the dropdown.
     */
    toggle: React.ReactNode;
    /**
     * Content to display when the dropdown is expanded.
     *
     * @see {@link DropdownItem}
     */
    children: React.ReactNode;
    /**
     * Handler for clicks outside the dropdown DOM element.
     */
    onClickOutside?: () => void;
}
/**
 * Utility component to display a controllable dropdown.
 *
 * @category Components
 */
export declare function Dropdown(props: DropdownProps): import("react/jsx-runtime").JSX.Element;
/**
 * Props for {@link DropdownMenu} component.
 *
 * @see {@link DropdownMenu}
 */
export interface DropdownMenuProps {
    /**
     * Additional CSS class for the component.
     */
    className?: string;
    /**
     * Title for the toggle menu button.
     */
    title?: string;
    /**
     * {@link DropdownMenuItem} list items for the dropdown menu.
     */
    children: React.ReactNode;
}
/**
 * Utility component to display a dropdown menu with a list of items.
 *
 * @category Components
 */
export declare function DropdownMenu(props: DropdownMenuProps): import("react/jsx-runtime").JSX.Element;
export interface DropdownMenuContext {
    expanded: boolean;
    setExpanded: (update: (value: boolean) => boolean) => void;
}
export declare function useDropdownMenu(): DropdownMenuContext;
/**
 * Props for {@link DropdownMenuItem} component.
 *
 * @see {@link DropdownMenuItem}
 */
export interface DropdownMenuItemProps {
    /**
     * Additional CSS class for the component.
     */
    className?: string;
    /**
     * Title for the list item.
     */
    title?: string;
    /**
     * Whether the menu item is disabled for selection.
     *
     * @default false
     */
    disabled?: boolean;
    /**
     * Handler for the menu item selection.
     */
    onSelect?: () => void;
    /**
     * Menu item content.
     */
    children: React.ReactNode;
}
/**
 * Utility component to display a single dropdown menu item.
 *
 * @category Components
 */
export declare function DropdownMenuItem(props: DropdownMenuItemProps): import("react/jsx-runtime").JSX.Element;
/**
 * React hook to check if a component is rendered inside a dropdown menu.
 *
 * @category Hooks
 * @see {@link DropdownMenu}
 */
export declare function useInsideDropdown(): boolean;
//# sourceMappingURL=dropdown.d.ts.map