UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

50 lines 1.92 kB
import { IManagedObject } from '@c8y/client'; import { BuiltInActionType, ExtensionFactory, FilteringModifier, ServerSideDataResult } from '@c8y/ngx-components'; import { Observable } from 'rxjs'; export type DataCallback = (serverSideDataResult: ServerSideDataResult) => ServerSideDataResult; export interface FilterConfig { columnName: string; filteringModifier: FilteringModifier; } export declare const enum DeviceGridActionType { Delete = "DELETE" } export declare const enum DeviceGridBulkActionType { } /** * Defines an action hook for the device grid. * * @interface DeviceGridActionHook * @member {BuiltInActionType} type of the action * @member {boolean} refreshAfterActionDone refreshs the device grid after the action execution * @member {(mo: IManagedObject) => boolean} deviceMatches resolves the object of the row and needs to return true for an element that you want to execute your action on * ```typescript * { * ... * deviceMatches: (device: IManagedObject) => device?.type === 'my_custom_type' * } * ``` * @member {(mo: IManagedObject) => Observable<unknown> | Promise<unknown> | unknown} onAction is called for a matching device. It resolves the object of the row. * ```typescript * { * ... * onAction: (device: IManagedObject) => this.myService.triggerCustomAction(device) * } * ``` * * @deprecated Use `ActionControlHook` instead. */ export interface DeviceGridActionHook { type: BuiltInActionType | string; text?: string; icon?: string; showOnHover?: boolean; refreshAfterActionDone: boolean; deviceMatches: (mo: IManagedObject) => boolean; onAction: (mo: IManagedObject) => Observable<unknown> | Promise<unknown> | unknown; } /** * @deprecated Use `ActionControlFactory` instead. */ export type DeviceGridExtensionFactory = ExtensionFactory<DeviceGridActionHook>; //# sourceMappingURL=device-grid.model.d.ts.map