@scaleway/sdk 2.67.0 → 2.69.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/dist/api/audit_trail/v1alpha1/api.gen.cjs +6 -1
  2. package/dist/api/audit_trail/v1alpha1/api.gen.js +6 -1
  3. package/dist/api/audit_trail/v1alpha1/marshalling.gen.cjs +6 -0
  4. package/dist/api/audit_trail/v1alpha1/marshalling.gen.js +6 -0
  5. package/dist/api/audit_trail/v1alpha1/types.gen.d.ts +55 -15
  6. package/dist/api/audit_trail/v1alpha1/validation-rules.gen.cjs +3 -0
  7. package/dist/api/audit_trail/v1alpha1/validation-rules.gen.d.ts +3 -0
  8. package/dist/api/audit_trail/v1alpha1/validation-rules.gen.js +3 -0
  9. package/dist/api/baremetal/v1/api.gen.cjs +13 -0
  10. package/dist/api/baremetal/v1/api.gen.d.ts +8 -1
  11. package/dist/api/baremetal/v1/api.gen.js +13 -0
  12. package/dist/api/baremetal/v1/content.gen.cjs +2 -1
  13. package/dist/api/baremetal/v1/content.gen.js +2 -1
  14. package/dist/api/baremetal/v1/index.gen.d.ts +1 -1
  15. package/dist/api/baremetal/v1/marshalling.gen.cjs +1 -0
  16. package/dist/api/baremetal/v1/marshalling.gen.js +1 -0
  17. package/dist/api/baremetal/v1/types.gen.d.ts +9 -1
  18. package/dist/api/billing/v2beta1/api.gen.cjs +9 -2
  19. package/dist/api/billing/v2beta1/api.gen.d.ts +9 -2
  20. package/dist/api/billing/v2beta1/api.gen.js +9 -2
  21. package/dist/api/billing/v2beta1/types.gen.d.ts +1 -1
  22. package/dist/api/block/index.gen.cjs +4 -2
  23. package/dist/api/block/index.gen.d.ts +1 -0
  24. package/dist/api/block/index.gen.js +4 -2
  25. package/dist/api/block/v1/api.gen.cjs +303 -0
  26. package/dist/api/block/v1/api.gen.d.ts +152 -0
  27. package/dist/api/block/v1/api.gen.js +303 -0
  28. package/dist/api/block/v1/content.gen.cjs +22 -0
  29. package/dist/api/block/v1/content.gen.d.ts +7 -0
  30. package/dist/api/block/v1/content.gen.js +22 -0
  31. package/dist/api/block/v1/index.gen.cjs +10 -0
  32. package/dist/api/block/v1/index.gen.d.ts +4 -0
  33. package/dist/api/block/v1/index.gen.js +10 -0
  34. package/dist/api/block/v1/marshalling.gen.cjs +200 -0
  35. package/dist/api/block/v1/marshalling.gen.d.ts +14 -0
  36. package/dist/api/block/v1/marshalling.gen.js +200 -0
  37. package/dist/api/block/v1/types.gen.d.ts +335 -0
  38. package/dist/api/block/v1/validation-rules.gen.cjs +56 -0
  39. package/dist/api/block/v1/validation-rules.gen.d.ts +47 -0
  40. package/dist/api/block/v1/validation-rules.gen.js +56 -0
  41. package/dist/api/block/v1alpha1/api.gen.cjs +1 -0
  42. package/dist/api/block/v1alpha1/api.gen.js +1 -0
  43. package/dist/api/block/v1alpha1/types.gen.d.ts +5 -0
  44. package/dist/api/edge_services/index.gen.cjs +2 -0
  45. package/dist/api/edge_services/index.gen.d.ts +1 -0
  46. package/dist/api/edge_services/index.gen.js +3 -1
  47. package/dist/api/edge_services/v1beta1/api.gen.cjs +941 -0
  48. package/dist/api/edge_services/v1beta1/api.gen.d.ts +454 -0
  49. package/dist/api/edge_services/v1beta1/api.gen.js +941 -0
  50. package/dist/api/edge_services/v1beta1/content.gen.cjs +8 -0
  51. package/dist/api/edge_services/v1beta1/content.gen.d.ts +5 -0
  52. package/dist/api/edge_services/v1beta1/content.gen.js +8 -0
  53. package/dist/api/{webhosting/v1alpha1 → edge_services/v1beta1}/index.gen.cjs +2 -2
  54. package/dist/api/edge_services/v1beta1/index.gen.d.ts +4 -0
  55. package/dist/api/edge_services/v1beta1/index.gen.js +9 -0
  56. package/dist/api/edge_services/v1beta1/marshalling.gen.cjs +809 -0
  57. package/dist/api/edge_services/v1beta1/marshalling.gen.d.ts +54 -0
  58. package/dist/api/edge_services/v1beta1/marshalling.gen.js +809 -0
  59. package/dist/api/edge_services/v1beta1/types.gen.d.ts +1218 -0
  60. package/dist/api/edge_services/v1beta1/validation-rules.gen.cjs +23 -0
  61. package/dist/api/edge_services/v1beta1/validation-rules.gen.d.ts +18 -0
  62. package/dist/api/edge_services/v1beta1/validation-rules.gen.js +23 -0
  63. package/dist/api/iam/v1alpha1/api.gen.cjs +7 -0
  64. package/dist/api/iam/v1alpha1/api.gen.d.ts +2 -1
  65. package/dist/api/iam/v1alpha1/api.gen.js +8 -1
  66. package/dist/api/iam/v1alpha1/index.gen.d.ts +1 -1
  67. package/dist/api/iam/v1alpha1/marshalling.gen.cjs +51 -0
  68. package/dist/api/iam/v1alpha1/marshalling.gen.d.ts +2 -1
  69. package/dist/api/iam/v1alpha1/marshalling.gen.js +51 -0
  70. package/dist/api/iam/v1alpha1/types.gen.d.ts +24 -0
  71. package/dist/api/instance/v1/api.gen.cjs +18 -0
  72. package/dist/api/instance/v1/api.gen.d.ts +13 -1
  73. package/dist/api/instance/v1/api.gen.js +19 -1
  74. package/dist/api/instance/v1/index.gen.d.ts +1 -1
  75. package/dist/api/instance/v1/marshalling.gen.cjs +12 -0
  76. package/dist/api/instance/v1/marshalling.gen.d.ts +2 -1
  77. package/dist/api/instance/v1/marshalling.gen.js +12 -0
  78. package/dist/api/instance/v1/types.gen.d.ts +12 -0
  79. package/dist/api/lb/v1/marshalling.gen.cjs +2 -0
  80. package/dist/api/lb/v1/marshalling.gen.js +2 -0
  81. package/dist/api/lb/v1/types.gen.d.ts +2 -0
  82. package/dist/api/mongodb/v1alpha1/api.gen.cjs +11 -0
  83. package/dist/api/mongodb/v1alpha1/api.gen.d.ts +2 -1
  84. package/dist/api/mongodb/v1alpha1/api.gen.js +12 -1
  85. package/dist/api/mongodb/v1alpha1/index.gen.d.ts +1 -1
  86. package/dist/api/mongodb/v1alpha1/marshalling.gen.cjs +26 -1
  87. package/dist/api/mongodb/v1alpha1/marshalling.gen.d.ts +2 -1
  88. package/dist/api/mongodb/v1alpha1/marshalling.gen.js +26 -1
  89. package/dist/api/mongodb/v1alpha1/types.gen.d.ts +29 -0
  90. package/dist/api/mongodb/v1alpha1/validation-rules.gen.cjs +8 -0
  91. package/dist/api/mongodb/v1alpha1/validation-rules.gen.d.ts +7 -0
  92. package/dist/api/mongodb/v1alpha1/validation-rules.gen.js +8 -0
  93. package/dist/api/secret/v1beta1/api.gen.cjs +2 -34
  94. package/dist/api/secret/v1beta1/api.gen.d.ts +3 -19
  95. package/dist/api/secret/v1beta1/api.gen.js +2 -34
  96. package/dist/api/secret/v1beta1/index.gen.d.ts +1 -1
  97. package/dist/api/secret/v1beta1/types.gen.d.ts +3 -19
  98. package/dist/api/tem/v1alpha1/types.gen.d.ts +5 -5
  99. package/dist/api/vpcgw/v1/api.gen.cjs +7 -0
  100. package/dist/api/vpcgw/v1/api.gen.d.ts +7 -0
  101. package/dist/api/vpcgw/v1/api.gen.js +7 -0
  102. package/dist/api/vpcgw/v1/types.gen.d.ts +1 -0
  103. package/dist/api/webhosting/index.gen.cjs +0 -2
  104. package/dist/api/webhosting/index.gen.d.ts +0 -1
  105. package/dist/api/webhosting/index.gen.js +1 -3
  106. package/dist/api/webhosting/v1/content.gen.cjs +0 -6
  107. package/dist/api/webhosting/v1/content.gen.d.ts +1 -3
  108. package/dist/api/webhosting/v1/content.gen.js +0 -6
  109. package/dist/api/webhosting/v1/index.gen.cjs +0 -1
  110. package/dist/api/webhosting/v1/index.gen.d.ts +1 -1
  111. package/dist/api/webhosting/v1/index.gen.js +1 -2
  112. package/dist/api/webhosting/v1/marshalling.gen.cjs +1 -2
  113. package/dist/api/webhosting/v1/marshalling.gen.js +1 -2
  114. package/dist/api/webhosting/v1/types.gen.d.ts +3 -6
  115. package/dist/scw/constants.cjs +1 -1
  116. package/dist/scw/constants.d.ts +2 -2
  117. package/dist/scw/constants.js +1 -1
  118. package/dist/scw/errors/standard/quotas-exceeded-error.cjs +1 -1
  119. package/dist/scw/errors/standard/quotas-exceeded-error.d.ts +4 -4
  120. package/dist/scw/errors/standard/quotas-exceeded-error.js +1 -1
  121. package/package.json +2 -2
  122. package/dist/api/webhosting/v1alpha1/api.gen.cjs +0 -339
  123. package/dist/api/webhosting/v1alpha1/api.gen.d.ts +0 -168
  124. package/dist/api/webhosting/v1alpha1/api.gen.js +0 -339
  125. package/dist/api/webhosting/v1alpha1/content.gen.cjs +0 -8
  126. package/dist/api/webhosting/v1alpha1/content.gen.d.ts +0 -3
  127. package/dist/api/webhosting/v1alpha1/content.gen.js +0 -8
  128. package/dist/api/webhosting/v1alpha1/index.gen.d.ts +0 -4
  129. package/dist/api/webhosting/v1alpha1/index.gen.js +0 -9
  130. package/dist/api/webhosting/v1alpha1/marshalling.gen.cjs +0 -300
  131. package/dist/api/webhosting/v1alpha1/marshalling.gen.d.ts +0 -17
  132. package/dist/api/webhosting/v1alpha1/marshalling.gen.js +0 -300
  133. package/dist/api/webhosting/v1alpha1/types.gen.d.ts +0 -480
  134. package/dist/api/webhosting/v1alpha1/validation-rules.gen.cjs +0 -32
  135. package/dist/api/webhosting/v1alpha1/validation-rules.gen.d.ts +0 -27
  136. package/dist/api/webhosting/v1alpha1/validation-rules.gen.js +0 -32
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const CreateWafStageRequest = {
4
+ paranoiaLevel: {
5
+ greaterThanOrEqual: 1,
6
+ lessThanOrEqual: 4
7
+ }
8
+ };
9
+ const UpdateWafStageRequest = {
10
+ paranoiaLevel: {
11
+ greaterThanOrEqual: 1,
12
+ lessThanOrEqual: 4
13
+ }
14
+ };
15
+ const WafStage = {
16
+ paranoiaLevel: {
17
+ greaterThanOrEqual: 1,
18
+ lessThanOrEqual: 4
19
+ }
20
+ };
21
+ exports.CreateWafStageRequest = CreateWafStageRequest;
22
+ exports.UpdateWafStageRequest = UpdateWafStageRequest;
23
+ exports.WafStage = WafStage;
@@ -0,0 +1,18 @@
1
+ export declare const CreateWafStageRequest: {
2
+ paranoiaLevel: {
3
+ greaterThanOrEqual: number;
4
+ lessThanOrEqual: number;
5
+ };
6
+ };
7
+ export declare const UpdateWafStageRequest: {
8
+ paranoiaLevel: {
9
+ greaterThanOrEqual: number;
10
+ lessThanOrEqual: number;
11
+ };
12
+ };
13
+ export declare const WafStage: {
14
+ paranoiaLevel: {
15
+ greaterThanOrEqual: number;
16
+ lessThanOrEqual: number;
17
+ };
18
+ };
@@ -0,0 +1,23 @@
1
+ const CreateWafStageRequest = {
2
+ paranoiaLevel: {
3
+ greaterThanOrEqual: 1,
4
+ lessThanOrEqual: 4
5
+ }
6
+ };
7
+ const UpdateWafStageRequest = {
8
+ paranoiaLevel: {
9
+ greaterThanOrEqual: 1,
10
+ lessThanOrEqual: 4
11
+ }
12
+ };
13
+ const WafStage = {
14
+ paranoiaLevel: {
15
+ greaterThanOrEqual: 1,
16
+ lessThanOrEqual: 4
17
+ }
18
+ };
19
+ export {
20
+ CreateWafStageRequest,
21
+ UpdateWafStageRequest,
22
+ WafStage
23
+ };
@@ -324,6 +324,13 @@ class API extends api.API {
324
324
  },
