import * as i0 from "@angular/core"; export declare const DATETIME_CONFIG_KEY = "USER_DATETIME_CONFIG"; /** * User-selectable date/time format preset. * Each preset defines how dates and times are rendered across the entire platform. */ export interface DateTimePreset { id: string; label: string; dateFormat: string; timeFormat: '12h' | '24h'; /** PrimeNG datepicker format string (uses mm/dd/yy syntax) */ primeNgDateFormat: string; /** Intl.DateTimeFormat options for display rendering */ intlOptions: Intl.DateTimeFormatOptions; /** Example output for the settings UI */ example: string; } export interface DateTimeConfig { presetId: string; timezone: string; locale: string; } /** Any value that can be coerced into a Date. */ export type DateInput = Date | string | number; export declare const DATE_TIME_PRESETS: DateTimePreset[]; export declare class DateTimeConfigService { private readonly _config; /** Current full config */ readonly config: import("@angular/core").Signal; /** Active preset object */ readonly preset: import("@angular/core").Signal; /** PrimeNG datepicker format string — bind directly to [dateFormat] */ readonly primeNgDateFormat: import("@angular/core").Signal; /** Whether to show time in pickers — bind to [showTime] */ readonly showTime: import("@angular/core").Signal; /** Whether 12h format */ readonly is12Hour: import("@angular/core").Signal; /** Intl.DateTimeFormat formatter for display rendering */ readonly formatter: import("@angular/core").Signal; /** Date-only formatter (no time component) */ readonly dateOnlyFormatter: import("@angular/core").Signal; /** Time-only formatter */ readonly timeOnlyFormatter: import("@angular/core").Signal; /** Current timezone */ readonly timezone: import("@angular/core").Signal; /** All available presets */ readonly presets: DateTimePreset[]; private readonly localStorage; constructor(); /** * Format a date using the user's preferred format. * This is the primary method for rendering dates consistently. */ formatDateTime(date: DateInput): string; /** Format date only (no time) */ formatDate(date: DateInput): string; /** Format time only (no date) */ formatTime(date: DateInput): string; /** Update the active preset */ setPreset(presetId: string): void; /** Update timezone */ setTimezone(timezone: string): void; /** Update locale */ setLocale(locale: string): void; /** Reset to defaults */ reset(): void; private _loadFromStorage; private _saveToStorage; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }