import { EventEmitter } from '../../stencil-public-runtime';
import { ITextInputComponent } from '@boldpenguin/sdk-types';
export declare class BpSdkTextInput implements ITextInputComponent {
    /**
     * Answer id
     */
    answerId: string;
    /**
     * Autocomplete attribute value for input
     */
    autoComplete: string;
    /**
     * Question id
     */
    questionId: string;
    /**
     * Initial text value
     */
    text: string;
    /**
     * Aria label id's that describes input for screen readers
     */
    labelId: string;
    /**
     * Field type
     */
    fieldType: string;
    /**
     * Placeholder to display
     */
    placeholder: string;
    /**
     * Regular expression pattern input should match
     */
    pattern: string | undefined;
    /**
     * Question code
     */
    code: string;
    /**
     * Is question required
     */
    required: boolean;
    /**
     * minimum length of input
     */
    min: number;
    /**
     * maximum length of input
     */
    max: number;
    /**
     * Error messages
     */
    errors: string[];
    /**
     * Error text
     */
    errorText: string;
    /**
     * is touched
     */
    touched: boolean;
    /**
     * is pristine
     */
    pristine: boolean;
    /**
     * Is answer in complete state
     */
    isCompleted: boolean;
    /**
     * When true, the field will be readonly. It will display only the label and value as plain text.
     */
    isReadOnly: boolean;
    /**
     * Label
     */
    label: string;
    /**
     *  Labels that describe group
     */
    labelledBy: string;
    /**
     * Is enabled
     */
    isEnabled: boolean;
    /**
     * Help text
     */
    helpText: string;
    /**
     * Specifically how the question was answered (ie. "ACORD 126")
     */
    answeredBySource: string | undefined;
    _labelledBy: string;
    _pattern: string;
    _fieldType: string;
    useExternal: boolean;
    /**
     * Value change event
     */
    valueUpdate: EventEmitter<string>;
    el: HTMLElement;
    updatePattern(fieldType: string, pattern: string): void;
    onAriaLabelledByChange(labelId: string): void;
    onLabelledByChange(labelledBy: string): void;
    updateLabelledBy(aria: string, ids: string): void;
    onFieldTypeChange(fieldType: string): void;
    onPatternChange(pattern: string): void;
    onChange: () => void;
    resetState(): void;
    connectedCallback(): void;
    handleExternalComponents(): void;
    componentWillLoad(): void;
    render(): any[];
    renderTextInput(): any;
    renderNumberInput(): any;
    renderInputElement(): any;
    renderExternal(): any;
    renderLabel(): any;
    renderErrors(): any;
    renderInternal(): any;
    renderReadOnlyElement(value: string): any;
}
