import { ChangeDetectorRef, EventEmitter, OnChanges, OnDestroy, OnInit, QueryList, SimpleChanges, TemplateRef } from "@angular/core"; import { Subscription } from "rxjs"; import { GlobalTermService } from "../../services/globalTerm.service"; import { FilterModel } from "../../model/filter.model"; import { FilterDirective } from "../../directives/filters/filter.directive"; import { FilterTypeEnum } from "../../enums/filter-type.enum"; import { DateMode } from "../../constants/date-mode-options.constants"; import * as i0 from "@angular/core"; export declare class FiltersComponent implements OnInit, OnChanges, OnDestroy { private cd; readonly GlobalTermService: GlobalTermService; showButtons: boolean; customClass: string; columns: number; EmitApply: EventEmitter; EmitCancel: EventEmitter; subscriptions: Subscription[]; terms: any; showMenuOptions: boolean; styleHeighScreen: boolean; _filtersApplied: FilterModel[]; radioClass: string; comboClass: string; ddlClass: string; ddtClass: string; dPClass: string; mSClass: string; selectDescription: string; /** * Colección de elementos filtrados mediante la directiva FilterDirective. * Utilice @ContentChildren para obtener referencias a elementos dentro del contenido proyectado. * @type {QueryList} */ filterDirectives: QueryList; filterActionsButtonTemplate: TemplateRef; /** * Colección de instancias de DropDownListComponent. * Utilice @ViewChildren para obtener referencias a componentes hijos dentro de la vista actual. * @type {QueryList} */ letters: string; filters: FilterDirective[]; filterTypeEnum: typeof FilterTypeEnum; indexArray: number[]; columnsLengthArray: any; language: string; filterThreshold: number; hasNoActiveClass: boolean; constructor(cd: ChangeDetectorRef); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; ngAfterViewInit(): void; getOptionCount(item: any): number; onChange($event: any, filter: FilterDirective): void; onChangeCheck($event: any, filter: FilterDirective): void; onChangeMultiple($event: any, filter: FilterDirective): void; isUnselected(item: FilterDirective): boolean; private toggleChildrenVisibility; onKeyUp($event: any, filter: FilterDirective): void; cleanValue(filter: FilterDirective): void; /** * Construye y actualiza la lista de filtros aplicados con la información proporcionada por la directiva de filtro. * @param {FilterDirective} filter - La directiva de filtro que proporciona la información. * @returns {void} */ builderFiltersApplied(filter: FilterDirective): void; /** * Obtiene el índice de un filtro en el contexto de todos los filtros visibles, proporcionando una numeración o letras. * @param {FilterDirective} filter - La directiva de filtro para la cual se obtendrá el índice. * @param {FilterDirective} [parentFilter] - La directiva de filtro padre, si existe, en el caso de filtros anidados. * @returns {string} - El índice del filtro en formato de numeración o letras. */ getIndex(filter: FilterDirective, parentFilter?: FilterDirective): string; /** * Maneja el evento de hacer clic en el botón "Aplicar" para aplicar los filtros seleccionados. * Limpia la lista de filtros aplicados y construye la lista nuevamente con los valores actuales de los filtros. * Luego, emite el evento `EmitApply` con la lista de filtros aplicados. * @returns {void} */ clickApply(): void; private isValidDate; validateFilter(filter: FilterDirective): boolean; validStringValue(value: any, defaultValue: any): boolean; clickCancel(): void; /** * Evalúa si el valor actual del filtro es diferente al valor predeterminado, considerando el tipo de filtro. * @param {FilterDirective} filter - La directiva de filtro a evaluar. * @returns {boolean} - `true` si el valor actual es diferente al valor predeterminado, `false` de lo contrario. */ evaluatecleanvalue(filter: FilterDirective): boolean; /** * Evalúa si el valor actual del filtro de texto es diferente al valor predeterminado y cumple con ciertas condiciones. * @param {FilterDirective} filter - La directiva de filtro de texto a evaluar. * @returns {boolean} - `true` si el valor actual cumple con las condiciones para ser diferente al valor predeterminado, `false` de lo contrario. */ evaluatecleanvaluetext(filter: FilterDirective): boolean; private arraysAreEqual; hasValue(item: FilterDirective): boolean; private equalsDefault; getDateView(mode: DateMode): "date" | "month" | "year"; getDateFormat(mode: DateMode): string; getDateFormatPlaceholder(mode: DateMode): string; setColumnSize(): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }