import type { DefaultTheme } from 'vitepress/theme';
import { type ComputedRef, type Ref } from 'vue';
export interface SidebarControl {
    collapsed: Ref<boolean>;
    collapsible: ComputedRef<boolean>;
    isLink: ComputedRef<boolean>;
    isActiveLink: Ref<boolean>;
    hasActiveLink: ComputedRef<boolean>;
    hasChildren: ComputedRef<boolean>;
    toggle: () => void;
}
export declare function useSidebar(): {
    isOpen: Ref<boolean>;
    sidebar: Ref<{
        text?: string;
        link?: string;
        items?: any[] | undefined;
        collapsed?: boolean;
        base?: string;
        docFooterText?: string;
        rel?: string;
        target?: string;
    }[]>;
    sidebarGroups: ComputedRef<DefaultTheme.SidebarItem[]>;
    hasSidebar: ComputedRef<boolean>;
    hasAside: ComputedRef<boolean>;
    leftAside: ComputedRef<boolean>;
    isSidebarEnabled: ComputedRef<boolean>;
    open: () => void;
    close: () => void;
    toggle: () => void;
};
/**
 * a11y: cache the element that opened the Sidebar (the menu button) then
 * focus that button again when Menu is closed with Escape key.
 */
export declare function useCloseSidebarOnEscape(isOpen: Ref<boolean>, close: () => void): void;
export declare function useSidebarControl(item: ComputedRef<DefaultTheme.SidebarItem>): SidebarControl;
