import { PipeTransform } from '@angular/core';
import { FdLanguage } from '@fundamental-ngx/i18n';
import { Observable } from 'rxjs';
import { DatetimeAdapter } from './datetime-adapter';
import { DateTimeFormats } from './datetime-formats';
import * as i0 from "@angular/core";
export declare class DateFormatPipe<D> implements PipeTransform {
    private _dateTimeAdapter;
    private _dateTimeFormats;
    /** @hidden */
    constructor(_dateTimeAdapter: DatetimeAdapter<D>, _dateTimeFormats: DateTimeFormats);
    /** Format date object */
    transform(date: D, noDateMessage?: string): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<DateFormatPipe<any>, [null, { optional: true; }]>;
    static ɵpipe: i0.ɵɵPipeDeclaration<DateFormatPipe<any>, "dateFormat", true>;
}
export declare class DateTimeFormatPipe<D> implements PipeTransform {
    private _dateTimeAdapter;
    private _dateTimeFormats;
    /** @hidden */
    constructor(_dateTimeAdapter: DatetimeAdapter<D>, _dateTimeFormats: DateTimeFormats);
    /** Format date object */
    transform(date: D, noDateMessage?: string): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<DateTimeFormatPipe<any>, [null, { optional: true; }]>;
    static ɵpipe: i0.ɵɵPipeDeclaration<DateTimeFormatPipe<any>, "dateTimeFormat", true>;
}
export declare class DateFromNowPipe<D> implements PipeTransform {
    private _dateTimeAdapter;
    /** @hidden */
    constructor(_dateTimeAdapter: DatetimeAdapter<D>);
    /** Format date object */
    transform(date: D, noDateMessage?: string): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<DateFromNowPipe<any>, never>;
    static ɵpipe: i0.ɵɵPipeDeclaration<DateFromNowPipe<any>, "dateFromNow", true>;
}
export declare class DayPeriodFormatPipe<D> implements PipeTransform {
    private _dateTimeAdapter;
    private _dateTimeFormats;
    /** @hidden */
    constructor(_dateTimeAdapter: DatetimeAdapter<D>, _dateTimeFormats: DateTimeFormats);
    /** Format date object for day period */
    transform(date: D, customFormat?: any, noDateMessage?: string): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<DayPeriodFormatPipe<any>, [null, { optional: true; }]>;
    static ɵpipe: i0.ɵɵPipeDeclaration<DayPeriodFormatPipe<any>, "dayPeriodFormat", true>;
}
export declare class TranslateDayPeriodPipe implements PipeTransform {
    private _language$;
    /** @hidden */
    private readonly _translationResolver;
    /** Signal that will hold the current language */
    private readonly _currentLanguageSignal;
    /** @hidden */
    constructor(_language$: Observable<FdLanguage>);
    /** Format date object for day period */
    transform(value: string | null): string | null;
    static ɵfac: i0.ɵɵFactoryDeclaration<TranslateDayPeriodPipe, never>;
    static ɵpipe: i0.ɵɵPipeDeclaration<TranslateDayPeriodPipe, "translateDayPeriod", true>;
}
