import { BootstrapInput } from './../index';
import { BootstrapInputStyleMode } from './../index';
import { AfterViewInit, ElementRef, OnInit, OnChanges, OnDestroy, SimpleChanges, EventEmitter } from '@angular/core';
import { BaseElement } from './smart.element';
import * as i0 from "@angular/core";
export { BootstrapInputStyleMode, ElementRenderMode } from './../index';
export { Smart } from './smart.element';
export { BootstrapInput } from './../index';
export declare class BootstrapInputComponent extends BaseElement implements OnInit, AfterViewInit, OnDestroy, OnChanges {
    constructor(ref: ElementRef<BootstrapInput>);
    private eventHandlers;
    nativeElement: BootstrapInput;
    /** @description Creates the component on demand.
     * @param properties An optional object of properties, which will be added to the template binded ones.
     */
    createComponent(properties?: {}): any;
    /** @description Enables or disables the element.  */
    get disabled(): boolean;
    set disabled(value: boolean);
    /** @description Gets or sets whether the element is filled.  */
    get filled(): boolean;
    set filled(value: boolean);
    /** @description Sets or gets the name attribute for the element. Name is used when submiting HTML forms. */
    get name(): string;
    set name(value: string);
    /** @description Gets or sets whether the element is outlined.  */
    get outlined(): boolean;
    set outlined(value: boolean);
    /** @description Gets or sets the placeholder of the element.  */
    get placeholder(): string;
    set placeholder(value: string);
    /** @description Gets or sets whether the element is required.  */
    get required(): boolean;
    set required(value: boolean);
    /** @description Sets or gets the style mode of the element. */
    get styleMode(): BootstrapInputStyleMode | string;
    set styleMode(value: BootstrapInputStyleMode | string);
    /** @description Gets or sets the value of the element.  */
    get value(): string;
    set value(value: string);
    /** @description Change event is triggered when the value of the element is changed.
    *  @param event. The custom event. 	*/
    onChange: EventEmitter<CustomEvent>;
    get isRendered(): boolean;
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    ngOnChanges(changes: SimpleChanges): void;
    /** @description Add event listeners. */
    private listen;
    /** @description Remove event listeners. */
    private unlisten;
    static ɵfac: i0.ɵɵFactoryDeclaration<BootstrapInputComponent, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<BootstrapInputComponent, "bootstrap-input, [bootstrap-input]", ["bootstrap-input"], { "disabled": "disabled"; "filled": "filled"; "name": "name"; "outlined": "outlined"; "placeholder": "placeholder"; "required": "required"; "styleMode": "styleMode"; "value": "value"; }, { "onChange": "onChange"; }, never>;
}
