@indielayer/ui
Version:
Indielayer UI Components with Tailwind CSS build for Vue 3
127 lines (126 loc) • 3.92 kB
TypeScript
import { type PropType, type ExtractPublicPropTypes, type Ref } from 'vue';
import { type Size } from '../../composables/useCommon';
import { type ThemeComponent } from '../../composables/useTheme';
declare const validators: {
variant: readonly ["line", "block"];
align: readonly ["left", "center", "right"];
size: string[];
};
declare const tabGroupProps: {
modelValue: (StringConstructor | NumberConstructor)[];
variant: {
type: PropType<"block" | "line">;
default: string;
};
align: {
type: PropType<"left" | "right" | "center">;
default: string;
};
ghost: BooleanConstructor;
grow: BooleanConstructor;
exact: BooleanConstructor;
fullWidth: {
type: BooleanConstructor;
default: boolean;
};
color: {
readonly type: StringConstructor;
readonly default: string | undefined;
};
size: {
readonly type: PropType<Size>;
readonly default: "md";
readonly validator: (value: string) => boolean;
};
};
export type TabGroupInjection = {
tabsContentRef: Ref<HTMLElement | null>;
activateTab: (tab: string | number) => void;
state: {
active: string | number | undefined;
variant: TabGroupVariant;
ghost: boolean;
grow: boolean;
exact: boolean;
size: Size;
color: string;
};
};
export type TabGroupVariant = typeof validators.variant[number];
export type TabGroupAlign = typeof validators.align[number];
export type TabGroupProps = ExtractPublicPropTypes<typeof tabGroupProps>;
type InternalClasses = 'wrapper' | 'list' | 'tracker' | 'scroller';
export interface TabGroupTheme extends ThemeComponent<TabGroupProps, InternalClasses> {
}
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
modelValue: (StringConstructor | NumberConstructor)[];
variant: {
type: PropType<"block" | "line">;
default: string;
};
align: {
type: PropType<"left" | "right" | "center">;
default: string;
};
ghost: BooleanConstructor;
grow: BooleanConstructor;
exact: BooleanConstructor;
fullWidth: {
type: BooleanConstructor;
default: boolean;
};
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, "update:modelValue"[], "update:modelValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
modelValue: (StringConstructor | NumberConstructor)[];
variant: {
type: PropType<"block" | "line">;
default: string;
};
align: {
type: PropType<"left" | "right" | "center">;
default: string;
};
ghost: BooleanConstructor;
grow: BooleanConstructor;
exact: BooleanConstructor;
fullWidth: {
type: BooleanConstructor;
default: boolean;
};
color: {
readonly type: StringConstructor;
readonly default: string | undefined;
};
size: {
readonly type: PropType<Size>;
readonly default: "md";
readonly validator: (value: string) => boolean;
};
}>> & Readonly<{
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
}>, {
color: string;
size: Size;
align: "left" | "right" | "center";
ghost: boolean;
exact: boolean;
variant: "block" | "line";
grow: boolean;
fullWidth: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, {
default?(_: {}): any;
}>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
new (): {
$slots: S;
};
};