@angelblanco/v-calendar
Version:
A calendar and date picker plugin for Vue.js.
1,030 lines • 1.12 MB
TypeScript
import { type ExtractPropTypes, type PropType } from 'vue';
import { type Event, type EventConfig } from '../utils/calendar/event';
import { DateRange, DateRangeContext } from '../utils/date/range';
import type { CalendarDay } from '../utils/page';
export type GridStateEvent = 'GRID_CURSOR_DOWN' | 'GRID_CURSOR_DOWN_SHIFT' | 'GRID_CURSOR_MOVE' | 'GRID_CURSOR_MOVE_SHIFT' | 'GRID_CURSOR_UP' | 'GRID_CURSOR_UP_SHIFT' | 'EVENT_CURSOR_DOWN' | 'EVENT_CURSOR_DOWN_SHIFT' | 'EVENT_CURSOR_MOVE' | 'EVENT_CURSOR_MOVE_SHIFT' | 'EVENT_RESIZE_START_CURSOR_DOWN' | 'EVENT_RESIZE_START_CURSOR_DOWN_SHIFT' | 'EVENT_RESIZE_END_CURSOR_DOWN' | 'EVENT_RESIZE_END_CURSOR_DOWN_SHIFT' | 'ESCAPE';
export interface Point {
x: number;
y: number;
}
export interface DragOffset {
weekdays: number;
weeks: number;
ms: number;
}
export interface ResizeOffset {
weekdays: number;
weeks: number;
ms: number;
}
export interface DragOriginState {
position: number;
date: Date;
day: CalendarDay;
event: Event;
eventSelected: boolean;
ms: number;
}
export interface ResizeOriginState {
position: number;
day: CalendarDay;
event: Event;
isWeekly: boolean;
isStart: boolean;
isNew: boolean;
ms: number;
}
export interface CreateOriginState {
position: number;
date: Date;
day: CalendarDay;
isWeekly: boolean;
}
export declare const emits: string[];
export declare const propsDef: {
events: {
type: PropType<EventConfig[]>;
default: () => never[];
};
view: {
type: PropType<import("./calendar").CalendarView>;
default: string;
validator(value: string): boolean;
};
rows: {
type: NumberConstructor;
default: number;
};
columns: {
type: NumberConstructor;
default: number;
};
step: NumberConstructor;
titlePosition: {
type: PropType<import("../utils/page").TitlePosition>;
default: () => import("../utils/page").TitlePosition;
};
navVisibility: {
type: PropType<import("../utils/popovers").PopoverVisibility>;
default: () => import("../utils/popovers").PopoverVisibility;
};
showWeeknumbers: (BooleanConstructor | StringConstructor)[];
showIsoWeeknumbers: (BooleanConstructor | StringConstructor)[];
expanded: BooleanConstructor;
borderless: BooleanConstructor;
transparent: BooleanConstructor;
initialPage: PropType<import("../utils/page").PageAddress>;
initialPagePosition: {
type: NumberConstructor;
default: number;
};
minPage: PropType<import("../utils/page").PageAddress>;
maxPage: PropType<import("../utils/page").PageAddress>;
transition: PropType<import("./calendar").MoveTransition>;
attributes: PropType<Partial<{
key: string | number;
hashcode: string;
content: import("../utils/glyph").ContentConfig;
highlight: import("../utils/glyph").HighlightConfig;
dot: import("../utils/glyph").DotConfig;
bar: import("../utils/glyph").BarConfig;
popover: Partial<{
label: string;
visibility: import("../utils/popovers").PopoverVisibility;
placement: import("@popperjs/core").Placement;
hideIndicator: boolean;
isInteractive: boolean;
}>;
event: Partial<{
label: string;
}>;
dates: import("../utils/date/range").DateRangeSource[];
customData: any;
order: number;
pinPage: boolean;
}>[]>;
trimWeeks: BooleanConstructor;
disablePageSwipe: BooleanConstructor;
color: {
type: StringConstructor;
default: () => any;
};
isDark: {
type: PropType<boolean | "system" | import("vue-screen-utils").DarkModeClassConfig>;
default: () => any;
};
firstDayOfWeek: PropType<import("../utils/date/helpers").DayOfWeek>;
masks: ObjectConstructor;
locale: PropType<string | import("../utils/locale").default | Record<string, any>>;
timezone: StringConstructor;
minDate: null;
maxDate: null;
disabledDates: null;
};
export type CalendarGridProps = Readonly<ExtractPropTypes<typeof propsDef>>;
export type CalendarGridContext = ReturnType<typeof createCalendarGrid>;
export declare function createCalendarGrid(props: CalendarGridProps, { emit, slots }: any): {
dailyGridRef: import("vue").Ref<{
getBoundingClientRect: () => DOMRect;
contains: (other: Node | null) => boolean;
} | null>;
weeklyGridRef: import("vue").Ref<{
getBoundingClientRect: () => DOMRect;
contains: (other: Node | null) => boolean;
} | null>;
cellPopoverRef: import("vue").Ref<import("vue").DefineComponent<{
popoverId: {
type: StringConstructor;
default: string;
};
}, {
displayMode: import("vue").ComputedRef<"light" | "dark">;
color: import("vue").ComputedRef<string>;
show: (event: {
refSelector: string;
isMultiDay: boolean;
isWeekly: boolean;
durationMs: number;
durationMinutes: number;
startDate: Date;
startDateTime: number;
startTimeLabel: string;
endDate: Date;
endDateTime: number;
endTimeLabel: string;
timeLabel: string;
isSolid: boolean;
dragIsDirty: boolean;
formatDate: (date: Date, mask: string) => string;
formatTime: (date: Date) => string;
resizeToConstraints: () => void;
startResize: (day: CalendarDay, isStart: boolean) => void;
updateResize: (offset: ResizeOffset) => void;
stopResize: () => void;
startDrag: (day: CalendarDay) => void;
updateDrag: (offset: DragOffset) => void;
stopDrag: () => false | undefined;
compareTo: (b: any) => number;
key: any;
summary: string;
description: string;
range: DateRange;
allDay: boolean;
color: string;
fill: string;
selected: boolean;
draggable: boolean;
dragging: boolean;
resizable: boolean;
resizing: boolean;
editing: boolean;
order: number;
snapMinutes: number;
minDurationMinutes: number;
maxDurationMinutes: number;
popover: Partial<import("../utils/popovers").PopoverOptions> | null;
resizeOrigin: import("../utils/calendar/event").ResizeOrigin | null;
dragOrigin: import("../utils/calendar/event").DragOrigin | null;
}) => void;
update: (event: {
refSelector: string;
isMultiDay: boolean;
isWeekly: boolean;
durationMs: number;
durationMinutes: number;
startDate: Date;
startDateTime: number;
startTimeLabel: string;
endDate: Date;
endDateTime: number;
endTimeLabel: string;
timeLabel: string;
isSolid: boolean;
dragIsDirty: boolean;
formatDate: (date: Date, mask: string) => string;
formatTime: (date: Date) => string;
resizeToConstraints: () => void;
startResize: (day: CalendarDay, isStart: boolean) => void;
updateResize: (offset: ResizeOffset) => void;
stopResize: () => void;
startDrag: (day: CalendarDay) => void;
updateDrag: (offset: DragOffset) => void;
stopDrag: () => false | undefined;
compareTo: (b: any) => number;
key: any;
summary: string;
description: string;
range: DateRange;
allDay: boolean;
color: string;
fill: string;
selected: boolean;
draggable: boolean;
dragging: boolean;
resizable: boolean;
resizing: boolean;
editing: boolean;
order: number;
snapMinutes: number;
minDurationMinutes: number;
maxDurationMinutes: number;
popover: Partial<import("../utils/popovers").PopoverOptions> | null;
resizeOrigin: import("../utils/calendar/event").ResizeOrigin | null;
dragOrigin: import("../utils/calendar/event").DragOrigin | null;
}) => void;
hide: () => void;
isVisible: () => boolean;
onAfterHide(): void;
event: import("vue").Ref<{
refSelector: string;
isMultiDay: boolean;
isWeekly: boolean;
durationMs: number;
durationMinutes: number;
startDate: Date;
startDateTime: number;
startTimeLabel: string;
endDate: Date;
endDateTime: number;
endTimeLabel: string;
timeLabel: string;
isSolid: boolean;
dragIsDirty: boolean;
formatDate: (date: Date, mask: string) => string;
formatTime: (date: Date) => string;
resizeToConstraints: () => void;
startResize: (day: CalendarDay, isStart: boolean) => void;
updateResize: (offset: ResizeOffset) => void;
stopResize: () => void;
startDrag: (day: CalendarDay) => void;
updateDrag: (offset: DragOffset) => void;
stopDrag: () => false | undefined;
compareTo: (b: any) => number;
key: any;
summary: string;
description: string;
range: DateRange;
allDay: boolean;
color: string;
fill: string;
selected: boolean;
draggable: boolean;
dragging: boolean;
resizable: boolean;
resizing: boolean;
editing: boolean;
order: number;
snapMinutes: number;
minDurationMinutes: number;
maxDurationMinutes: number;
popover: Partial<import("../utils/popovers").PopoverOptions> | null;
resizeOrigin: import("../utils/calendar/event").ResizeOrigin | null;
dragOrigin: import("../utils/calendar/event").DragOrigin | null;
} | null>;
popoverRef: import("vue").Ref<null>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
popoverId: {
type: StringConstructor;
default: string;
};
}>>, {
popoverId: string;
}> | undefined>;
dayColumns: import("vue").ComputedRef<number>;
dayRows: import("vue").ComputedRef<number>;
snapMinutes: import("vue").Ref<number>;
snapMs: import("vue").ComputedRef<number>;
pixelsPerHour: import("vue").Ref<number>;
isTouch: import("vue").Ref<boolean>;
events: import("vue").ComputedRef<{
refSelector: string;
isMultiDay: boolean;
isWeekly: boolean;
durationMs: number;
durationMinutes: number;
startDate: Date;
startDateTime: number;
startTimeLabel: string;
endDate: Date;
endDateTime: number;
endTimeLabel: string;
timeLabel: string;
isSolid: boolean;
dragIsDirty: boolean;
formatDate: (date: Date, mask: string) => string;
formatTime: (date: Date) => string;
resizeToConstraints: () => void;
startResize: (day: CalendarDay, isStart: boolean) => void;
updateResize: (offset: ResizeOffset) => void;
stopResize: () => void;
startDrag: (day: CalendarDay) => void;
updateDrag: (offset: DragOffset) => void;
stopDrag: () => false | undefined;
compareTo: (b: any) => number;
key: any;
summary: string;
description: string;
range: DateRange;
allDay: boolean;
color: string;
fill: string;
selected: boolean;
draggable: boolean;
dragging: boolean;
resizable: boolean;
resizing: boolean;
editing: boolean;
order: number;
snapMinutes: number;
minDurationMinutes: number;
maxDurationMinutes: number;
popover: Partial<import("../utils/popovers").PopoverOptions> | null;
resizeOrigin: import("../utils/calendar/event").ResizeOrigin | null;
dragOrigin: import("../utils/calendar/event").DragOrigin | null;
}[]>;
eventsMap: import("vue").Ref<Record<any, {
refSelector: string;
isMultiDay: boolean;
isWeekly: boolean;
durationMs: number;
durationMinutes: number;
startDate: Date;
startDateTime: number;
startTimeLabel: string;
endDate: Date;
endDateTime: number;
endTimeLabel: string;
timeLabel: string;
isSolid: boolean;
dragIsDirty: boolean;
formatDate: (date: Date, mask: string) => string;
formatTime: (date: Date) => string;
resizeToConstraints: () => void;
startResize: (day: CalendarDay, isStart: boolean) => void;
updateResize: (offset: ResizeOffset) => void;
stopResize: () => void;
startDrag: (day: CalendarDay) => void;
updateDrag: (offset: DragOffset) => void;
stopDrag: () => false | undefined;
compareTo: (b: any) => number;
key: any;
summary: string;
description: string;
range: DateRange;
allDay: boolean;
color: string;
fill: string;
selected: boolean;
draggable: boolean;
dragging: boolean;
resizable: boolean;
resizing: boolean;
editing: boolean;
order: number;
snapMinutes: number;
minDurationMinutes: number;
maxDurationMinutes: number;
popover: Partial<import("../utils/popovers").PopoverOptions> | null;
resizeOrigin: import("../utils/calendar/event").ResizeOrigin | null;
dragOrigin: import("../utils/calendar/event").DragOrigin | null;
}>>;
selectedEvents: import("vue").ComputedRef<{
refSelector: string;
isMultiDay: boolean;
isWeekly: boolean;
durationMs: number;
durationMinutes: number;
startDate: Date;
startDateTime: number;
startTimeLabel: string;
endDate: Date;
endDateTime: number;
endTimeLabel: string;
timeLabel: string;
isSolid: boolean;
dragIsDirty: boolean;
formatDate: (date: Date, mask: string) => string;
formatTime: (date: Date) => string;
resizeToConstraints: () => void;
startResize: (day: CalendarDay, isStart: boolean) => void;
updateResize: (offset: ResizeOffset) => void;
stopResize: () => void;
startDrag: (day: CalendarDay) => void;
updateDrag: (offset: DragOffset) => void;
stopDrag: () => false | undefined;
compareTo: (b: any) => number;
key: any;
summary: string;
description: string;
range: DateRange;
allDay: boolean;
color: string;
fill: string;
selected: boolean;
draggable: boolean;
dragging: boolean;
resizable: boolean;
resizing: boolean;
editing: boolean;
order: number;
snapMinutes: number;
minDurationMinutes: number;
maxDurationMinutes: number;
popover: Partial<import("../utils/popovers").PopoverOptions> | null;
resizeOrigin: import("../utils/calendar/event").ResizeOrigin | null;
dragOrigin: import("../utils/calendar/event").DragOrigin | null;
}[]>;
hasSelectedEvents: import("vue").ComputedRef<boolean>;
eventsContext: import("vue").ComputedRef<DateRangeContext>;
detailEvent: import("vue").Ref<{
refSelector: string;
isMultiDay: boolean;
isWeekly: boolean;
durationMs: number;
durationMinutes: number;
startDate: {
toString: () => string;
toDateString: () => string;
toTimeString: () => string;
toLocaleString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleDateString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleTimeString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
valueOf: () => number;
getTime: () => number;
getFullYear: () => number;
getUTCFullYear: () => number;
getMonth: () => number;
getUTCMonth: () => number;
getDate: () => number;
getUTCDate: () => number;
getDay: () => number;
getUTCDay: () => number;
getHours: () => number;
getUTCHours: () => number;
getMinutes: () => number;
getUTCMinutes: () => number;
getSeconds: () => number;
getUTCSeconds: () => number;
getMilliseconds: () => number;
getUTCMilliseconds: () => number;
getTimezoneOffset: () => number;
setTime: (time: number) => number;
setMilliseconds: (ms: number) => number;
setUTCMilliseconds: (ms: number) => number;
setSeconds: (sec: number, ms?: number | undefined) => number;
setUTCSeconds: (sec: number, ms?: number | undefined) => number;
setMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
setUTCMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
setHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
setUTCHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
setDate: (date: number) => number;
setUTCDate: (date: number) => number;
setMonth: (month: number, date?: number | undefined) => number;
setUTCMonth: (month: number, date?: number | undefined) => number;
setFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
setUTCFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
toUTCString: () => string;
toISOString: () => string;
toJSON: (key?: any) => string;
getVarDate: () => VarDate;
[Symbol.toPrimitive]: {
(hint: "default"): string;
(hint: "string"): string;
(hint: "number"): number;
(hint: string): string | number;
};
};
startDateTime: number;
startTimeLabel: string;
endDate: {
toString: () => string;
toDateString: () => string;
toTimeString: () => string;
toLocaleString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleDateString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleTimeString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
valueOf: () => number;
getTime: () => number;
getFullYear: () => number;
getUTCFullYear: () => number;
getMonth: () => number;
getUTCMonth: () => number;
getDate: () => number;
getUTCDate: () => number;
getDay: () => number;
getUTCDay: () => number;
getHours: () => number;
getUTCHours: () => number;
getMinutes: () => number;
getUTCMinutes: () => number;
getSeconds: () => number;
getUTCSeconds: () => number;
getMilliseconds: () => number;
getUTCMilliseconds: () => number;
getTimezoneOffset: () => number;
setTime: (time: number) => number;
setMilliseconds: (ms: number) => number;
setUTCMilliseconds: (ms: number) => number;
setSeconds: (sec: number, ms?: number | undefined) => number;
setUTCSeconds: (sec: number, ms?: number | undefined) => number;
setMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
setUTCMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
setHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
setUTCHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
setDate: (date: number) => number;
setUTCDate: (date: number) => number;
setMonth: (month: number, date?: number | undefined) => number;
setUTCMonth: (month: number, date?: number | undefined) => number;
setFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
setUTCFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
toUTCString: () => string;
toISOString: () => string;
toJSON: (key?: any) => string;
getVarDate: () => VarDate;
[Symbol.toPrimitive]: {
(hint: "default"): string;
(hint: "string"): string;
(hint: "number"): number;
(hint: string): string | number;
};
};
endDateTime: number;
endTimeLabel: string;
timeLabel: string;
isSolid: boolean;
dragIsDirty: boolean;
formatDate: (date: Date, mask: string) => string;
formatTime: (date: Date) => string;
resizeToConstraints: () => void;
startResize: (day: CalendarDay, isStart: boolean) => void;
updateResize: (offset: ResizeOffset) => void;
stopResize: () => void;
startDrag: (day: CalendarDay) => void;
updateDrag: (offset: DragOffset) => void;
stopDrag: () => false | undefined;
compareTo: (b: any) => number;
key: any;
summary: string;
description: string;
range: {
order: number;
locale: {
id: any;
daysInWeek: number;
firstDayOfWeek: import("../utils/date/helpers").DayOfWeek;
masks: any;
timezone: string | undefined;
hourLabels: string[];
dayNames: string[];
dayNamesShort: string[];
dayNamesShorter: string[];
dayNamesNarrow: string[];
monthNames: string[];
monthNamesShort: string[];
relativeTimeNames: {
day?: string | undefined;
week?: string | undefined;
month?: string | undefined;
year?: string | undefined;
days?: string | undefined;
weeks?: string | undefined;
seconds?: string | undefined;
minutes?: string | undefined;
hours?: string | undefined;
months?: string | undefined;
years?: string | undefined;
quarter?: string | undefined;
quarters?: string | undefined;
hour?: string | undefined;
minute?: string | undefined;
second?: string | undefined;
};
amPm: [string, string];
monthCache: {
keys: string[];
store: Record<string, import("../utils/date/helpers").MonthParts>;
size: number;
createKey: (...args: any[]) => string;
createItem: (...args: any[]) => import("../utils/date/helpers").MonthParts;
get: (...args: any[]) => import("../utils/date/helpers").MonthParts;
getOrSet: (...args: any[]) => import("../utils/date/helpers").MonthParts;
};
pageCache: {
keys: string[];
store: Record<string, import("../utils/page").CachedPage>;
size: number;
createKey: (...args: any[]) => string;
createItem: (...args: any[]) => import("../utils/page").CachedPage;
get: (...args: any[]) => import("../utils/page").CachedPage;
getOrSet: (...args: any[]) => import("../utils/page").CachedPage;
};
formatDate: (date: Date, masks: string | string[]) => string;
parseDate: (dateString: string, mask: string | string[]) => Date;
toDate: (d: Partial<import("../utils/date/helpers").SimpleDateParts> | import("../utils/date/helpers").DateSource, opts?: Partial<import("../utils/date/helpers").DateOptions>) => Date;
toDateOrNull: (d: Partial<import("../utils/date/helpers").SimpleDateParts> | import("../utils/date/helpers").DateSource, opts?: Partial<import("../utils/date/helpers").DateOptions>) => Date | null;
fromDate: (date: Date | null, { type, mask }?: Partial<import("../utils/date/helpers").DateOptions>) => string | number | Date | import("../utils/date/helpers").DateParts | null;
range: (source: import("../utils/date/range").DateRangeSource) => DateRange;
ranges: (ranges: import("../utils/date/range").DateRangeSource | import("../utils/date/range").DateRangeSource[]) => DateRange[];
getDateParts: (date: Date) => import("../utils/date/helpers").DateParts;
getDateFromParts: (parts: Partial<import("../utils/date/helpers").SimpleDateParts>) => Date;
getDateFromParams: (year: number, month: number, day: number, hours: number, minutes: number, seconds: number, milliseconds: number) => Date;
getPage: (config: import("../utils/page").PageConfig) => import("../utils/page").Page;
getMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getThisMonthParts: () => import("../utils/date/helpers").MonthParts;
getPrevMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getNextMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getHourLabels: () => string[];
getDayId: (date: Date) => string;
};
start: {
milliseconds: number;
seconds: number;
minutes: number;
hours: number;
time: number;
dateTime: number;
isValid: boolean;
timezoneOffset: number;
isPm?: boolean | undefined;
dayIndex: number;
day: number;
dayFromEnd: number;
weekday: number;
weekdayOrdinal: number;
weekdayOrdinalFromEnd: number;
week: number;
weekFromEnd: number;
weeknumber: number;
month: number;
year: number;
date: {
toString: () => string;
toDateString: () => string;
toTimeString: () => string;
toLocaleString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleDateString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleTimeString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
valueOf: () => number;
getTime: () => number;
getFullYear: () => number;
getUTCFullYear: () => number;
getMonth: () => number;
getUTCMonth: () => number;
getDate: () => number;
getUTCDate: () => number;
getDay: () => number;
getUTCDay: () => number;
getHours: () => number;
getUTCHours: () => number;
getMinutes: () => number;
getUTCMinutes: () => number;
getSeconds: () => number;
getUTCSeconds: () => number;
getMilliseconds: () => number;
getUTCMilliseconds: () => number;
getTimezoneOffset: () => number;
setTime: (time: number) => number;
setMilliseconds: (ms: number) => number;
setUTCMilliseconds: (ms: number) => number;
setSeconds: (sec: number, ms?: number | undefined) => number;
setUTCSeconds: (sec: number, ms?: number | undefined) => number;
setMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
setUTCMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
setHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
setUTCHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
setDate: (date: number) => number;
setUTCDate: (date: number) => number;
setMonth: (month: number, date?: number | undefined) => number;
setUTCMonth: (month: number, date?: number | undefined) => number;
setFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
setUTCFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
toUTCString: () => string;
toISOString: () => string;
toJSON: (key?: any) => string;
getVarDate: () => VarDate;
[Symbol.toPrimitive]: {
(hint: "default"): string;
(hint: "string"): string;
(hint: "number"): number;
(hint: string): string | number;
};
};
} | null;
end: {
milliseconds: number;
seconds: number;
minutes: number;
hours: number;
time: number;
dateTime: number;
isValid: boolean;
timezoneOffset: number;
isPm?: boolean | undefined;
dayIndex: number;
day: number;
dayFromEnd: number;
weekday: number;
weekdayOrdinal: number;
weekdayOrdinalFromEnd: number;
week: number;
weekFromEnd: number;
weeknumber: number;
month: number;
year: number;
date: {
toString: () => string;
toDateString: () => string;
toTimeString: () => string;
toLocaleString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleDateString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleTimeString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
valueOf: () => number;
getTime: () => number;
getFullYear: () => number;
getUTCFullYear: () => number;
getMonth: () => number;
getUTCMonth: () => number;
getDate: () => number;
getUTCDate: () => number;
getDay: () => number;
getUTCDay: () => number;
getHours: () => number;
getUTCHours: () => number;
getMinutes: () => number;
getUTCMinutes: () => number;
getSeconds: () => number;
getUTCSeconds: () => number;
getMilliseconds: () => number;
getUTCMilliseconds: () => number;
getTimezoneOffset: () => number;
setTime: (time: number) => number;
setMilliseconds: (ms: number) => number;
setUTCMilliseconds: (ms: number) => number;
setSeconds: (sec: number, ms?: number | undefined) => number;
setUTCSeconds: (sec: number, ms?: number | undefined) => number;
setMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
setUTCMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
setHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
setUTCHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
setDate: (date: number) => number;
setUTCDate: (date: number) => number;
setMonth: (month: number, date?: number | undefined) => number;
setUTCMonth: (month: number, date?: number | undefined) => number;
setFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
setUTCFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
toUTCString: () => string;
toISOString: () => string;
toJSON: (key?: any) => string;
getVarDate: () => VarDate;
[Symbol.toPrimitive]: {
(hint: "default"): string;
(hint: "string"): string;
(hint: "number"): number;
(hint: string): string | number;
};
};
} | null;
repeat: {
validated: boolean;
config: import("../utils/date/repeat").DateRepeatFn | {
every?: import("../utils/date/repeat").RepeatIntervalShort | [number, import("../utils/date/repeat").RepeatInterval] | undefined;
from?: {
toString: () => string;
toDateString: () => string;
toTimeString: () => string;
toLocaleString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleDateString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleTimeString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
valueOf: () => number;
getTime: () => number;
getFullYear: () => number;
getUTCFullYear: () => number;
getMonth: () => number;
getUTCMonth: () => number;
getDate: () => number;
getUTCDate: () => number;
getDay: () => number;
getUTCDay: () => number;
getHours: () => number;
getUTCHours: () => number;
getMinutes: () => number;
getUTCMinutes: () => number;
getSeconds: () => number;
getUTCSeconds: () => number;
getMilliseconds: () => number;
getUTCMilliseconds: () => number;
getTimezoneOffset: () => number;
setTime: (time: number) => number;
setMilliseconds: (ms: number) => number;
setUTCMilliseconds: (ms: number) => number;
setSeconds: (sec: number, ms?: number | undefined) => number;
setUTCSeconds: (sec: number, ms?: number | undefined) => number;
setMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
setUTCMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
setHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
setUTCHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
setDate: (date: number) => number;
setUTCDate: (date: number) => number;
setMonth: (month: number, date?: number | undefined) => number;
setUTCMonth: (month: number, date?: number | undefined) => number;
setFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
setUTCFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
toUTCString: () => string;
toISOString: () => string;
toJSON: (key?: any) => string;
getVarDate: () => VarDate;
[Symbol.toPrimitive]: {
(hint: "default"): string;
(hint: "string"): string;
(hint: "number"): number;
(hint: string): string | number;
};
} | undefined;
until?: {
toString: () => string;
toDateString: () => string;
toTimeString: () => string;
toLocaleString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleDateString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleTimeString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
valueOf: () => number;
getTime: () => number;
getFullYear: () => number;
getUTCFullYear: () => number;
getMonth: () => number;
getUTCMonth: () => number;
getDate: () => number;
getUTCDate: () => number;
getDay: () => number;
getUTCDay: () => number;
getHours: () => number;
getUTCHours: () => number;
getMinutes: () => number;
getUTCMinutes: () => number;
getSeconds: () => number;
getUTCSeconds: () => number;
getMilliseconds: () => number;
getUTCMilliseconds: () => number;
getTimezoneOffset: () => number;
setTime: (time: number) => number;
setMilliseconds: (ms: number) => number;
setUTCMilliseconds: (ms: number) => number;
setSeconds: (sec: number, ms?: number | undefined) => number;
setUTCSeconds: (sec: number, ms?: number | undefined) => number;
setMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
setUTCMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
setHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
setUTCHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
setDate: (date: number) => number;
setUTCDate: (date: number) => number;
setMonth: (month: number, date?: number | undefined) => number;
setUTCMonth: (month: number, date?: number | undefined) => number;
setFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
setUTCFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
toUTCString: () => string;
toISOString: () => string;
toJSON: (key?: any) => string;
getVarDate: () => VarDate;
[Symbol.toPrimitive]: {
(hint: "default"): string;
(hint: "string"): string;
(hint: "number"): number;
(hint: string): string | number;
};
} | undefined;
weekdays?: import("../utils/date/rules").SingleOrArray<import("../utils/date/helpers").DayOfWeek> | undefined;
days?: import("../utils/date/rules").SingleOrArray<import("../utils/date/helpers").DayInMonth> | undefined;
weeks?: import("../utils/date/rules").SingleOrArray<import("../utils/date/helpers").WeekInMonth> | undefined;
months?: import("../utils/date/rules").SingleOrArray<import("../utils/date/helpers").MonthInYear> | undefined;
years?: import("../utils/date/rules").SingleOrArray<number> | undefined;
ordinalWeekdays?: import("../utils/date/rules").SingleOrArray<number[]> | undefined;
on?: import("../utils/date/repeat").DateRepeatFn | any | (import("../utils/date/repeat").DateRepeatFn | any)[] | undefined;
};
type: import("../utils/date/rules").GroupRuleType;
from: {
milliseconds: number;
seconds: number;
minutes: number;
hours: number;
time: number;
dateTime: number;
isValid: boolean;
timezoneOffset: number;
isPm?: boolean | undefined;
dayIndex: number;
day: number;
dayFromEnd: number;
weekday: number;
weekdayOrdinal: number;
weekdayOrdinalFromEnd: number;
week: number;
weekFromEnd: number;
weeknumber: number;
month: number;
year: number;
date: {
toString: () => string;
toDateString: () => string;
toTimeString: () => string;
toLocaleString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleDateString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
toLocaleTimeString: {
(): string;
(locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions | undefined): string;
};
valueOf: () => number;
getTime: () => number;
getFullYear: () => number;
getUTCFullYear: () => number;
getMonth: () => number;
getUTCMonth: () => number;
getDate: () => number;
getUTCDate: () => number;
getDay: () => number;
getUTCDay: () => number;
getHours: () => number;
getUTCHours: () => number;
getMinutes: () => number;
getUTCMinutes: () => number;
g