import { BpSdkStore } from '@boldpenguin/sdk-redux';
import { IChoice, ISelectInputContainerComponent } from '@boldpenguin/sdk-types';
import { Unsubscribe } from '../../services/redux-store.service';
export declare class BpSdkSelectInputContainer implements ISelectInputContainerComponent {
    storeUnsubscribe?: Unsubscribe;
    /**
     * Answer id
     */
    answerId: string;
    /**
     * Placeholder to display
     */
    placeholder: string;
    /**
     * Use alias for choices
     */
    useAlias: boolean;
    /**
     * Question code
     */
    code: string;
    /**
     * Choice id selected. Used for single selection.
     */
    choiceId: string;
    /**
     * Choice ids selected. Used for multiple selection.
     */
    choiceIds: string[];
    /**
     * Whether to allow multi-select.
     */
    multiple: boolean;
    /**
     * Choices to display
     */
    choices: IChoice[];
    /**
     * Current value
     */
    value: string;
    /**
     * Aria label id's that describes input for screen readers
     */
    labelId: string;
    /**
     * 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;
    /**
     * Question Id
     */
    questionId: string;
    /**
     * Field type
     */
    fieldType: string;
    /**
     * Is required
     */
    required: boolean;
    /**
     * Label to use
     */
    label: string;
    /**
     *  Labels that describe group
     */
    labelledBy: string;
    /**
     * Reference type
     */
    referenceType: string;
    /**
     * Is autocomplete enabled
     */
    isAutocompleteEnabled: boolean;
    /**
     * Help text
     */
    helpText: string;
    /**
     * Specifically how the question was answered (ie. "ACORD 126")
     */
    answeredBySource: string | undefined;
    autoComplete: string;
    useExternal: boolean;
    el: HTMLBpSdkSelectInputContainerElement;
    resetState(): void;
    handleSubscriptions: () => void;
    connectedCallback(): void;
    componentWillLoad(): void;
    mapStateToProps: (state: BpSdkStore) => {
        isAutocompleteEnabled: boolean;
    };
    onReferenceTypeChange(referenceType: string): void;
    onCodeChange(code: string): void;
    onFieldTypeChange(fieldType: string): void;
    onIsAutocompleteEnabledChange(isAutocompleteEnabled: boolean): void;
    updateAutocomplete({ code, fieldType, referenceType, isAutocompleteEnabled, }: {
        referenceType: string;
        code: string;
        fieldType: string;
        isAutocompleteEnabled: boolean;
    }): void;
    disconnectedCallback(): void;
    render(): any[];
    renderExternal(): any;
    renderInternal(): any;
}
