@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
62 lines • 2.75 kB
TypeScript
import { IOperation, IResult, OperationService } from '@c8y/client';
import { ActionControl, AlertService } from '@c8y/ngx-components';
import { Service } from './services.model';
import * as i0 from "@angular/core";
export declare class ServiceCommandService {
private operationService;
private alertService;
constructor(operationService: OperationService, alertService: AlertService);
/**
* Check if the service supports service commands.
* @param service The service object containing supported operations.
* @returns boolean indicating if the service supports service commands.
*/
isServiceCommandSupported(service: Service): boolean;
/**
* Get the list of supported service commands for the given service object.
* @param service The service object containing the c8y_SupportedServiceCommands fragment.
* @returns Array of supported commands.
*/
getSupportedCommands(service: Service): string[];
/**
* Check if a specific command is supported for the given service.
* @param service The service object.
* @param command The command to check (e.g., START, STOP).
* @returns boolean indicating if the command is supported.
*/
isCommandSupported(service: Service, command: string): boolean;
/**
* Get all supported commands for a list of services.
* @param services The list of service objects to evaluate.
* @returns Array of all unique supported commands.
*/
getAllSupportedCommands(services: Service[]): string[];
/**
* Create an operation for the selected service command.
* @param service The service object the operation should target.
* @param command The command to execute (e.g., START, STOP).
* @returns Promise of the created operation.
*/
createOperation({ id, name, serviceType }: Service, command: string): Promise<IResult<IOperation>>;
/**
* Generate a static list of action controls.
* The specific logic for each service is handled dynamically in showIf and callback.
* @returns Array of ActionControl objects.
*/
generateActionControls(commands: string[]): ActionControl[];
/**
* Get the icon for a specific command.
* @param command The command name.
* @returns Icon string for the command.
*/
private getCommandIcon;
/**
* Get the icon class for a specific command.
* @param command The command name.
* @returns Icon class string for the command.
*/
private getCommandIconClass;
static ɵfac: i0.ɵɵFactoryDeclaration<ServiceCommandService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<ServiceCommandService>;
}
//# sourceMappingURL=service-command.service.d.ts.map