import { QdTooltipContent } from '../../core/tooltip/model/tooltip-content.interface';
/**
 * @description Configuration Model for QdSearch.
 */
export interface QdSearchOptions {
    /**
     * @description Defines the value of the search input field. A default value can be set here, which then appears in the search field.
     * *
     * * @default ''
     */
    phrase?: string;
    /**
     * @description This property is used to display a dropdown with PreSelect options.
     */
    preSelect?: QdSearchPreSelectOptions;
    /**
     * @description This property is used to configure additional information.
     * An icon with QdToolTip will be created.
     */
    additionalInfo?: QdSearchAdditionalInfo;
    /**
     * @description If the search field is filled with content, an "X" icon is displayed. With a click/tap on this, the content of the search field can be cleared.
     *
     * * @default: false
     */
    clearable?: boolean;
    /**
     * @description After the search is executed with "Enter", the content of the field is deleted.
     * This corresponds to the behavior in Jira, for example.
     *
     * * @default: false
     */
    emptyAfterSearch?: boolean;
    /**
     * @description Sets a unique identifier for QdSearch component.
     */
    uid?: string;
    /**
     * @description Set to "true", the search field will be focused when the application is initially loaded.
     * Note: hasAutofocus can only be used once per view. No matter in which pattern it is used.
     *
     * * @default: false
     */
    hasAutofocus?: boolean;
    /**
     * By default, the post body and query string observables of the search service are not emitted for empty searches.
     * Emitting empty searches may be necessary when the search narrows a given result set down and it
     * should be possible to clear the search. When the clearable config is set, this flag is also automatically active.
     *
     * * @default: false
     */
    emitEmptySearch?: boolean;
    /**
     * If true the search is connected with the router. Then the search phrase (and preselect)
     * is saved in the url search query parameter for every search. When the application is reopened
     * the search query parameter is parsed to set the initial search phrase (and preselect).
     *
     * If you use more than one search on a page,
     * this property has to be set to false except for one search
     * because only one search per page can be connected with the router.
     *
     * * @default false (will be changed to true in v20!)
     */
    connectWithRouter?: boolean;
    /**
     * Placeholder string
     */
    placeholder?: {
        /**
         * i18n string
         */
        i18n: string;
    };
}
/**
 * @description Configuration for PreSelect options.
 */
export interface QdSearchPreSelectOptions {
    /**
     * @description If set to "true" the PreSelect is disabled.
     *
     * * @default: false
     */
    disabled?: boolean;
    /**
     * @description Configuration the option list for the items in the dropdown list.
     */
    optionsList?: QdSearchPreSelectOptionsList[];
    globalSearch?: {
        i18n?: string;
        disabled?: boolean;
    };
}
/**
 * @description Configuration for  additional information.
 */
export interface QdSearchAdditionalInfo {
    /**
     * @description If set to "true" the information is disabled.
     *
     * * @default: false
     */
    disabled?: boolean;
    /**
     * @description Defines the content that is passed to the tooltip component.
     */
    content: QdTooltipContent;
}
/**
 * @description Configuration for PreSelect options list.
 */
export interface QdSearchPreSelectOptionsList {
    /**
     * @description Defines the translation key
     */
    i18n: string;
    /**
     * @description Defines the value
     */
    value: string;
    /**
     * @description Disables this option
     *
     * * @default: false
     */
    disabled?: boolean;
    /**
     * @description Sets this option to "active"
     *
     * * @default: false
     */
    active?: boolean;
}
//# sourceMappingURL=search-options.interface.d.ts.map