import type { IServerMetrics } from '../data/server.js'; import * as plugins from '../plugins.js'; /** * This request can be used between any two players * Examples: * WebApp -> Cloudly (get metrics) * Cloudly -> Webapp (send metrics) * Cloudly -> Coreflow (get metrics) * Coreflow -> Cloudly (send metrics) */ export interface IRequest_Any_Cloudly_ServerStatus extends plugins.typedrequestInterfaces.implementsTR< plugins.typedrequestInterfaces.ITypedRequest, IRequest_Any_Cloudly_ServerStatus > { method: 'getOrSendServerMetrics', request: { getOrSend: 'get' | 'send'; serverMetrics?: IServerMetrics; }, response: { serverMetrics?: IServerMetrics; }, } /** * this request can be used between any two players * Examples: * WebApp -> Cloudly * Cloudly -> Coreflow * Cloudly -> HostingProvider */ export interface IRequest_TriggerServerAction extends plugins.typedrequestInterfaces.implementsTR< plugins.typedrequestInterfaces.ITypedRequest, IRequest_TriggerServerAction > { method: 'triggerServerAction'; request: { actionName: 'reboot' | 'rebuild'; payload: any; }; response: { actionConfirmed: boolean; }; }