vexip-ui
Version:
A Vue 3 UI library, Highly customizability, full TypeScript, performance pretty good
170 lines (169 loc) • 6.08 kB
TypeScript
import { Dateable } from '@vexip-ui/utils';
import { CalendarPanelSlots } from './symbol';
declare function isSelected(date: Date): boolean;
declare function isDisabled(date: Date): boolean;
declare function isHovered(date: Date): boolean;
declare function isPrevMonth(date: Date): boolean;
declare function isNextMonth(date: Date): boolean;
declare function isToday(date: Date): boolean;
declare function isInRange(date: Date): boolean;
declare function __VLS_template(): {
attrs: Partial<{}>;
slots: Readonly<CalendarPanelSlots> & CalendarPanelSlots;
refs: {
body: HTMLDivElement;
};
rootEl: HTMLDivElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
inherit: import('vue').PropType<boolean>;
locale: import('vue').PropType<Partial<{
year: string;
month: string;
month1: string;
month2: string;
month3: string;
month4: string;
month5: string;
month6: string;
month7: string;
month8: string;
month9: string;
month10: string;
month11: string;
month12: string;
week1: string;
week2: string;
week3: string;
week4: string;
week5: string;
week6: string;
week7: string;
ariaLabel: {
year: string;
month: string;
month1: string;
month2: string;
month3: string;
month4: string;
month5: string;
month6: string;
month7: string;
month8: string;
month9: string;
month10: string;
month11: string;
month12: string;
week1: string;
week2: string;
week3: string;
week4: string;
week5: string;
week6: string;
week7: string;
};
}>>;
value: import('vue').PropType<string | number | Date | Dateable[]>;
year: import('vue').PropType<number>;
month: import('vue').PropType<number>;
weekDays: import('vue').PropType<string[]>;
weekStart: import('vue').PropType<number>;
today: import('vue').PropType<string | number | Date>;
disabledDate: import('vue').PropType<(data: Date) => boolean>;
valueType: import('vue').PropType<"start" | "end">;
min: import('vue').PropType<string | number | Date>;
max: import('vue').PropType<string | number | Date>;
range: import('vue').PropType<boolean>;
selectRow: import('vue').PropType<boolean>;
slots: import('vue').PropType<CalendarPanelSlots>;
onSelect: import('vue').PropType<((date: Date) => void) | ((date: Date) => void)[]>;
onHover: import('vue').PropType<((date: Date | null) => void) | ((date: Date | null) => void)[]>;
}>, {
startValue: import('vue').Ref<Date | null, Date | null>;
endValue: import('vue').Ref<Date | null, Date | null>;
body: import('vue').Ref<HTMLElement | null | undefined, HTMLElement | null | undefined>;
isSelected: typeof isSelected;
isHovered: typeof isHovered;
isPrevMonth: typeof isPrevMonth;
isNextMonth: typeof isNextMonth;
isDisabled: typeof isDisabled;
isToday: typeof isToday;
isInRange: typeof isInRange;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
"update:value": (...args: any[]) => void;
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
inherit: import('vue').PropType<boolean>;
locale: import('vue').PropType<Partial<{
year: string;
month: string;
month1: string;
month2: string;
month3: string;
month4: string;
month5: string;
month6: string;
month7: string;
month8: string;
month9: string;
month10: string;
month11: string;
month12: string;
week1: string;
week2: string;
week3: string;
week4: string;
week5: string;
week6: string;
week7: string;
ariaLabel: {
year: string;
month: string;
month1: string;
month2: string;
month3: string;
month4: string;
month5: string;
month6: string;
month7: string;
month8: string;
month9: string;
month10: string;
month11: string;
month12: string;
week1: string;
week2: string;
week3: string;
week4: string;
week5: string;
week6: string;
week7: string;
};
}>>;
value: import('vue').PropType<string | number | Date | Dateable[]>;
year: import('vue').PropType<number>;
month: import('vue').PropType<number>;
weekDays: import('vue').PropType<string[]>;
weekStart: import('vue').PropType<number>;
today: import('vue').PropType<string | number | Date>;
disabledDate: import('vue').PropType<(data: Date) => boolean>;
valueType: import('vue').PropType<"start" | "end">;
min: import('vue').PropType<string | number | Date>;
max: import('vue').PropType<string | number | Date>;
range: import('vue').PropType<boolean>;
selectRow: import('vue').PropType<boolean>;
slots: import('vue').PropType<CalendarPanelSlots>;
onSelect: import('vue').PropType<((date: Date) => void) | ((date: Date) => void)[]>;
onHover: import('vue').PropType<((date: Date | null) => void) | ((date: Date | null) => void)[]>;
}>> & Readonly<{
"onUpdate:value"?: ((...args: any[]) => any) | undefined;
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
body: HTMLDivElement;
}, HTMLDivElement>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
new (): {
$slots: S;
};
};