@synergy-design-system/vue
Version:
Vue3 wrappers for the Synergy Design System
127 lines (120 loc) • 4.65 kB
TypeScript
import { SynShowEvent, SynHideEvent, SynBlurEvent, SynFocusEvent, SynNavItem } from '@synergy-design-system/components';
export type { SynShowEvent } from '@synergy-design-system/components';
export type { SynHideEvent } from '@synergy-design-system/components';
export type { SynBlurEvent } from '@synergy-design-system/components';
export type { SynFocusEvent } from '@synergy-design-system/components';
declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<{
/**
* The navigation item's href target.
If provided, the navigation item will use an anchor tag otherwise it will use a button tag.
If the 'children' slot is provided, the navigation item will ignore the 'href' and use
accordion behavior.
*/
href?: SynNavItem["href"];
/**
* Tells the browser where to open the link.
* Only used when `href` is present.
*/
target?: SynNavItem["target"];
/**
* When using `href`, this attribute will map to the underlying link's `rel` attribute.
Unlike regular links, the default is `noreferrer noopener` to prevent security exploits.
However, if you're using `target` to point to a specific tab/window,
this will prevent that from working correctly.
You can remove or change the default value by setting the attribute
to an empty string or a value of your choice, respectively.
*/
rel?: SynNavItem["rel"];
current?: SynNavItem["current"];
/**
* Disables the navigation item.
*/
disabled?: SynNavItem["disabled"];
/**
* The navigation item's orientation.
*/
horizontal?: SynNavItem["horizontal"];
/**
* Appends a chevron to the right side of a navigation item.
Only used if `horizontal` is false.
*/
chevron?: SynNavItem["chevron"];
/**
* Reflects HTML details element state and allows control from parent.
Only used if `horizontal` is false and `children` is defined.
*/
open?: SynNavItem["open"];
/**
* Toggle to true to show a divider above the element.
Only available when horizontal is false.
*/
divider?: SynNavItem["divider"];
}, {
nativeElement: import('vue').Ref<SynNavItem | undefined, SynNavItem | undefined>;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
"syn-show": (e: SynShowEvent) => any;
"syn-hide": (e: SynHideEvent) => any;
"syn-blur": (e: SynBlurEvent) => any;
"syn-focus": (e: SynFocusEvent) => any;
}, string, import('vue').PublicProps, Readonly<{
/**
* The navigation item's href target.
If provided, the navigation item will use an anchor tag otherwise it will use a button tag.
If the 'children' slot is provided, the navigation item will ignore the 'href' and use
accordion behavior.
*/
href?: SynNavItem["href"];
/**
* Tells the browser where to open the link.
* Only used when `href` is present.
*/
target?: SynNavItem["target"];
/**
* When using `href`, this attribute will map to the underlying link's `rel` attribute.
Unlike regular links, the default is `noreferrer noopener` to prevent security exploits.
However, if you're using `target` to point to a specific tab/window,
this will prevent that from working correctly.
You can remove or change the default value by setting the attribute
to an empty string or a value of your choice, respectively.
*/
rel?: SynNavItem["rel"];
current?: SynNavItem["current"];
/**
* Disables the navigation item.
*/
disabled?: SynNavItem["disabled"];
/**
* The navigation item's orientation.
*/
horizontal?: SynNavItem["horizontal"];
/**
* Appends a chevron to the right side of a navigation item.
Only used if `horizontal` is false.
*/
chevron?: SynNavItem["chevron"];
/**
* Reflects HTML details element state and allows control from parent.
Only used if `horizontal` is false and `children` is defined.
*/
open?: SynNavItem["open"];
/**
* Toggle to true to show a divider above the element.
Only available when horizontal is false.
*/
divider?: SynNavItem["divider"];
}> & Readonly<{
"onSyn-show"?: ((e: SynShowEvent) => any) | undefined;
"onSyn-hide"?: ((e: SynHideEvent) => any) | undefined;
"onSyn-blur"?: ((e: SynBlurEvent) => any) | undefined;
"onSyn-focus"?: ((e: SynFocusEvent) => any) | undefined;
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
nativeElement: unknown;
}, any>, {
default?(_: {}): any;
}>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
new (): {
$slots: S;
};
};