@uplink-protocol/calendar-controller
Version:
Flexible calendar and time picker API supporting both calendar, date-picker, and time-picker integrations for any JavaScript framework or library
64 lines (63 loc) • 1.99 kB
TypeScript
import { CalendarStateManager } from "./state-manager";
import { IDateFormattingService, ILocalizationService } from "../interfaces";
/**
* FormattingCoordinator - Handles all date formatting and localization
*/
export declare class FormattingCoordinator {
private stateManager;
private dateFormattingService;
private localizationService;
constructor(stateManager: CalendarStateManager, dateFormattingService: IDateFormattingService, localizationService: ILocalizationService);
/**
* Format a date
*/
formatDate(date: Date, options?: Intl.DateTimeFormatOptions | string, _locale?: string | undefined): string;
/**
* Get formatted selected date
*/
getFormattedDate(): string | null;
/**
* Set locale
*/
setLocale(locale: string, localizationService: ILocalizationService): void;
/**
* Get locale
*/
getLocale(): string;
/**
* Set date format options
*/
setDateFormatOptions(options: Intl.DateTimeFormatOptions | null): void;
/**
* Get date format options
*/
getDateFormatOptions(): Intl.DateTimeFormatOptions | null;
/**
* Format date with options
*/
formatDateWithOptions(date: Date, options?: Intl.DateTimeFormatOptions, _locale?: string): string;
/**
* Get month name
*/
getMonthName(month: number, format?: 'long' | 'short', _locale?: string): string;
/**
* Get day name
*/
getDayName(dayOfWeek: number, format?: 'long' | 'short' | 'narrow', _locale?: string): string;
/**
* Get day names
*/
getDayNames(format?: 'long' | 'short' | 'narrow', _locale?: string): string[];
/**
* Get month names
*/
getMonthNames(format?: 'long' | 'short', _locale?: string): string[];
/**
* Get weekday names
*/
getWeekdayNames(firstDayOfWeek?: number): string[];
/**
* Get locale-specific default format options
*/
private getLocaleDefaultFormatOptions;
}