@indielayer/ui
Version:
Indielayer UI Components with Tailwind CSS build for Vue 3
130 lines (129 loc) • 3.76 kB
TypeScript
import type { ExtractPublicPropTypes, PropType } from 'vue';
import { type Size } from '../../composables/useCommon';
import { type ThemeComponent } from '../../composables/useTheme';
declare const menuProps: {
items: PropType<MenuArrayItem[]>;
collapsible: {
type: BooleanConstructor;
default: boolean;
};
collapseIcon: StringConstructor;
expanded: BooleanConstructor;
disabled: BooleanConstructor;
rounded: {
type: BooleanConstructor;
default: boolean;
};
filled: {
type: BooleanConstructor;
default: boolean;
};
minimal: BooleanConstructor;
color: {
readonly type: StringConstructor;
readonly default: string | undefined;
};
size: {
readonly type: PropType<Size>;
readonly default: "md";
readonly validator: (value: string) => boolean;
};
};
export type MenuArrayItem = {
collapsible?: boolean;
collapseIcon?: string;
expanded?: boolean;
divider?: boolean;
items?: MenuArrayItem[];
value?: string | number;
to?: string | object;
href?: string;
target?: string;
exact?: boolean;
color?: string;
size?: Size;
label?: string;
icon?: string;
iconRight?: string;
loading?: boolean;
rounded?: boolean;
filled?: boolean;
disabled?: boolean;
active?: boolean;
attrs?: Record<string, unknown>;
prefix?: string;
suffix?: string;
onClick?: (e: MouseEvent) => void;
};
export type MenuProps = ExtractPublicPropTypes<typeof menuProps>;
type InternalClasses = 'wrapper';
export interface MenuTheme extends ThemeComponent<MenuProps, InternalClasses> {
}
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
items: PropType<MenuArrayItem[]>;
collapsible: {
type: BooleanConstructor;
default: boolean;
};
collapseIcon: StringConstructor;
expanded: BooleanConstructor;
disabled: BooleanConstructor;
rounded: {
type: BooleanConstructor;
default: boolean;
};
filled: {
type: BooleanConstructor;
default: boolean;
};
minimal: BooleanConstructor;
color: {
readonly type: StringConstructor;
readonly default: string | undefined;
};
size: {
readonly type: PropType<Size>;
readonly default: "md";
readonly validator: (value: string) => boolean;
};
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("expand" | "item-click")[], "expand" | "item-click", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
items: PropType<MenuArrayItem[]>;
collapsible: {
type: BooleanConstructor;
default: boolean;
};
collapseIcon: StringConstructor;
expanded: BooleanConstructor;
disabled: BooleanConstructor;
rounded: {
type: BooleanConstructor;
default: boolean;
};
filled: {
type: BooleanConstructor;
default: boolean;
};
minimal: BooleanConstructor;
color: {
readonly type: StringConstructor;
readonly default: string | undefined;
};
size: {
readonly type: PropType<Size>;
readonly default: "md";
readonly validator: (value: string) => boolean;
};
}>> & Readonly<{
onExpand?: ((...args: any[]) => any) | undefined;
"onItem-click"?: ((...args: any[]) => any) | undefined;
}>, {
disabled: boolean;
expanded: boolean;
color: string;
rounded: boolean;
size: Size;
filled: boolean;
collapsible: boolean;
minimal: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;