import { EventTypeWithTarget, JBBaseComponent } from "jb-core"; //#region modules/jb-calendar/web-component/lib/types.d.ts export type JBCalendarSections = "DAY" | "MONTH" | "YEAR"; export type JBCalendarValue = { day: number | null; month: number | null; year: number | null; }; export type JBCalendarElements = { selectionSections: { day: HTMLDivElement; month: HTMLDivElement; year: HTMLDivElement; }; monthDayWrapper: { current: HTMLDivElement; prev: HTMLDivElement; next: HTMLDivElement; }; yearsWrapper: { current: HTMLDivElement; prev: HTMLDivElement; next: HTMLDivElement; }; dayOfWeekWrapper: HTMLDivElement; navigatorTitle: { wrapper: HTMLDivElement; month: HTMLButtonElement; year: HTMLButtonElement; yearRange: HTMLSpanElement; nextButton: HTMLButtonElement; prevButton: HTMLButtonElement; }; swipeupSymbol: HTMLDivElement; }; export type JBCalendarDateRestrictions = { min: Date | null; max: Date | null; }; export type JBCalendarData = { selectedYear: number; selectedMonth: number; yearSelectionRange: [number, number]; }; export type JBCalendarSwipeGestureData = { daysWrapper: { startX: number | null; startY: number | null; }; yearsWrapper: { startX: number | null; }; }; export type Direction = "rtl" | "ltr"; export type InputType = 'JALALI' | 'GREGORIAN'; export type JBCalendarEventType = EventTypeWithTarget; //#endregion //#region modules/jb-calendar/web-component/lib/jb-calendar.d.ts export declare class JBCalendarWebComponent extends JBBaseComponent { #private; /** * @public change month labels to desired user label base on language or culture */ setMonthList(inputType: InputType, monthList: string[]): void; get defaultCalendarData(): { jalali: { year: number; month: number; }; gregorian: { year: number; month: number; }; }; set defaultCalendarData(value: { jalali: { year: number; month: number; }; gregorian: { year: number; month: number; }; }); dateRestrictions: JBCalendarDateRestrictions; data: JBCalendarData; private elements; get value(): JBCalendarValue; set value(value: JBCalendarValue | null); get activeSection(): JBCalendarSections; set activeSection(value: JBCalendarSections); get inputType(): InputType; set inputType(value: InputType); get showPersianNumber(): boolean; set showPersianNumber(value: boolean); constructor(); connectedCallback(): void; static get observedAttributes(): string[]; attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void; disconnectedCallback(): void; initCalendarLayout(): void; /** * Refresh direction-sensitive layout classes from the host's computed direction. * Call this after changing direction indirectly through an ancestor or CSS class. */ refreshDirection(): void; fillDayOfWeek(): void; setCalendarData(): void; onDayWrapperTouchStart(e: TouchEvent): void; onDayWrapperTouchMove(e: TouchEvent): void; onDayWrapperTouchEnd(e: TouchEvent): void; onYearWrapperTouchStart(e: TouchEvent): void; onYearWrapperTouchMove(e: TouchEvent): void; onYearWrapperTouchEnd(e: TouchEvent): void; moveBackToPos(dom: HTMLElement): void; createDataHandler(): { set: (obj: any, prop: string, value: number | number[]) => boolean; }; createDateRestrictionHandler(): { set: (obj: any, prop: string, value: Date | null) => boolean; }; initProps(): void; selectToday(): void; select(year: number, month: number, day: number): void; initCalendar(): void; fillMonthDaysDom(year: number, month: number, type: "current" | "prev" | "next"): void; fillMonthDays(): void; checkIsDayDisable(dayDate: Date): { min: boolean; max: boolean; readonly isAllValid: boolean; }; createEmptyDayDom(): HTMLDivElement; localizeString(string: string): string; } declare global { interface HTMLElementTagNameMap { "jb-calendar": JBCalendarWebComponent; } } //#endregion //# sourceMappingURL=jb-calendar.d.ts.map