import DateFnsBaseAdapter from '@date-io/date-fns'; import DateFnsJalaliAdapterBase from '@date-io/date-fns-jalali'; import * as DateFnsBase from 'date-fns'; import { Locale } from '../constant-types'; import { RangeInputLabels } from '../shared/pickers'; import { TimeRange } from '../shared/pickers/types'; declare class DateFnsJalaliAdapter extends DateFnsJalaliAdapterBase { getWeekdays: () => string[]; formatByString: (date: Date, formatString: string) => string; } export declare const getLocalizedDateFns: (locale?: Locale) => typeof DateFnsBase; export declare const getLocalizedDateFnsAdapter: (locale?: Locale) => typeof DateFnsJalaliAdapter | typeof DateFnsBaseAdapter; /** * * convert a timerange object to datetime format. * @param {TimeRange} dateRange * @param {Locale} [locale] * @returns {TimeRange} */ export declare function formatDateTimeRange(dateRange: TimeRange, locale?: Locale): { from: string | null; to: string | null; }; /** * * converts a timeRange object to time format * @param {TimeRange} timeRange * @param {Locale} [locale] * * @returns {TimeRange} */ export declare function formatTimeRange(timeRange: TimeRange, locale?: Locale): { from: string | null; to: string | null; }; /** * * converts a timeRange object to date format. * @param {TimeRange} dateRange * @param {string} [format] * @param {Locale} [locale] * @returns {TimeRange} */ export declare function formatDateRange(dateRange: TimeRange, format?: string, locale?: Locale): { from: string | null; to: string | null; }; /** * * convert input date to datetime format. * @param {(string | Date)} date * @param {Locale} [locale] * @returns {string} */ export declare function formatDateTime(date: string | Date, locale?: Locale): string; /** * * convert input date to time HH:mm format. * @param {(string | Date)} date * @param {Locale} [locale] * @returns {string} */ export declare function formatTime(date: string | Date, locale?: Locale): string; /** * * convert input date to format(yyyy/MM/dd). * @param {(string | Date)} date * @param {string} [format='yyyy/MM/dd'] * @param {Locale} [locale=Locale.defaultLocale] * @returns {string} */ export declare function formatDate(date: string | Date, format?: string, locale?: Locale): string; /** * Contract for range input formatter. * @type RangeInputFormatter */ export type RangeInputFormatter = (value: TimeRange) => TimeRange; /** * Converts `value` to text. * You can override this behavior by passing `customText` to `labels`. * * @public * @param {TimeRange} timeRange * @param {RangeInputLabels} labels * @param {RangeInputFormatter} formatter * @returns {string} */ export declare function getRangeInputValue(timeRange: TimeRange, labels: RangeInputLabels, formatter?: RangeInputFormatter): string; export {};