import { default as React, ReactNode } from 'react';
import { SpacerProps } from '../../../components/Spacer/Spacer';
import { SettingMenuTitleProps, SettingMenuGroupProps, SettingMenuItemProps, SettingMenuSubMenuProps, SettingMenuDescriptionProps, SettingMenuCustomContentProps } from './components';
export interface SettingMenuProps {
    /** Custom trigger element (defaults to settings icon button) */
    trigger?: ReactNode;
    /** Controlled open state */
    open?: boolean;
    /** Callback when open state changes */
    onOpenChange?: (open: boolean) => void;
    /** Placement of the menu relative to trigger */
    placement?: "bottom-start" | "bottom-end" | "top-start" | "top-end";
    /** Additional CSS classes for the menu container */
    className?: string;
    /** Offset from the trigger element */
    offset?: [number, number];
    /** Children components */
    children: ReactNode;
}
interface SettingMenuComponent extends React.FC<SettingMenuProps> {
    Title: React.FC<SettingMenuTitleProps>;
    Group: React.FC<SettingMenuGroupProps>;
    Item: React.FC<SettingMenuItemProps>;
    SubMenu: React.FC<SettingMenuSubMenuProps>;
    Description: React.FC<SettingMenuDescriptionProps>;
    CustomContent: React.FC<SettingMenuCustomContentProps>;
    Spacer: React.FC<SpacerProps>;
}
export declare const SettingMenu: SettingMenuComponent;
export {};
