import { EventEmitter, OnDestroy } from '@angular/core';
import { SearchBuilderComponentDefinition } from './interfaces/component-definition.interface';
import { SearchBuilderQuery } from './interfaces/query.interface';
import * as i0 from "@angular/core";
export declare class SearchBuilderComponent implements OnDestroy {
    private readonly _searchBuilderService;
    set components(components: SearchBuilderComponentDefinition[]);
    set query(value: SearchBuilderQuery);
    get query(): SearchBuilderQuery;
    queryChange: EventEmitter<SearchBuilderQuery>;
    valid: EventEmitter<boolean>;
    private readonly _querySubscription;
    private readonly _validSubscription;
    /**
     * Register the default search builder components
     */
    constructor();
    /**
     * Remove any subscriptions and cleanup
     */
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<SearchBuilderComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SearchBuilderComponent, "ux-search-builder", never, { "components": { "alias": "components"; "required": false; }; "query": { "alias": "query"; "required": false; }; }, { "queryChange": "queryChange"; "valid": "valid"; }, never, ["*"], false, never>;
}
