import { default as React } from 'react';
export declare const ALL_MENU_OPTIONS: readonly ["home", "reports", "users_and_roles", "forecast", "performance", "ai_cfo", "cards", "bills", "billing", "reimbursements", "vendors", "checking", "rewards", "treasury", "command_center", "company_settings", "task_checklist", "transaction_categorization", "missing_receipts", "je_schedules", "flux_analysis", "reconciliation"];
export declare const toMenuOptionType: (v: string) => "bills" | "reports" | "reimbursements" | "vendors" | "forecast" | "ai_cfo" | "billing" | "home" | "treasury" | "cards" | "checking" | "users_and_roles" | "performance" | "rewards" | "command_center" | "company_settings" | "task_checklist" | "transaction_categorization" | "missing_receipts" | "je_schedules" | "flux_analysis" | "reconciliation";
export declare const toMenuOptionTypeStrict: (v: string) => "bills" | "reports" | "reimbursements" | "vendors" | "forecast" | "ai_cfo" | "billing" | "home" | "treasury" | "cards" | "checking" | "users_and_roles" | "performance" | "rewards" | "command_center" | "company_settings" | "task_checklist" | "transaction_categorization" | "missing_receipts" | "je_schedules" | "flux_analysis" | "reconciliation" | undefined;
export type Menu = (typeof ALL_MENU_OPTIONS)[number];
export declare const ALL_SETTINGS_MENU_OPTIONS: readonly ["accounting", "approval_rules", "bank_connections", "billing", "business_verification", "company_details", "integrations", "my_profile", "my_bank_connections", "notifications"];
export declare const toSettingsMenuOptionType: (v: string) => "my_profile" | "accounting" | "billing" | "company_details" | "approval_rules" | "bank_connections" | "business_verification" | "integrations" | "my_bank_connections" | "notifications";
export declare const toSettingsMenuOptionTypeStrict: (v: string) => "my_profile" | "accounting" | "billing" | "company_details" | "approval_rules" | "bank_connections" | "business_verification" | "integrations" | "my_bank_connections" | "notifications" | undefined;
export type SettingsMenu = (typeof ALL_SETTINGS_MENU_OPTIONS)[number];
export declare const ALL_AI_CFO_MENU_OPTIONS: readonly ["new_chat", "explore", "search_chats"];
export declare const toAiCfoMenuOptionType: (v: string) => "new_chat" | "explore" | "search_chats";
export declare const toAiCfoMenuOptionTypeStrict: (v: string) => "new_chat" | "explore" | "search_chats" | undefined;
export type AiCfoMenu = (typeof ALL_AI_CFO_MENU_OPTIONS)[number];
export declare const ALL_MENU_GROUPS: readonly ["close_management", "ai_intelligence", "finance", "accounts_payable", "banking", "administration"];
export declare const toMenuGroupType: (v: string) => "accounts_payable" | "close_management" | "ai_intelligence" | "finance" | "banking" | "administration";
export declare const toMenuGroupTypeStrict: (v: string) => "accounts_payable" | "close_management" | "ai_intelligence" | "finance" | "banking" | "administration" | undefined;
export type MenuGroup = (typeof ALL_MENU_GROUPS)[number];
export declare const ALL_SETTINGS_MENU_GROUPS: readonly ["company_settings", "personal_settings"];
export declare const toSettingsMenuGroupType: (v: string) => "company_settings" | "personal_settings";
export declare const toSettingsMenuGroupTypeStrict: (v: string) => "company_settings" | "personal_settings" | undefined;
export type SettingsMenuGroup = (typeof ALL_SETTINGS_MENU_GROUPS)[number];
export declare const ALL_AI_CFO_MENU_GROUPS: readonly ["ai_cfo"];
export declare const toAiCfoMenuGroupType: (v: string) => "ai_cfo";
export declare const toAiCfoMenuGroupTypeStrict: (v: string) => "ai_cfo" | undefined;
export type AiCfoMenuGroup = ReturnType<typeof toAiCfoMenuGroupType>;
export type MenuListItem = {
    group: MenuGroup | SettingsMenuGroup | AiCfoMenuGroup;
    isAnimated: boolean;
    isVisible: boolean;
    type: Menu | SettingsMenu | AiCfoMenu;
    hasTooltip?: boolean;
    subTitle?: string;
};
export default function MenuButton({ menu, isSelected, isCollapsed, subTitle, menuIconContainerStyle, menuContainerStyle, onClick, onPopupClose, treasuryYieldPercentage, rightSlot, }: Readonly<{
    isCollapsed: boolean;
    isSelected: boolean;
    menu: MenuListItem;
    menuContainerStyle?: React.CSSProperties;
    menuIconContainerStyle?: React.CSSProperties;
    rightSlot?: React.ReactNode;
    subTitle?: string;
    treasuryYieldPercentage?: number;
    onClick: (_menu: MenuListItem) => void;
    onPopupClose?: () => void;
}>): import("react/jsx-runtime").JSX.Element;
export declare const MenuContainer: import('@emotion/styled').StyledComponent<{
    theme?: import('@emotion/react').Theme;
    as?: React.ElementType;
} & {
    isCollapsed: boolean;
    isSelected: boolean;
    hasTooltip?: boolean;
}, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
export declare const MenuTitle: import('@emotion/styled').StyledComponent<{
    theme?: import('@emotion/react').Theme;
    as?: React.ElementType;
} & React.ClassAttributes<HTMLDivElement> & React.HTMLAttributes<HTMLDivElement> & {
    theme?: import('@emotion/react').Theme;
}, {}, {}>;
