import * as plugins from '../plugins.js'; import type * as authInterfaces from '../data/auth.js'; import type { IGatewayCapabilities, IWorkAppMailIdentity, IWorkAppMailIdentitySyncResult, IWorkAppMailInboundRoute, IWorkAppMailOwnership, IWorkAppRouteOwnership, IWorkAppRouteSyncResult, IWorkHosterDomain, } from '../data/workhoster.js'; import type { IDcRouterRouteConfig } from '../data/remoteingress.js'; export interface IReq_GetGatewayCapabilities extends plugins.typedrequestInterfaces.implementsTR< plugins.typedrequestInterfaces.ITypedRequest, IReq_GetGatewayCapabilities > { method: 'getGatewayCapabilities'; request: { identity?: authInterfaces.IIdentity; apiToken?: string; }; response: { capabilities: IGatewayCapabilities; }; } export interface IReq_GetWorkHosterDomains extends plugins.typedrequestInterfaces.implementsTR< plugins.typedrequestInterfaces.ITypedRequest, IReq_GetWorkHosterDomains > { method: 'getWorkHosterDomains'; request: { identity?: authInterfaces.IIdentity; apiToken?: string; }; response: { domains: IWorkHosterDomain[]; }; } export interface IReq_SyncWorkAppRoute extends plugins.typedrequestInterfaces.implementsTR< plugins.typedrequestInterfaces.ITypedRequest, IReq_SyncWorkAppRoute > { method: 'syncWorkAppRoute'; request: { identity?: authInterfaces.IIdentity; apiToken?: string; ownership: IWorkAppRouteOwnership; route?: IDcRouterRouteConfig; enabled?: boolean; delete?: boolean; }; response: IWorkAppRouteSyncResult; } export interface IReq_GetWorkAppMailIdentities extends plugins.typedrequestInterfaces.implementsTR< plugins.typedrequestInterfaces.ITypedRequest, IReq_GetWorkAppMailIdentities > { method: 'getWorkAppMailIdentities'; request: { identity?: authInterfaces.IIdentity; apiToken?: string; ownership?: Partial; }; response: { identities: IWorkAppMailIdentity[]; }; } export interface IReq_SyncWorkAppMailIdentity extends plugins.typedrequestInterfaces.implementsTR< plugins.typedrequestInterfaces.ITypedRequest, IReq_SyncWorkAppMailIdentity > { method: 'syncWorkAppMailIdentity'; request: { identity?: authInterfaces.IIdentity; apiToken?: string; ownership: IWorkAppMailOwnership; localPart: string; domain: string; displayName?: string; inbound?: IWorkAppMailInboundRoute; enabled?: boolean; smtpEnabled?: boolean; resetSmtpPassword?: boolean; delete?: boolean; }; response: IWorkAppMailIdentitySyncResult; }