import { EventEmitter, Injector, OnInit } from '@angular/core';
import { SmeInternalFormFieldComponent } from '../form-field.component';
import * as i0 from "@angular/core";
/**
 * Accessible search field implementation of .sme-searchbox
 */
export declare class SearchFormFieldComponent extends SmeInternalFormFieldComponent<any> implements OnInit {
    /**
     * The source name to use for logging
     */
    protected get logSourceName(): string;
    /**
     *  Input binding for the number of search results found
     */
    count?: number;
    /**
     *  Input binding for whether the user is currently searching in the field. Defaults to false
     */
    searching: boolean;
    /**
     *  Input binding for whether to trim leading/trailing whitespace in a search. Defaults to true.
     */
    trimSearch: boolean;
    /**
     *  Input binding for whether to emphasize the search button. Defaults to false.
     */
    emphasizeSearchButton: boolean;
    /**
     *  Input binding for the search button text
     */
    searchButtonText: string;
    /**
     *  Input binding for whether to disable the button and not handle clicks on it.
     */
    disableSearchButton: boolean;
    /**
     *  Output binding for the event emitted from typing into the search field, or executing a deliberate search
     */
    search: EventEmitter<string>;
    /**
     * Output binding for event emitted on key press on the search box
     */
    keyDownEvent: EventEmitter<KeyboardEvent>;
    /**
     * Output binding for event emitted when focus leaves search box
     */
    blurEvent: EventEmitter<FocusEvent>;
    /**
     *  Output binding for the event emitted from hitting the search button or the enter key
     */
    deliberateSearch: EventEmitter<string>;
    /**
     * Initializes a new instance of the SearchFormFieldComponent
     */
    constructor(injector: Injector);
    /**
     * Implementation of angular OnInit interface
     */
    ngOnInit(): void;
    /**
     * Emits the updated search value, after a default debounce time
     */
    executeSearch(): void;
    /**
     * Emits the updated deliberate search value, after a default debounce time
     */
    executeDeliberateSearch(): void;
    /**
     * Emits events on key press and while focus is on the search box
     */
    onKeyDown(event: KeyboardEvent): void;
    /**
     * Emits event when focus leaves the search box
     */
    onBlur(event: FocusEvent): void;
    /**
     * Handles the enter key on the search input
     */
    onEnterKeyDown($event: Event): boolean;
    /**
     * Handles the click event for the search icon.
     */
    iconClick($event: MouseEvent): void;
    /**
     * Creates the idBag used by this component to store unique element ids.
     * id values will be assigned be the @see BaseComponent super class.
     */
    protected createIdBag(): MsftSme.StringMap<string>;
    static ɵfac: i0.ɵɵFactoryDeclaration<SearchFormFieldComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SearchFormFieldComponent, "sme-form-field[type=\"search\"]", never, { "count": "count"; "searching": "searching"; "trimSearch": "trimSearch"; "emphasizeSearchButton": "emphasizeSearchButton"; "searchButtonText": "searchButtonText"; "disableSearchButton": "disableSearchButton"; }, { "search": "search"; "keyDownEvent": "keyDownEvent"; "blurEvent": "blurEvent"; "deliberateSearch": "deliberateSearch"; }, never, never, false, never>;
}
