/**
 * @license
 * Copyright Endlessjs. All Rights Reserved.
 * Licensed under the MIT License. See License.txt in the project root for license information.
 */
import { Observable } from 'rxjs';
/**
 * Search component service, connects your code to a page-level search component.
 */
export declare class ElSearchService {
    private searchSubmittings$;
    private searchActivations$;
    private searchDeactivations$;
    private searchInput$;
    /***
     * Activate (open) search component
     * @param {string} searchType
     * @param {string} tag
     */
    activateSearch(searchType: string, tag?: string): void;
    /**
     * Deactibate (close) search component
     * @param {string} searchType
     * @param {string} tag
     */
    deactivateSearch(searchType: string, tag?: string): void;
    /**
     * Trigger search submit
     * @param {string} term
     * @param {string} tag
     */
    submitSearch(term: string, tag?: string): void;
    /**
     * Trigger search submit by input event
     * @param {string} term
     * @param {string} tag
     */
    searchInput(term: string, tag?: string): void;
    /**
     * Subscribe to 'activate' event
     * @returns Observable<{searchType: string; tag?: string}>
     */
    onSearchActivate(): Observable<{
        searchType: string;
        tag?: string;
    }>;
    /**
     * Subscribe to 'deactivate' event
     * @returns Observable<{searchType: string; tag?: string}>
     */
    onSearchDeactivate(): Observable<{
        searchType: string;
        tag?: string;
    }>;
    /**
     * Subscribe to 'submit' event (when submit button clicked)
     * @returns Observable<{term: string; tag?: string}>
     */
    onSearchSubmit(): Observable<{
        term: string;
        tag?: string;
    }>;
    /**
     * Subscribe to input event
     * @returns Observable<{term: string; tag?: string}>
     */
    onSearchInput(): Observable<{
        term: string;
        tag?: string;
    }>;
}
