import { AnimationEvent } from '@angular/animations';
import { AfterViewInit, ElementRef, EventEmitter, Injector, OnInit, Renderer2 } from '@angular/core';
import { DeviceDetectorService } from 'ngx-device-detector';
import { ComponentBase } from '../../../classes/base/component-base';
import { IComponentBase } from '../../../classes/base/component-base.interface';
import { AdvanceSearchData, AdvanceSearchSetting, CrudFormData, CrudListSetting } from '../../../classes/form-schema';
import { Filter } from '../../../models/grid-info';
import { CustomRouterService } from '../../../services/custom-router.service';
import { LocalCacheService } from '../../../services/localCache.service';
import { ModuleConfigService } from '../../../services/module-config.service';
import { NotifierService } from '../../../services/notifier.service';
import { SearchInfo } from '../../models/search';
import { CrudFormComponent } from '../crud-form/crud-form.component';
export declare class AdvanceSearchComponent extends ComponentBase implements OnInit, AfterViewInit, IComponentBase {
    private _customRouterService;
    private _notifierService;
    _deviceDetectorService: DeviceDetectorService;
    private _localCacheService;
    private _renderer;
    private _moduleConfig;
    el: ElementRef;
    crudForm: CrudFormComponent;
    overlayPanel: ElementRef;
    parentSetting: CrudListSetting;
    _searchInfo: SearchInfo;
    set searchInfo(value: SearchInfo);
    get searchInfo(): SearchInfo;
    allowLoadDataWhenParentNull: boolean;
    loading: boolean;
    onSearch: EventEmitter<any>;
    onFormEvent: EventEmitter<any>;
    onInit: EventEmitter<any>;
    _overlayPanel: HTMLDivElement;
    overlayShowTransitionOptions: string;
    overlayHideTransitionOptions: string;
    alignOverlayTimeout: any;
    maskOverlay: HTMLDivElement;
    maskClickListener: Function;
    documentResizeListener: any;
    keyword: string;
    model: AdvanceSearchData;
    modelCrudForm: CrudFormData;
    setting: AdvanceSearchSetting;
    ready: boolean;
    needClearTypedValues: boolean;
    snapShot: string;
    fieldParentMap: any;
    target: any;
    showForm: boolean;
    searchBoxTooltip: any;
    filter_form: Filter[];
    filter_keyword: Filter[];
    filter_query: Filter[];
    _searchBoxMaxHeight: any;
    environment: any;
    hemisAdvanceSearch: boolean;
    constructor(_customRouterService: CustomRouterService, _injector: Injector, _notifierService: NotifierService, _deviceDetectorService: DeviceDetectorService, _localCacheService: LocalCacheService, _renderer: Renderer2, _moduleConfig: ModuleConfigService);
    ngOnInit(): void;
    initData(): Promise<void>;
    setDataDefault(formSchema: any): void;
    ngAfterViewInit(): void;
    onChanged(evt: any): void;
    onEsc(evt: any): void;
    clearKeyword(): void;
    onDoSearching(): void;
    handleSearchBuilder(evt: any): void;
    private onSearching;
    clearSearch(evt: any): void;
    deQuyAndEmitSearch(): void;
    getFilters(): Filter[];
    mergeFilterAndEmit(): void;
    onFormShow(event: any): void;
    checkFixedPosition(elem: any): boolean;
    getCoords(elem: any): {
        top: number;
        left: number;
    };
    onFormHide(evt: any): void;
    onFormEventHandler(evt: any, searchModel: any): void;
    onClick(evt: any): void;
    hideFormSearch(): void;
    showFormSearch(): void;
    handleSaveSetting(filters: any): void;
    handleDeleteSaveSetting(): void;
    getSavedFilters(): void;
    onWindowResize(): void;
    bindDocumentResizeListener(): void;
    unbindDocumentResizeListener(): void;
    appendOverlay(): void;
    alignOverlay(): void;
    restoreOverlayAppend(): void;
    onOverlayHide(): void;
    handleAdvanceSearchPanelRendered(): void;
    onOverlayAnimationStart(event: AnimationEvent): void;
    unbindMaskClickListener(): void;
    appendMask(): void;
    removeMask(): void;
    ngOnDestroy(): void;
}
//# sourceMappingURL=advance-search.component.d.ts.map