import type { ComponentProps, ContextType, RefObject } from 'preact';
import type { TabBarContext, TabBarLayout } from '../UNSAFE_TabBarCommon';
type TabBarContextValue = ContextType<typeof TabBarContext>;
export type useTabBarOptions = {
    class?: string;
    display?: TabBarContextValue['display'];
    edge?: 'bottom' | 'top';
    onRemove?: TabBarContextValue['onRemove'];
    onSelect?: TabBarContextValue['onSelect'];
    ref?: RefObject<HTMLDivElement>;
    selection?: TabBarContextValue['selection'];
    size?: TabBarContextValue['size'];
    children?: ComponentProps<typeof TabBarLayout>['children'];
};
/**
 * A thin wrapper around useTabBar hook
 */
export declare function useTabBarMixed(options: useTabBarOptions): {
    readonly rootProps: {};
    readonly tabBarContext: {
        readonly currentKey: string | number | undefined;
        readonly display: "standard" | "icons" | "stacked" | undefined;
        readonly isEdgeBottom: boolean;
        readonly layout: "condense";
        readonly onRemove: (<K extends string | number>(detail: {
            value: K;
        }) => void) | undefined;
        readonly onSelect: (<K extends string | number>(detail: {
            value: K;
        }) => void) | undefined;
        readonly showFocusRing: boolean;
        readonly hideTooltip: boolean;
        readonly selection: string | number | undefined;
        readonly size: "never" | "md" | "lg" | undefined;
        readonly tabItemPrefix: string;
    };
    readonly menuProps: {
        readonly onClose: (detail: {
            reason: "dismissed" | "itemAction";
        } | {
            reason: "outsideClick";
            target: Element;
        }) => void;
        readonly placement?: import("../UNSAFE_Floating").Placement | undefined;
        readonly isOpen?: boolean;
        readonly anchorRef: RefObject<Element | import("../UNSAFE_Floating").Coords>;
        readonly offsetValue?: import("../UNSAFE_Floating").Offset | undefined;
        readonly initialFocus?: "menu" | "firstItem";
    };
    readonly contextMenuContext: import("../UNSAFE_TabBarCommon").TabBarItemContext<string | number> | undefined;
};
export {};
