@gits-id/dropdown
Version:
GITS Dropdown Component
224 lines (223 loc) • 9.05 kB
TypeScript
import type { DropdownItemProps } from './types';
export interface Props {
modelValue?: boolean;
btnProps?: Record<string, any>;
label?: string;
right?: boolean;
items?: DropdownItemProps[];
top?: boolean;
topClass?: string;
bottomClass?: string;
panelClass?: string;
buttonWrapperClass?: string;
rightClass?: string;
leftClass?: string;
transition?: string;
icon?: string;
iconSize?: string;
iconClass?: string;
prefixIcon?: string;
prefixIconSize?: string;
prefixIconClass?: string;
}
declare const _default: {
new (...args: any[]): {
$: import("vue").ComponentInternalInstance;
$data: {};
$props: Partial<{
label: string;
icon: string;
iconSize: string;
iconClass: string;
modelValue: boolean;
btnProps: Record<string, any>;
right: boolean;
items: DropdownItemProps[];
top: boolean;
topClass: string;
bottomClass: string;
panelClass: string;
buttonWrapperClass: string;
rightClass: string;
leftClass: string;
transition: string;
prefixIcon: string;
prefixIconSize: string;
}> & Omit<Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
modelValue: boolean;
btnProps: () => {
variant: string;
};
label: string;
right: boolean;
items: () => never[];
top: boolean;
topClass: string;
bottomClass: string;
panelClass: string;
buttonWrapperClass: string;
leftClass: string;
rightClass: string;
transition: string;
icon: string;
iconSize: string;
iconClass: string;
prefixIcon: string;
prefixIconSize: string;
}>>> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "label" | "icon" | "iconSize" | "iconClass" | "modelValue" | "btnProps" | "right" | "items" | "top" | "topClass" | "bottomClass" | "panelClass" | "buttonWrapperClass" | "rightClass" | "leftClass" | "transition" | "prefixIcon" | "prefixIconSize">;
$attrs: {
[x: string]: unknown;
};
$refs: {
[x: string]: unknown;
};
$slots: Readonly<{
[name: string]: import("vue").Slot | undefined;
}>;
$root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
$parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
$emit: (event: string, ...args: any[]) => void;
$el: any;
$options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
modelValue: boolean;
btnProps: () => {
variant: string;
};
label: string;
right: boolean;
items: () => never[];
top: boolean;
topClass: string;
bottomClass: string;
panelClass: string;
buttonWrapperClass: string;
leftClass: string;
rightClass: string;
transition: string;
icon: string;
iconSize: string;
iconClass: string;
prefixIcon: string;
prefixIconSize: string;
}>>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
label: string;
icon: string;
iconSize: string;
iconClass: string;
modelValue: boolean;
btnProps: Record<string, any>;
right: boolean;
items: DropdownItemProps[];
top: boolean;
topClass: string;
bottomClass: string;
panelClass: string;
buttonWrapperClass: string;
rightClass: string;
leftClass: string;
transition: string;
prefixIcon: string;
prefixIconSize: string;
}> & {
beforeCreate?: ((() => void) | (() => void)[]) | undefined;
created?: ((() => void) | (() => void)[]) | undefined;
beforeMount?: ((() => void) | (() => void)[]) | undefined;
mounted?: ((() => void) | (() => void)[]) | undefined;
beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
updated?: ((() => void) | (() => void)[]) | undefined;
activated?: ((() => void) | (() => void)[]) | undefined;
deactivated?: ((() => void) | (() => void)[]) | undefined;
beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
destroyed?: ((() => void) | (() => void)[]) | undefined;
unmounted?: ((() => void) | (() => void)[]) | undefined;
renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void)[]) | undefined;
};
$forceUpdate: () => void;
$nextTick: typeof import("vue").nextTick;
$watch(source: string | Function, cb: Function, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
} & Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
modelValue: boolean;
btnProps: () => {
variant: string;
};
label: string;
right: boolean;
items: () => never[];
top: boolean;
topClass: string;
bottomClass: string;
panelClass: string;
buttonWrapperClass: string;
leftClass: string;
rightClass: string;
transition: string;
icon: string;
iconSize: string;
iconClass: string;
prefixIcon: string;
prefixIconSize: string;
}>>> & import("vue").ShallowUnwrapRef<{}> & {} & import("vue").ComponentCustomProperties;
__isFragment?: undefined;
__isTeleport?: undefined;
__isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
modelValue: boolean;
btnProps: () => {
variant: string;
};
label: string;
right: boolean;
items: () => never[];
top: boolean;
topClass: string;
bottomClass: string;
panelClass: string;
buttonWrapperClass: string;
leftClass: string;
rightClass: string;
transition: string;
icon: string;
iconSize: string;
iconClass: string;
prefixIcon: string;
prefixIconSize: string;
}>>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
label: string;
icon: string;
iconSize: string;
iconClass: string;
modelValue: boolean;
btnProps: Record<string, any>;
right: boolean;
items: DropdownItemProps[];
top: boolean;
topClass: string;
bottomClass: string;
panelClass: string;
buttonWrapperClass: string;
rightClass: string;
leftClass: string;
transition: string;
prefixIcon: string;
prefixIconSize: string;
}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
$slots: typeof import('./Dropdown.vue.__VLS_template').default;
});
export default _default;
declare type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
declare type __VLS_TypePropsToRuntimeProps<T> = {
[K in keyof T]-?: {} extends Pick<T, K> ? {
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
} : {
type: import('vue').PropType<T[K]>;
required: true;
};
};
declare type __VLS_WithDefaults<P, D> = {
[K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
default: D[K];
} : P[K];
};