import { OnInit, ChangeDetectorRef, EventEmitter } from '@angular/core';
import { BehaviorSubject } from 'rxjs';
import { UISearchZoneModel, UiSearchDefinitionService } from 'e5core-angular-services';
import { SearchFormModel } from '../../models/search-form.model';
import { DataSourceQuery } from '../../datasource/data-source-query';
import { UiStyleService } from '../../services/ui-style.service';
import { SearchDeliveryService } from '../../services/search-delivery.service';
export declare class E5coreUiSearchFormComponent implements OnInit {
    style: UiStyleService;
    private searchDeliveryService;
    search: UiSearchDefinitionService;
    private cd;
    searchForm$: BehaviorSubject<SearchFormModel>;
    searchDefinitionId: number;
    defaultValues: {
        [s: string]: string;
    };
    queryChange: EventEmitter<DataSourceQuery>;
    zones: UISearchZoneModel[];
    errorMessage: string;
    zoneTemplateId: string;
    constructor(style: UiStyleService, searchDeliveryService: SearchDeliveryService, search: UiSearchDefinitionService, cd: ChangeDetectorRef);
    ngOnInit(): void;
    private createDataSourceQuery;
    /**
     * If there are any default values on the form, then set them.
     * @param values the default values to use on the form
     */
    private applyDefaultValues;
    /**
     * Reset the serch form to the original default values, or clear it.
     */
    reset(): void;
}
