feat: add platform desired state contracts
This commit is contained in:
@@ -0,0 +1,148 @@
|
||||
import * as plugins from '../plugins.js';
|
||||
import type { IIdentity } from '../data/user.js';
|
||||
import type {
|
||||
IPlatformBinding,
|
||||
IPlatformCapability,
|
||||
IPlatformProviderConfig,
|
||||
TPlatformBindingStatus,
|
||||
} from '../platform/types.js';
|
||||
|
||||
export interface IReq_Any_Cloudly_GetPlatformDesiredState
|
||||
extends plugins.typedrequestInterfaces.implementsTR<
|
||||
plugins.typedrequestInterfaces.ITypedRequest,
|
||||
IReq_Any_Cloudly_GetPlatformDesiredState
|
||||
> {
|
||||
method: 'getPlatformDesiredState';
|
||||
request: {
|
||||
identity: IIdentity;
|
||||
};
|
||||
response: {
|
||||
capabilities: IPlatformCapability[];
|
||||
providerConfigs: IPlatformProviderConfig[];
|
||||
bindings: IPlatformBinding[];
|
||||
};
|
||||
}
|
||||
|
||||
export interface IReq_Any_Cloudly_GetPlatformCapabilities
|
||||
extends plugins.typedrequestInterfaces.implementsTR<
|
||||
plugins.typedrequestInterfaces.ITypedRequest,
|
||||
IReq_Any_Cloudly_GetPlatformCapabilities
|
||||
> {
|
||||
method: 'getPlatformCapabilities';
|
||||
request: {
|
||||
identity: IIdentity;
|
||||
};
|
||||
response: {
|
||||
capabilities: IPlatformCapability[];
|
||||
};
|
||||
}
|
||||
|
||||
export interface IReq_Any_Cloudly_GetPlatformProviderConfigs
|
||||
extends plugins.typedrequestInterfaces.implementsTR<
|
||||
plugins.typedrequestInterfaces.ITypedRequest,
|
||||
IReq_Any_Cloudly_GetPlatformProviderConfigs
|
||||
> {
|
||||
method: 'getPlatformProviderConfigs';
|
||||
request: {
|
||||
identity: IIdentity;
|
||||
capability?: IPlatformProviderConfig['capability'];
|
||||
};
|
||||
response: {
|
||||
providerConfigs: IPlatformProviderConfig[];
|
||||
};
|
||||
}
|
||||
|
||||
export interface IReq_Any_Cloudly_UpsertPlatformProviderConfig
|
||||
extends plugins.typedrequestInterfaces.implementsTR<
|
||||
plugins.typedrequestInterfaces.ITypedRequest,
|
||||
IReq_Any_Cloudly_UpsertPlatformProviderConfig
|
||||
> {
|
||||
method: 'upsertPlatformProviderConfig';
|
||||
request: {
|
||||
identity: IIdentity;
|
||||
providerConfig: IPlatformProviderConfig;
|
||||
};
|
||||
response: {
|
||||
providerConfig: IPlatformProviderConfig;
|
||||
};
|
||||
}
|
||||
|
||||
export interface IReq_Any_Cloudly_DeletePlatformProviderConfigById
|
||||
extends plugins.typedrequestInterfaces.implementsTR<
|
||||
plugins.typedrequestInterfaces.ITypedRequest,
|
||||
IReq_Any_Cloudly_DeletePlatformProviderConfigById
|
||||
> {
|
||||
method: 'deletePlatformProviderConfigById';
|
||||
request: {
|
||||
identity: IIdentity;
|
||||
providerConfigId: string;
|
||||
};
|
||||
response: {
|
||||
success: boolean;
|
||||
};
|
||||
}
|
||||
|
||||
export interface IReq_Any_Cloudly_GetPlatformBindings
|
||||
extends plugins.typedrequestInterfaces.implementsTR<
|
||||
plugins.typedrequestInterfaces.ITypedRequest,
|
||||
IReq_Any_Cloudly_GetPlatformBindings
|
||||
> {
|
||||
method: 'getPlatformBindings';
|
||||
request: {
|
||||
identity: IIdentity;
|
||||
serviceId?: string;
|
||||
capability?: IPlatformBinding['capability'];
|
||||
};
|
||||
response: {
|
||||
bindings: IPlatformBinding[];
|
||||
};
|
||||
}
|
||||
|
||||
export interface IReq_Any_Cloudly_UpsertPlatformBinding
|
||||
extends plugins.typedrequestInterfaces.implementsTR<
|
||||
plugins.typedrequestInterfaces.ITypedRequest,
|
||||
IReq_Any_Cloudly_UpsertPlatformBinding
|
||||
> {
|
||||
method: 'upsertPlatformBinding';
|
||||
request: {
|
||||
identity: IIdentity;
|
||||
binding: IPlatformBinding;
|
||||
};
|
||||
response: {
|
||||
binding: IPlatformBinding;
|
||||
};
|
||||
}
|
||||
|
||||
export interface IReq_Any_Cloudly_UpdatePlatformBindingStatus
|
||||
extends plugins.typedrequestInterfaces.implementsTR<
|
||||
plugins.typedrequestInterfaces.ITypedRequest,
|
||||
IReq_Any_Cloudly_UpdatePlatformBindingStatus
|
||||
> {
|
||||
method: 'updatePlatformBindingStatus';
|
||||
request: {
|
||||
identity: IIdentity;
|
||||
bindingId: string;
|
||||
status: TPlatformBindingStatus;
|
||||
endpoints?: IPlatformBinding['endpoints'];
|
||||
credentials?: IPlatformBinding['credentials'];
|
||||
errorText?: string;
|
||||
};
|
||||
response: {
|
||||
binding: IPlatformBinding;
|
||||
};
|
||||
}
|
||||
|
||||
export interface IReq_Any_Cloudly_DeletePlatformBindingById
|
||||
extends plugins.typedrequestInterfaces.implementsTR<
|
||||
plugins.typedrequestInterfaces.ITypedRequest,
|
||||
IReq_Any_Cloudly_DeletePlatformBindingById
|
||||
> {
|
||||
method: 'deletePlatformBindingById';
|
||||
request: {
|
||||
identity: IIdentity;
|
||||
bindingId: string;
|
||||
};
|
||||
response: {
|
||||
success: boolean;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user