import { ChangeDetectorRef, ElementRef, OnChanges, OnInit, SimpleChanges } from '@angular/core';
import { PoHelperComponent, PoHelperOptions } from '../../po-helper';
/**
 * @docsPrivate
 *
 * Componente de uso interno, responsável por atribuir uma label para o campo
 */
export declare class PoFieldContainerComponent implements OnInit, OnChanges {
    private readonly cdr;
    labelEl: ElementRef<HTMLElement>;
    helperEl?: PoHelperComponent;
    /** Indica se o campo será desabilitado. */
    disabled: boolean;
    /** Identificador do campo */
    id: string;
    /** Label do campo. */
    label?: string;
    /** Texto de apoio do campo. */
    help: string;
    /** Configurações do ícone de ajuda adicional vínculado ao label. */
    poHelperComponent: import("@angular/core").InputSignal<PoHelperOptions>;
    /** Define se o componente helper estará visível através das ações customizadas */
    showHelperComponent: import("@angular/core").InputSignal<boolean>;
    /**
     * @optional
     *
     * Habilita a quebra automática do texto do componente po-label. Quando ativada, o texto que excede
     * o espaço disponível é transferido para a próxima linha em pontos apropriados para uma
     * leitura clara.
     *
     * @default `false`
     */
    textWrap: import("@angular/core").InputSignal<boolean>;
    literals: object;
    requirement: string;
    showTip: boolean;
    private _optional;
    private _required;
    /** Indica se o campo será opcional. */
    set optional(value: boolean);
    get optional(): boolean;
    /** Indica se o campo será obrigatório. */
    set required(value: boolean);
    get required(): boolean;
    /** Define se a indicação de campo obrigatório será exibida. */
    showRequired: boolean;
    /** Define o tamanho do componente. */
    size?: string;
    /**
     * @Input
     *
     * Define se o título do campo será exibido de forma compacta.
     *
     * Quando habilitado (`true`), o modo compacto afeta o conjunto composto por:
     * - `po-label`
     * - `p-requirement (showRequired)`
     * - `po-helper`
     *
     * Ou seja, todos os elementos relacionados ao título do campo
     * (rótulo, indicador de obrigatoriedade e componente auxiliar) passam
     * a seguir o comportamento de layout compacto.
     */
    compactLabel: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
    constructor(cdr: ChangeDetectorRef);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    private setRequirement;
    handleLabelTooltip(): void;
}
