vuetify
Version:
Vue Material Component Framework
174 lines (168 loc) • 6.23 kB
TypeScript
import * as vue from 'vue';
import { JSXComponent, PropType } from 'vue';
// @ts-ignore
import * as vue_router from 'vue-router';
type Density = null | 'default' | 'comfortable' | 'compact';
type IconValue = string | JSXComponent;
declare const IconValue: PropType<IconValue>;
type EventProp<T = (...args: any[]) => any> = T | T[];
declare const EventProp: PropType<EventProp<(...args: any[]) => any>>;
declare const VChip: vue.DefineComponent<{
replace: boolean;
filter: boolean;
exact: boolean;
label: boolean;
draggable: boolean;
disabled: boolean;
size: string | number;
tag: string;
density: Density;
variant: NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
modelValue: boolean;
ripple: boolean;
closable: boolean;
closeIcon: IconValue;
closeLabel: string;
pill: boolean;
filterIcon: string;
} & {
link?: boolean | undefined;
border?: string | number | boolean | undefined;
color?: string | undefined;
value?: any;
text?: string | undefined;
onClick?: EventProp<(...args: any[]) => any> | undefined;
onClickOnce?: EventProp<(...args: any[]) => any> | undefined;
href?: string | undefined;
elevation?: string | number | undefined;
to?: vue_router.RouteLocationRaw | undefined;
theme?: string | undefined;
rounded?: string | number | boolean | undefined;
selectedClass?: string | undefined;
prependIcon?: IconValue | undefined;
appendIcon?: IconValue | undefined;
activeClass?: string | undefined;
appendAvatar?: string | undefined;
prependAvatar?: string | undefined;
} & {
$children?: {} | vue.VNodeChild | {
default?: (() => vue.VNodeChild) | undefined;
label?: (() => vue.VNodeChild) | undefined;
prepend?: (() => vue.VNodeChild) | undefined;
append?: (() => vue.VNodeChild) | undefined;
};
$slots?: {
default?: (() => vue.VNodeChild) | undefined;
label?: (() => vue.VNodeChild) | undefined;
prepend?: (() => vue.VNodeChild) | undefined;
append?: (() => vue.VNodeChild) | undefined;
} | undefined;
'v-slots'?: {
default?: false | (() => vue.VNodeChild) | undefined;
label?: false | (() => vue.VNodeChild) | undefined;
prepend?: false | (() => vue.VNodeChild) | undefined;
append?: false | (() => vue.VNodeChild) | undefined;
} | undefined;
} & {
"v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
"v-slot:label"?: false | (() => vue.VNodeChild) | undefined;
"v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
"v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
}, () => false | JSX.Element, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
'click:close': (e: Event) => true;
'update:modelValue': (value: boolean) => true;
'group:selected': (val: {
value: boolean;
}) => true;
click: (e: MouseEvent | KeyboardEvent) => true;
}, string, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, {
replace: boolean;
filter: boolean;
exact: boolean;
label: boolean;
draggable: boolean;
disabled: boolean;
size: string | number;
tag: string;
density: Density;
variant: NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
modelValue: boolean;
ripple: boolean;
closable: boolean;
closeIcon: IconValue;
closeLabel: string;
pill: boolean;
filterIcon: string;
} & {
link?: boolean | undefined;
border?: string | number | boolean | undefined;
color?: string | undefined;
value?: any;
text?: string | undefined;
onClick?: EventProp<(...args: any[]) => any> | undefined;
onClickOnce?: EventProp<(...args: any[]) => any> | undefined;
href?: string | undefined;
elevation?: string | number | undefined;
to?: vue_router.RouteLocationRaw | undefined;
theme?: string | undefined;
rounded?: string | number | boolean | undefined;
selectedClass?: string | undefined;
prependIcon?: IconValue | undefined;
appendIcon?: IconValue | undefined;
activeClass?: string | undefined;
appendAvatar?: string | undefined;
prependAvatar?: string | undefined;
} & {
$children?: {} | vue.VNodeChild | {
default?: (() => vue.VNodeChild) | undefined;
label?: (() => vue.VNodeChild) | undefined;
prepend?: (() => vue.VNodeChild) | undefined;
append?: (() => vue.VNodeChild) | undefined;
};
$slots?: {
default?: (() => vue.VNodeChild) | undefined;
label?: (() => vue.VNodeChild) | undefined;
prepend?: (() => vue.VNodeChild) | undefined;
append?: (() => vue.VNodeChild) | undefined;
} | undefined;
'v-slots'?: {
default?: false | (() => vue.VNodeChild) | undefined;
label?: false | (() => vue.VNodeChild) | undefined;
prepend?: false | (() => vue.VNodeChild) | undefined;
append?: false | (() => vue.VNodeChild) | undefined;
} | undefined;
} & {
"v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
"v-slot:label"?: false | (() => vue.VNodeChild) | undefined;
"v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
"v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
} & {
onClick?: ((e: MouseEvent | KeyboardEvent) => any) | undefined;
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
"onGroup:selected"?: ((val: {
value: boolean;
}) => any) | undefined;
"onClick:close"?: ((e: Event) => any) | undefined;
}, {
replace: boolean;
link: boolean;
filter: boolean;
exact: boolean;
label: boolean;
draggable: boolean;
disabled: boolean;
size: string | number;
tag: string;
rounded: string | number | boolean;
density: Density;
variant: NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
modelValue: boolean;
ripple: boolean;
closable: boolean;
closeIcon: IconValue;
closeLabel: string;
pill: boolean;
filterIcon: string;
}>;
type VChip = InstanceType<typeof VChip>;
export { VChip };