import { Injector } from '@angular/core';
import { Router } from '@angular/router';
import { Column, ExtensionFactory, ExtensionPointWithoutStateForPlugins, GenericHookOptions, GenericHookType, PluginsResolveService } from '@c8y/ngx-components';
import { DeviceGridService } from '@c8y/ngx-components/device-grid';
import { Observable } from 'rxjs';
import * as i0 from "@angular/core";
export type DeviceListColumnsFactory = ExtensionFactory<Column>;
/**
 * A hook to override the default device grid columns configuration in `c8y-device-list` component.
 */
export declare function hookDeviceListColumns(columns: GenericHookType<Column>, options?: Partial<GenericHookOptions>): import("@angular/core").ValueProvider | import("@angular/core").ClassProvider | import("@angular/core").ExistingProvider;
/**
 * A service defining device list column extension options.
 */
export declare class DeviceListExtensionService extends ExtensionPointWithoutStateForPlugins<Column> {
    private router;
    private deviceGridService;
    constructor(rootInjector: Injector, router: Router, plugins: PluginsResolveService, deviceGridService: DeviceGridService);
    protected setupItemsObservable(): Observable<Column[]>;
    static ɵfac: i0.ɵɵFactoryDeclaration<DeviceListExtensionService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<DeviceListExtensionService>;
}
//# sourceMappingURL=device-list-extension.service.d.ts.map