UNPKG

@neosjs/vitepress-theme

Version:

NeosJS VitePress theme

39 lines (38 loc) 1.32 kB
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;