import { AfterViewInit, OnInit } from '@angular/core';
import { ItAbstractFormComponent } from '../../../abstracts/abstract-form.component';
import { Observable } from 'rxjs';
import * as i0 from "@angular/core";
import * as i1 from "../../../utils/coercion";
export declare class ItPasswordInputComponent extends ItAbstractFormComponent<string | null | undefined> implements OnInit, AfterViewInit {
    /**
     * The field is required
     * @default true
     */
    required: boolean;
    /**
     * The password minimum length
     * @default 10
     */
    minLength: number;
    /**
     * The password must contain at least one number
     * @default true
     */
    useNumber: boolean;
    /**
     * The password must contain at least one uppercase character
     * @default true
     */
    useCapitalCase: boolean;
    /**
     * The password must contain at least one lowercase character
     * @default true
     */
    useSmallCase: boolean;
    /**
     * The password must contain at least one special character
     * @default true
     */
    useSpecialCharacters: boolean;
    /**
     * The input placeholder
     */
    placeholder: string;
    /**
     * The input description
     * - <b>true</b>: show the StrengthMeter description message
     * - <b>string</b>: show custom description
     * @default true for StrengthMeter mode else is undefined
     */
    description: string | true | undefined;
    /**
     * Enable to show the strength meter
     * @default false
     */
    showStrengthMeter?: boolean;
    /**
     * Is the confirmation password field
     * @default false
     */
    confirmPasswordField?: boolean;
    /**
     * Input autocomplete attribute (Browser autocomplete)
     * @default undefined
     */
    autocomplete: string | undefined;
    private inputPasswordBs?;
    private inputElement?;
    ngOnInit(): void;
    ngAfterViewInit(): void;
    protected get isStrengthMeter(): boolean;
    /**
     * Return the invalid message string from TranslateService
     */
    get invalidMessage(): Observable<string>;
    /**
     * Retrieve the default StrengthMeter description message from TranslateService
     */
    protected get strengthMeterDescription(): Observable<string>;
    static ɵfac: i0.ɵɵFactoryDeclaration<ItPasswordInputComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ItPasswordInputComponent, "it-password-input", never, { "required": { "alias": "required"; "required": false; }; "minLength": { "alias": "minLength"; "required": false; }; "useNumber": { "alias": "useNumber"; "required": false; }; "useCapitalCase": { "alias": "useCapitalCase"; "required": false; }; "useSmallCase": { "alias": "useSmallCase"; "required": false; }; "useSpecialCharacters": { "alias": "useSpecialCharacters"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "description": { "alias": "description"; "required": false; }; "showStrengthMeter": { "alias": "showStrengthMeter"; "required": false; }; "confirmPasswordField": { "alias": "confirmPasswordField"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; }, {}, never, ["[error]"], true, never>;
    static ngAcceptInputType_showStrengthMeter: i1.BooleanInput;
    static ngAcceptInputType_confirmPasswordField: i1.BooleanInput;
}
