UNPKG

@sandlada/vue-mdc

Version:

![Vue MDC Logo](https://raw.githubusercontent.com/sandlada/vue-mdc/refs/heads/main/docs/vue-mdc-cover.png)

35 lines 1.15 kB
/** * @license * Copyright 2025 Sandlada & Kai Orion * SPDX-License-Identifier: MIT */ import { type Component, type Ref } from 'vue'; import type { JSX } from 'vue/jsx-runtime'; export interface INavigation { getTabElements(): Array<HTMLElement>; getActiveTabElement(): HTMLElement | null; setActiveTabByLabel: (label: string) => void; setActiveTabByOrder: (order: number) => void; setActiveTabByElement: (element: HTMLElement) => void; } export interface INavigationItem { label: string; href?: string; disabled?: boolean; hide?: boolean; icon?: JSX.Element | Component; hideInactiveLabel?: boolean; } interface IUseNavigableOptions { tabs: Array<INavigationItem>; hideInactiveLabel?: boolean; defaultActiveTabOrder?: number; handleChange?: (e: Event) => void; } export declare const SNavigableController: unique symbol; export interface INavigableHost extends HTMLElement { [SNavigableController]: INavigation; } export declare function useNavigable(hostRef: Ref<HTMLElement | null>, options: IUseNavigableOptions): INavigation; export {}; //# sourceMappingURL=use-navigable.d.ts.map