import { OnInit, OnDestroy } from '@angular/core';
import * as i0 from "@angular/core";
/**
* Diretiva para corrigir a acessibilidade de checkboxes em tabelas PrimeNG.
*
* Propaga o `aria-label` dos custom elements wrapper (`p-tablecheckbox` e
* `p-tableheadercheckbox`) para os `` internos e
* remove o atributo do wrapper, eliminando as violações WCAG 4.1.2:
* - `label` (crítica): input sem nome acessível
* - `aria-prohibited-attr` (séria): aria-label em custom element sem role ARIA
*
* Remove também o `aria-label` do `p-checkbox` intermediário e monitora
* mutations de atributo para re-aplicar o label correto caso o binding
* interno do PrimeNG sobrescreva o valor no input via change detection.
*
* Utiliza MutationObserver para tratar linhas adicionadas dinamicamente
* (paginação, lazy loading).
*
* Uso: ``
*/
export declare class TableCheckboxAccessibilityDirective implements OnInit, OnDestroy {
private readonly el;
private childListObserver;
private attributeObserver;
private isChildListPaused;
private isAttributePaused;
private readonly observedElements;
private readonly inputLabelMap;
private static readonly CHECKBOX_SELECTOR;
private static readonly INNER_CHECKBOX_SELECTOR;
private static readonly INPUT_SELECTOR;
private static readonly ARIA_LABEL_ATTR;
ngOnInit(): void;
ngOnDestroy(): void;
private updateCheckboxLabels;
private applyLabelToInput;
private removeInnerCheckboxAriaLabel;
private observeTableChanges;
private handleAttributeMutations;
private enforceInputLabel;
private handleChildListMutation;
private startObserving;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵdir: i0.ɵɵDirectiveDeclaration;
}