export default AutoComplete;
declare class AutoComplete extends InputWithOptions {
    static propTypes: {
        /** Associate a control with the regions that it controls.*/
        ariaControls: PropTypes.Requireable<string>;
        /** Associate a region with its descriptions. Similar to aria-controls but instead associating descriptions to the region and description identifiers are separated with a space.*/
        ariaDescribedby: PropTypes.Requireable<string>;
        /** Define a string that labels the current element in case where a text label is not visible on the screen. */
        ariaLabel: PropTypes.Requireable<string>;
        /** Focus the element on mount (standard React input autoFocus). */
        autoFocus: PropTypes.Requireable<boolean>;
        /** Control the border style of input. */
        border: PropTypes.Requireable<string>;
        /** Specifies a CSS class name to be appended to the component’s root element.*/
        className: PropTypes.Requireable<string>;
        /** Displays clear button (X) on a non-empty input. */
        clearButton: PropTypes.Requireable<boolean>;
        /** Closes DropdownLayout when option is selected.*/
        closeOnSelect: PropTypes.Requireable<boolean>;
        /** Applies a data-hook HTML attribute that can be used in the tests. */
        dataHook: PropTypes.Requireable<string>;
        /** Sets a default value for those who want to use this component un-controlled. */
        defaultValue: PropTypes.Requireable<string>;
        /** Specifies whether input should be disabled or not. */
        disabled: PropTypes.Requireable<boolean>;
        /** Restricts input editing.*/
        disableEditing: PropTypes.Requireable<boolean>;
        /** Sets the width of the dropdown in pixels.*/
        dropdownWidth: PropTypes.Requireable<string>;
        /** Defines a message to be displayed instead of options when no options exist or no options pass the predicate filter function. */
        emptyStateMessage: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        /** Adds a fixed footer container at the bottom of options list in `<DropdownLayout/>`.*/
        fixedFooter: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        /** Adds a fixed header container at the top of options list in `<DropdownLayout/>`.*/
        fixedHeader: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        /** Highlights and scrolls view to the specified option when dropdown layout is opened. It does not select the specified option. */
        focusOnOption: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        /** Scrolls view to the selected option when dropdown layout is opened. */
        focusOnSelectedOption: PropTypes.Requireable<boolean>;
        /** USED FOR TESTING. Forces focus state on the input. */
        forceFocus: PropTypes.Requireable<boolean>;
        /** USED FOR TESTING. Forces hover state on the input.*/
        forceHover: PropTypes.Requireable<boolean>;
        /** Specifies whether there are more items to be loaded. */
        hasMore: PropTypes.Requireable<boolean>;
        /** Specifies whether status suffix should be hidden.*/
        hideStatusSuffix: PropTypes.Requireable<boolean>;
        /** Highlight word parts that match search criteria in bold.  */
        highlight: PropTypes.Requireable<boolean>;
        /** Assigns an unique identifier for the root element. */
        id: PropTypes.Requireable<string>;
        /** Specifies whether lazy loading of the dropdown layout items is enabled. */
        infiniteScroll: PropTypes.Requireable<boolean>;
        /** Defines a callback function which is called on a request to render more list items. */
        loadMore: PropTypes.Requireable<(...args: any[]) => any>;
        /**
         * ##### Sets the default hover behavior:
         *  * `false` - no initially hovered list item
         *  * `true` - hover first selectable option
         *  *  any `number/string` - specify the id of an option to be hovered
         */
        markedOption: PropTypes.Requireable<NonNullable<string | number | boolean | null | undefined>>;
        /** Sets the maximum height of the dropdownLayout in pixels. */
        maxHeightPixels: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        /** Sets the maximum number of characters that can be entered into a field.*/
        maxLength: PropTypes.Requireable<number>;
        /** Specifies whether input should have a dropdown menu arrow on the right side. */
        menuArrow: PropTypes.Requireable<boolean>;
        /** Sets the minimum width of dropdownLayout in pixels. */
        minWidthPixels: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        /** Reference element data when a form is submitted. */
        name: PropTypes.Requireable<string>;
        /** Specifies whether input shouldn’t have rounded corners on its left. */
        noLeftBorderRadius: PropTypes.Requireable<boolean>;
        /** Specifies whether input shouldn’t have rounded corners on its right.*/
        noRightBorderRadius: PropTypes.Requireable<boolean>;
        /** Defines a standard input onBlur callback */
        onBlur: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a standard input onChange callback.*/
        onChange: PropTypes.Requireable<(...args: any[]) => any>;
        /** Displays clear button (X) on a non-empty input and calls a callback function with no arguments.*/
        onClear: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a callback function which is called whenever the user presses the escape key. */
        onClose: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a callback function called on compositionstart/compositionend events.*/
        onCompositionChange: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a callback handler that is called when user presses `enter`.*/
        onEnterPressed: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a callback handler that is called when user presses `escape`.*/
        onEscapePressed: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a standard input onFocus callback. */
        onFocus: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a standard input onClick callback.*/
        onInputClicked: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a standard input onKeyUp callback. */
        onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a callback function which is called when user performs a submit action. Submit action triggers are: "Enter", "Tab", [typing any defined delimiters], paste action. `onManuallyInput(values: Array): void - The array of strings is the result of splitting the input value by the given delimiters.*/
        onManuallyInput: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a callback function which is called whenever the user enters dropdown layout with the mouse cursor. */
        onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a callback function which is called whenever the user exits from dropdown layout with a mouse cursor.*/
        onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a callback function which is called whenever an option becomes focused (hovered/active). Receives the relevant option object from the original props.options array.*/
        onOptionMarked: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a callback function which is called when options dropdown is hidden.*/
        onOptionsHide: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a callback function which is called when options dropdown is shown.*/
        onOptionsShow: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a callback function which is called when no options exist.*/
        onEmptyState: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a callback handler that is called when user pastes text from a clipboard (using mouse or keyboard shortcut).*/
        onPaste: PropTypes.Requireable<(...args: any[]) => any>;
        /** Defines a callback function which is called whenever user selects a different option in the list.*/
        onSelect: PropTypes.Requireable<(...args: any[]) => any>;
        /** Specify an array of options:
         * - id `<string / number>` *required*: the id of the option, should be unique.
         * - value `<function / string / node>` *required*: can be a string, react element or a builder function.
         * - disabled `<bool>` *default value- false*: whether this option is disabled or not
         * - linkTo `<string>`: when provided the option will be an anchor to the given value
         * - title `<bool>`  *default value- false*  **deprecated**: please use `listItemSectionBuilder` for rendering a title.
         * - overrideStyle `<bool>` *default value- false*  **deprecated**: please use `overrideOptionStyle` for override option styles.
         * - overrideOptionStyle `<bool>` *default value- false* - when set to `true`, the option will be responsible to its own styles. No styles will be applied from the DropdownLayout itself.
         * - label `<string>`: the string displayed within an input when the option is selected. This is used when using `<DropdownLayout/>` with an `<Input/>`.
         */
        options: PropTypes.Requireable<any[]>;
        /** Handles container overflow. */
        overflow: PropTypes.Requireable<string>;
        /** Sets a pattern that typed value must match to be valid (regex). */
        pattern: PropTypes.Requireable<string>;
        /** Sets a placeholder message to display. */
        placeholder: PropTypes.Requireable<string>;
        /** Allows to pass all common popover props. */
        popoverProps: PropTypes.Requireable<PropTypes.InferProps<{
            appendTo: PropTypes.Requireable<string>;
            maxWidth: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            minWidth: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
            flip: PropTypes.Requireable<boolean>;
            fixed: PropTypes.Requireable<boolean>;
            placement: PropTypes.Requireable<string>;
            dynamicWidth: PropTypes.Requireable<boolean>;
        }>>;
        /** Defines a callback predicate for the filtering options function. */
        predicate: PropTypes.Requireable<(...args: any[]) => any>;
        /** Pass a component you want to show as the prefix of the input, e.g., text string, icon. */
        prefix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        /** Specifies whether input is read only. */
        readOnly: PropTypes.Requireable<boolean>;
        /** Specifies whether input is mandatory. */
        required: PropTypes.Requireable<boolean>;
        /** Specifies selected option by its id. */
        selectedId: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
        /** Controls whether to show options if input is empty. */
        showOptionsIfEmptyInput: PropTypes.Requireable<boolean>;
        /** Controls the size of the input. Default value: `medium` */
        size: PropTypes.Requireable<string>;
        /** Specify the status of a field. */
        status: PropTypes.Requireable<string>;
        /** Defines the message to display on status icon hover. If not given or empty there will be no tooltip. */
        statusMessage: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        /** Pass a component you want to show as the suffix of the input, e.g., text string, icon. */
        suffix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        /**  Indicates that element can be focused and where it participates in sequential keyboard navigation.*/
        tabIndex: PropTypes.Requireable<number>;
        /** Handles text overflow behavior. It can either clip (default) or display ellipsis. */
        textOverflow: PropTypes.Requireable<string>;
        /** Controls placement of a status tooltip. */
        tooltipPlacement: PropTypes.Requireable<string>;
        /** Specifies the type of `<input/>` element to display. Default is text string. */
        type: PropTypes.Requireable<string>;
    };
    static defaultProps: {
        predicate: () => boolean;
        autoSelect: boolean;
        border: string;
        clearButton: boolean;
        closeOnSelect: boolean;
        dropdownOffsetLeft: string;
        dropdownWidth: null;
        hasMore: boolean;
        hideStatusSuffix: boolean;
        inContainer: boolean;
        infiniteScroll: boolean;
        loadMore: null;
        markedOption: boolean;
        maxHeightPixels: number;
        maxLength: number;
        options: never[];
        overflow: string;
        selectedHighlight: boolean;
        showOptionsIfEmptyInput: boolean;
        textOverflow: string;
        onSelect: () => void;
        inputElement: React.JSX.Element;
        popoverProps: {
            appendTo: string;
            flip: boolean;
            fixed: boolean;
            placement: string;
        };
        tabIndex: number;
        autocomplete: string;
    };
    dropdownAdditionalProps(): {
        options: any;
    };
}
import InputWithOptions from '../InputWithOptions/InputWithOptions';
import PropTypes from 'prop-types';
import React from 'react';
//# sourceMappingURL=AutoComplete.d.ts.map