import { AbstractControl, ValidationErrors, ValidatorFn } from "@angular/forms"; import { CalendarLocaleOptions } from "@seniorsistemas/angular-components"; import { DateCompareOptions } from "../../../core/dto/date-compare-options"; import { CompareType } from "../../../core/enums/comparetype.enumeration"; export declare class DateValidator { /** * Validador genérico usando comparação entre datas * @param compareToDate Data a ser comparada * @param dateFormat Informações do local * @param compareType Tipo de comparação * @param options Opções para a comparação * @returns Objeto no formato { nomeChave: true } indicando que a data não é válida */ static isValidDateCompare(compareToDate: string, dateFormat: string, compareType: CompareType, options?: DateCompareOptions): ValidatorFn; /** * Retorna o formato da data de acordo com o local * @param calendar Informações de calendário * @param removeDayPart Remove os dias do formato da data (Opcional) * @returns Exemplo de retornos 'DDMMYYYY', 'MMYYYY', ou seja, retorna o formato somente com letras */ static getDateFormatFromLocale(calendar: CalendarLocaleOptions, removeDayPart?: boolean): string; /** * Retorna o formato da data/hora de acordo com o local * @param calendar Informações de calendário * @returns Exemplo de retornos 'DD/MM/YYYY HH:mm:ss' */ static getDateTimeFormatFromLocale(calendar: CalendarLocaleOptions): string; /** * Retorna o formato da data de acordo com o local * @param calendar Informações de calendário * @returns Exemplo de retornos 'DD/MM/YYYY' */ static getDateFormatFromCalendar(calendar: CalendarLocaleOptions): string; /** * Método auxiliar que realiza a comparação entre as datas e retorna um objeto caso a validação seja válida * @param referenceDate Data de referência para a comparação * @param compareToDate Data a ser comparada. * @param compareType Tipo de comparação. * @param options Opções para a comparação */ private static dateCompare; /** * Retorna uma mascara com as barras Ex: ‘DD/MM/YYYY‘ * @param calendar */ static getFormatDateWithBar(calendar: CalendarLocaleOptions): string; } export declare function startDateTimeIsBeforeEndDateTimeValidator(startDateTime: AbstractControl, endDateTime: AbstractControl): ValidationErrors | null; export declare function startDateIsBeforeOrEqualToEndDateValidator(startDate: AbstractControl, endDate: AbstractControl): ValidationErrors | null; export declare function removeErrorFromField(field: AbstractControl, error: string): void; export declare function startDateIsBeforeEndDateValidator(startDate: AbstractControl, endDate: AbstractControl): ValidationErrors | null;