import * as plugins from '../plugins.js'; import type * as authInterfaces from '../data/auth.js'; import type { IGatewayClient } from '../data/workhoster.js'; export interface IReq_ListGatewayClients extends plugins.typedrequestInterfaces.implementsTR { method: 'listGatewayClients'; request: { identity?: authInterfaces.IIdentity; apiToken?: string; }; response: { gatewayClients: IGatewayClient[]; }; } export interface IReq_CreateGatewayClient extends plugins.typedrequestInterfaces.implementsTR { method: 'createGatewayClient'; request: { identity?: authInterfaces.IIdentity; apiToken?: string; id?: string; type: IGatewayClient['type']; name: string; description?: string; hostnamePatterns?: string[]; allowedRouteTargets?: IGatewayClient['allowedRouteTargets']; capabilities?: IGatewayClient['capabilities']; }; response: { success: boolean; gatewayClient?: IGatewayClient; message?: string; }; } export interface IReq_UpdateGatewayClient extends plugins.typedrequestInterfaces.implementsTR { method: 'updateGatewayClient'; request: { identity?: authInterfaces.IIdentity; apiToken?: string; id: string; name?: string; description?: string; hostnamePatterns?: string[]; allowedRouteTargets?: IGatewayClient['allowedRouteTargets']; capabilities?: IGatewayClient['capabilities']; enabled?: boolean; }; response: { success: boolean; gatewayClient?: IGatewayClient; message?: string; }; } export interface IReq_DeleteGatewayClient extends plugins.typedrequestInterfaces.implementsTR { method: 'deleteGatewayClient'; request: { identity?: authInterfaces.IIdentity; apiToken?: string; id: string; }; response: { success: boolean; message?: string; }; } export interface IReq_CreateGatewayClientToken extends plugins.typedrequestInterfaces.implementsTR { method: 'createGatewayClientToken'; request: { identity?: authInterfaces.IIdentity; apiToken?: string; gatewayClientId: string; name?: string; expiresInDays?: number | null; }; response: { success: boolean; tokenId?: string; tokenValue?: string; message?: string; }; }