325
325
  marshalling_gen.unmarshalListGracePeriodsResponse
326
326
  );
327
+ getUserConnections = (request) => this.client.fetch(
328
+ {
329
+ method: "GET",
330
+ path: `/iam/v1alpha1/users/${marshalling.validatePathParam("userId", request.userId)}/connections`
331
+ },
332
+ marshalling_gen.unmarshalGetUserConnectionsResponse
333
+ );
327
334
  pageOfListApplications = (request = {}) => this.client.fetch(
328
335
  {
329
336
  method: "GET",
@@ -1,5 +1,5 @@
1
1
  import { API as ParentAPI } from '../../../bridge';
2
- import type { APIKey, AddGroupMemberRequest, AddGroupMembersRequest, Application, ClonePolicyRequest, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateSSHKeyRequest, CreateUserMFAOTPRequest, CreateUserRequest, DeleteAPIKeyRequest, DeleteApplicationRequest, DeleteGroupRequest, DeleteJWTRequest, DeletePolicyRequest, DeleteSSHKeyRequest, DeleteUserMFAOTPRequest, DeleteUserRequest, EncodedJWT, GetAPIKeyRequest, GetApplicationRequest, GetGroupRequest, GetJWTRequest, GetLogRequest, GetOrganizationSecuritySettingsRequest, GetPolicyRequest, GetQuotumRequest, GetSSHKeyRequest, GetUserRequest, Group, JWT, ListAPIKeysRequest, ListAPIKeysResponse, ListApplicationsRequest, ListApplicationsResponse, ListGracePeriodsRequest, ListGracePeriodsResponse, ListGroupsRequest, ListGroupsResponse, ListJWTsRequest, ListJWTsResponse, ListLogsRequest, ListLogsResponse, ListPermissionSetsRequest, ListPermissionSetsResponse, ListPoliciesRequest, ListPoliciesResponse, ListQuotaRequest, ListQuotaResponse, ListRulesRequest, ListRulesResponse, ListSSHKeysRequest, ListSSHKeysResponse, ListUsersRequest, ListUsersResponse, LockUserRequest, Log, MFAOTP, OrganizationSecuritySettings, Policy, Quotum, RemoveGroupMemberRequest, SSHKey, SetGroupMembersRequest, SetRulesRequest, SetRulesResponse, UnlockUserRequest, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse } from './types.gen';
2
+ import type { APIKey, AddGroupMemberRequest, AddGroupMembersRequest, Application, ClonePolicyRequest, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateSSHKeyRequest, CreateUserMFAOTPRequest, CreateUserRequest, DeleteAPIKeyRequest, DeleteApplicationRequest, DeleteGroupRequest, DeleteJWTRequest, DeletePolicyRequest, DeleteSSHKeyRequest, DeleteUserMFAOTPRequest, DeleteUserRequest, EncodedJWT, GetAPIKeyRequest, GetApplicationRequest, GetGroupRequest, GetJWTRequest, GetLogRequest, GetOrganizationSecuritySettingsRequest, GetPolicyRequest, GetQuotumRequest, GetSSHKeyRequest, GetUserConnectionsRequest, GetUserConnectionsResponse, GetUserRequest, Group, JWT, ListAPIKeysRequest, ListAPIKeysResponse, ListApplicationsRequest, ListApplicationsResponse, ListGracePeriodsRequest, ListGracePeriodsResponse, ListGroupsRequest, ListGroupsResponse, ListJWTsRequest, ListJWTsResponse, ListLogsRequest, ListLogsResponse, ListPermissionSetsRequest, ListPermissionSetsResponse, ListPoliciesRequest, ListPoliciesResponse, ListQuotaRequest, ListQuotaResponse, ListRulesRequest, ListRulesResponse, ListSSHKeysRequest, ListSSHKeysResponse, ListUsersRequest, ListUsersResponse, LockUserRequest, Log, MFAOTP, OrganizationSecuritySettings, Policy, Quotum, RemoveGroupMemberRequest, SSHKey, SetGroupMembersRequest, SetRulesRequest, SetRulesResponse, UnlockUserRequest, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse } from './types.gen';
3
3
  /**
4
4
  * IAM API.
5
5
  *
@@ -165,6 +165,7 @@ export declare class API extends ParentAPI {
165
165
  * @returns A Promise of ListGracePeriodsResponse
166
166
  */
167
167
  listGracePeriods: (request?: Readonly<ListGracePeriodsRequest>) => Promise<ListGracePeriodsResponse>;
168
+ getUserConnections: (request: Readonly<GetUserConnectionsRequest>) => Promise<GetUserConnectionsResponse>;
168
169
  protected pageOfListApplications: (request?: Readonly<ListApplicationsRequest>) => Promise<ListApplicationsResponse>;
169
170
  /**
170
171
  * List applications of an Organization. List the applications of an
@@ -2,7 +2,7 @@ import { API as API$1 } from "../../../scw/api.js";
2
2
  import { urlParams, validatePathParam, resolveOneOf } from "../../../helpers/marshalling.js";
3
3
  import "../../../vendor/base64/index.js";
4
4
  import { enrichForPagination } from "../../../scw/fetch/resource-paginator.js";
5
- import { unmarshalListSSHKeysResponse, marshalCreateSSHKeyRequest, unmarshalSSHKey, marshalUpdateSSHKeyRequest, unmarshalListUsersResponse, unmarshalUser, marshalUpdateUserRequest, marshalCreateUserRequest, marshalUpdateUserUsernameRequest, marshalUpdateUserPasswordRequest, unmarshalMFAOTP, marshalValidateUserMFAOTPRequest, unmarshalValidateUserMFAOTPResponse, unmarshalListGracePeriodsResponse, unmarshalListApplicationsResponse, marshalCreateApplicationRequest, unmarshalApplication, marshalUpdateApplicationRequest, unmarshalListGroupsResponse, marshalCreateGroupRequest, unmarshalGroup, marshalUpdateGroupRequest, marshalSetGroupMembersRequest, marshalAddGroupMemberRequest, marshalAddGroupMembersRequest, marshalRemoveGroupMemberRequest, unmarshalListPoliciesResponse, marshalCreatePolicyRequest, unmarshalPolicy, marshalUpdatePolicyRequest, marshalSetRulesRequest, unmarshalSetRulesResponse, unmarshalListRulesResponse, unmarshalListPermissionSetsResponse, unmarshalListAPIKeysResponse, marshalCreateAPIKeyRequest, unmarshalAPIKey, marshalUpdateAPIKeyRequest, unmarshalListQuotaResponse, unmarshalQuotum, unmarshalListJWTsResponse, marshalCreateJWTRequest, unmarshalEncodedJWT, unmarshalJWT, unmarshalListLogsResponse, unmarshalLog, unmarshalOrganizationSecuritySettings, marshalUpdateOrganizationSecuritySettingsRequest } from "./marshalling.gen.js";
5
+ import { unmarshalListSSHKeysResponse, marshalCreateSSHKeyRequest, unmarshalSSHKey, marshalUpdateSSHKeyRequest, unmarshalListUsersResponse, unmarshalUser, marshalUpdateUserRequest, marshalCreateUserRequest, marshalUpdateUserUsernameRequest, marshalUpdateUserPasswordRequest, unmarshalMFAOTP, marshalValidateUserMFAOTPRequest, unmarshalValidateUserMFAOTPResponse, unmarshalListGracePeriodsResponse, unmarshalGetUserConnectionsResponse, unmarshalListApplicationsResponse, marshalCreateApplicationRequest, unmarshalApplication, marshalUpdateApplicationRequest, unmarshalListGroupsResponse, marshalCreateGroupRequest, unmarshalGroup, marshalUpdateGroupRequest, marshalSetGroupMembersRequest, marshalAddGroupMemberRequest, marshalAddGroupMembersRequest, marshalRemoveGroupMemberRequest, unmarshalListPoliciesResponse, marshalCreatePolicyRequest, unmarshalPolicy, marshalUpdatePolicyRequest, marshalSetRulesRequest, unmarshalSetRulesResponse, unmarshalListRulesResponse, unmarshalListPermissionSetsResponse, unmarshalListAPIKeysResponse, marshalCreateAPIKeyRequest, unmarshalAPIKey, marshalUpdateAPIKeyRequest, unmarshalListQuotaResponse, unmarshalQuotum, unmarshalListJWTsResponse, marshalCreateJWTRequest, unmarshalEncodedJWT, unmarshalJWT, unmarshalListLogsResponse, unmarshalLog, unmarshalOrganizationSecuritySettings, marshalUpdateOrganizationSecuritySettingsRequest } from "./marshalling.gen.js";
6
6
  const jsonContentHeaders = {
7
7
  "Content-Type": "application/json; charset=utf-8"
8
8
  };
@@ -322,6 +322,13 @@ class API extends API$1 {
322
322
  },
323
323
  unmarshalListGracePeriodsResponse
324
324
  );
325
+ getUserConnections = (request) => this.client.fetch(
326
+ {
327
+ method: "GET",
328
+ path: `/iam/v1alpha1/users/${validatePathParam("userId", request.userId)}/connections`
329
+ },
330
+ unmarshalGetUserConnectionsResponse
331
+ );
325
332
  pageOfListApplications = (request = {}) => this.client.fetch(
326
333
  {
327
334
  method: "GET",
@@ -1,3 +1,3 @@
1
1
  export { API } from './api.gen.js';
2
- export type { APIKey, AddGroupMemberRequest, AddGroupMembersRequest, Application, BearerType, ClonePolicyRequest, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateSSHKeyRequest, CreateUserMFAOTPRequest, CreateUserRequest, CreateUserRequestMember, DeleteAPIKeyRequest, DeleteApplicationRequest, DeleteGroupRequest, DeleteJWTRequest, DeletePolicyRequest, DeleteSSHKeyRequest, DeleteUserMFAOTPRequest, DeleteUserRequest, EncodedJWT, GetAPIKeyRequest, GetApplicationRequest, GetGroupRequest, GetJWTRequest, GetLogRequest, GetOrganizationSecuritySettingsRequest, GetPolicyRequest, GetQuotumRequest, GetSSHKeyRequest, GetUserRequest, GracePeriod, GracePeriodType, Group, JWT, ListAPIKeysRequest, ListAPIKeysRequestOrderBy, ListAPIKeysResponse, ListApplicationsRequest, ListApplicationsRequestOrderBy, ListApplicationsResponse, ListGracePeriodsRequest, ListGracePeriodsResponse, ListGroupsRequest, ListGroupsRequestOrderBy, ListGroupsResponse, ListJWTsRequest, ListJWTsRequestOrderBy, ListJWTsResponse, ListLogsRequest, ListLogsRequestOrderBy, ListLogsResponse, ListPermissionSetsRequest, ListPermissionSetsRequestOrderBy, ListPermissionSetsResponse, ListPoliciesRequest, ListPoliciesRequestOrderBy, ListPoliciesResponse, ListQuotaRequest, ListQuotaRequestOrderBy, ListQuotaResponse, ListRulesRequest, ListRulesResponse, ListSSHKeysRequest, ListSSHKeysRequestOrderBy, ListSSHKeysResponse, ListUsersRequest, ListUsersRequestOrderBy, ListUsersResponse, LocalityType, LockUserRequest, Log, LogAction, LogResourceType, MFAOTP, OrganizationSecuritySettings, PermissionSet, PermissionSetScopeType, Policy, Quotum, QuotumLimit, RemoveGroupMemberRequest, Rule, RuleSpecs, SSHKey, SetGroupMembersRequest, SetRulesRequest, SetRulesResponse, UnlockUserRequest, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, UserStatus, UserType, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse, } from './types.gen';
2
+ export type { APIKey, AddGroupMemberRequest, AddGroupMembersRequest, Application, BearerType, ClonePolicyRequest, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateSSHKeyRequest, CreateUserMFAOTPRequest, CreateUserRequest, CreateUserRequestMember, DeleteAPIKeyRequest, DeleteApplicationRequest, DeleteGroupRequest, DeleteJWTRequest, DeletePolicyRequest, DeleteSSHKeyRequest, DeleteUserMFAOTPRequest, DeleteUserRequest, EncodedJWT, GetAPIKeyRequest, GetApplicationRequest, GetGroupRequest, GetJWTRequest, GetLogRequest, GetOrganizationSecuritySettingsRequest, GetPolicyRequest, GetQuotumRequest, GetSSHKeyRequest, GetUserConnectionsRequest, GetUserConnectionsResponse, GetUserConnectionsResponseConnection, GetUserConnectionsResponseConnectionConnectedOrganization, GetUserConnectionsResponseConnectionConnectedUser, GetUserRequest, GracePeriod, GracePeriodType, Group, JWT, ListAPIKeysRequest, ListAPIKeysRequestOrderBy, ListAPIKeysResponse, ListApplicationsRequest, ListApplicationsRequestOrderBy, ListApplicationsResponse, ListGracePeriodsRequest, ListGracePeriodsResponse, ListGroupsRequest, ListGroupsRequestOrderBy, ListGroupsResponse, ListJWTsRequest, ListJWTsRequestOrderBy, ListJWTsResponse, ListLogsRequest, ListLogsRequestOrderBy, ListLogsResponse, ListPermissionSetsRequest, ListPermissionSetsRequestOrderBy, ListPermissionSetsResponse, ListPoliciesRequest, ListPoliciesRequestOrderBy, ListPoliciesResponse, ListQuotaRequest, ListQuotaRequestOrderBy, ListQuotaResponse, ListRulesRequest, ListRulesResponse, ListSSHKeysRequest, ListSSHKeysRequestOrderBy, ListSSHKeysResponse, ListUsersRequest, ListUsersRequestOrderBy, ListUsersResponse, LocalityType, LockUserRequest, Log, LogAction, LogResourceType, MFAOTP, OrganizationSecuritySettings, PermissionSet, PermissionSetScopeType, Policy, Quotum, QuotumLimit, RemoveGroupMemberRequest, Rule, RuleSpecs, SSHKey, SetGroupMembersRequest, SetRulesRequest, SetRulesResponse, UnlockUserRequest, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, UserStatus, UserType, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse, } from './types.gen';
3
3
  export * as ValidationRules from './validation-rules.gen.js';
@@ -213,6 +213,56 @@ const unmarshalEncodedJWT = (data) => {
213
213
  token: data.token
214
214
  };
215
215
  };
216
+ const unmarshalGetUserConnectionsResponseConnectionConnectedOrganization = (data) => {
217
+ if (!json.isJSONObject(data)) {
218
+ throw new TypeError(
219
+ `Unmarshalling the type 'GetUserConnectionsResponseConnectionConnectedOrganization' failed as data isn't a dictionary.`
220
+ );
221
+ }
222
+ return {
223
+ id: data.id,
224
+ locked: data.locked,
225
+ name: data.name
226
+ };
227
+ };
228
+ const unmarshalGetUserConnectionsResponseConnectionConnectedUser = (data) => {
229
+ if (!json.isJSONObject(data)) {
230
+ throw new TypeError(
231
+ `Unmarshalling the type 'GetUserConnectionsResponseConnectionConnectedUser' failed as data isn't a dictionary.`
232
+ );
233
+ }
234
+ return {
235
+ id: data.id,
236
+ type: data.type,
237
+ username: data.username
238
+ };
239
+ };
240
+ const unmarshalGetUserConnectionsResponseConnection = (data) => {
241
+ if (!json.isJSONObject(data)) {
242
+ throw new TypeError(
243
+ `Unmarshalling the type 'GetUserConnectionsResponseConnection' failed as data isn't a dictionary.`
244
+ );
245
+ }
246
+ return {
247
+ organization: data.organization ? unmarshalGetUserConnectionsResponseConnectionConnectedOrganization(
248
+ data.organization
249
+ ) : void 0,
250
+ user: data.user ? unmarshalGetUserConnectionsResponseConnectionConnectedUser(data.user) : void 0
251
+ };
252
+ };
253
+ const unmarshalGetUserConnectionsResponse = (data) => {
254
+ if (!json.isJSONObject(data)) {
255
+ throw new TypeError(
256
+ `Unmarshalling the type 'GetUserConnectionsResponse' failed as data isn't a dictionary.`
257
+ );
258
+ }
259
+ return {
260
+ connections: marshalling.unmarshalArrayOfObject(
261
+ data.connections,
262
+ unmarshalGetUserConnectionsResponseConnection
263
+ )
264
+ };
265
+ };
216
266
  const unmarshalListAPIKeysResponse = (data) => {
217
267
  if (!json.isJSONObject(data)) {
218
268
  throw new TypeError(
@@ -602,6 +652,7 @@ exports.marshalValidateUserMFAOTPRequest = marshalValidateUserMFAOTPRequest;
602
652
  exports.unmarshalAPIKey = unmarshalAPIKey;
603
653
  exports.unmarshalApplication = unmarshalApplication;
604
654
  exports.unmarshalEncodedJWT = unmarshalEncodedJWT;
655
+ exports.unmarshalGetUserConnectionsResponse = unmarshalGetUserConnectionsResponse;
605
656
  exports.unmarshalGroup = unmarshalGroup;
606
657
  exports.unmarshalJWT = unmarshalJWT;
607
658
  exports.unmarshalListAPIKeysResponse = unmarshalListAPIKeysResponse;
@@ -1,5 +1,5 @@
1
1
  import type { DefaultValues } from '../../../bridge';
2
- import type { APIKey, AddGroupMemberRequest, AddGroupMembersRequest, Application, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateSSHKeyRequest, CreateUserRequest, EncodedJWT, Group, JWT, ListAPIKeysResponse, ListApplicationsResponse, ListGracePeriodsResponse, ListGroupsResponse, ListJWTsResponse, ListLogsResponse, ListPermissionSetsResponse, ListPoliciesResponse, ListQuotaResponse, ListRulesResponse, ListSSHKeysResponse, ListUsersResponse, Log, MFAOTP, OrganizationSecuritySettings, Policy, Quotum, RemoveGroupMemberRequest, SSHKey, SetGroupMembersRequest, SetRulesRequest, SetRulesResponse, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse } from './types.gen';
2
+ import type { APIKey, AddGroupMemberRequest, AddGroupMembersRequest, Application, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateSSHKeyRequest, CreateUserRequest, EncodedJWT, GetUserConnectionsResponse, Group, JWT, ListAPIKeysResponse, ListApplicationsResponse, ListGracePeriodsResponse, ListGroupsResponse, ListJWTsResponse, ListLogsResponse, ListPermissionSetsResponse, ListPoliciesResponse, ListQuotaResponse, ListRulesResponse, ListSSHKeysResponse, ListUsersResponse, Log, MFAOTP, OrganizationSecuritySettings, Policy, Quotum, RemoveGroupMemberRequest, SSHKey, SetGroupMembersRequest, SetRulesRequest, SetRulesResponse, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse } from './types.gen';
3
3
  export declare const unmarshalJWT: (data: unknown) => JWT;
4
4
  export declare const unmarshalAPIKey: (data: unknown) => APIKey;
5
5
  export declare const unmarshalApplication: (data: unknown) => Application;
@@ -10,6 +10,7 @@ export declare const unmarshalQuotum: (data: unknown) => Quotum;
10
10
  export declare const unmarshalSSHKey: (data: unknown) => SSHKey;
11
11
  export declare const unmarshalUser: (data: unknown) => User;
12
12
  export declare const unmarshalEncodedJWT: (data: unknown) => EncodedJWT;
13
+ export declare const unmarshalGetUserConnectionsResponse: (data: unknown) => GetUserConnectionsResponse;
13
14
  export declare const unmarshalListAPIKeysResponse: (data: unknown) => ListAPIKeysResponse;
14
15
  export declare const unmarshalListApplicationsResponse: (data: unknown) => ListApplicationsResponse;
15
16
  export declare const unmarshalListGracePeriodsResponse: (data: unknown) => ListGracePeriodsResponse;
@@ -211,6 +211,56 @@ const unmarshalEncodedJWT = (data) => {
211
211
  token: data.token
212
212
  };
213
213
  };
214
+ const unmarshalGetUserConnectionsResponseConnectionConnectedOrganization = (data) => {
215
+ if (!isJSONObject(data)) {
216
+ throw new TypeError(
217
+ `Unmarshalling the type 'GetUserConnectionsResponseConnectionConnectedOrganization' failed as data isn't a dictionary.`
218
+ );
219
+ }
220
+ return {
221
+ id: data.id,
222
+ locked: data.locked,
223
+ name: data.name
224
+ };
225
+ };
226
+ const unmarshalGetUserConnectionsResponseConnectionConnectedUser = (data) => {
227
+ if (!isJSONObject(data)) {
228
+ throw new TypeError(
229
+ `Unmarshalling the type 'GetUserConnectionsResponseConnectionConnectedUser' failed as data isn't a dictionary.`
230
+ );
231
+ }
232
+ return {
233
+ id: data.id,
234
+ type: data.type,
235
+ username: data.username
236
+ };
237
+ };
238
+ const unmarshalGetUserConnectionsResponseConnection = (data) => {
239
+ if (!isJSONObject(data)) {
240
+ throw new TypeError(
241
+ `Unmarshalling the type 'GetUserConnectionsResponseConnection' failed as data isn't a dictionary.`
242
+ );
243
+ }
244
+ return {
245
+ organization: data.organization ? unmarshalGetUserConnectionsResponseConnectionConnectedOrganization(
246
+ data.organization
247
+ ) : void 0,
248
+ user: data.user ? unmarshalGetUserConnectionsResponseConnectionConnectedUser(data.user) : void 0
249
+ };
250
+ };
251
+ const unmarshalGetUserConnectionsResponse = (data) => {
252
+ if (!isJSONObject(data)) {
253
+ throw new TypeError(
254
+ `Unmarshalling the type 'GetUserConnectionsResponse' failed as data isn't a dictionary.`
255
+ );
256
+ }
257
+ return {
258
+ connections: unmarshalArrayOfObject(
259
+ data.connections,
260
+ unmarshalGetUserConnectionsResponseConnection
261
+ )
262
+ };
263
+ };
214
264
  const unmarshalListAPIKeysResponse = (data) => {
215
265
  if (!isJSONObject(data)) {
216
266
  throw new TypeError(
@@ -601,6 +651,7 @@ export {
601
651
  unmarshalAPIKey,
602
652
  unmarshalApplication,
603
653
  unmarshalEncodedJWT,
654
+ unmarshalGetUserConnectionsResponse,
604
655
  unmarshalGroup,
605
656
  unmarshalJWT,
606
657
  unmarshalListAPIKeysResponse,
@@ -17,6 +17,16 @@ export type LogResourceType = 'unknown_resource_type' | 'api_key' | 'user' | 'ap
17
17
  export type PermissionSetScopeType = 'unknown_scope_type' | 'projects' | 'organization' | 'account_root_user';
18
18
  export type UserStatus = 'unknown_status' | 'invitation_pending' | 'activated';
19
19
  export type UserType = 'unknown_type' | 'guest' | 'owner' | 'member';
20
+ export interface GetUserConnectionsResponseConnectionConnectedOrganization {
21
+ id: string;
22
+ name: string;
23
+ locked: boolean;
24
+ }
25
+ export interface GetUserConnectionsResponseConnectionConnectedUser {
26
+ id: string;
27
+ username: string;
28
+ type: UserType;
29
+ }
20
30
  export interface QuotumLimit {
21
31
  /**
22
32
  * Whether or not the limit is applied globally.
@@ -105,6 +115,12 @@ export interface CreateUserRequestMember {
105
115
  /** The member's password. */
106
116
  password: string;
107
117
  }
118
+ export interface GetUserConnectionsResponseConnection {
119
+ /** Information about the connected organization. */
120
+ organization?: GetUserConnectionsResponseConnectionConnectedOrganization;
121
+ /** Information about the connected user. */
122
+ user?: GetUserConnectionsResponseConnectionConnectedUser;
123
+ }
108
124
  export interface APIKey {
109
125
  /** Access key of the API key. */
110
126
  accessKey: string;
@@ -625,6 +641,14 @@ export type GetSSHKeyRequest = {
625
641
  /** ID of the SSH key. */
626
642
  sshKeyId: string;
627
643
  };
644
+ export type GetUserConnectionsRequest = {
645
+ /** ID of the user to list connections for. */
646
+ userId: string;
647
+ };
648
+ export interface GetUserConnectionsResponse {
649
+ /** List of connections. */
650
+ connections: GetUserConnectionsResponseConnection[];
651
+ }
628
652
  export type GetUserRequest = {
629
653
  /** ID of the user to find. */
630
654
  userId: string;
@@ -242,6 +242,24 @@ class API extends api.API {
242
242
  method: "DELETE",
243
243
  path: `/instance/v1/zones/${marshalling.validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/servers/${marshalling.validatePathParam("serverId", request.serverId)}/user_data/${marshalling.validatePathParam("key", request.key)}`
244
244
  });
245
+ /**
246
+ * Get Instance compatible types. Get compatible commercial types that can be
247
+ * used to update the Instance. The compatibility of an Instance offer is
248
+ * based on: the CPU architecture the OS type the required l_ssd storage size
249
+ * the required scratch storage size If the specified Instance offer is
250
+ * flagged as end of service, the best compatible offer is the first
251
+ * returned.
252
+ *
253
+ * @param request - The request {@link GetServerCompatibleTypesRequest}
254
+ * @returns A Promise of ServerCompatibleTypes
255
+ */
256
+ getServerCompatibleTypes = (request) => this.client.fetch(
257
+ {
258
+ method: "GET",
259
+ path: `/instance/v1/zones/${marshalling.validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/servers/${marshalling.validatePathParam("serverId", request.serverId)}/compatible-types`
260
+ },
261
+ marshalling_gen.unmarshalServerCompatibleTypes
262
+ );
245
263
  attachServerVolume = (request) => this.client.fetch(
246
264
  {
247
265
  body: JSON.stringify(
@@ -1,6 +1,6 @@
1
1
  import { API as ParentAPI } from '../../../bridge';
2
2
  import type { Zone as ScwZone } from '../../../bridge';
3
- import type { ApplyBlockMigrationRequest, AttachServerVolumeRequest, AttachServerVolumeResponse, CheckBlockMigrationOrganizationQuotasRequest, CreateImageRequest, CreateImageResponse, CreateIpRequest, CreateIpResponse, CreatePlacementGroupRequest, CreatePlacementGroupResponse, CreatePrivateNICRequest, CreatePrivateNICResponse, CreateSecurityGroupRequest, CreateSecurityGroupResponse, CreateSecurityGroupRuleRequest, CreateSecurityGroupRuleResponse, CreateServerRequest, CreateServerResponse, CreateSnapshotRequest, CreateSnapshotResponse, CreateVolumeRequest, CreateVolumeResponse, DeleteImageRequest, DeleteIpRequest, DeletePlacementGroupRequest, DeletePrivateNICRequest, DeleteSecurityGroupRequest, DeleteSecurityGroupRuleRequest, DeleteServerRequest, DeleteServerUserDataRequest, DeleteSnapshotRequest, DeleteVolumeRequest, DetachServerVolumeRequest, DetachServerVolumeResponse, ExportSnapshotRequest, ExportSnapshotResponse, GetDashboardRequest, GetDashboardResponse, GetImageRequest, GetImageResponse, GetIpRequest, GetIpResponse, GetPlacementGroupRequest, GetPlacementGroupResponse, GetPlacementGroupServersRequest, GetPlacementGroupServersResponse, GetPrivateNICRequest, GetPrivateNICResponse, GetSecurityGroupRequest, GetSecurityGroupResponse, GetSecurityGroupRuleRequest, GetSecurityGroupRuleResponse, GetServerRequest, GetServerResponse, GetServerTypesAvailabilityRequest, GetServerTypesAvailabilityResponse, GetSnapshotRequest, GetSnapshotResponse, GetVolumeRequest, GetVolumeResponse, ListDefaultSecurityGroupRulesRequest, ListImagesRequest, ListImagesResponse, ListIpsRequest, ListIpsResponse, ListPlacementGroupsRequest, ListPlacementGroupsResponse, ListPrivateNICsRequest, ListPrivateNICsResponse, ListSecurityGroupRulesRequest, ListSecurityGroupRulesResponse, ListSecurityGroupsRequest, ListSecurityGroupsResponse, ListServerActionsRequest, ListServerActionsResponse, ListServerUserDataRequest, ListServerUserDataResponse, ListServersRequest, ListServersResponse, ListServersTypesRequest, ListServersTypesResponse, ListSnapshotsRequest, ListSnapshotsResponse, ListVolumesRequest, ListVolumesResponse, ListVolumesTypesRequest, ListVolumesTypesResponse, MigrationPlan, PlanBlockMigrationRequest, PrivateNIC, ServerActionRequest, ServerActionResponse, SetImageRequest, SetPlacementGroupRequest, SetPlacementGroupResponse, SetPlacementGroupServersRequest, SetPlacementGroupServersResponse, SetSecurityGroupRulesRequest, SetSecurityGroupRulesResponse, UpdateImageRequest, UpdateImageResponse, UpdateIpRequest, UpdateIpResponse, UpdatePlacementGroupRequest, UpdatePlacementGroupResponse, UpdatePlacementGroupServersRequest, UpdatePlacementGroupServersResponse, UpdatePrivateNICRequest, UpdateSecurityGroupRequest, UpdateSecurityGroupResponse, UpdateSecurityGroupRuleRequest, UpdateSecurityGroupRuleResponse, UpdateServerRequest, UpdateServerResponse, UpdateSnapshotRequest, UpdateSnapshotResponse, UpdateVolumeRequest, UpdateVolumeResponse } from './types.gen';
3
+ import type { ApplyBlockMigrationRequest, AttachServerVolumeRequest, AttachServerVolumeResponse, CheckBlockMigrationOrganizationQuotasRequest, CreateImageRequest, CreateImageResponse, CreateIpRequest, CreateIpResponse, CreatePlacementGroupRequest, CreatePlacementGroupResponse, CreatePrivateNICRequest, CreatePrivateNICResponse, CreateSecurityGroupRequest, CreateSecurityGroupResponse, CreateSecurityGroupRuleRequest, CreateSecurityGroupRuleResponse, CreateServerRequest, CreateServerResponse, CreateSnapshotRequest, CreateSnapshotResponse, CreateVolumeRequest, CreateVolumeResponse, DeleteImageRequest, DeleteIpRequest, DeletePlacementGroupRequest, DeletePrivateNICRequest, DeleteSecurityGroupRequest, DeleteSecurityGroupRuleRequest, DeleteServerRequest, DeleteServerUserDataRequest, DeleteSnapshotRequest, DeleteVolumeRequest, DetachServerVolumeRequest, DetachServerVolumeResponse, ExportSnapshotRequest, ExportSnapshotResponse, GetDashboardRequest, GetDashboardResponse, GetImageRequest, GetImageResponse, GetIpRequest, GetIpResponse, GetPlacementGroupRequest, GetPlacementGroupResponse, GetPlacementGroupServersRequest, GetPlacementGroupServersResponse, GetPrivateNICRequest, GetPrivateNICResponse, GetSecurityGroupRequest, GetSecurityGroupResponse, GetSecurityGroupRuleRequest, GetSecurityGroupRuleResponse, GetServerCompatibleTypesRequest, GetServerRequest, GetServerResponse, GetServerTypesAvailabilityRequest, GetServerTypesAvailabilityResponse, GetSnapshotRequest, GetSnapshotResponse, GetVolumeRequest, GetVolumeResponse, ListDefaultSecurityGroupRulesRequest, ListImagesRequest, ListImagesResponse, ListIpsRequest, ListIpsResponse, ListPlacementGroupsRequest, ListPlacementGroupsResponse, ListPrivateNICsRequest, ListPrivateNICsResponse, ListSecurityGroupRulesRequest, ListSecurityGroupRulesResponse, ListSecurityGroupsRequest, ListSecurityGroupsResponse, ListServerActionsRequest, ListServerActionsResponse, ListServerUserDataRequest, ListServerUserDataResponse, ListServersRequest, ListServersResponse, ListServersTypesRequest, ListServersTypesResponse, ListSnapshotsRequest, ListSnapshotsResponse, ListVolumesRequest, ListVolumesResponse, ListVolumesTypesRequest, ListVolumesTypesResponse, MigrationPlan, PlanBlockMigrationRequest, PrivateNIC, ServerActionRequest, ServerActionResponse, ServerCompatibleTypes, SetImageRequest, SetPlacementGroupRequest, SetPlacementGroupResponse, SetPlacementGroupServersRequest, SetPlacementGroupServersResponse, SetSecurityGroupRulesRequest, SetSecurityGroupRulesResponse, UpdateImageRequest, UpdateImageResponse, UpdateIpRequest, UpdateIpResponse, UpdatePlacementGroupRequest, UpdatePlacementGroupResponse, UpdatePlacementGroupServersRequest, UpdatePlacementGroupServersResponse, UpdatePrivateNICRequest, UpdateSecurityGroupRequest, UpdateSecurityGroupResponse, UpdateSecurityGroupRuleRequest, UpdateSecurityGroupRuleResponse, UpdateServerRequest, UpdateServerResponse, UpdateSnapshotRequest, UpdateSnapshotResponse, UpdateVolumeRequest, UpdateVolumeResponse } from './types.gen';
4
4
  import type { SetImageResponse, SetSecurityGroupRequest, SetSecurityGroupResponse, SetSecurityGroupRuleRequest, SetSecurityGroupRuleResponse, SetServerRequest, SetServerResponse, SetSnapshotRequest, SetSnapshotResponse } from './types.private.gen';
5
5
  /**
6
6
  * Instance API.
@@ -107,6 +107,18 @@ export declare class API extends ParentAPI {
107
107
  * @param request - The request {@link DeleteServerUserDataRequest}
108
108
  */
109
109
  deleteServerUserData: (request: Readonly<DeleteServerUserDataRequest>) => Promise<void>;
110
+ /**
111
+ * Get Instance compatible types. Get compatible commercial types that can be
112
+ * used to update the Instance. The compatibility of an Instance offer is
113
+ * based on: the CPU architecture the OS type the required l_ssd storage size
114
+ * the required scratch storage size If the specified Instance offer is
115
+ * flagged as end of service, the best compatible offer is the first
116
+ * returned.
117
+ *
118
+ * @param request - The request {@link GetServerCompatibleTypesRequest}
119
+ * @returns A Promise of ServerCompatibleTypes
120
+ */
121
+ getServerCompatibleTypes: (request: Readonly<GetServerCompatibleTypesRequest>) => Promise<ServerCompatibleTypes>;
110
122
  attachServerVolume: (request: Readonly<AttachServerVolumeRequest>) => Promise<AttachServerVolumeResponse>;
111
123
  detachServerVolume: (request: Readonly<DetachServerVolumeRequest>) => Promise<DetachServerVolumeResponse>;
112
124
  protected pageOfListImages: (request?: Readonly<ListImagesRequest>) => Promise<ListImagesResponse>;
@@ -2,7 +2,7 @@ import { API as API$1 } from "../../../scw/api.js";
2
2
  import { validatePathParam, urlParams } from "../../../helpers/marshalling.js";
3
3
  import "../../../vendor/base64/index.js";
4
4
  import { enrichForPagination } from "../../../scw/fetch/resource-paginator.js";
5
- import { unmarshalGetServerTypesAvailabilityResponse, unmarshalListServersTypesResponse, unmarshalListVolumesTypesResponse, unmarshalListServersResponse, marshalCreateServerRequest, unmarshalCreateServerResponse, unmarshalGetServerResponse, marshalSetServerRequest, unmarshalSetServerResponse, marshalUpdateServerRequest, unmarshalUpdateServerResponse, unmarshalListServerActionsResponse, marshalServerActionRequest, unmarshalServerActionResponse, unmarshalListServerUserDataResponse, marshalAttachServerVolumeRequest, unmarshalAttachServerVolumeResponse, marshalDetachServerVolumeRequest, unmarshalDetachServerVolumeResponse, unmarshalListImagesResponse, unmarshalGetImageResponse, marshalCreateImageRequest, unmarshalCreateImageResponse, marshalSetImageRequest, unmarshalSetImageResponse, marshalUpdateImageRequest, unmarshalUpdateImageResponse, unmarshalListSnapshotsResponse, marshalCreateSnapshotRequest, unmarshalCreateSnapshotResponse, unmarshalGetSnapshotResponse, marshalSetSnapshotRequest, unmarshalSetSnapshotResponse, marshalUpdateSnapshotRequest, unmarshalUpdateSnapshotResponse, marshalExportSnapshotRequest, unmarshalExportSnapshotResponse, unmarshalListVolumesResponse, marshalCreateVolumeRequest, unmarshalCreateVolumeResponse, unmarshalGetVolumeResponse, marshalUpdateVolumeRequest, unmarshalUpdateVolumeResponse, unmarshalListSecurityGroupsResponse, marshalCreateSecurityGroupRequest, unmarshalCreateSecurityGroupResponse, unmarshalGetSecurityGroupResponse, marshalSetSecurityGroupRequest, unmarshalSetSecurityGroupResponse, marshalUpdateSecurityGroupRequest, unmarshalUpdateSecurityGroupResponse, unmarshalListSecurityGroupRulesResponse, marshalCreateSecurityGroupRuleRequest, unmarshalCreateSecurityGroupRuleResponse, marshalSetSecurityGroupRulesRequest, unmarshalSetSecurityGroupRulesResponse, unmarshalGetSecurityGroupRuleResponse, marshalSetSecurityGroupRuleRequest, unmarshalSetSecurityGroupRuleResponse, marshalUpdateSecurityGroupRuleRequest, unmarshalUpdateSecurityGroupRuleResponse, unmarshalListPlacementGroupsResponse, marshalCreatePlacementGroupRequest, unmarshalCreatePlacementGroupResponse, unmarshalGetPlacementGroupResponse, marshalSetPlacementGroupRequest, unmarshalSetPlacementGroupResponse, marshalUpdatePlacementGroupRequest, unmarshalUpdatePlacementGroupResponse, unmarshalGetPlacementGroupServersResponse, marshalSetPlacementGroupServersRequest, unmarshalSetPlacementGroupServersResponse, marshalUpdatePlacementGroupServersRequest, unmarshalUpdatePlacementGroupServersResponse, unmarshalListIpsResponse, marshalCreateIpRequest, unmarshalCreateIpResponse, unmarshalGetIpResponse, marshalUpdateIpRequest, unmarshalUpdateIpResponse, unmarshalListPrivateNICsResponse, marshalCreatePrivateNICRequest, unmarshalCreatePrivateNICResponse, unmarshalGetPrivateNICResponse, marshalUpdatePrivateNICRequest, unmarshalPrivateNIC, unmarshalGetDashboardResponse, marshalPlanBlockMigrationRequest, unmarshalMigrationPlan, marshalApplyBlockMigrationRequest, marshalCheckBlockMigrationOrganizationQuotasRequest } from "./marshalling.gen.js";
5
+ import { unmarshalGetServerTypesAvailabilityResponse, unmarshalListServersTypesResponse, unmarshalListVolumesTypesResponse, unmarshalListServersResponse, marshalCreateServerRequest, unmarshalCreateServerResponse, unmarshalGetServerResponse, marshalSetServerRequest, unmarshalSetServerResponse, marshalUpdateServerRequest, unmarshalUpdateServerResponse, unmarshalListServerActionsResponse, marshalServerActionRequest, unmarshalServerActionResponse, unmarshalListServerUserDataResponse, unmarshalServerCompatibleTypes, marshalAttachServerVolumeRequest, unmarshalAttachServerVolumeResponse, marshalDetachServerVolumeRequest, unmarshalDetachServerVolumeResponse, unmarshalListImagesResponse, unmarshalGetImageResponse, marshalCreateImageRequest, unmarshalCreateImageResponse, marshalSetImageRequest, unmarshalSetImageResponse, marshalUpdateImageRequest, unmarshalUpdateImageResponse, unmarshalListSnapshotsResponse, marshalCreateSnapshotRequest, unmarshalCreateSnapshotResponse, unmarshalGetSnapshotResponse, marshalSetSnapshotRequest, unmarshalSetSnapshotResponse, marshalUpdateSnapshotRequest, unmarshalUpdateSnapshotResponse, marshalExportSnapshotRequest, unmarshalExportSnapshotResponse, unmarshalListVolumesResponse, marshalCreateVolumeRequest, unmarshalCreateVolumeResponse, unmarshalGetVolumeResponse, marshalUpdateVolumeRequest, unmarshalUpdateVolumeResponse, unmarshalListSecurityGroupsResponse, marshalCreateSecurityGroupRequest, unmarshalCreateSecurityGroupResponse, unmarshalGetSecurityGroupResponse, marshalSetSecurityGroupRequest, unmarshalSetSecurityGroupResponse, marshalUpdateSecurityGroupRequest, unmarshalUpdateSecurityGroupResponse, unmarshalListSecurityGroupRulesResponse, marshalCreateSecurityGroupRuleRequest, unmarshalCreateSecurityGroupRuleResponse, marshalSetSecurityGroupRulesRequest, unmarshalSetSecurityGroupRulesResponse, unmarshalGetSecurityGroupRuleResponse, marshalSetSecurityGroupRuleRequest, unmarshalSetSecurityGroupRuleResponse, marshalUpdateSecurityGroupRuleRequest, unmarshalUpdateSecurityGroupRuleResponse, unmarshalListPlacementGroupsResponse, marshalCreatePlacementGroupRequest, unmarshalCreatePlacementGroupResponse, unmarshalGetPlacementGroupResponse, marshalSetPlacementGroupRequest, unmarshalSetPlacementGroupResponse, marshalUpdatePlacementGroupRequest, unmarshalUpdatePlacementGroupResponse, unmarshalGetPlacementGroupServersResponse, marshalSetPlacementGroupServersRequest, unmarshalSetPlacementGroupServersResponse, marshalUpdatePlacementGroupServersRequest, unmarshalUpdatePlacementGroupServersResponse, unmarshalListIpsResponse, marshalCreateIpRequest, unmarshalCreateIpResponse, unmarshalGetIpResponse, marshalUpdateIpRequest, unmarshalUpdateIpResponse, unmarshalListPrivateNICsResponse, marshalCreatePrivateNICRequest, unmarshalCreatePrivateNICResponse, unmarshalGetPrivateNICResponse, marshalUpdatePrivateNICRequest, unmarshalPrivateNIC, unmarshalGetDashboardResponse, marshalPlanBlockMigrationRequest, unmarshalMigrationPlan, marshalApplyBlockMigrationRequest, marshalCheckBlockMigrationOrganizationQuotasRequest } from "./marshalling.gen.js";
6
6
  const jsonContentHeaders = {
7
7
  "Content-Type": "application/json; charset=utf-8"
8
8
  };
@@ -240,6 +240,24 @@ class API extends API$1 {
240
240
  method: "DELETE",
241
241
  path: `/instance/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/servers/${validatePathParam("serverId", request.serverId)}/user_data/${validatePathParam("key", request.key)}`
242
242
  });
243
+ /**
244
+ * Get Instance compatible types. Get compatible commercial types that can be
245
+ * used to update the Instance. The compatibility of an Instance offer is
246
+ * based on: the CPU architecture the OS type the required l_ssd storage size
247
+ * the required scratch storage size If the specified Instance offer is
248
+ * flagged as end of service, the best compatible offer is the first
249
+ * returned.
250
+ *
251
+ * @param request - The request {@link GetServerCompatibleTypesRequest}
252
+ * @returns A Promise of ServerCompatibleTypes
253
+ */
254
+ getServerCompatibleTypes = (request) => this.client.fetch(
255
+ {
256
+ method: "GET",
257
+ path: `/instance/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/servers/${validatePathParam("serverId", request.serverId)}/compatible-types`
258
+ },
259
+ unmarshalServerCompatibleTypes
260
+ );
243
261
  attachServerVolume = (request) => this.client.fetch(
244
262
  {
245
263
  body: JSON.stringify(
@@ -1,4 +1,4 @@
1
1
  export { API } from './api.gen.js';
2
2
  export * from './content.gen.js';
3
- export type { ApplyBlockMigrationRequest, Arch, AttachServerVolumeRequest, AttachServerVolumeRequestVolumeType, AttachServerVolumeResponse, BootType, Bootscript, CheckBlockMigrationOrganizationQuotasRequest, CreateImageRequest, CreateImageResponse, CreateIpRequest, CreateIpResponse, CreatePlacementGroupRequest, CreatePlacementGroupResponse, CreatePrivateNICRequest, CreatePrivateNICResponse, CreateSecurityGroupRequest, CreateSecurityGroupResponse, CreateSecurityGroupRuleRequest, CreateSecurityGroupRuleResponse, CreateServerRequest, CreateServerResponse, CreateSnapshotRequest, CreateSnapshotResponse, CreateVolumeRequest, CreateVolumeResponse, Dashboard, DeleteImageRequest, DeleteIpRequest, DeletePlacementGroupRequest, DeletePrivateNICRequest, DeleteSecurityGroupRequest, DeleteSecurityGroupRuleRequest, DeleteServerRequest, DeleteServerUserDataRequest, DeleteSnapshotRequest, DeleteVolumeRequest, DetachServerVolumeRequest, DetachServerVolumeResponse, ExportSnapshotRequest, ExportSnapshotResponse, GetDashboardRequest, GetDashboardResponse, GetImageRequest, GetImageResponse, GetIpRequest, GetIpResponse, GetPlacementGroupRequest, GetPlacementGroupResponse, GetPlacementGroupServersRequest, GetPlacementGroupServersResponse, GetPrivateNICRequest, GetPrivateNICResponse, GetSecurityGroupRequest, GetSecurityGroupResponse, GetSecurityGroupRuleRequest, GetSecurityGroupRuleResponse, GetServerRequest, GetServerResponse, GetServerTypesAvailabilityRequest, GetServerTypesAvailabilityResponse, GetServerTypesAvailabilityResponseAvailability, GetSnapshotRequest, GetSnapshotResponse, GetVolumeRequest, GetVolumeResponse, Image, ImageState, Ip, IpState, IpType, ListDefaultSecurityGroupRulesRequest, ListImagesRequest, ListImagesResponse, ListIpsRequest, ListIpsResponse, ListPlacementGroupsRequest, ListPlacementGroupsResponse, ListPrivateNICsRequest, ListPrivateNICsResponse, ListSecurityGroupRulesRequest, ListSecurityGroupRulesResponse, ListSecurityGroupsRequest, ListSecurityGroupsResponse, ListServerActionsRequest, ListServerActionsResponse, ListServerUserDataRequest, ListServerUserDataResponse, ListServersRequest, ListServersRequestOrder, ListServersResponse, ListServersTypesRequest, ListServersTypesResponse, ListSnapshotsRequest, ListSnapshotsResponse, ListVolumesRequest, ListVolumesResponse, ListVolumesTypesRequest, ListVolumesTypesResponse, MigrationPlan, PlacementGroup, PlacementGroupPolicyMode, PlacementGroupPolicyType, PlacementGroupServer, PlanBlockMigrationRequest, PrivateNIC, PrivateNICState, SecurityGroup, SecurityGroupPolicy, SecurityGroupRule, SecurityGroupRuleAction, SecurityGroupRuleDirection, SecurityGroupRuleProtocol, SecurityGroupState, SecurityGroupSummary, SecurityGroupTemplate, Server, ServerAction, ServerActionRequest, ServerActionRequestVolumeBackupTemplate, ServerActionResponse, ServerIp, ServerIpIpFamily, ServerIpProvisioningMode, ServerIpState, ServerIpv6, ServerLocation, ServerMaintenance, ServerState, ServerSummary, ServerType, ServerTypeCapabilities, ServerTypeNetwork, ServerTypeNetworkInterface, ServerTypeVolumeConstraintSizes, ServerTypeVolumeConstraintsByType, ServerTypesAvailability, SetImageRequest, SetPlacementGroupRequest, SetPlacementGroupResponse, SetPlacementGroupServersRequest, SetPlacementGroupServersResponse, SetSecurityGroupRulesRequest, SetSecurityGroupRulesRequestRule, SetSecurityGroupRulesResponse, Snapshot, SnapshotBaseVolume, SnapshotState, SnapshotVolumeType, Task, TaskStatus, UpdateImageRequest, UpdateImageResponse, UpdateIpRequest, UpdateIpResponse, UpdatePlacementGroupRequest, UpdatePlacementGroupResponse, UpdatePlacementGroupServersRequest, UpdatePlacementGroupServersResponse, UpdatePrivateNICRequest, UpdateSecurityGroupRequest, UpdateSecurityGroupResponse, UpdateSecurityGroupRuleRequest, UpdateSecurityGroupRuleResponse, UpdateServerRequest, UpdateServerResponse, UpdateSnapshotRequest, UpdateSnapshotResponse, UpdateVolumeRequest, UpdateVolumeResponse, Volume, VolumeImageUpdateTemplate, VolumeServer, VolumeServerState, VolumeServerTemplate, VolumeServerVolumeType, VolumeState, VolumeSummary, VolumeTemplate, VolumeType, VolumeTypeCapabilities, VolumeTypeConstraints, VolumeVolumeType, } from './types.gen';
3
+ export type { ApplyBlockMigrationRequest, Arch, AttachServerVolumeRequest, AttachServerVolumeRequestVolumeType, AttachServerVolumeResponse, BootType, Bootscript, CheckBlockMigrationOrganizationQuotasRequest, CreateImageRequest, CreateImageResponse, CreateIpRequest, CreateIpResponse, CreatePlacementGroupRequest, CreatePlacementGroupResponse, CreatePrivateNICRequest, CreatePrivateNICResponse, CreateSecurityGroupRequest, CreateSecurityGroupResponse, CreateSecurityGroupRuleRequest, CreateSecurityGroupRuleResponse, CreateServerRequest, CreateServerResponse, CreateSnapshotRequest, CreateSnapshotResponse, CreateVolumeRequest, CreateVolumeResponse, Dashboard, DeleteImageRequest, DeleteIpRequest, DeletePlacementGroupRequest, DeletePrivateNICRequest, DeleteSecurityGroupRequest, DeleteSecurityGroupRuleRequest, DeleteServerRequest, DeleteServerUserDataRequest, DeleteSnapshotRequest, DeleteVolumeRequest, DetachServerVolumeRequest, DetachServerVolumeResponse, ExportSnapshotRequest, ExportSnapshotResponse, GetDashboardRequest, GetDashboardResponse, GetImageRequest, GetImageResponse, GetIpRequest, GetIpResponse, GetPlacementGroupRequest, GetPlacementGroupResponse, GetPlacementGroupServersRequest, GetPlacementGroupServersResponse, GetPrivateNICRequest, GetPrivateNICResponse, GetSecurityGroupRequest, GetSecurityGroupResponse, GetSecurityGroupRuleRequest, GetSecurityGroupRuleResponse, GetServerCompatibleTypesRequest, GetServerRequest, GetServerResponse, GetServerTypesAvailabilityRequest, GetServerTypesAvailabilityResponse, GetServerTypesAvailabilityResponseAvailability, GetSnapshotRequest, GetSnapshotResponse, GetVolumeRequest, GetVolumeResponse, Image, ImageState, Ip, IpState, IpType, ListDefaultSecurityGroupRulesRequest, ListImagesRequest, ListImagesResponse, ListIpsRequest, ListIpsResponse, ListPlacementGroupsRequest, ListPlacementGroupsResponse, ListPrivateNICsRequest, ListPrivateNICsResponse, ListSecurityGroupRulesRequest, ListSecurityGroupRulesResponse, ListSecurityGroupsRequest, ListSecurityGroupsResponse, ListServerActionsRequest, ListServerActionsResponse, ListServerUserDataRequest, ListServerUserDataResponse, ListServersRequest, ListServersRequestOrder, ListServersResponse, ListServersTypesRequest, ListServersTypesResponse, ListSnapshotsRequest, ListSnapshotsResponse, ListVolumesRequest, ListVolumesResponse, ListVolumesTypesRequest, ListVolumesTypesResponse, MigrationPlan, PlacementGroup, PlacementGroupPolicyMode, PlacementGroupPolicyType, PlacementGroupServer, PlanBlockMigrationRequest, PrivateNIC, PrivateNICState, SecurityGroup, SecurityGroupPolicy, SecurityGroupRule, SecurityGroupRuleAction, SecurityGroupRuleDirection, SecurityGroupRuleProtocol, SecurityGroupState, SecurityGroupSummary, SecurityGroupTemplate, Server, ServerAction, ServerActionRequest, ServerActionRequestVolumeBackupTemplate, ServerActionResponse, ServerCompatibleTypes, ServerIp, ServerIpIpFamily, ServerIpProvisioningMode, ServerIpState, ServerIpv6, ServerLocation, ServerMaintenance, ServerState, ServerSummary, ServerType, ServerTypeCapabilities, ServerTypeNetwork, ServerTypeNetworkInterface, ServerTypeVolumeConstraintSizes, ServerTypeVolumeConstraintsByType, ServerTypesAvailability, SetImageRequest, SetPlacementGroupRequest, SetPlacementGroupResponse, SetPlacementGroupServersRequest, SetPlacementGroupServersResponse, SetSecurityGroupRulesRequest, SetSecurityGroupRulesRequestRule, SetSecurityGroupRulesResponse, Snapshot, SnapshotBaseVolume, SnapshotState, SnapshotVolumeType, Task, TaskStatus, UpdateImageRequest, UpdateImageResponse, UpdateIpRequest, UpdateIpResponse, UpdatePlacementGroupRequest, UpdatePlacementGroupResponse, UpdatePlacementGroupServersRequest, UpdatePlacementGroupServersResponse, UpdatePrivateNICRequest, UpdateSecurityGroupRequest, UpdateSecurityGroupResponse, UpdateSecurityGroupRuleRequest, UpdateSecurityGroupRuleResponse, UpdateServerRequest, UpdateServerResponse, UpdateSnapshotRequest, UpdateSnapshotResponse, UpdateVolumeRequest, UpdateVolumeResponse, Volume, VolumeImageUpdateTemplate, VolumeServer, VolumeServerState, VolumeServerTemplate, VolumeServerVolumeType, VolumeState, VolumeSummary, VolumeTemplate, VolumeType, VolumeTypeCapabilities, VolumeTypeConstraints, VolumeVolumeType, } from './types.gen';
4
4
  export * as ValidationRules from './validation-rules.gen';
@@ -847,6 +847,7 @@ const unmarshalServerType = (data) => {
847
847
  baremetal: data.baremetal,
848
848
  blockBandwidth: data.block_bandwidth,
849
849
  capabilities: data.capabilities ? unmarshalServerTypeCapabilities(data.capabilities) : void 0,
850
+ endOfService: data.end_of_service,
850
851
  gpu: data.gpu,
851
852
  hourlyPrice: data.hourly_price,
852
853
  monthlyPrice: data.monthly_price,
@@ -957,6 +958,16 @@ const unmarshalServerActionResponse = (data) => {
957
958
  task: data.task ? unmarshalTask(data.task) : void 0
958
959
  };
959
960
  };
961
+ const unmarshalServerCompatibleTypes = (data) => {
962
+ if (!json.isJSONObject(data)) {
963
+ throw new TypeError(
964
+ `Unmarshalling the type 'ServerCompatibleTypes' failed as data isn't a dictionary.`
965
+ );
966
+ }
967
+ return {
968
+ compatibleTypes: data.compatible_types
969
+ };
970
+ };
960
971
  const unmarshalSetImageResponse = (data) => {
961
972
  if (!json.isJSONObject(data)) {
962
973
  throw new TypeError(
@@ -1779,6 +1790,7 @@ exports.unmarshalListVolumesTypesResponse = unmarshalListVolumesTypesResponse;
1779
1790
  exports.unmarshalMigrationPlan = unmarshalMigrationPlan;
1780
1791
  exports.unmarshalPrivateNIC = unmarshalPrivateNIC;
1781
1792
  exports.unmarshalServerActionResponse = unmarshalServerActionResponse;
1793
+ exports.unmarshalServerCompatibleTypes = unmarshalServerCompatibleTypes;
1782
1794
  exports.unmarshalSetImageResponse = unmarshalSetImageResponse;
1783
1795
  exports.unmarshalSetPlacementGroupResponse = unmarshalSetPlacementGroupResponse;
1784
1796
  exports.unmarshalSetPlacementGroupServersResponse = unmarshalSetPlacementGroupServersResponse;
@@ -1,5 +1,5 @@
1
1
  import type { DefaultValues } from '../../../bridge';
2
- import type { ApplyBlockMigrationRequest, AttachServerVolumeRequest, AttachServerVolumeResponse, CheckBlockMigrationOrganizationQuotasRequest, CreateImageRequest, CreateImageResponse, CreateIpRequest, CreateIpResponse, CreatePlacementGroupRequest, CreatePlacementGroupResponse, CreatePrivateNICRequest, CreatePrivateNICResponse, CreateSecurityGroupRequest, CreateSecurityGroupResponse, CreateSecurityGroupRuleRequest, CreateSecurityGroupRuleResponse, CreateServerRequest, CreateServerResponse, CreateSnapshotRequest, CreateSnapshotResponse, CreateVolumeRequest, CreateVolumeResponse, DetachServerVolumeRequest, DetachServerVolumeResponse, ExportSnapshotRequest, ExportSnapshotResponse, GetDashboardResponse, GetImageResponse, GetIpResponse, GetPlacementGroupResponse, GetPlacementGroupServersResponse, GetPrivateNICResponse, GetSecurityGroupResponse, GetSecurityGroupRuleResponse, GetServerResponse, GetServerTypesAvailabilityResponse, GetSnapshotResponse, GetVolumeResponse, ListImagesResponse, ListIpsResponse, ListPlacementGroupsResponse, ListPrivateNICsResponse, ListSecurityGroupRulesResponse, ListSecurityGroupsResponse, ListServerActionsResponse, ListServerUserDataResponse, ListServersResponse, ListServersTypesResponse, ListSnapshotsResponse, ListVolumesResponse, ListVolumesTypesResponse, MigrationPlan, PlanBlockMigrationRequest, PrivateNIC, ServerActionRequest, ServerActionResponse, SetImageRequest, SetPlacementGroupRequest, SetPlacementGroupResponse, SetPlacementGroupServersRequest, SetPlacementGroupServersResponse, SetSecurityGroupRulesRequest, SetSecurityGroupRulesResponse, UpdateImageRequest, UpdateImageResponse, UpdateIpRequest, UpdateIpResponse, UpdatePlacementGroupRequest, UpdatePlacementGroupResponse, UpdatePlacementGroupServersRequest, UpdatePlacementGroupServersResponse, UpdatePrivateNICRequest, UpdateSecurityGroupRequest, UpdateSecurityGroupResponse, UpdateSecurityGroupRuleRequest, UpdateSecurityGroupRuleResponse, UpdateServerRequest, UpdateServerResponse, UpdateSnapshotRequest, UpdateSnapshotResponse, UpdateVolumeRequest, UpdateVolumeResponse } from './types.gen';
2
+ import type { ApplyBlockMigrationRequest, AttachServerVolumeRequest, AttachServerVolumeResponse, CheckBlockMigrationOrganizationQuotasRequest, CreateImageRequest, CreateImageResponse, CreateIpRequest, CreateIpResponse, CreatePlacementGroupRequest, CreatePlacementGroupResponse, CreatePrivateNICRequest, CreatePrivateNICResponse, CreateSecurityGroupRequest, CreateSecurityGroupResponse, CreateSecurityGroupRuleRequest, CreateSecurityGroupRuleResponse, CreateServerRequest, CreateServerResponse, CreateSnapshotRequest, CreateSnapshotResponse, CreateVolumeRequest, CreateVolumeResponse, DetachServerVolumeRequest, DetachServerVolumeResponse, ExportSnapshotRequest, ExportSnapshotResponse, GetDashboardResponse, GetImageResponse, GetIpResponse, GetPlacementGroupResponse, GetPlacementGroupServersResponse, GetPrivateNICResponse, GetSecurityGroupResponse, GetSecurityGroupRuleResponse, GetServerResponse, GetServerTypesAvailabilityResponse, GetSnapshotResponse, GetVolumeResponse, ListImagesResponse, ListIpsResponse, ListPlacementGroupsResponse, ListPrivateNICsResponse, ListSecurityGroupRulesResponse, ListSecurityGroupsResponse, ListServerActionsResponse, ListServerUserDataResponse, ListServersResponse, ListServersTypesResponse, ListSnapshotsResponse, ListVolumesResponse, ListVolumesTypesResponse, MigrationPlan, PlanBlockMigrationRequest, PrivateNIC, ServerActionRequest, ServerActionResponse, ServerCompatibleTypes, SetImageRequest, SetPlacementGroupRequest, SetPlacementGroupResponse, SetPlacementGroupServersRequest, SetPlacementGroupServersResponse, SetSecurityGroupRulesRequest, SetSecurityGroupRulesResponse, UpdateImageRequest, UpdateImageResponse, UpdateIpRequest, UpdateIpResponse, UpdatePlacementGroupRequest, UpdatePlacementGroupResponse, UpdatePlacementGroupServersRequest, UpdatePlacementGroupServersResponse, UpdatePrivateNICRequest, UpdateSecurityGroupRequest, UpdateSecurityGroupResponse, UpdateSecurityGroupRuleRequest, UpdateSecurityGroupRuleResponse, UpdateServerRequest, UpdateServerResponse, UpdateSnapshotRequest, UpdateSnapshotResponse, UpdateVolumeRequest, UpdateVolumeResponse } from './types.gen';
3
3
  import type { SetImageResponse, SetSecurityGroupRequest, SetSecurityGroupResponse, SetSecurityGroupRuleRequest, SetSecurityGroupRuleResponse, SetServerRequest, SetServerResponse, SetSnapshotRequest, SetSnapshotResponse } from './types.private.gen';
4
4
  export declare const unmarshalPrivateNIC: (data: unknown) => PrivateNIC;
5
5
  export declare const unmarshalAttachServerVolumeResponse: (data: unknown) => AttachServerVolumeResponse;
@@ -41,6 +41,7 @@ export declare const unmarshalListVolumesResponse: (data: unknown) => ListVolume
41
41
  export declare const unmarshalListVolumesTypesResponse: (data: unknown) => ListVolumesTypesResponse;
42
42
  export declare const unmarshalMigrationPlan: (data: unknown) => MigrationPlan;
43
43
  export declare const unmarshalServerActionResponse: (data: unknown) => ServerActionResponse;
44
+ export declare const unmarshalServerCompatibleTypes: (data: unknown) => ServerCompatibleTypes;
44
45
  export declare const unmarshalSetImageResponse: (data: unknown) => SetImageResponse;
45
46
  export declare const unmarshalSetPlacementGroupResponse: (data: unknown) => SetPlacementGroupResponse;
46
47
  export declare const unmarshalSetPlacementGroupServersResponse: (data: unknown) => SetPlacementGroupServersResponse;
@@ -845,6 +845,7 @@ const unmarshalServerType = (data) => {
845
845
  baremetal: data.baremetal,
846
846
  blockBandwidth: data.block_bandwidth,
847
847
  capabilities: data.capabilities ? unmarshalServerTypeCapabilities(data.capabilities) : void 0,
848
+ endOfService: data.end_of_service,
848
849
  gpu: data.gpu,
849
850
  hourlyPrice: data.hourly_price,
850
851
  monthlyPrice: data.monthly_price,
@@ -955,6 +956,16 @@ const unmarshalServerActionResponse = (data) => {
955
956
  task: data.task ? unmarshalTask(data.task) : void 0
956
957
  };
957
958
  };
959
+ const unmarshalServerCompatibleTypes = (data) => {
960
+ if (!isJSONObject(data)) {
961
+ throw new TypeError(
962
+ `Unmarshalling the type 'ServerCompatibleTypes' failed as data isn't a dictionary.`
963
+ );
964
+ }
965
+ return {
966
+ compatibleTypes: data.compatible_types
967
+ };
968
+ };
958
969
  const unmarshalSetImageResponse = (data) => {
959
970
  if (!isJSONObject(data)) {
960
971
  throw new TypeError(
@@ -1778,6 +1789,7 @@ export {
1778
1789
  unmarshalMigrationPlan,
1779
1790
  unmarshalPrivateNIC,
1780
1791
  unmarshalServerActionResponse,
1792
+ unmarshalServerCompatibleTypes,
1781
1793
  unmarshalSetImageResponse,
1782
1794
  unmarshalSetPlacementGroupResponse,
1783
1795
  unmarshalSetPlacementGroupServersResponse,
@@ -560,6 +560,8 @@ export interface ServerType {
560
560
  * second).
561
561
  */
562
562
  blockBandwidth?: number;
563
+ /** True if this Instance type has reached end of service. */
564
+ endOfService: boolean;
563
565
  }
564
566
  export interface VolumeType {
565
567
  displayName: string;
@@ -1141,6 +1143,12 @@ export type GetSecurityGroupRuleRequest = {
1141
1143
  export interface GetSecurityGroupRuleResponse {
1142
1144
  rule?: SecurityGroupRule;
1143
1145
  }
1146
+ export type GetServerCompatibleTypesRequest = {
1147
+ /** Zone to target. If none is passed will use default zone from the config. */
1148
+ zone?: ScwZone;
1149
+ /** UUID of the Instance you want to get. */
1150
+ serverId: string;
1151
+ };
1144
1152
  export type GetServerRequest = {
1145
1153
  /** Zone to target. If none is passed will use default zone from the config. */
1146
1154
  zone?: ScwZone;
@@ -1554,6 +1562,10 @@ export type ServerActionRequest = {
1554
1562
  export interface ServerActionResponse {
1555
1563
  task?: Task;
1556
1564
  }
1565
+ export interface ServerCompatibleTypes {
1566
+ /** Instance compatible types. */
1567
+ compatibleTypes: string[];
1568
+ }
1557
1569
  export type SetImageRequest = {
1558
1570
  /** Zone to target. If none is passed will use default zone from the config. */
1559
1571
  zone?: ScwZone;
@@ -379,6 +379,7 @@ const unmarshalRouteMatch = (data) => {
379
379
  }
380
380
  return {
381
381
  hostHeader: data.host_header,
382
+ matchSubdomains: data.match_subdomains,
382
383
  sni: data.sni
383
384
  };
384
385
  };
@@ -788,6 +789,7 @@ const marshalCreateLbRequest = (request, defaults) => ({
788
789
  ])
789
790
  });
790
791
  const marshalRouteMatch = (request, defaults) => ({
792
+ match_subdomains: request.matchSubdomains,
791
793
  ...marshalling.resolveOneOf([
792
794
  { param: "sni", value: request.sni },
793
795
  { param: "host_header", value: request.hostHeader }
@@ -377,6 +377,7 @@ const unmarshalRouteMatch = (data) => {
377
377
  }
378
378
  return {
379
379
  hostHeader: data.host_header,
380
+ matchSubdomains: data.match_subdomains,
380
381
  sni: data.sni
381
382
  };
382
383
  };
@@ -786,6 +787,7 @@ const marshalCreateLbRequest = (request, defaults) => ({
786
787
  ])
787
788
  });
788
789
  const marshalRouteMatch = (request, defaults) => ({
790
+ match_subdomains: request.matchSubdomains,
789
791
  ...resolveOneOf([
790
792
  { param: "sni", value: request.sni },
791
793
  { param: "host_header", value: request.hostHeader }
@@ -483,6 +483,8 @@ export interface RouteMatch {
483
483
  * One-of ('matchType'): at most one of 'sni', 'hostHeader' could be set.
484
484
  */
485
485
  hostHeader?: string;
486
+ /** If true, all subdomains will match. */
487
+ matchSubdomains: boolean;
486
488
  }
487
489
  export interface CreateCertificateRequestCustomCertificate {
488
490
  /**