import { DateAdapter } from '@angular/material/core';
import { Locale } from 'date-fns';
import * as i0 from "@angular/core";
export declare class DateFnsAdapter extends DateAdapter<Date, Locale> {
    /** Calendar type. */
    private _calendarType;
    /**
     * constructor
     */
    constructor(...args: unknown[]);
    /**
     * Sets the locale used for all dates.
     *
     * @param locale The new locale
     */
    setLocale(locale?: Locale): void;
    getYear(date: Date): number;
    getMonth(date: Date): number;
    getDate(date: Date): number;
    getDayOfWeek(date: Date): number;
    getMonthNames(style: 'long' | 'short' | 'narrow'): string[];
    getDateNames(): string[];
    getDayOfWeekNames(style: 'long' | 'short' | 'narrow'): string[];
    getYearName(date: Date): string;
    getFirstDayOfWeek(): number;
    getNumDaysInMonth(date: Date): number;
    clone(date: Date): Date;
    createDate(year: number, month: number, date: number): Date;
    today(): Date;
    parse(value: any, parseFormat: string | string[]): Date | null;
    format(date: Date, displayFormat: string): string;
    addCalendarYears(date: Date, years: number): Date;
    addCalendarMonths(date: Date, months: number): Date;
    addCalendarDays(date: Date, days: number): Date;
    toIso8601(date: Date): string;
    /**
     * Returns the given value if given a valid Date or null. Deserializes valid ISO 8601 strings
     * (https://www.ietf.org/rfc/rfc3339.txt) into valid Dates and empty string into null. Returns an
     * invalid date for all other values.
     */
    deserialize(value: any): Date | null;
    isDateInstance(obj: any): boolean;
    isValid(date: Date): boolean;
    invalid(): Date;
    setTime(target: Date, hours: number, minutes: number, seconds: number): Date;
    getHours(date: Date): number;
    getMinutes(date: Date): number;
    getSeconds(date: Date): number;
    parseTime(value: any, parseFormat: string | string[]): Date | null;
    addSeconds(date: Date, amount: number): Date;
    static ɵfac: i0.ɵɵFactoryDeclaration<DateFnsAdapter, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<DateFnsAdapter>;
}
