import { OnInit, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
import { ControlValueAccessor, FormControl, NgModel } from '@angular/forms';
import { StInputError } from '../../st-input/st-input.error.model';
import { StDropDownMenuItem } from '../../st-dropdown-menu/st-dropdown-menu.interface';
export declare class StFormFieldComponent implements ControlValueAccessor, OnInit, OnChanges {
    schema: any;
    required: boolean;
    errorMessages: StInputError;
    qaTag: string;
    name: string;
    value: any;
    hasDependencies: boolean;
    forceValidations: boolean;
    showTooltip: boolean;
    maxWidth: number;
    valueChange: EventEmitter<any>;
    blur: EventEmitter<any>;
    templateModel: NgModel;
    disabled: boolean;
    focus: boolean;
    errorMessage: string;
    selectOptions: StDropDownMenuItem[];
    innerValue: any;
    readonly readOnly: boolean;
    onChange: (_: any) => void;
    onTouched: () => void;
    setValue(value: any): void;
    setSwitchValue(enabled: boolean): void;
    validate(control: FormControl): any;
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    readonly errors: any;
    readonly type: string;
    readonly min: number;
    readonly max: number;
    readonly label: string;
    readonly placeholder: string;
    readonly default: string;
    readonly description: string;
    readonly minLength: number;
    readonly maxLength: number;
    readonly pattern: string;
    hasType(type: string): boolean;
    writeValue(value: any): void;
    registerOnChange(fn: (_: any) => void): void;
    registerOnTouched(fn: () => void): void;
    setDisabledState(disable: boolean): void;
    getInputStep(): number;
    getSelectOptions(): StDropDownMenuItem[];
    onBlur(): void;
}
