import * as i0 from '@angular/core';
import { OnInit, OnDestroy, EventEmitter } from '@angular/core';
import { UserPreferencesGridConfigContext, Column } from '@c8y/ngx-components';
import { DeviceGridComponent } from '@c8y/ngx-components/device-grid';
import { Observable } from 'rxjs';

declare class DeviceSelectorComponent implements OnInit, OnDestroy {
    static readonly GRID_CONFIG_CONTEXT: UserPreferencesGridConfigContext;
    deviceGrid: DeviceGridComponent;
    deviceTypes: Observable<string[]>;
    typeColumn: Column;
    onDeviceQueryStringChange: EventEmitter<string>;
    columns: Column[];
    private unsubscribe$;
    ngOnInit(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<DeviceSelectorComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DeviceSelectorComponent, "c8y-device-selector", never, { "deviceTypes": { "alias": "deviceTypes"; "required": false; }; }, { "onDeviceQueryStringChange": "onDeviceQueryStringChange"; }, never, never, true, never>;
}

/**
 * This module provides a component for selecting devices based on filters.
 */
declare class DeviceSelectorModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<DeviceSelectorModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<DeviceSelectorModule, never, [typeof DeviceSelectorComponent], [typeof DeviceSelectorComponent]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<DeviceSelectorModule>;
}

export { DeviceSelectorComponent, DeviceSelectorModule };
//# sourceMappingURL=index.d.ts.map
