/**
 * al-input
 *
 * @author Rob Parker <robert.parker@alertlogic.com>
 *
 * @copyright Alert Logic, Inc 2021
 *
 */
import { OnInit } from '@angular/core';
import { ControlValueAccessor, NgControl } from '@angular/forms';
import * as i0 from "@angular/core";
declare enum InputType {
    text = "text",
    number = "number",
    email = "email",
    password = "password",
    range = "range",
    search = "search"
}
export declare class AlInputComponent implements OnInit, ControlValueAccessor {
    ngControl: NgControl;
    label: string;
    verticalSpace: boolean;
    placeholder: string;
    type: InputType;
    name: string;
    id?: string;
    disabled: boolean;
    autofocus: boolean;
    value: any;
    required?: boolean;
    requiredError?: string;
    validationPattern?: string;
    patternError?: string;
    hint?: string;
    tip?: string;
    minValue?: number;
    maxValue?: number;
    minLength?: number;
    maxLength?: number;
    constructor(ngControl: NgControl);
    get control(): import("@angular/forms").AbstractControl;
    ngOnInit(): void;
    onChange: any;
    onTouch: any;
    writeValue(value: any): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    setDisabledState(val: boolean): void;
    static ɵfac: i0.ɵɵFactoryDef<AlInputComponent, [{ optional: true; self: true; }]>;
    static ɵcmp: i0.ɵɵComponentDefWithMeta<AlInputComponent, "al2-input", never, { "label": "label"; "verticalSpace": "verticalSpace"; "placeholder": "placeholder"; "type": "type"; "name": "name"; "id": "id"; "disabled": "disabled"; "autofocus": "autofocus"; "value": "value"; "required": "required"; "requiredError": "requiredError"; "validationPattern": "validationPattern"; "patternError": "patternError"; "hint": "hint"; "tip": "tip"; "minValue": "minValue"; "maxValue": "maxValue"; "minLength": "minLength"; "maxLength": "maxLength"; }, {}, never, never>;
}
export {};
