@nutanix-scratch/dataprotection-js-client 4.1.1 → 4.3.1

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 (662) hide show
  1. package/README.md +24 -16
  2. package/dist/Ntnx-Dataprotection-js-client-prod.js +1 -1
  3. package/dist/Ntnx-Dataprotection-js-client.js +1213 -547
  4. package/dist/es/ApiClient.d.ts +29 -7
  5. package/dist/es/ApiClient.js +854 -667
  6. package/dist/es/Paginable.d.ts +1 -1
  7. package/dist/es/Paginable.js +144 -183
  8. package/dist/es/apis/dataprotectionclustercapabilities-endpoints.d.ts +46 -0
  9. package/dist/es/apis/dataprotectionclustercapabilities-endpoints.js +107 -0
  10. package/dist/es/apis/protectedresources-endpoints.d.ts +1 -1
  11. package/dist/es/apis/protectedresources-endpoints.js +128 -146
  12. package/dist/es/apis/recoveryplanactions-endpoints.d.ts +76 -0
  13. package/dist/es/apis/recoveryplanactions-endpoints.js +282 -0
  14. package/dist/es/apis/recoveryplanjobs-endpoints.d.ts +108 -0
  15. package/dist/es/apis/recoveryplanjobs-endpoints.js +291 -0
  16. package/dist/es/apis/recoverypoints-endpoints.d.ts +3 -3
  17. package/dist/es/apis/recoverypoints-endpoints.js +530 -552
  18. package/dist/es/index.d.ts +121 -1
  19. package/dist/es/index.js +801 -321
  20. package/dist/es/models/common/v1/config/EntityReference.d.ts +79 -0
  21. package/dist/es/models/common/v1/config/EntityReference.js +355 -0
  22. package/dist/es/models/common/v1/config/EntityType.d.ts +19 -0
  23. package/dist/es/models/common/v1/config/EntityType.js +239 -0
  24. package/dist/es/models/common/v1/config/Flag.d.ts +2 -8
  25. package/dist/es/models/common/v1/config/Flag.js +170 -211
  26. package/dist/es/models/common/v1/config/IPAddress.d.ts +2 -20
  27. package/dist/es/models/common/v1/config/IPAddress.js +170 -217
  28. package/dist/es/models/common/v1/config/IPv4Address.d.ts +2 -8
  29. package/dist/es/models/common/v1/config/IPv4Address.js +174 -215
  30. package/dist/es/models/common/v1/config/IPv6Address.d.ts +2 -8
  31. package/dist/es/models/common/v1/config/IPv6Address.js +174 -215
  32. package/dist/es/models/common/v1/config/KVPair.d.ts +2 -8
  33. package/dist/es/models/common/v1/config/KVPair.js +225 -270
  34. package/dist/es/models/common/v1/config/MapOfStringWrapper.d.ts +2 -7
  35. package/dist/es/models/common/v1/config/MapOfStringWrapper.js +139 -178
  36. package/dist/es/models/common/v1/config/Message.d.ts +2 -10
  37. package/dist/es/models/common/v1/config/Message.js +213 -258
  38. package/dist/es/models/common/v1/config/MessageSeverity.js +7 -9
  39. package/dist/es/models/common/v1/config/TenantAwareModel.d.ts +2 -7
  40. package/dist/es/models/common/v1/config/TenantAwareModel.js +137 -177
  41. package/dist/es/models/common/v1/response/ApiLink.d.ts +2 -8
  42. package/dist/es/models/common/v1/response/ApiLink.js +165 -206
  43. package/dist/es/models/common/v1/response/ApiResponseMetadata.d.ts +2 -40
  44. package/dist/es/models/common/v1/response/ApiResponseMetadata.js +281 -344
  45. package/dist/es/models/common/v1/response/ExternalizableAbstractModel.d.ts +1 -15
  46. package/dist/es/models/common/v1/response/ExternalizableAbstractModel.js +154 -202
  47. package/dist/es/models/dataprotection/v4/common/BackupType.js +7 -9
  48. package/dist/es/models/dataprotection/v4/common/BaseRecoveryPoint.d.ts +12 -21
  49. package/dist/es/models/dataprotection/v4/common/BaseRecoveryPoint.js +280 -301
  50. package/dist/es/models/dataprotection/v4/common/BaseVmRecoveryPoint.d.ts +1 -32
  51. package/dist/es/models/dataprotection/v4/common/BaseVmRecoveryPoint.js +294 -335
  52. package/dist/es/models/dataprotection/v4/common/ClusterInfo.d.ts +5 -29
  53. package/dist/es/models/dataprotection/v4/common/ClusterInfo.js +166 -207
  54. package/dist/es/models/dataprotection/v4/common/DiskRecoveryPoint.d.ts +2 -8
  55. package/dist/es/models/dataprotection/v4/common/DiskRecoveryPoint.js +163 -206
  56. package/dist/es/models/dataprotection/v4/common/RecoveryPointStatus.js +7 -9
  57. package/dist/es/models/dataprotection/v4/common/RecoveryPointType.js +7 -9
  58. package/dist/es/models/dataprotection/v4/common/VssProperties.d.ts +2 -10
  59. package/dist/es/models/dataprotection/v4/common/VssProperties.js +222 -267
  60. package/dist/es/models/dataprotection/v4/config/AhvVmOverrideSpec.d.ts +1 -1
  61. package/dist/es/models/dataprotection/v4/config/AhvVmOverrideSpec.js +75 -106
  62. package/dist/es/models/dataprotection/v4/config/AmazonS3Bucket.d.ts +2 -8
  63. package/dist/es/models/dataprotection/v4/config/AmazonS3Bucket.js +171 -212
  64. package/dist/es/models/dataprotection/v4/config/AzureBlobStorageContainer.d.ts +2 -8
  65. package/dist/es/models/dataprotection/v4/config/AzureBlobStorageContainer.js +171 -212
  66. package/dist/es/models/dataprotection/v4/config/Capability.d.ts +71 -0
  67. package/dist/es/models/dataprotection/v4/config/Capability.js +279 -0
  68. package/dist/es/models/dataprotection/v4/config/ClusterInfoApiResponse.d.ts +2 -43
  69. package/dist/es/models/dataprotection/v4/config/ClusterInfoApiResponse.js +187 -242
  70. package/dist/es/models/dataprotection/v4/config/ConsistencyGroup.d.ts +1 -26
  71. package/dist/es/models/dataprotection/v4/config/ConsistencyGroup.js +244 -301
  72. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupMember.d.ts +2 -8
  73. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupMember.js +166 -207
  74. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupMemberType.js +7 -9
  75. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupMigrationSpec.d.ts +2 -8
  76. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupMigrationSpec.js +171 -212
  77. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupProjection.d.ts +1 -1
  78. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupProjection.js +74 -103
  79. package/dist/es/models/dataprotection/v4/config/CreateRecoveryPointApiResponse.d.ts +2 -43
  80. package/dist/es/models/dataprotection/v4/config/CreateRecoveryPointApiResponse.js +187 -242
  81. package/dist/es/models/dataprotection/v4/config/CreationTimeRange.d.ts +58 -0
  82. package/dist/es/models/dataprotection/v4/config/CreationTimeRange.js +272 -0
  83. package/dist/es/models/dataprotection/v4/config/DataProtectionCapabilityName.d.ts +19 -0
  84. package/dist/es/models/dataprotection/v4/config/DataProtectionCapabilityName.js +77 -0
  85. package/dist/es/models/dataprotection/v4/config/DataProtectionClusterCapability.d.ts +34 -0
  86. package/dist/es/models/dataprotection/v4/config/DataProtectionClusterCapability.js +277 -0
  87. package/dist/es/models/dataprotection/v4/config/DataProtectionClusterCapabilityProjection.d.ts +10 -0
  88. package/dist/es/models/dataprotection/v4/config/DataProtectionClusterCapabilityProjection.js +124 -0
  89. package/dist/es/models/dataprotection/v4/config/DataProtectionSiteReference.d.ts +2 -8
  90. package/dist/es/models/dataprotection/v4/config/DataProtectionSiteReference.js +171 -212
  91. package/dist/es/models/dataprotection/v4/config/DeleteRecoveryPlanJobApiResponse.d.ts +58 -0
  92. package/dist/es/models/dataprotection/v4/config/DeleteRecoveryPlanJobApiResponse.js +288 -0
  93. package/dist/es/models/dataprotection/v4/config/DeleteRecoveryPointApiResponse.d.ts +2 -43
  94. package/dist/es/models/dataprotection/v4/config/DeleteRecoveryPointApiResponse.js +187 -242
  95. package/dist/es/models/dataprotection/v4/config/DisasterRecoveryLocation.d.ts +72 -0
  96. package/dist/es/models/dataprotection/v4/config/DisasterRecoveryLocation.js +292 -0
  97. package/dist/es/models/dataprotection/v4/config/EntityRecoveryResult.d.ts +79 -0
  98. package/dist/es/models/dataprotection/v4/config/EntityRecoveryResult.js +352 -0
  99. package/dist/es/models/dataprotection/v4/config/EntityReference.d.ts +57 -0
  100. package/dist/es/models/dataprotection/v4/config/EntityReference.js +243 -0
  101. package/dist/es/models/dataprotection/v4/config/ErrorGroup.d.ts +19 -0
  102. package/dist/es/models/dataprotection/v4/config/ErrorGroup.js +113 -0
  103. package/dist/es/models/dataprotection/v4/config/ErrorMessage.d.ts +53 -0
  104. package/dist/es/models/dataprotection/v4/config/ErrorMessage.js +335 -0
  105. package/dist/es/models/dataprotection/v4/config/EsxiVmOverrideSpec.d.ts +2 -7
  106. package/dist/es/models/dataprotection/v4/config/EsxiVmOverrideSpec.js +143 -182
  107. package/dist/es/models/dataprotection/v4/config/ExecutionStepEntityReference.d.ts +68 -0
  108. package/dist/es/models/dataprotection/v4/config/ExecutionStepEntityReference.js +311 -0
  109. package/dist/es/models/dataprotection/v4/config/ExecutionStepEntityType.d.ts +19 -0
  110. package/dist/es/models/dataprotection/v4/config/ExecutionStepEntityType.js +143 -0
  111. package/dist/es/models/dataprotection/v4/config/ExecutionStepResult.d.ts +58 -0
  112. package/dist/es/models/dataprotection/v4/config/ExecutionStepResult.js +253 -0
  113. package/dist/es/models/dataprotection/v4/config/ExpirationTimeSpec.d.ts +7 -12
  114. package/dist/es/models/dataprotection/v4/config/ExpirationTimeSpec.js +143 -182
  115. package/dist/es/models/dataprotection/v4/config/FailoverDirection.d.ts +90 -0
  116. package/dist/es/models/dataprotection/v4/config/FailoverDirection.js +354 -0
  117. package/dist/es/models/dataprotection/v4/config/ForceDeleteAllRecoveryPointsSpec.d.ts +55 -0
  118. package/dist/es/models/dataprotection/v4/config/ForceDeleteAllRecoveryPointsSpec.js +274 -0
  119. package/dist/es/models/dataprotection/v4/config/GetProtectedResourceApiResponse.d.ts +3 -44
  120. package/dist/es/models/dataprotection/v4/config/GetProtectedResourceApiResponse.js +187 -242
  121. package/dist/es/models/dataprotection/v4/config/GetRecoveryPlanJobApiResponse.d.ts +58 -0
  122. package/dist/es/models/dataprotection/v4/config/GetRecoveryPlanJobApiResponse.js +288 -0
  123. package/dist/es/models/dataprotection/v4/config/GetRecoveryPointApiResponse.d.ts +2 -43
  124. package/dist/es/models/dataprotection/v4/config/GetRecoveryPointApiResponse.js +187 -242
  125. package/dist/es/models/dataprotection/v4/config/GetVmRecoveryPointApiResponse.d.ts +2 -45
  126. package/dist/es/models/dataprotection/v4/config/GetVmRecoveryPointApiResponse.js +187 -242
  127. package/dist/es/models/dataprotection/v4/config/HostReference.d.ts +1 -17
  128. package/dist/es/models/dataprotection/v4/config/HostReference.js +153 -197
  129. package/dist/es/models/dataprotection/v4/config/HostType.js +7 -9
  130. package/dist/es/models/dataprotection/v4/config/HypervisorType.js +7 -9
  131. package/dist/es/models/dataprotection/v4/config/ListDPClusterCapabilitiesApiResponse.d.ts +59 -0
  132. package/dist/es/models/dataprotection/v4/config/ListDPClusterCapabilitiesApiResponse.js +315 -0
  133. package/dist/es/models/dataprotection/v4/config/ListRecoveryPlanJobExecutionStepsApiResponse.d.ts +59 -0
  134. package/dist/es/models/dataprotection/v4/config/ListRecoveryPlanJobExecutionStepsApiResponse.js +315 -0
  135. package/dist/es/models/dataprotection/v4/config/ListRecoveryPlanJobValidationErrorsApiResponse.d.ts +59 -0
  136. package/dist/es/models/dataprotection/v4/config/ListRecoveryPlanJobValidationErrorsApiResponse.js +315 -0
  137. package/dist/es/models/dataprotection/v4/config/ListRecoveryPlanJobsApiResponse.d.ts +59 -0
  138. package/dist/es/models/dataprotection/v4/config/ListRecoveryPlanJobsApiResponse.js +315 -0
  139. package/dist/es/models/dataprotection/v4/config/ListRecoveryPointsApiResponse.d.ts +2 -43
  140. package/dist/es/models/dataprotection/v4/config/ListRecoveryPointsApiResponse.js +213 -268
  141. package/dist/es/models/dataprotection/v4/config/LocationReference.d.ts +2 -7
  142. package/dist/es/models/dataprotection/v4/config/LocationReference.js +142 -181
  143. package/dist/es/models/dataprotection/v4/config/NutanixObjectsBucket.d.ts +2 -7
  144. package/dist/es/models/dataprotection/v4/config/NutanixObjectsBucket.js +140 -179
  145. package/dist/es/models/dataprotection/v4/config/ObjectStorageType.js +7 -9
  146. package/dist/es/models/dataprotection/v4/config/OperationType.d.ts +19 -0
  147. package/dist/es/models/dataprotection/v4/config/OperationType.js +251 -0
  148. package/dist/es/models/dataprotection/v4/config/PhaseSummary.d.ts +33 -0
  149. package/dist/es/models/dataprotection/v4/config/PhaseSummary.js +274 -0
  150. package/dist/es/models/dataprotection/v4/config/ProtectedEntityType.js +7 -9
  151. package/dist/es/models/dataprotection/v4/config/ProtectedResource.d.ts +4 -72
  152. package/dist/es/models/dataprotection/v4/config/ProtectedResource.js +307 -369
  153. package/dist/es/models/dataprotection/v4/config/ProtectedResourcePromoteApiResponse.d.ts +2 -43
  154. package/dist/es/models/dataprotection/v4/config/ProtectedResourcePromoteApiResponse.js +187 -242
  155. package/dist/es/models/dataprotection/v4/config/ProtectedResourceReplicationStatus.js +8 -10
  156. package/dist/es/models/dataprotection/v4/config/ProtectedResourceRestoreApiResponse.d.ts +2 -43
  157. package/dist/es/models/dataprotection/v4/config/ProtectedResourceRestoreApiResponse.js +187 -242
  158. package/dist/es/models/dataprotection/v4/config/ProtectedResourceRestoreSpec.d.ts +5 -11
  159. package/dist/es/models/dataprotection/v4/config/ProtectedResourceRestoreSpec.js +169 -210
  160. package/dist/es/models/dataprotection/v4/config/RecoveryInfo.d.ts +2 -13
  161. package/dist/es/models/dataprotection/v4/config/RecoveryInfo.js +149 -192
  162. package/dist/es/models/dataprotection/v4/config/RecoveryPlanActionType.d.ts +19 -0
  163. package/dist/es/models/dataprotection/v4/config/RecoveryPlanActionType.js +95 -0
  164. package/dist/es/models/dataprotection/v4/config/RecoveryPlanJob.d.ts +177 -0
  165. package/dist/es/models/dataprotection/v4/config/RecoveryPlanJob.js +771 -0
  166. package/dist/es/models/dataprotection/v4/config/RecoveryPlanJobExecutionStatus.d.ts +19 -0
  167. package/dist/es/models/dataprotection/v4/config/RecoveryPlanJobExecutionStatus.js +107 -0
  168. package/dist/es/models/dataprotection/v4/config/RecoveryPlanJobExecutionStep.d.ts +132 -0
  169. package/dist/es/models/dataprotection/v4/config/RecoveryPlanJobExecutionStep.js +624 -0
  170. package/dist/es/models/dataprotection/v4/config/RecoveryPlanJobExecutionStepProjection.d.ts +10 -0
  171. package/dist/es/models/dataprotection/v4/config/RecoveryPlanJobExecutionStepProjection.js +129 -0
  172. package/dist/es/models/dataprotection/v4/config/RecoveryPlanJobPhaseType.d.ts +19 -0
  173. package/dist/es/models/dataprotection/v4/config/RecoveryPlanJobPhaseType.js +89 -0
  174. package/dist/es/models/dataprotection/v4/config/RecoveryPlanJobProjection.d.ts +10 -0
  175. package/dist/es/models/dataprotection/v4/config/RecoveryPlanJobProjection.js +128 -0
  176. package/dist/es/models/dataprotection/v4/config/RecoveryPlanValidationError.d.ts +32 -0
  177. package/dist/es/models/dataprotection/v4/config/RecoveryPlanValidationError.js +322 -0
  178. package/dist/es/models/dataprotection/v4/config/RecoveryPlanValidationErrorProjection.d.ts +10 -0
  179. package/dist/es/models/dataprotection/v4/config/RecoveryPlanValidationErrorProjection.js +126 -0
  180. package/dist/es/models/dataprotection/v4/config/RecoveryPoint.d.ts +23 -101
  181. package/dist/es/models/dataprotection/v4/config/RecoveryPoint.js +337 -348
  182. package/dist/es/models/dataprotection/v4/config/RecoveryPointProjection.d.ts +1 -1
  183. package/dist/es/models/dataprotection/v4/config/RecoveryPointProjection.js +75 -103
  184. package/dist/es/models/dataprotection/v4/config/RecoveryPointReplicateApiResponse.d.ts +2 -43
  185. package/dist/es/models/dataprotection/v4/config/RecoveryPointReplicateApiResponse.js +187 -242
  186. package/dist/es/models/dataprotection/v4/config/RecoveryPointReplicationSpec.d.ts +5 -11
  187. package/dist/es/models/dataprotection/v4/config/RecoveryPointReplicationSpec.js +172 -213
  188. package/dist/es/models/dataprotection/v4/config/RecoveryPointRepository.d.ts +1 -18
  189. package/dist/es/models/dataprotection/v4/config/RecoveryPointRepository.js +196 -246
  190. package/dist/es/models/dataprotection/v4/config/RecoveryPointRepositoryProjection.d.ts +1 -1
  191. package/dist/es/models/dataprotection/v4/config/RecoveryPointRepositoryProjection.js +73 -102
  192. package/dist/es/models/dataprotection/v4/config/RecoveryPointRestorationSpec.d.ts +19 -33
  193. package/dist/es/models/dataprotection/v4/config/RecoveryPointRestorationSpec.js +259 -273
  194. package/dist/es/models/dataprotection/v4/config/RecoveryPointRestoreApiResponse.d.ts +2 -43
  195. package/dist/es/models/dataprotection/v4/config/RecoveryPointRestoreApiResponse.js +187 -242
  196. package/dist/es/models/dataprotection/v4/config/RecycleBinEntry.d.ts +77 -0
  197. package/dist/es/models/dataprotection/v4/config/RecycleBinEntry.js +405 -0
  198. package/dist/es/models/dataprotection/v4/config/RecycleBinVm.d.ts +44 -0
  199. package/dist/es/models/dataprotection/v4/config/RecycleBinVm.js +352 -0
  200. package/dist/es/models/dataprotection/v4/config/RecycleBinVmProjection.d.ts +10 -0
  201. package/dist/es/models/dataprotection/v4/config/RecycleBinVmProjection.js +124 -0
  202. package/dist/es/models/dataprotection/v4/config/RecycleBinVolumeGroup.d.ts +44 -0
  203. package/dist/es/models/dataprotection/v4/config/RecycleBinVolumeGroup.js +352 -0
  204. package/dist/es/models/dataprotection/v4/config/RecycleBinVolumeGroupProjection.d.ts +10 -0
  205. package/dist/es/models/dataprotection/v4/config/RecycleBinVolumeGroupProjection.js +124 -0
  206. package/dist/es/models/dataprotection/v4/config/ReplicationState.d.ts +2 -16
  207. package/dist/es/models/dataprotection/v4/config/ReplicationState.js +221 -266
  208. package/dist/es/models/dataprotection/v4/config/RestorableTimeRange.d.ts +2 -8
  209. package/dist/es/models/dataprotection/v4/config/RestorableTimeRange.js +166 -207
  210. package/dist/es/models/dataprotection/v4/config/RootCauseAnalysis.d.ts +69 -0
  211. package/dist/es/models/dataprotection/v4/config/RootCauseAnalysis.js +329 -0
  212. package/dist/es/models/dataprotection/v4/config/Severity.d.ts +19 -0
  213. package/dist/es/models/dataprotection/v4/config/Severity.js +83 -0
  214. package/dist/es/models/dataprotection/v4/config/SiteProtectionInfo.d.ts +2 -26
  215. package/dist/es/models/dataprotection/v4/config/SiteProtectionInfo.js +185 -228
  216. package/dist/es/models/dataprotection/v4/config/SiteReference.d.ts +2 -8
  217. package/dist/es/models/dataprotection/v4/config/SiteReference.js +171 -212
  218. package/dist/es/models/dataprotection/v4/config/StageSummary.d.ts +22 -0
  219. package/dist/es/models/dataprotection/v4/config/StageSummary.js +230 -0
  220. package/dist/es/models/dataprotection/v4/config/Summary.d.ts +59 -0
  221. package/dist/es/models/dataprotection/v4/config/Summary.js +277 -0
  222. package/dist/es/models/dataprotection/v4/config/SynchronousReplicationRole.js +8 -10
  223. package/dist/es/models/dataprotection/v4/config/UpdateRecoveryPointExpirationTimeApiResponse.d.ts +2 -43
  224. package/dist/es/models/dataprotection/v4/config/UpdateRecoveryPointExpirationTimeApiResponse.js +187 -242
  225. package/dist/es/models/dataprotection/v4/config/VmRecoveryPoint.d.ts +1 -33
  226. package/dist/es/models/dataprotection/v4/config/VmRecoveryPoint.js +183 -206
  227. package/dist/es/models/dataprotection/v4/config/VmRecoveryPointRestoreOverride.d.ts +8 -15
  228. package/dist/es/models/dataprotection/v4/config/VmRecoveryPointRestoreOverride.js +211 -258
  229. package/dist/es/models/dataprotection/v4/config/VolumeGroupOverrideSpec.d.ts +2 -7
  230. package/dist/es/models/dataprotection/v4/config/VolumeGroupOverrideSpec.js +143 -182
  231. package/dist/es/models/dataprotection/v4/config/VolumeGroupRecoveryPoint.d.ts +18 -32
  232. package/dist/es/models/dataprotection/v4/config/VolumeGroupRecoveryPoint.js +283 -306
  233. package/dist/es/models/dataprotection/v4/config/VolumeGroupRecoveryPointRestoreOverride.d.ts +2 -13
  234. package/dist/es/models/dataprotection/v4/config/VolumeGroupRecoveryPointRestoreOverride.js +166 -207
  235. package/dist/es/models/dataprotection/v4/config/VolumeGroupSyncContext.d.ts +1 -29
  236. package/dist/es/models/dataprotection/v4/config/VolumeGroupSyncContext.js +148 -192
  237. package/dist/es/models/dataprotection/v4/config/Witness.d.ts +1 -34
  238. package/dist/es/models/dataprotection/v4/config/Witness.js +226 -278
  239. package/dist/es/models/dataprotection/v4/config/WitnessAvailabilityStatus.js +7 -9
  240. package/dist/es/models/dataprotection/v4/content/BaseRecoveryPointSpec.d.ts +2 -8
  241. package/dist/es/models/dataprotection/v4/content/BaseRecoveryPointSpec.js +171 -212
  242. package/dist/es/models/dataprotection/v4/content/ChangedRegion.d.ts +2 -9
  243. package/dist/es/models/dataprotection/v4/content/ChangedRegion.js +189 -232
  244. package/dist/es/models/dataprotection/v4/content/ChangedVmRegionsApiResponse.d.ts +2 -43
  245. package/dist/es/models/dataprotection/v4/content/ChangedVmRegionsApiResponse.js +209 -264
  246. package/dist/es/models/dataprotection/v4/content/ChangedVolumeGroupRegionsApiResponse.d.ts +2 -43
  247. package/dist/es/models/dataprotection/v4/content/ChangedVolumeGroupRegionsApiResponse.js +209 -264
  248. package/dist/es/models/dataprotection/v4/content/ClusterDiscoverOperation.js +9 -11
  249. package/dist/es/models/dataprotection/v4/content/ClusterDiscoverSpec.d.ts +2 -8
  250. package/dist/es/models/dataprotection/v4/content/ClusterDiscoverSpec.js +179 -224
  251. package/dist/es/models/dataprotection/v4/content/ComputeChangedRegionsClusterDiscoverSpec.d.ts +3 -9
  252. package/dist/es/models/dataprotection/v4/content/ComputeChangedRegionsClusterDiscoverSpec.js +197 -246
  253. package/dist/es/models/dataprotection/v4/content/DiskRecoveryPointReference.d.ts +2 -8
  254. package/dist/es/models/dataprotection/v4/content/DiskRecoveryPointReference.js +172 -213
  255. package/dist/es/models/dataprotection/v4/content/FileWrapper.d.ts +36 -0
  256. package/dist/es/models/dataprotection/v4/content/FileWrapper.js +200 -0
  257. package/dist/es/models/dataprotection/v4/content/GetVssMetadataApiResponse.d.ts +8 -48
  258. package/dist/es/models/dataprotection/v4/content/GetVssMetadataApiResponse.js +188 -242
  259. package/dist/es/models/dataprotection/v4/content/GetVssMetadataClusterDiscoverSpec.d.ts +3 -8
  260. package/dist/es/models/dataprotection/v4/content/GetVssMetadataClusterDiscoverSpec.js +143 -182
  261. package/dist/es/models/dataprotection/v4/content/RegionType.js +7 -9
  262. package/dist/es/models/dataprotection/v4/content/VmDiskRecoveryPointClusterDiscoverSpec.d.ts +1 -9
  263. package/dist/es/models/dataprotection/v4/content/VmDiskRecoveryPointClusterDiscoverSpec.js +130 -169
  264. package/dist/es/models/dataprotection/v4/content/VmDiskRecoveryPointReference.d.ts +1 -9
  265. package/dist/es/models/dataprotection/v4/content/VmDiskRecoveryPointReference.js +130 -169
  266. package/dist/es/models/dataprotection/v4/content/VmRecoveryPointChangedRegionsComputeSpec.d.ts +4 -15
  267. package/dist/es/models/dataprotection/v4/content/VmRecoveryPointChangedRegionsComputeSpec.js +190 -231
  268. package/dist/es/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointClusterDiscoverSpec.d.ts +1 -9
  269. package/dist/es/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointClusterDiscoverSpec.js +130 -169
  270. package/dist/es/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointReference.d.ts +1 -9
  271. package/dist/es/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointReference.js +131 -170
  272. package/dist/es/models/dataprotection/v4/content/VolumeGroupRecoveryPointChangedRegionsComputeSpec.d.ts +4 -15
  273. package/dist/es/models/dataprotection/v4/content/VolumeGroupRecoveryPointChangedRegionsComputeSpec.js +190 -231
  274. package/dist/es/models/dataprotection/v4/error/AppMessage.d.ts +2 -12
  275. package/dist/es/models/dataprotection/v4/error/AppMessage.js +264 -313
  276. package/dist/es/models/dataprotection/v4/error/ErrorResponse.d.ts +2 -7
  277. package/dist/es/models/dataprotection/v4/error/ErrorResponse.js +190 -222
  278. package/dist/es/models/dataprotection/v4/error/SchemaValidationError.d.ts +2 -18
  279. package/dist/es/models/dataprotection/v4/error/SchemaValidationError.js +249 -300
  280. package/dist/es/models/dataprotection/v4/error/SchemaValidationErrorMessage.d.ts +2 -9
  281. package/dist/es/models/dataprotection/v4/error/SchemaValidationErrorMessage.js +191 -234
  282. package/dist/es/models/dataprotection/v4/operations/BaseRecoveryPlanActionSpec.d.ts +73 -0
  283. package/dist/es/models/dataprotection/v4/operations/BaseRecoveryPlanActionSpec.js +297 -0
  284. package/dist/es/models/dataprotection/v4/operations/CleanupRecoveryPlanResourcesApiResponse.d.ts +58 -0
  285. package/dist/es/models/dataprotection/v4/operations/CleanupRecoveryPlanResourcesApiResponse.js +288 -0
  286. package/dist/es/models/dataprotection/v4/operations/PlannedFailoverRecoveryPlanApiResponse.d.ts +58 -0
  287. package/dist/es/models/dataprotection/v4/operations/PlannedFailoverRecoveryPlanApiResponse.js +288 -0
  288. package/dist/es/models/dataprotection/v4/operations/PlannedFailoverSpec.d.ts +37 -0
  289. package/dist/es/models/dataprotection/v4/operations/PlannedFailoverSpec.js +274 -0
  290. package/dist/es/models/dataprotection/v4/operations/TestFailoverRecoveryPlanApiResponse.d.ts +58 -0
  291. package/dist/es/models/dataprotection/v4/operations/TestFailoverRecoveryPlanApiResponse.js +288 -0
  292. package/dist/es/models/dataprotection/v4/operations/TestFailoverSpec.d.ts +37 -0
  293. package/dist/es/models/dataprotection/v4/operations/TestFailoverSpec.js +274 -0
  294. package/dist/es/models/dataprotection/v4/operations/UnplannedFailoverRecoveryPlanApiResponse.d.ts +58 -0
  295. package/dist/es/models/dataprotection/v4/operations/UnplannedFailoverRecoveryPlanApiResponse.js +288 -0
  296. package/dist/es/models/dataprotection/v4/operations/UnplannedFailoverSpec.d.ts +48 -0
  297. package/dist/es/models/dataprotection/v4/operations/UnplannedFailoverSpec.js +311 -0
  298. package/dist/es/models/dataprotection/v4/operations/ValidateRecoveryPlanApiResponse.d.ts +58 -0
  299. package/dist/es/models/dataprotection/v4/operations/ValidateRecoveryPlanApiResponse.js +288 -0
  300. package/dist/es/models/dataprotection/v4/operations/ValidateSpec.d.ts +24 -0
  301. package/dist/es/models/dataprotection/v4/operations/ValidateSpec.js +129 -0
  302. package/dist/es/models/prism/v4/config/TaskReference.d.ts +2 -7
  303. package/dist/es/models/prism/v4/config/TaskReference.js +150 -183
  304. package/dist/es/models/validation/ValidationError.js +26 -42
  305. package/dist/es/models/validation/ValidationScopes.js +3 -3
  306. package/dist/es/models/vmm/v4/ahv/config/CategoryReference.d.ts +2 -7
  307. package/dist/es/models/vmm/v4/ahv/config/CategoryReference.js +142 -181
  308. package/dist/es/models/vmm/v4/ahv/config/GuestStaticIpSpec.d.ts +57 -0
  309. package/dist/es/models/vmm/v4/ahv/config/GuestStaticIpSpec.js +277 -0
  310. package/dist/es/models/vmm/v4/ahv/config/OwnerReference.d.ts +2 -7
  311. package/dist/es/models/vmm/v4/ahv/config/OwnerReference.js +142 -181
  312. package/dist/es/models/vmm/v4/ahv/config/OwnershipInfo.d.ts +2 -12
  313. package/dist/es/models/vmm/v4/ahv/config/OwnershipInfo.js +138 -177
  314. package/dist/es/models/vmm/v4/ahv/config/SubnetReference.d.ts +2 -7
  315. package/dist/es/models/vmm/v4/ahv/config/SubnetReference.js +142 -181
  316. package/dist/es/models/vmm/v4/ahv/config/VmConfigOverrideSpecification.d.ts +12 -39
  317. package/dist/es/models/vmm/v4/ahv/config/VmConfigOverrideSpecification.js +283 -300
  318. package/dist/es/models/vmm/v4/ahv/config/VmRestoreGuestNicInfoOverrideSpec.d.ts +48 -0
  319. package/dist/es/models/vmm/v4/ahv/config/VmRestoreGuestNicInfoOverrideSpec.js +245 -0
  320. package/dist/es/models/vmm/v4/ahv/config/VmRestoreGuestToolsSpecification.d.ts +47 -0
  321. package/dist/es/models/vmm/v4/ahv/config/VmRestoreGuestToolsSpecification.js +236 -0
  322. package/dist/es/models/vmm/v4/ahv/config/VmRestoreIpv4ConfigOverrideSpec.d.ts +2 -20
  323. package/dist/es/models/vmm/v4/ahv/config/VmRestoreIpv4ConfigOverrideSpec.js +173 -218
  324. package/dist/es/models/vmm/v4/ahv/config/VmRestoreNicConfigOverrideParams.d.ts +12 -9
  325. package/dist/es/models/vmm/v4/ahv/config/VmRestoreNicConfigOverrideParams.js +252 -269
  326. package/dist/es/models/vmm/v4/ahv/config/VmRestoreNicConfigSpecification.d.ts +2 -15
  327. package/dist/es/models/vmm/v4/ahv/config/VmRestoreNicConfigSpecification.js +183 -228
  328. package/dist/es/models/vmm/v4/ahv/config/VmRestoreVirtualEthernetNicNetworkInfoOverrideSpec.d.ts +2 -31
  329. package/dist/es/models/vmm/v4/ahv/config/VmRestoreVirtualEthernetNicNetworkInfoOverrideSpec.js +162 -203
  330. package/dist/es/models/vmm/v4/ahv/config/VmRestoreVirtualEthernetNicOverrideSpec.d.ts +2 -7
  331. package/dist/es/models/vmm/v4/ahv/config/VmRestoreVirtualEthernetNicOverrideSpec.js +142 -181
  332. package/dist/es/utils/ValidationUtils.js +39 -69
  333. package/dist/lib/ApiClient.d.ts +29 -7
  334. package/dist/lib/ApiClient.js +854 -667
  335. package/dist/lib/Paginable.d.ts +1 -1
  336. package/dist/lib/Paginable.js +144 -183
  337. package/dist/lib/apis/dataprotectionclustercapabilities-endpoints.d.ts +46 -0
  338. package/dist/lib/apis/dataprotectionclustercapabilities-endpoints.js +107 -0
  339. package/dist/lib/apis/protectedresources-endpoints.d.ts +1 -1
  340. package/dist/lib/apis/protectedresources-endpoints.js +128 -146
  341. package/dist/lib/apis/recoveryplanactions-endpoints.d.ts +76 -0
  342. package/dist/lib/apis/recoveryplanactions-endpoints.js +282 -0
  343. package/dist/lib/apis/recoveryplanjobs-endpoints.d.ts +108 -0
  344. package/dist/lib/apis/recoveryplanjobs-endpoints.js +291 -0
  345. package/dist/lib/apis/recoverypoints-endpoints.d.ts +3 -3
  346. package/dist/lib/apis/recoverypoints-endpoints.js +530 -552
  347. package/dist/lib/index.d.ts +121 -1
  348. package/dist/lib/index.js +801 -321
  349. package/dist/lib/models/common/v1/config/EntityReference.d.ts +79 -0
  350. package/dist/lib/models/common/v1/config/EntityReference.js +355 -0
  351. package/dist/lib/models/common/v1/config/EntityType.d.ts +19 -0
  352. package/dist/lib/models/common/v1/config/EntityType.js +239 -0
  353. package/dist/lib/models/common/v1/config/Flag.d.ts +2 -8
  354. package/dist/lib/models/common/v1/config/Flag.js +170 -211
  355. package/dist/lib/models/common/v1/config/IPAddress.d.ts +2 -20
  356. package/dist/lib/models/common/v1/config/IPAddress.js +170 -217
  357. package/dist/lib/models/common/v1/config/IPv4Address.d.ts +2 -8
  358. package/dist/lib/models/common/v1/config/IPv4Address.js +174 -215
  359. package/dist/lib/models/common/v1/config/IPv6Address.d.ts +2 -8
  360. package/dist/lib/models/common/v1/config/IPv6Address.js +174 -215
  361. package/dist/lib/models/common/v1/config/KVPair.d.ts +2 -8
  362. package/dist/lib/models/common/v1/config/KVPair.js +225 -270
  363. package/dist/lib/models/common/v1/config/MapOfStringWrapper.d.ts +2 -7
  364. package/dist/lib/models/common/v1/config/MapOfStringWrapper.js +139 -178
  365. package/dist/lib/models/common/v1/config/Message.d.ts +2 -10
  366. package/dist/lib/models/common/v1/config/Message.js +213 -258
  367. package/dist/lib/models/common/v1/config/MessageSeverity.js +7 -9
  368. package/dist/lib/models/common/v1/config/TenantAwareModel.d.ts +2 -7
  369. package/dist/lib/models/common/v1/config/TenantAwareModel.js +137 -177
  370. package/dist/lib/models/common/v1/response/ApiLink.d.ts +2 -8
  371. package/dist/lib/models/common/v1/response/ApiLink.js +165 -206
  372. package/dist/lib/models/common/v1/response/ApiResponseMetadata.d.ts +2 -40
  373. package/dist/lib/models/common/v1/response/ApiResponseMetadata.js +281 -344
  374. package/dist/lib/models/common/v1/response/ExternalizableAbstractModel.d.ts +1 -15
  375. package/dist/lib/models/common/v1/response/ExternalizableAbstractModel.js +154 -202
  376. package/dist/lib/models/dataprotection/v4/common/BackupType.js +7 -9
  377. package/dist/lib/models/dataprotection/v4/common/BaseRecoveryPoint.d.ts +12 -21
  378. package/dist/lib/models/dataprotection/v4/common/BaseRecoveryPoint.js +280 -301
  379. package/dist/lib/models/dataprotection/v4/common/BaseVmRecoveryPoint.d.ts +1 -32
  380. package/dist/lib/models/dataprotection/v4/common/BaseVmRecoveryPoint.js +294 -335
  381. package/dist/lib/models/dataprotection/v4/common/ClusterInfo.d.ts +5 -29
  382. package/dist/lib/models/dataprotection/v4/common/ClusterInfo.js +166 -207
  383. package/dist/lib/models/dataprotection/v4/common/DiskRecoveryPoint.d.ts +2 -8
  384. package/dist/lib/models/dataprotection/v4/common/DiskRecoveryPoint.js +163 -206
  385. package/dist/lib/models/dataprotection/v4/common/RecoveryPointStatus.js +7 -9
  386. package/dist/lib/models/dataprotection/v4/common/RecoveryPointType.js +7 -9
  387. package/dist/lib/models/dataprotection/v4/common/VssProperties.d.ts +2 -10
  388. package/dist/lib/models/dataprotection/v4/common/VssProperties.js +222 -267
  389. package/dist/lib/models/dataprotection/v4/config/AhvVmOverrideSpec.d.ts +1 -1
  390. package/dist/lib/models/dataprotection/v4/config/AhvVmOverrideSpec.js +75 -106
  391. package/dist/lib/models/dataprotection/v4/config/AmazonS3Bucket.d.ts +2 -8
  392. package/dist/lib/models/dataprotection/v4/config/AmazonS3Bucket.js +171 -212
  393. package/dist/lib/models/dataprotection/v4/config/AzureBlobStorageContainer.d.ts +2 -8
  394. package/dist/lib/models/dataprotection/v4/config/AzureBlobStorageContainer.js +171 -212
  395. package/dist/lib/models/dataprotection/v4/config/Capability.d.ts +71 -0
  396. package/dist/lib/models/dataprotection/v4/config/Capability.js +279 -0
  397. package/dist/lib/models/dataprotection/v4/config/ClusterInfoApiResponse.d.ts +2 -43
  398. package/dist/lib/models/dataprotection/v4/config/ClusterInfoApiResponse.js +187 -242
  399. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroup.d.ts +1 -26
  400. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroup.js +244 -301
  401. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupMember.d.ts +2 -8
  402. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupMember.js +166 -207
  403. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupMemberType.js +7 -9
  404. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupMigrationSpec.d.ts +2 -8
  405. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupMigrationSpec.js +171 -212
  406. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupProjection.d.ts +1 -1
  407. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupProjection.js +74 -103
  408. package/dist/lib/models/dataprotection/v4/config/CreateRecoveryPointApiResponse.d.ts +2 -43
  409. package/dist/lib/models/dataprotection/v4/config/CreateRecoveryPointApiResponse.js +187 -242
  410. package/dist/lib/models/dataprotection/v4/config/CreationTimeRange.d.ts +58 -0
  411. package/dist/lib/models/dataprotection/v4/config/CreationTimeRange.js +272 -0
  412. package/dist/lib/models/dataprotection/v4/config/DataProtectionCapabilityName.d.ts +19 -0
  413. package/dist/lib/models/dataprotection/v4/config/DataProtectionCapabilityName.js +77 -0
  414. package/dist/lib/models/dataprotection/v4/config/DataProtectionClusterCapability.d.ts +34 -0
  415. package/dist/lib/models/dataprotection/v4/config/DataProtectionClusterCapability.js +277 -0
  416. package/dist/lib/models/dataprotection/v4/config/DataProtectionClusterCapabilityProjection.d.ts +10 -0
  417. package/dist/lib/models/dataprotection/v4/config/DataProtectionClusterCapabilityProjection.js +124 -0
  418. package/dist/lib/models/dataprotection/v4/config/DataProtectionSiteReference.d.ts +2 -8
  419. package/dist/lib/models/dataprotection/v4/config/DataProtectionSiteReference.js +171 -212
  420. package/dist/lib/models/dataprotection/v4/config/DeleteRecoveryPlanJobApiResponse.d.ts +58 -0
  421. package/dist/lib/models/dataprotection/v4/config/DeleteRecoveryPlanJobApiResponse.js +288 -0
  422. package/dist/lib/models/dataprotection/v4/config/DeleteRecoveryPointApiResponse.d.ts +2 -43
  423. package/dist/lib/models/dataprotection/v4/config/DeleteRecoveryPointApiResponse.js +187 -242
  424. package/dist/lib/models/dataprotection/v4/config/DisasterRecoveryLocation.d.ts +72 -0
  425. package/dist/lib/models/dataprotection/v4/config/DisasterRecoveryLocation.js +292 -0
  426. package/dist/lib/models/dataprotection/v4/config/EntityRecoveryResult.d.ts +79 -0
  427. package/dist/lib/models/dataprotection/v4/config/EntityRecoveryResult.js +352 -0
  428. package/dist/lib/models/dataprotection/v4/config/EntityReference.d.ts +57 -0
  429. package/dist/lib/models/dataprotection/v4/config/EntityReference.js +243 -0
  430. package/dist/lib/models/dataprotection/v4/config/ErrorGroup.d.ts +19 -0
  431. package/dist/lib/models/dataprotection/v4/config/ErrorGroup.js +113 -0
  432. package/dist/lib/models/dataprotection/v4/config/ErrorMessage.d.ts +53 -0
  433. package/dist/lib/models/dataprotection/v4/config/ErrorMessage.js +335 -0
  434. package/dist/lib/models/dataprotection/v4/config/EsxiVmOverrideSpec.d.ts +2 -7
  435. package/dist/lib/models/dataprotection/v4/config/EsxiVmOverrideSpec.js +143 -182
  436. package/dist/lib/models/dataprotection/v4/config/ExecutionStepEntityReference.d.ts +68 -0
  437. package/dist/lib/models/dataprotection/v4/config/ExecutionStepEntityReference.js +311 -0
  438. package/dist/lib/models/dataprotection/v4/config/ExecutionStepEntityType.d.ts +19 -0
  439. package/dist/lib/models/dataprotection/v4/config/ExecutionStepEntityType.js +143 -0
  440. package/dist/lib/models/dataprotection/v4/config/ExecutionStepResult.d.ts +58 -0
  441. package/dist/lib/models/dataprotection/v4/config/ExecutionStepResult.js +253 -0
  442. package/dist/lib/models/dataprotection/v4/config/ExpirationTimeSpec.d.ts +7 -12
  443. package/dist/lib/models/dataprotection/v4/config/ExpirationTimeSpec.js +143 -182
  444. package/dist/lib/models/dataprotection/v4/config/FailoverDirection.d.ts +90 -0
  445. package/dist/lib/models/dataprotection/v4/config/FailoverDirection.js +354 -0
  446. package/dist/lib/models/dataprotection/v4/config/ForceDeleteAllRecoveryPointsSpec.d.ts +55 -0
  447. package/dist/lib/models/dataprotection/v4/config/ForceDeleteAllRecoveryPointsSpec.js +274 -0
  448. package/dist/lib/models/dataprotection/v4/config/GetProtectedResourceApiResponse.d.ts +3 -44
  449. package/dist/lib/models/dataprotection/v4/config/GetProtectedResourceApiResponse.js +187 -242
  450. package/dist/lib/models/dataprotection/v4/config/GetRecoveryPlanJobApiResponse.d.ts +58 -0
  451. package/dist/lib/models/dataprotection/v4/config/GetRecoveryPlanJobApiResponse.js +288 -0
  452. package/dist/lib/models/dataprotection/v4/config/GetRecoveryPointApiResponse.d.ts +2 -43
  453. package/dist/lib/models/dataprotection/v4/config/GetRecoveryPointApiResponse.js +187 -242
  454. package/dist/lib/models/dataprotection/v4/config/GetVmRecoveryPointApiResponse.d.ts +2 -45
  455. package/dist/lib/models/dataprotection/v4/config/GetVmRecoveryPointApiResponse.js +187 -242
  456. package/dist/lib/models/dataprotection/v4/config/HostReference.d.ts +1 -17
  457. package/dist/lib/models/dataprotection/v4/config/HostReference.js +153 -197
  458. package/dist/lib/models/dataprotection/v4/config/HostType.js +7 -9
  459. package/dist/lib/models/dataprotection/v4/config/HypervisorType.js +7 -9
  460. package/dist/lib/models/dataprotection/v4/config/ListDPClusterCapabilitiesApiResponse.d.ts +59 -0
  461. package/dist/lib/models/dataprotection/v4/config/ListDPClusterCapabilitiesApiResponse.js +315 -0
  462. package/dist/lib/models/dataprotection/v4/config/ListRecoveryPlanJobExecutionStepsApiResponse.d.ts +59 -0
  463. package/dist/lib/models/dataprotection/v4/config/ListRecoveryPlanJobExecutionStepsApiResponse.js +315 -0
  464. package/dist/lib/models/dataprotection/v4/config/ListRecoveryPlanJobValidationErrorsApiResponse.d.ts +59 -0
  465. package/dist/lib/models/dataprotection/v4/config/ListRecoveryPlanJobValidationErrorsApiResponse.js +315 -0
  466. package/dist/lib/models/dataprotection/v4/config/ListRecoveryPlanJobsApiResponse.d.ts +59 -0
  467. package/dist/lib/models/dataprotection/v4/config/ListRecoveryPlanJobsApiResponse.js +315 -0
  468. package/dist/lib/models/dataprotection/v4/config/ListRecoveryPointsApiResponse.d.ts +2 -43
  469. package/dist/lib/models/dataprotection/v4/config/ListRecoveryPointsApiResponse.js +213 -268
  470. package/dist/lib/models/dataprotection/v4/config/LocationReference.d.ts +2 -7
  471. package/dist/lib/models/dataprotection/v4/config/LocationReference.js +142 -181
  472. package/dist/lib/models/dataprotection/v4/config/NutanixObjectsBucket.d.ts +2 -7
  473. package/dist/lib/models/dataprotection/v4/config/NutanixObjectsBucket.js +140 -179
  474. package/dist/lib/models/dataprotection/v4/config/ObjectStorageType.js +7 -9
  475. package/dist/lib/models/dataprotection/v4/config/OperationType.d.ts +19 -0
  476. package/dist/lib/models/dataprotection/v4/config/OperationType.js +251 -0
  477. package/dist/lib/models/dataprotection/v4/config/PhaseSummary.d.ts +33 -0
  478. package/dist/lib/models/dataprotection/v4/config/PhaseSummary.js +274 -0
  479. package/dist/lib/models/dataprotection/v4/config/ProtectedEntityType.js +7 -9
  480. package/dist/lib/models/dataprotection/v4/config/ProtectedResource.d.ts +4 -72
  481. package/dist/lib/models/dataprotection/v4/config/ProtectedResource.js +307 -369
  482. package/dist/lib/models/dataprotection/v4/config/ProtectedResourcePromoteApiResponse.d.ts +2 -43
  483. package/dist/lib/models/dataprotection/v4/config/ProtectedResourcePromoteApiResponse.js +187 -242
  484. package/dist/lib/models/dataprotection/v4/config/ProtectedResourceReplicationStatus.js +8 -10
  485. package/dist/lib/models/dataprotection/v4/config/ProtectedResourceRestoreApiResponse.d.ts +2 -43
  486. package/dist/lib/models/dataprotection/v4/config/ProtectedResourceRestoreApiResponse.js +187 -242
  487. package/dist/lib/models/dataprotection/v4/config/ProtectedResourceRestoreSpec.d.ts +5 -11
  488. package/dist/lib/models/dataprotection/v4/config/ProtectedResourceRestoreSpec.js +169 -210
  489. package/dist/lib/models/dataprotection/v4/config/RecoveryInfo.d.ts +2 -13
  490. package/dist/lib/models/dataprotection/v4/config/RecoveryInfo.js +149 -192
  491. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanActionType.d.ts +19 -0
  492. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanActionType.js +95 -0
  493. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanJob.d.ts +177 -0
  494. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanJob.js +771 -0
  495. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanJobExecutionStatus.d.ts +19 -0
  496. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanJobExecutionStatus.js +107 -0
  497. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanJobExecutionStep.d.ts +132 -0
  498. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanJobExecutionStep.js +624 -0
  499. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanJobExecutionStepProjection.d.ts +10 -0
  500. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanJobExecutionStepProjection.js +129 -0
  501. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanJobPhaseType.d.ts +19 -0
  502. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanJobPhaseType.js +89 -0
  503. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanJobProjection.d.ts +10 -0
  504. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanJobProjection.js +128 -0
  505. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanValidationError.d.ts +32 -0
  506. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanValidationError.js +322 -0
  507. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanValidationErrorProjection.d.ts +10 -0
  508. package/dist/lib/models/dataprotection/v4/config/RecoveryPlanValidationErrorProjection.js +126 -0
  509. package/dist/lib/models/dataprotection/v4/config/RecoveryPoint.d.ts +23 -101
  510. package/dist/lib/models/dataprotection/v4/config/RecoveryPoint.js +337 -348
  511. package/dist/lib/models/dataprotection/v4/config/RecoveryPointProjection.d.ts +1 -1
  512. package/dist/lib/models/dataprotection/v4/config/RecoveryPointProjection.js +75 -103
  513. package/dist/lib/models/dataprotection/v4/config/RecoveryPointReplicateApiResponse.d.ts +2 -43
  514. package/dist/lib/models/dataprotection/v4/config/RecoveryPointReplicateApiResponse.js +187 -242
  515. package/dist/lib/models/dataprotection/v4/config/RecoveryPointReplicationSpec.d.ts +5 -11
  516. package/dist/lib/models/dataprotection/v4/config/RecoveryPointReplicationSpec.js +172 -213
  517. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRepository.d.ts +1 -18
  518. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRepository.js +196 -246
  519. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRepositoryProjection.d.ts +1 -1
  520. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRepositoryProjection.js +73 -102
  521. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRestorationSpec.d.ts +19 -33
  522. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRestorationSpec.js +259 -273
  523. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRestoreApiResponse.d.ts +2 -43
  524. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRestoreApiResponse.js +187 -242
  525. package/dist/lib/models/dataprotection/v4/config/RecycleBinEntry.d.ts +77 -0
  526. package/dist/lib/models/dataprotection/v4/config/RecycleBinEntry.js +405 -0
  527. package/dist/lib/models/dataprotection/v4/config/RecycleBinVm.d.ts +44 -0
  528. package/dist/lib/models/dataprotection/v4/config/RecycleBinVm.js +352 -0
  529. package/dist/lib/models/dataprotection/v4/config/RecycleBinVmProjection.d.ts +10 -0
  530. package/dist/lib/models/dataprotection/v4/config/RecycleBinVmProjection.js +124 -0
  531. package/dist/lib/models/dataprotection/v4/config/RecycleBinVolumeGroup.d.ts +44 -0
  532. package/dist/lib/models/dataprotection/v4/config/RecycleBinVolumeGroup.js +352 -0
  533. package/dist/lib/models/dataprotection/v4/config/RecycleBinVolumeGroupProjection.d.ts +10 -0
  534. package/dist/lib/models/dataprotection/v4/config/RecycleBinVolumeGroupProjection.js +124 -0
  535. package/dist/lib/models/dataprotection/v4/config/ReplicationState.d.ts +2 -16
  536. package/dist/lib/models/dataprotection/v4/config/ReplicationState.js +221 -266
  537. package/dist/lib/models/dataprotection/v4/config/RestorableTimeRange.d.ts +2 -8
  538. package/dist/lib/models/dataprotection/v4/config/RestorableTimeRange.js +166 -207
  539. package/dist/lib/models/dataprotection/v4/config/RootCauseAnalysis.d.ts +69 -0
  540. package/dist/lib/models/dataprotection/v4/config/RootCauseAnalysis.js +329 -0
  541. package/dist/lib/models/dataprotection/v4/config/Severity.d.ts +19 -0
  542. package/dist/lib/models/dataprotection/v4/config/Severity.js +83 -0
  543. package/dist/lib/models/dataprotection/v4/config/SiteProtectionInfo.d.ts +2 -26
  544. package/dist/lib/models/dataprotection/v4/config/SiteProtectionInfo.js +185 -228
  545. package/dist/lib/models/dataprotection/v4/config/SiteReference.d.ts +2 -8
  546. package/dist/lib/models/dataprotection/v4/config/SiteReference.js +171 -212
  547. package/dist/lib/models/dataprotection/v4/config/StageSummary.d.ts +22 -0
  548. package/dist/lib/models/dataprotection/v4/config/StageSummary.js +230 -0
  549. package/dist/lib/models/dataprotection/v4/config/Summary.d.ts +59 -0
  550. package/dist/lib/models/dataprotection/v4/config/Summary.js +277 -0
  551. package/dist/lib/models/dataprotection/v4/config/SynchronousReplicationRole.js +8 -10
  552. package/dist/lib/models/dataprotection/v4/config/UpdateRecoveryPointExpirationTimeApiResponse.d.ts +2 -43
  553. package/dist/lib/models/dataprotection/v4/config/UpdateRecoveryPointExpirationTimeApiResponse.js +187 -242
  554. package/dist/lib/models/dataprotection/v4/config/VmRecoveryPoint.d.ts +1 -33
  555. package/dist/lib/models/dataprotection/v4/config/VmRecoveryPoint.js +183 -206
  556. package/dist/lib/models/dataprotection/v4/config/VmRecoveryPointRestoreOverride.d.ts +8 -15
  557. package/dist/lib/models/dataprotection/v4/config/VmRecoveryPointRestoreOverride.js +211 -258
  558. package/dist/lib/models/dataprotection/v4/config/VolumeGroupOverrideSpec.d.ts +2 -7
  559. package/dist/lib/models/dataprotection/v4/config/VolumeGroupOverrideSpec.js +143 -182
  560. package/dist/lib/models/dataprotection/v4/config/VolumeGroupRecoveryPoint.d.ts +18 -32
  561. package/dist/lib/models/dataprotection/v4/config/VolumeGroupRecoveryPoint.js +283 -306
  562. package/dist/lib/models/dataprotection/v4/config/VolumeGroupRecoveryPointRestoreOverride.d.ts +2 -13
  563. package/dist/lib/models/dataprotection/v4/config/VolumeGroupRecoveryPointRestoreOverride.js +166 -207
  564. package/dist/lib/models/dataprotection/v4/config/VolumeGroupSyncContext.d.ts +1 -29
  565. package/dist/lib/models/dataprotection/v4/config/VolumeGroupSyncContext.js +148 -192
  566. package/dist/lib/models/dataprotection/v4/config/Witness.d.ts +1 -34
  567. package/dist/lib/models/dataprotection/v4/config/Witness.js +226 -278
  568. package/dist/lib/models/dataprotection/v4/config/WitnessAvailabilityStatus.js +7 -9
  569. package/dist/lib/models/dataprotection/v4/content/BaseRecoveryPointSpec.d.ts +2 -8
  570. package/dist/lib/models/dataprotection/v4/content/BaseRecoveryPointSpec.js +171 -212
  571. package/dist/lib/models/dataprotection/v4/content/ChangedRegion.d.ts +2 -9
  572. package/dist/lib/models/dataprotection/v4/content/ChangedRegion.js +189 -232
  573. package/dist/lib/models/dataprotection/v4/content/ChangedVmRegionsApiResponse.d.ts +2 -43
  574. package/dist/lib/models/dataprotection/v4/content/ChangedVmRegionsApiResponse.js +209 -264
  575. package/dist/lib/models/dataprotection/v4/content/ChangedVolumeGroupRegionsApiResponse.d.ts +2 -43
  576. package/dist/lib/models/dataprotection/v4/content/ChangedVolumeGroupRegionsApiResponse.js +209 -264
  577. package/dist/lib/models/dataprotection/v4/content/ClusterDiscoverOperation.js +9 -11
  578. package/dist/lib/models/dataprotection/v4/content/ClusterDiscoverSpec.d.ts +2 -8
  579. package/dist/lib/models/dataprotection/v4/content/ClusterDiscoverSpec.js +179 -224
  580. package/dist/lib/models/dataprotection/v4/content/ComputeChangedRegionsClusterDiscoverSpec.d.ts +3 -9
  581. package/dist/lib/models/dataprotection/v4/content/ComputeChangedRegionsClusterDiscoverSpec.js +197 -246
  582. package/dist/lib/models/dataprotection/v4/content/DiskRecoveryPointReference.d.ts +2 -8
  583. package/dist/lib/models/dataprotection/v4/content/DiskRecoveryPointReference.js +172 -213
  584. package/dist/lib/models/dataprotection/v4/content/FileWrapper.d.ts +36 -0
  585. package/dist/lib/models/dataprotection/v4/content/FileWrapper.js +200 -0
  586. package/dist/lib/models/dataprotection/v4/content/GetVssMetadataApiResponse.d.ts +8 -48
  587. package/dist/lib/models/dataprotection/v4/content/GetVssMetadataApiResponse.js +188 -242
  588. package/dist/lib/models/dataprotection/v4/content/GetVssMetadataClusterDiscoverSpec.d.ts +3 -8
  589. package/dist/lib/models/dataprotection/v4/content/GetVssMetadataClusterDiscoverSpec.js +143 -182
  590. package/dist/lib/models/dataprotection/v4/content/RegionType.js +7 -9
  591. package/dist/lib/models/dataprotection/v4/content/VmDiskRecoveryPointClusterDiscoverSpec.d.ts +1 -9
  592. package/dist/lib/models/dataprotection/v4/content/VmDiskRecoveryPointClusterDiscoverSpec.js +130 -169
  593. package/dist/lib/models/dataprotection/v4/content/VmDiskRecoveryPointReference.d.ts +1 -9
  594. package/dist/lib/models/dataprotection/v4/content/VmDiskRecoveryPointReference.js +130 -169
  595. package/dist/lib/models/dataprotection/v4/content/VmRecoveryPointChangedRegionsComputeSpec.d.ts +4 -15
  596. package/dist/lib/models/dataprotection/v4/content/VmRecoveryPointChangedRegionsComputeSpec.js +190 -231
  597. package/dist/lib/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointClusterDiscoverSpec.d.ts +1 -9
  598. package/dist/lib/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointClusterDiscoverSpec.js +130 -169
  599. package/dist/lib/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointReference.d.ts +1 -9
  600. package/dist/lib/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointReference.js +131 -170
  601. package/dist/lib/models/dataprotection/v4/content/VolumeGroupRecoveryPointChangedRegionsComputeSpec.d.ts +4 -15
  602. package/dist/lib/models/dataprotection/v4/content/VolumeGroupRecoveryPointChangedRegionsComputeSpec.js +190 -231
  603. package/dist/lib/models/dataprotection/v4/error/AppMessage.d.ts +2 -12
  604. package/dist/lib/models/dataprotection/v4/error/AppMessage.js +264 -313
  605. package/dist/lib/models/dataprotection/v4/error/ErrorResponse.d.ts +2 -7
  606. package/dist/lib/models/dataprotection/v4/error/ErrorResponse.js +190 -222
  607. package/dist/lib/models/dataprotection/v4/error/SchemaValidationError.d.ts +2 -18
  608. package/dist/lib/models/dataprotection/v4/error/SchemaValidationError.js +249 -300
  609. package/dist/lib/models/dataprotection/v4/error/SchemaValidationErrorMessage.d.ts +2 -9
  610. package/dist/lib/models/dataprotection/v4/error/SchemaValidationErrorMessage.js +191 -234
  611. package/dist/lib/models/dataprotection/v4/operations/BaseRecoveryPlanActionSpec.d.ts +73 -0
  612. package/dist/lib/models/dataprotection/v4/operations/BaseRecoveryPlanActionSpec.js +297 -0
  613. package/dist/lib/models/dataprotection/v4/operations/CleanupRecoveryPlanResourcesApiResponse.d.ts +58 -0
  614. package/dist/lib/models/dataprotection/v4/operations/CleanupRecoveryPlanResourcesApiResponse.js +288 -0
  615. package/dist/lib/models/dataprotection/v4/operations/PlannedFailoverRecoveryPlanApiResponse.d.ts +58 -0
  616. package/dist/lib/models/dataprotection/v4/operations/PlannedFailoverRecoveryPlanApiResponse.js +288 -0
  617. package/dist/lib/models/dataprotection/v4/operations/PlannedFailoverSpec.d.ts +37 -0
  618. package/dist/lib/models/dataprotection/v4/operations/PlannedFailoverSpec.js +274 -0
  619. package/dist/lib/models/dataprotection/v4/operations/TestFailoverRecoveryPlanApiResponse.d.ts +58 -0
  620. package/dist/lib/models/dataprotection/v4/operations/TestFailoverRecoveryPlanApiResponse.js +288 -0
  621. package/dist/lib/models/dataprotection/v4/operations/TestFailoverSpec.d.ts +37 -0
  622. package/dist/lib/models/dataprotection/v4/operations/TestFailoverSpec.js +274 -0
  623. package/dist/lib/models/dataprotection/v4/operations/UnplannedFailoverRecoveryPlanApiResponse.d.ts +58 -0
  624. package/dist/lib/models/dataprotection/v4/operations/UnplannedFailoverRecoveryPlanApiResponse.js +288 -0
  625. package/dist/lib/models/dataprotection/v4/operations/UnplannedFailoverSpec.d.ts +48 -0
  626. package/dist/lib/models/dataprotection/v4/operations/UnplannedFailoverSpec.js +311 -0
  627. package/dist/lib/models/dataprotection/v4/operations/ValidateRecoveryPlanApiResponse.d.ts +58 -0
  628. package/dist/lib/models/dataprotection/v4/operations/ValidateRecoveryPlanApiResponse.js +288 -0
  629. package/dist/lib/models/dataprotection/v4/operations/ValidateSpec.d.ts +24 -0
  630. package/dist/lib/models/dataprotection/v4/operations/ValidateSpec.js +129 -0
  631. package/dist/lib/models/prism/v4/config/TaskReference.d.ts +2 -7
  632. package/dist/lib/models/prism/v4/config/TaskReference.js +150 -183
  633. package/dist/lib/models/validation/ValidationError.js +26 -42
  634. package/dist/lib/models/validation/ValidationScopes.js +3 -3
  635. package/dist/lib/models/vmm/v4/ahv/config/CategoryReference.d.ts +2 -7
  636. package/dist/lib/models/vmm/v4/ahv/config/CategoryReference.js +142 -181
  637. package/dist/lib/models/vmm/v4/ahv/config/GuestStaticIpSpec.d.ts +57 -0
  638. package/dist/lib/models/vmm/v4/ahv/config/GuestStaticIpSpec.js +277 -0
  639. package/dist/lib/models/vmm/v4/ahv/config/OwnerReference.d.ts +2 -7
  640. package/dist/lib/models/vmm/v4/ahv/config/OwnerReference.js +142 -181
  641. package/dist/lib/models/vmm/v4/ahv/config/OwnershipInfo.d.ts +2 -12
  642. package/dist/lib/models/vmm/v4/ahv/config/OwnershipInfo.js +138 -177
  643. package/dist/lib/models/vmm/v4/ahv/config/SubnetReference.d.ts +2 -7
  644. package/dist/lib/models/vmm/v4/ahv/config/SubnetReference.js +142 -181
  645. package/dist/lib/models/vmm/v4/ahv/config/VmConfigOverrideSpecification.d.ts +12 -39
  646. package/dist/lib/models/vmm/v4/ahv/config/VmConfigOverrideSpecification.js +283 -300
  647. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreGuestNicInfoOverrideSpec.d.ts +48 -0
  648. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreGuestNicInfoOverrideSpec.js +245 -0
  649. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreGuestToolsSpecification.d.ts +47 -0
  650. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreGuestToolsSpecification.js +236 -0
  651. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreIpv4ConfigOverrideSpec.d.ts +2 -20
  652. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreIpv4ConfigOverrideSpec.js +173 -218
  653. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreNicConfigOverrideParams.d.ts +12 -9
  654. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreNicConfigOverrideParams.js +252 -269
  655. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreNicConfigSpecification.d.ts +2 -15
  656. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreNicConfigSpecification.js +183 -228
  657. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreVirtualEthernetNicNetworkInfoOverrideSpec.d.ts +2 -31
  658. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreVirtualEthernetNicNetworkInfoOverrideSpec.js +162 -203
  659. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreVirtualEthernetNicOverrideSpec.d.ts +2 -7
  660. package/dist/lib/models/vmm/v4/ahv/config/VmRestoreVirtualEthernetNicOverrideSpec.js +142 -181
  661. package/dist/lib/utils/ValidationUtils.js +39 -69
  662. package/package.json +1 -1
@@ -0,0 +1,771 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _TenantAwareModel = _interopRequireDefault(require("../../../common/v1/config/TenantAwareModel"));
8
+ var _ApiLink = _interopRequireDefault(require("../../../common/v1/response/ApiLink"));
9
+ var _ExternalizableAbstractModel = _interopRequireDefault(require("../../../common/v1/response/ExternalizableAbstractModel"));
10
+ var _FailoverDirection = _interopRequireDefault(require("./FailoverDirection"));
11
+ var _PhaseSummary = _interopRequireDefault(require("./PhaseSummary"));
12
+ var _RecoveryPlanActionType = _interopRequireDefault(require("./RecoveryPlanActionType"));
13
+ var _RecoveryPlanJobExecutionStatus = _interopRequireDefault(require("./RecoveryPlanJobExecutionStatus"));
14
+ var _Summary = _interopRequireDefault(require("./Summary"));
15
+ var _ValidationScopes = _interopRequireDefault(require("../../../validation/ValidationScopes"));
16
+ var _ValidationUtils = _interopRequireDefault(require("../../../../utils/ValidationUtils"));
17
+ var _ValidationError = _interopRequireDefault(require("../../../validation/ValidationError"));
18
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
19
+ function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
20
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
21
+ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); } /*
22
+ * Nutanix Data Protection APIs
23
+ *
24
+ * OpenAPI spec version: 4.3.1
25
+ *
26
+ * NOTE: This class is auto generated by the Open API Dev Platform.
27
+ *
28
+ * Open API Dev Platform Codegen version: 17.5.1.10573-RELEASE
29
+ *
30
+ * Do not edit the class manually.
31
+ *
32
+ */
33
+ /**
34
+ * The RecoveryPlanJob model module.
35
+ * @module Ntnx/RecoveryPlanJob
36
+ * @version 4.3.1
37
+ * @class RecoveryPlanJob
38
+ * @extends ExternalizableAbstractModel
39
+ */
40
+ var _RecoveryPlanJob_brand = /*#__PURE__*/new WeakSet();
41
+ class RecoveryPlanJob extends _ExternalizableAbstractModel.default {
42
+ /**
43
+ * Constructs a new <code>RecoveryPlanJob</code>.
44
+ * A recovery plan job specification describing the recovery plan to be executed, failover directions and type of failover.
45
+ * @alias module:Ntnx/RecoveryPlanJob
46
+ * @extends module:Ntnx/ExternalizableAbstractModel
47
+ */
48
+ constructor() {
49
+ super();
50
+ /*
51
+ * toJson method for a map type which supports map with primitive keys and values of object types
52
+ * @param {Object} obj
53
+ * @returns {Object|Map} Returns a new transofrmed Map by calling toJson on the values if applicable.
54
+ * Otherwise, just returns the input object.
55
+ */
56
+ _classPrivateMethodInitSpec(this, _RecoveryPlanJob_brand);
57
+ this.$objectType = "dataprotection.v4.config.RecoveryPlanJob";
58
+ /** @type {object<string, any>} */
59
+ this.$reserved = {
60
+ '$fv': "v4.r3"
61
+ };
62
+ /** @type {object<string, any>} */
63
+ this.$unknownFields = {};
64
+ }
65
+
66
+ /**
67
+ * Constructs a <code>RecoveryPlanJob</code> from a plain JavaScript object, optionally creating a new instance.
68
+ * Copies all relevant properties from <code>data</code> to <code>obj</code> if supplied or a new instance if not.
69
+ * @param {Object} data The plain JavaScript object bearing properties of interest.
70
+ * @param {module:Ntnx/RecoveryPlanJob} obj Optional instance to populate.
71
+ * @param callFromChild {Boolean} Flag to recognise calling instance
72
+ * @return {module:Ntnx/RecoveryPlanJob} The populated <code>RecoveryPlanJob</code> instance.
73
+ */
74
+ static constructFromObject(data, obj = null, callFromChild = false) {
75
+ let items, item, i, itemArr, discriminator;
76
+ if (data) {
77
+ obj = obj || new RecoveryPlanJob();
78
+ _ExternalizableAbstractModel.default.constructFromObject(data, obj, true);
79
+ if (data.hasOwnProperty('name') && data.name !== null && data.name !== undefined) {
80
+ obj.setName(data['name']);
81
+ }
82
+ if (data.hasOwnProperty('recoveryPlanExtId') && data.recoveryPlanExtId !== null && data.recoveryPlanExtId !== undefined) {
83
+ obj.setRecoveryPlanExtId(data['recoveryPlanExtId']);
84
+ }
85
+ if (data.hasOwnProperty('failoverDirections') && data.failoverDirections !== null && data.failoverDirections !== undefined) {
86
+ itemArr = [];
87
+ items = data.failoverDirections;
88
+ for (i = 0; i < items.length; i++) {
89
+ item = _FailoverDirection.default.constructFromObject(items[i], undefined);
90
+ itemArr.push(item);
91
+ }
92
+ obj.setFailoverDirections(itemArr);
93
+ }
94
+ if (data.hasOwnProperty('actionType') && data.actionType !== null && data.actionType !== undefined) {
95
+ obj.setActionType(_RecoveryPlanActionType.default.constructFromObject(data['actionType']));
96
+ }
97
+ if (data.hasOwnProperty('recoveryReferenceTime') && data.recoveryReferenceTime !== null && data.recoveryReferenceTime !== undefined) {
98
+ obj.setRecoveryReferenceTime(data['recoveryReferenceTime']);
99
+ }
100
+ if (data.hasOwnProperty('isLiveMigrateVMs') && data.isLiveMigrateVMs !== null && data.isLiveMigrateVMs !== undefined) {
101
+ obj.setIsLiveMigrateVMs(data['isLiveMigrateVMs']);
102
+ }
103
+ if (data.hasOwnProperty('startTime') && data.startTime !== null && data.startTime !== undefined) {
104
+ obj.setStartTime(data['startTime']);
105
+ }
106
+ if (data.hasOwnProperty('endTime') && data.endTime !== null && data.endTime !== undefined) {
107
+ obj.setEndTime(data['endTime']);
108
+ }
109
+ if (data.hasOwnProperty('status') && data.status !== null && data.status !== undefined) {
110
+ obj.setStatus(_RecoveryPlanJobExecutionStatus.default.constructFromObject(data['status']));
111
+ }
112
+ if (data.hasOwnProperty('percentageComplete') && data.percentageComplete !== null && data.percentageComplete !== undefined) {
113
+ obj.setPercentageComplete(data['percentageComplete']);
114
+ }
115
+ if (data.hasOwnProperty('validationStatus') && data.validationStatus !== null && data.validationStatus !== undefined) {
116
+ obj.setValidationStatus(_Summary.default.constructFromObject(data['validationStatus']));
117
+ }
118
+ if (data.hasOwnProperty('executionPhases') && data.executionPhases !== null && data.executionPhases !== undefined) {
119
+ itemArr = [];
120
+ items = data.executionPhases;
121
+ for (i = 0; i < items.length; i++) {
122
+ item = _PhaseSummary.default.constructFromObject(items[i], undefined);
123
+ itemArr.push(item);
124
+ }
125
+ obj.setExecutionPhases(itemArr);
126
+ }
127
+ if (data.hasOwnProperty('isInitiatedByWitness') && data.isInitiatedByWitness !== null && data.isInitiatedByWitness !== undefined) {
128
+ obj.setIsInitiatedByWitness(data['isInitiatedByWitness']);
129
+ }
130
+ if (data.hasOwnProperty('ownerExtId') && data.ownerExtId !== null && data.ownerExtId !== undefined) {
131
+ obj.setOwnerExtId(data['ownerExtId']);
132
+ }
133
+ if (data.hasOwnProperty('isInstantRestore') && data.isInstantRestore !== null && data.isInstantRestore !== undefined) {
134
+ obj.setIsInstantRestore(data['isInstantRestore']);
135
+ }
136
+ if (!callFromChild) {
137
+ obj.$unknownFields = {
138
+ ...data.$unknownFields
139
+ };
140
+ for (const property in data) {
141
+ // Check if the `property` is not already present in `obj` keys, either in snake_case or camelCase,
142
+ // as the model's fields are generated in camelCase, but the server might return snake_case (e.g., due to standards like OIDC).
143
+ // Also, ensure the `property` does not start with '$' and end with 'ItemDiscriminator'.
144
+ // If all conditions are true, add the `property` from `data` to `obj.$unknownFields` as an unknown field.
145
+ if (!Object.keys(obj).includes(property) && !Object.keys(obj).includes(this.snakeToCamel(property)) && !(property[0] === "$" && property.endsWith("ItemDiscriminator"))) {
146
+ obj.$unknownFields[property] = data[property];
147
+ }
148
+ }
149
+ }
150
+ }
151
+ return obj;
152
+ }
153
+
154
+ /**
155
+ * Converts a given snake_case string to camelCase.
156
+ * @param {string} snakeStr - The input string in snake_case format.
157
+ * @returns {string} - The converted string in camelCase format.
158
+ */
159
+ static snakeToCamel(snakeStr) {
160
+ return snakeStr.replace(/(_\w)/g, match => match[1].toUpperCase());
161
+ }
162
+
163
+ /**
164
+ * Returns Name of the Recovery Plan Job.
165
+ * @return {string}
166
+ */
167
+ getName() {
168
+ return this.name;
169
+ }
170
+
171
+ /**
172
+ * Sets Name of the Recovery Plan Job.
173
+ * @param {string} name Name of the Recovery Plan Job.
174
+ */
175
+ setName(name) {
176
+ this.name = name;
177
+ }
178
+
179
+ /**
180
+ * Returns The external identifier of the recovery plan.
181
+ * @return {string}
182
+ */
183
+ getRecoveryPlanExtId() {
184
+ return this.recoveryPlanExtId;
185
+ }
186
+
187
+ /**
188
+ * Sets The external identifier of the recovery plan.
189
+ * @param {string} recoveryPlanExtId The external identifier of the recovery plan.
190
+ */
191
+ setRecoveryPlanExtId(recoveryPlanExtId) {
192
+ this.recoveryPlanExtId = recoveryPlanExtId;
193
+ }
194
+
195
+ /**
196
+ * Returns List of failover directions from source disaster recovery location to target disaster recovery location.<br> For example, when failing over virtual machines (VMs) and volume groups from clusters C1, C2 registered to domain manager PC1 on source location to cluster C3 registered to domain manager PC1 on target location, there must be one direction between source location (PC1, C1) to target location (PC1, C3) and another mapping between source location (PC1, C2) and target location (PC1, C3).<br> Domain manager is a required parameter while describing disaster recovery location in failover directions.<br> When creating a Recovery Plan Job across two domain managers, the source clusters are not required.<br> Failover direction contains clusters only when failing over between primary and secondary clusters registered to the same domain manager.
197
+ * @return {FailoverDirection[]}
198
+ */
199
+ getFailoverDirections() {
200
+ return this.failoverDirections;
201
+ }
202
+
203
+ /**
204
+ * Sets List of failover directions from source disaster recovery location to target disaster recovery location.<br> For example, when failing over virtual machines (VMs) and volume groups from clusters C1, C2 registered to domain manager PC1 on source location to cluster C3 registered to domain manager PC1 on target location, there must be one direction between source location (PC1, C1) to target location (PC1, C3) and another mapping between source location (PC1, C2) and target location (PC1, C3).<br> Domain manager is a required parameter while describing disaster recovery location in failover directions.<br> When creating a Recovery Plan Job across two domain managers, the source clusters are not required.<br> Failover direction contains clusters only when failing over between primary and secondary clusters registered to the same domain manager.
205
+ * @param {FailoverDirection[]} failoverDirections List of failover directions from source disaster recovery location to target disaster recovery location.<br> For example, when failing over virtual machines (VMs) and volume groups from clusters C1, C2 registered to domain manager PC1 on source location to cluster C3 registered to domain manager PC1 on target location, there must be one direction between source location (PC1, C1) to target location (PC1, C3) and another mapping between source location (PC1, C2) and target location (PC1, C3).<br> Domain manager is a required parameter while describing disaster recovery location in failover directions.<br> When creating a Recovery Plan Job across two domain managers, the source clusters are not required.<br> Failover direction contains clusters only when failing over between primary and secondary clusters registered to the same domain manager.
206
+ */
207
+ setFailoverDirections(failoverDirections) {
208
+ this.failoverDirections = failoverDirections;
209
+ }
210
+
211
+ /**
212
+ * @return {RecoveryPlanActionType}
213
+ */
214
+ getActionType() {
215
+ return this.actionType;
216
+ }
217
+
218
+ /**
219
+ * @param {RecoveryPlanActionType} actionType
220
+ */
221
+ setActionType(actionType) {
222
+ this.actionType = actionType;
223
+ }
224
+
225
+ /**
226
+ * Returns Point in time from which to restore the entities during an `UNPLANNED_FAILOVER` operation. Only ISO-8601 formatted timestamps are supported. For example, `2023-01-02T03:04:05Z`.<br> When specified, virtual machines (VMs) and volume groups are restored from the latest recovery points created on or before the specified timestamp. If not specified, virtual machines (VMs) and volume groups are restored from the latest recovery points created on or before the start of the Recovery plan job.
227
+ * @return {Date}
228
+ */
229
+ getRecoveryReferenceTime() {
230
+ return this.recoveryReferenceTime;
231
+ }
232
+
233
+ /**
234
+ * Sets Point in time from which to restore the entities during an `UNPLANNED_FAILOVER` operation. Only ISO-8601 formatted timestamps are supported. For example, `2023-01-02T03:04:05Z`.<br> When specified, virtual machines (VMs) and volume groups are restored from the latest recovery points created on or before the specified timestamp. If not specified, virtual machines (VMs) and volume groups are restored from the latest recovery points created on or before the start of the Recovery plan job.
235
+ * @param {Date} recoveryReferenceTime Point in time from which to restore the entities during an `UNPLANNED_FAILOVER` operation. Only ISO-8601 formatted timestamps are supported. For example, `2023-01-02T03:04:05Z`.<br> When specified, virtual machines (VMs) and volume groups are restored from the latest recovery points created on or before the specified timestamp. If not specified, virtual machines (VMs) and volume groups are restored from the latest recovery points created on or before the start of the Recovery plan job.
236
+ */
237
+ setRecoveryReferenceTime(recoveryReferenceTime) {
238
+ this.recoveryReferenceTime = recoveryReferenceTime;
239
+ }
240
+
241
+ /**
242
+ * Returns Indicates whether to perform a live migration of virtual machines (VMs) during a `PLANNED_FAILOVER` operation. When not specified or specified as false, the migration is performed for all virtual machines (VMs) in offline mode. When specified as true, the migration is performed for all virtual machines (VMs) in a running state.
243
+ * @return {boolean}
244
+ */
245
+ getIsLiveMigrateVMs() {
246
+ return this.isLiveMigrateVMs;
247
+ }
248
+
249
+ /**
250
+ * Sets Indicates whether to perform a live migration of virtual machines (VMs) during a `PLANNED_FAILOVER` operation. When not specified or specified as false, the migration is performed for all virtual machines (VMs) in offline mode. When specified as true, the migration is performed for all virtual machines (VMs) in a running state.
251
+ * @param {boolean} isLiveMigrateVMs Indicates whether to perform a live migration of virtual machines (VMs) during a `PLANNED_FAILOVER` operation. When not specified or specified as false, the migration is performed for all virtual machines (VMs) in offline mode. When specified as true, the migration is performed for all virtual machines (VMs) in a running state.
252
+ */
253
+ setIsLiveMigrateVMs(isLiveMigrateVMs) {
254
+ this.isLiveMigrateVMs = isLiveMigrateVMs;
255
+ }
256
+
257
+ /**
258
+ * Returns Recovery plan job start time in ISO-8601 format.
259
+ * @return {Date}
260
+ */
261
+ getStartTime() {
262
+ return this.startTime;
263
+ }
264
+
265
+ /**
266
+ * Sets Recovery plan job start time in ISO-8601 format.
267
+ * @param {Date} startTime Recovery plan job start time in ISO-8601 format.
268
+ */
269
+ setStartTime(startTime) {
270
+ this.startTime = startTime;
271
+ }
272
+
273
+ /**
274
+ * Returns Recovery plan job completion time in ISO-8601 format.
275
+ * @return {Date}
276
+ */
277
+ getEndTime() {
278
+ return this.endTime;
279
+ }
280
+
281
+ /**
282
+ * Sets Recovery plan job completion time in ISO-8601 format.
283
+ * @param {Date} endTime Recovery plan job completion time in ISO-8601 format.
284
+ */
285
+ setEndTime(endTime) {
286
+ this.endTime = endTime;
287
+ }
288
+
289
+ /**
290
+ * @return {RecoveryPlanJobExecutionStatus}
291
+ */
292
+ getStatus() {
293
+ return this.status;
294
+ }
295
+
296
+ /**
297
+ * @param {RecoveryPlanJobExecutionStatus} status
298
+ */
299
+ setStatus(status) {
300
+ this.status = status;
301
+ }
302
+
303
+ /**
304
+ * Returns Percentage complete for the recovery plan job.
305
+ * minimum: 0
306
+ * maximum: 100
307
+ * @return {Number}
308
+ */
309
+ getPercentageComplete() {
310
+ return this.percentageComplete;
311
+ }
312
+
313
+ /**
314
+ * Sets Percentage complete for the recovery plan job.
315
+ * @param {Number} percentageComplete Percentage complete for the recovery plan job.
316
+ */
317
+ setPercentageComplete(percentageComplete) {
318
+ this.percentageComplete = percentageComplete;
319
+ }
320
+
321
+ /**
322
+ * @return {Summary}
323
+ */
324
+ getValidationStatus() {
325
+ return this.validationStatus;
326
+ }
327
+
328
+ /**
329
+ * @param {Summary} validationStatus
330
+ */
331
+ setValidationStatus(validationStatus) {
332
+ this.validationStatus = validationStatus;
333
+ }
334
+
335
+ /**
336
+ * Returns Summary of all the phases involved in the recovery plan job execution:<br> - Pre-processing: Actions carried out prior to the recovery of entities, such as creating a network or synchronizing recovery points as part of a `PLANNED_FAILOVER` operation.<br> - Entity recovery: Steps performed for the recovery of the entities for the recovery plan job.<br> - Post-processing: Actions taken after the recovery of entities, such as creating a Consistency group or auditing the recovery plan job information.
337
+ * @return {PhaseSummary[]}
338
+ */
339
+ getExecutionPhases() {
340
+ return this.executionPhases;
341
+ }
342
+
343
+ /**
344
+ * Sets Summary of all the phases involved in the recovery plan job execution:<br> - Pre-processing: Actions carried out prior to the recovery of entities, such as creating a network or synchronizing recovery points as part of a `PLANNED_FAILOVER` operation.<br> - Entity recovery: Steps performed for the recovery of the entities for the recovery plan job.<br> - Post-processing: Actions taken after the recovery of entities, such as creating a Consistency group or auditing the recovery plan job information.
345
+ * @param {PhaseSummary[]} executionPhases Summary of all the phases involved in the recovery plan job execution:<br> - Pre-processing: Actions carried out prior to the recovery of entities, such as creating a network or synchronizing recovery points as part of a `PLANNED_FAILOVER` operation.<br> - Entity recovery: Steps performed for the recovery of the entities for the recovery plan job.<br> - Post-processing: Actions taken after the recovery of entities, such as creating a Consistency group or auditing the recovery plan job information.
346
+ */
347
+ setExecutionPhases(executionPhases) {
348
+ this.executionPhases = executionPhases;
349
+ }
350
+
351
+ /**
352
+ * Returns Indicates whether the recovery plan job was initiated by the witness or not.
353
+ * @return {boolean}
354
+ */
355
+ getIsInitiatedByWitness() {
356
+ return this.isInitiatedByWitness;
357
+ }
358
+
359
+ /**
360
+ * Sets Indicates whether the recovery plan job was initiated by the witness or not.
361
+ * @param {boolean} isInitiatedByWitness Indicates whether the recovery plan job was initiated by the witness or not.
362
+ */
363
+ setIsInitiatedByWitness(isInitiatedByWitness) {
364
+ this.isInitiatedByWitness = isInitiatedByWitness;
365
+ }
366
+
367
+ /**
368
+ * Returns External identifier of the owner of the recovery plan job.
369
+ * @return {string}
370
+ */
371
+ getOwnerExtId() {
372
+ return this.ownerExtId;
373
+ }
374
+
375
+ /**
376
+ * Sets External identifier of the owner of the recovery plan job.
377
+ * @param {string} ownerExtId External identifier of the owner of the recovery plan job.
378
+ */
379
+ setOwnerExtId(ownerExtId) {
380
+ this.ownerExtId = ownerExtId;
381
+ }
382
+
383
+ /**
384
+ * Returns Indicates whether to enable Instant Restore. This feature allows a workload, such as a virtual machine (VM), to be quickly restored and powered on directly from an external backup repository on a Nutanix AOS cluster, without waiting for a full data transfer.
385
+ * @return {boolean}
386
+ */
387
+ getIsInstantRestore() {
388
+ return this.isInstantRestore;
389
+ }
390
+
391
+ /**
392
+ * Sets Indicates whether to enable Instant Restore. This feature allows a workload, such as a virtual machine (VM), to be quickly restored and powered on directly from an external backup repository on a Nutanix AOS cluster, without waiting for a full data transfer.
393
+ * @param {boolean} isInstantRestore Indicates whether to enable Instant Restore. This feature allows a workload, such as a virtual machine (VM), to be quickly restored and powered on directly from an external backup repository on a Nutanix AOS cluster, without waiting for a full data transfer.
394
+ */
395
+ setIsInstantRestore(isInstantRestore) {
396
+ this.isInstantRestore = isInstantRestore;
397
+ }
398
+ toJson(forMutation) {
399
+ if (forMutation === false) {
400
+ return {
401
+ ...(typeof this.getName() !== 'undefined' && this.getName() !== null ? {
402
+ 'name': this.getName()
403
+ } : {}),
404
+ ...(typeof this.getRecoveryPlanExtId() !== 'undefined' && this.getRecoveryPlanExtId() !== null ? {
405
+ 'recoveryPlanExtId': this.getRecoveryPlanExtId()
406
+ } : {}),
407
+ ...(typeof this.getFailoverDirections() !== 'undefined' && this.getFailoverDirections() !== null ? {
408
+ 'failoverDirections': this.getFailoverDirections().map(item => item.toJson(false))
409
+ } : {}),
410
+ ...(typeof this.getActionType() !== 'undefined' && this.getActionType() !== null ? {
411
+ 'actionType': this.getActionType()
412
+ } : {}),
413
+ ...(typeof this.getRecoveryReferenceTime() !== 'undefined' && this.getRecoveryReferenceTime() !== null ? {
414
+ 'recoveryReferenceTime': _assertClassBrand(_RecoveryPlanJob_brand, this, _handleDateType).call(this, this.getRecoveryReferenceTime(), false)
415
+ } : {}),
416
+ ...(typeof this.getIsLiveMigrateVMs() !== 'undefined' && this.getIsLiveMigrateVMs() !== null ? {
417
+ 'isLiveMigrateVMs': this.getIsLiveMigrateVMs()
418
+ } : {}),
419
+ ...(typeof this.getStartTime() !== 'undefined' && this.getStartTime() !== null ? {
420
+ 'startTime': _assertClassBrand(_RecoveryPlanJob_brand, this, _handleDateType).call(this, this.getStartTime(), false)
421
+ } : {}),
422
+ ...(typeof this.getEndTime() !== 'undefined' && this.getEndTime() !== null ? {
423
+ 'endTime': _assertClassBrand(_RecoveryPlanJob_brand, this, _handleDateType).call(this, this.getEndTime(), false)
424
+ } : {}),
425
+ ...(typeof this.getStatus() !== 'undefined' && this.getStatus() !== null ? {
426
+ 'status': this.getStatus()
427
+ } : {}),
428
+ ...(typeof this.getPercentageComplete() !== 'undefined' && this.getPercentageComplete() !== null ? {
429
+ 'percentageComplete': this.getPercentageComplete()
430
+ } : {}),
431
+ ...(typeof this.getValidationStatus() !== 'undefined' && this.getValidationStatus() !== null ? {
432
+ 'validationStatus': this.getValidationStatus().toJson(false)
433
+ } : {}),
434
+ ...(typeof this.getExecutionPhases() !== 'undefined' && this.getExecutionPhases() !== null ? {
435
+ 'executionPhases': this.getExecutionPhases().map(item => item.toJson(false))
436
+ } : {}),
437
+ ...(typeof this.getIsInitiatedByWitness() !== 'undefined' && this.getIsInitiatedByWitness() !== null ? {
438
+ 'isInitiatedByWitness': this.getIsInitiatedByWitness()
439
+ } : {}),
440
+ ...(typeof this.getOwnerExtId() !== 'undefined' && this.getOwnerExtId() !== null ? {
441
+ 'ownerExtId': this.getOwnerExtId()
442
+ } : {}),
443
+ ...(typeof this.getIsInstantRestore() !== 'undefined' && this.getIsInstantRestore() !== null ? {
444
+ 'isInstantRestore': this.getIsInstantRestore()
445
+ } : {}),
446
+ ...(typeof this.getExtId() !== 'undefined' && this.getExtId() !== null ? {
447
+ 'extId': this.getExtId()
448
+ } : {}),
449
+ ...(typeof this.getLinks() !== 'undefined' && this.getLinks() !== null ? {
450
+ 'links': this.getLinks().map(item => item.toJson(false))
451
+ } : {}),
452
+ ...(typeof this.getTenantId() !== 'undefined' && this.getTenantId() !== null ? {
453
+ 'tenantId': this.getTenantId()
454
+ } : {}),
455
+ '$reserved': this.get$Reserved(),
456
+ '$objectType': this.get$ObjectType(),
457
+ ...(typeof this.get$UnknownFields() !== 'undefined' && this.get$UnknownFields() !== null ? this.get$UnknownFields() : {}),
458
+ '$unknownFields': {}
459
+ };
460
+ }
461
+ return {
462
+ ...(typeof this.getName() !== 'undefined' && this.getName() !== null ? {
463
+ 'name': this.getName()
464
+ } : {}),
465
+ ...(typeof this.getRecoveryPlanExtId() !== 'undefined' && this.getRecoveryPlanExtId() !== null ? {
466
+ 'recoveryPlanExtId': this.getRecoveryPlanExtId()
467
+ } : {}),
468
+ ...(typeof this.getFailoverDirections() !== 'undefined' && this.getFailoverDirections() !== null ? {
469
+ 'failoverDirections': this.getFailoverDirections().map(item => item.toJson(false))
470
+ } : {}),
471
+ ...(typeof this.getActionType() !== 'undefined' && this.getActionType() !== null ? {
472
+ 'actionType': this.getActionType()
473
+ } : {}),
474
+ ...(typeof this.getRecoveryReferenceTime() !== 'undefined' && this.getRecoveryReferenceTime() !== null ? {
475
+ 'recoveryReferenceTime': _assertClassBrand(_RecoveryPlanJob_brand, this, _handleDateType).call(this, this.getRecoveryReferenceTime(), false)
476
+ } : {}),
477
+ ...(typeof this.getIsLiveMigrateVMs() !== 'undefined' && this.getIsLiveMigrateVMs() !== null ? {
478
+ 'isLiveMigrateVMs': this.getIsLiveMigrateVMs()
479
+ } : {}),
480
+ ...(typeof this.getStartTime() !== 'undefined' && this.getStartTime() !== null ? {
481
+ 'startTime': _assertClassBrand(_RecoveryPlanJob_brand, this, _handleDateType).call(this, this.getStartTime(), false)
482
+ } : {}),
483
+ ...(typeof this.getEndTime() !== 'undefined' && this.getEndTime() !== null ? {
484
+ 'endTime': _assertClassBrand(_RecoveryPlanJob_brand, this, _handleDateType).call(this, this.getEndTime(), false)
485
+ } : {}),
486
+ ...(typeof this.getStatus() !== 'undefined' && this.getStatus() !== null ? {
487
+ 'status': this.getStatus()
488
+ } : {}),
489
+ ...(typeof this.getPercentageComplete() !== 'undefined' && this.getPercentageComplete() !== null ? {
490
+ 'percentageComplete': this.getPercentageComplete()
491
+ } : {}),
492
+ ...(typeof this.getValidationStatus() !== 'undefined' && this.getValidationStatus() !== null ? {
493
+ 'validationStatus': this.getValidationStatus().toJson(false)
494
+ } : {}),
495
+ ...(typeof this.getExecutionPhases() !== 'undefined' && this.getExecutionPhases() !== null ? {
496
+ 'executionPhases': this.getExecutionPhases().map(item => item.toJson(false))
497
+ } : {}),
498
+ ...(typeof this.getIsInitiatedByWitness() !== 'undefined' && this.getIsInitiatedByWitness() !== null ? {
499
+ 'isInitiatedByWitness': this.getIsInitiatedByWitness()
500
+ } : {}),
501
+ ...(typeof this.getOwnerExtId() !== 'undefined' && this.getOwnerExtId() !== null ? {
502
+ 'ownerExtId': this.getOwnerExtId()
503
+ } : {}),
504
+ '$reserved': this.get$Reserved(),
505
+ '$objectType': this.get$ObjectType(),
506
+ ...(typeof this.get$UnknownFields() !== 'undefined' && this.get$UnknownFields() !== null ? this.get$UnknownFields() : {}),
507
+ '$unknownFields': {}
508
+ };
509
+ }
510
+ validate(scope, properties) {
511
+ let propList = [];
512
+ if (arguments.length === 0 || arguments.length === 1 && arguments[0] instanceof _ValidationScopes.default) {
513
+ //cases validate() and validate(scope)
514
+ propList = [];
515
+ } else if (arguments.length === 1) {
516
+ //case validate(properties)
517
+ propList = arguments[0];
518
+ scope = null;
519
+ } else {
520
+ //case validate(scope, properties)
521
+ propList = arguments[1];
522
+ }
523
+ let res = [];
524
+ let err = null;
525
+ propList.forEach(property => {
526
+ err = this.validateProperty(property, scope);
527
+ if (err) {
528
+ res.push(err);
529
+ }
530
+ });
531
+ return new Promise(function (resolve, reject) {
532
+ if (res.length !== 0) {
533
+ reject(err);
534
+ } else {
535
+ resolve();
536
+ }
537
+ });
538
+ }
539
+ validateProperty(scope, property) {
540
+ if (property === "name") {
541
+ if (typeof this.name === 'undefined' || this.name === null) {
542
+ return new _ValidationError.default("name", "undefined or null");
543
+ }
544
+ if (!_ValidationUtils.default.validateMaxLength(this.name, 256)) {
545
+ return new _ValidationError.default("name", "does not satisfy required maxLength constraint: 256");
546
+ }
547
+ }
548
+ if (property === "recoveryPlanExtId") {
549
+ if (typeof this.recoveryPlanExtId === 'undefined' || this.recoveryPlanExtId === null) {
550
+ return new _ValidationError.default("recoveryPlanExtId", "undefined or null");
551
+ }
552
+ if (!_ValidationUtils.default.validatePattern(this.recoveryPlanExtId, /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/)) {
553
+ return new _ValidationError.default("recoveryPlanExtId", "does not satisfy required pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/");
554
+ }
555
+ }
556
+ if (property === "failoverDirections") {
557
+ if (typeof this.failoverDirections === 'undefined' || this.failoverDirections === null) {
558
+ return new _ValidationError.default("failoverDirections", "undefined or null");
559
+ }
560
+ if (!_ValidationUtils.default.validateMaxItems(this.failoverDirections, 50)) {
561
+ return new _ValidationError.default("failoverDirections", "does not satisfy required maxItems constraint: 50");
562
+ }
563
+ if (!_ValidationUtils.default.validateMinItems(this.failoverDirections, 1)) {
564
+ return new _ValidationError.default("failoverDirections", "does not satisfy required minItems constraint: 1");
565
+ }
566
+ }
567
+ if (property === "actionType") {
568
+ if (typeof this.actionType === 'undefined' || this.actionType === null) {
569
+ return new _ValidationError.default("actionType", "undefined or null");
570
+ }
571
+ }
572
+ if (property === "recoveryReferenceTime") {
573
+ if (typeof this.recoveryReferenceTime === 'undefined' || this.recoveryReferenceTime === null) {
574
+ return new _ValidationError.default("recoveryReferenceTime", "undefined or null");
575
+ }
576
+ }
577
+ if (property === "isLiveMigrateVMs") {
578
+ if (typeof this.isLiveMigrateVMs === 'undefined' || this.isLiveMigrateVMs === null) {
579
+ return new _ValidationError.default("isLiveMigrateVMs", "undefined or null");
580
+ }
581
+ }
582
+ if (property === "startTime") {
583
+ if (typeof this.startTime === 'undefined' || this.startTime === null) {
584
+ return new _ValidationError.default("startTime", "undefined or null");
585
+ }
586
+ }
587
+ if (property === "endTime") {
588
+ if (typeof this.endTime === 'undefined' || this.endTime === null) {
589
+ return new _ValidationError.default("endTime", "undefined or null");
590
+ }
591
+ }
592
+ if (property === "status") {
593
+ if (typeof this.status === 'undefined' || this.status === null) {
594
+ return new _ValidationError.default("status", "undefined or null");
595
+ }
596
+ }
597
+ if (property === "percentageComplete") {
598
+ if (typeof this.percentageComplete === 'undefined' || this.percentageComplete === null) {
599
+ return new _ValidationError.default("percentageComplete", "undefined or null");
600
+ }
601
+ if (!_ValidationUtils.default.validateMaximum(this.percentageComplete, 100)) {
602
+ return new _ValidationError.default("percentageComplete", "does not satisfy required maximum constraint: 100");
603
+ }
604
+ if (!_ValidationUtils.default.validateMinimum(this.percentageComplete, 0)) {
605
+ return new _ValidationError.default("percentageComplete", "does not satisfy required minimum constraint: 0");
606
+ }
607
+ }
608
+ if (property === "validationStatus") {
609
+ if (typeof this.validationStatus === 'undefined' || this.validationStatus === null) {
610
+ return new _ValidationError.default("validationStatus", "undefined or null");
611
+ }
612
+ }
613
+ if (property === "executionPhases") {
614
+ if (typeof this.executionPhases === 'undefined' || this.executionPhases === null) {
615
+ return new _ValidationError.default("executionPhases", "undefined or null");
616
+ }
617
+ if (!_ValidationUtils.default.validateMaxItems(this.executionPhases, 5)) {
618
+ return new _ValidationError.default("executionPhases", "does not satisfy required maxItems constraint: 5");
619
+ }
620
+ if (!_ValidationUtils.default.validateMinItems(this.executionPhases, 1)) {
621
+ return new _ValidationError.default("executionPhases", "does not satisfy required minItems constraint: 1");
622
+ }
623
+ }
624
+ if (property === "isInitiatedByWitness") {
625
+ if (typeof this.isInitiatedByWitness === 'undefined' || this.isInitiatedByWitness === null) {
626
+ return new _ValidationError.default("isInitiatedByWitness", "undefined or null");
627
+ }
628
+ }
629
+ if (property === "ownerExtId") {
630
+ if (typeof this.ownerExtId === 'undefined' || this.ownerExtId === null) {
631
+ return new _ValidationError.default("ownerExtId", "undefined or null");
632
+ }
633
+ if (!_ValidationUtils.default.validatePattern(this.ownerExtId, /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/)) {
634
+ return new _ValidationError.default("ownerExtId", "does not satisfy required pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/");
635
+ }
636
+ }
637
+ if (property === "isInstantRestore") {
638
+ if (typeof this.isInstantRestore === 'undefined' || this.isInstantRestore === null) {
639
+ return new _ValidationError.default("isInstantRestore", "undefined or null");
640
+ }
641
+ }
642
+ return new _ValidationError.default(property, "no such property exists");
643
+ }
644
+ }
645
+
646
+ /**
647
+ * Name of the Recovery Plan Job.
648
+ * @memberof RecoveryPlanJob
649
+ */
650
+ exports.default = RecoveryPlanJob;
651
+ function _toJsonMapType(obj, forMutation) {
652
+ if (obj instanceof Map) {
653
+ return Object.fromEntries(Array.from(obj, ([k, v]) => [k, typeof v.toJson !== "undefined" ? v.toJson(forMutation) : v]));
654
+ } else if (typeof obj === 'object' && obj != null && obj.constructor === Object) {
655
+ return Object.fromEntries(Array.from(Object.entries(obj), entry => {
656
+ return [entry[0], typeof entry[1].toJson !== "undefined" ? entry[1].toJson(forMutation) : entry[1]];
657
+ }));
658
+ }
659
+ return obj;
660
+ }
661
+ /*
662
+ * toJson method for a date type which serializes a Date object to proper Date or DateTime formatting
663
+ * @param {Object} obj Object to serialize
664
+ * @param {boolean} isDateOnly Boolean variable to identify Date or DateTime format for serialization
665
+ * @returns {Object|string} Returns serialized date object or original input object
666
+ */
667
+ function _handleDateType(obj, isDateOnly) {
668
+ if (obj instanceof Date && isDateOnly !== undefined) {
669
+ return isDateOnly ? obj.toISOString().slice(0, 10) : obj.toISOString();
670
+ }
671
+ return obj;
672
+ }
673
+ RecoveryPlanJob.prototype.name = undefined;
674
+
675
+ /**
676
+ * The external identifier of the recovery plan.
677
+ * @memberof RecoveryPlanJob
678
+ */
679
+ RecoveryPlanJob.prototype.recoveryPlanExtId = undefined;
680
+
681
+ /**
682
+ * List of failover directions from source disaster recovery location to target disaster recovery location.<br> For example, when failing over virtual machines (VMs) and volume groups from clusters C1, C2 registered to domain manager PC1 on source location to cluster C3 registered to domain manager PC1 on target location, there must be one direction between source location (PC1, C1) to target location (PC1, C3) and another mapping between source location (PC1, C2) and target location (PC1, C3).<br> Domain manager is a required parameter while describing disaster recovery location in failover directions.<br> When creating a Recovery Plan Job across two domain managers, the source clusters are not required.<br> Failover direction contains clusters only when failing over between primary and secondary clusters registered to the same domain manager.
683
+ * @memberof RecoveryPlanJob
684
+ */
685
+ RecoveryPlanJob.prototype.failoverDirections = undefined;
686
+
687
+ /**
688
+ * @memberof RecoveryPlanJob
689
+ */
690
+ RecoveryPlanJob.prototype.actionType = undefined;
691
+
692
+ /**
693
+ * Point in time from which to restore the entities during an `UNPLANNED_FAILOVER` operation. Only ISO-8601 formatted timestamps are supported. For example, `2023-01-02T03:04:05Z`.<br> When specified, virtual machines (VMs) and volume groups are restored from the latest recovery points created on or before the specified timestamp. If not specified, virtual machines (VMs) and volume groups are restored from the latest recovery points created on or before the start of the Recovery plan job.
694
+ * @memberof RecoveryPlanJob
695
+ */
696
+ RecoveryPlanJob.prototype.recoveryReferenceTime = undefined;
697
+
698
+ /**
699
+ * Indicates whether to perform a live migration of virtual machines (VMs) during a `PLANNED_FAILOVER` operation. When not specified or specified as false, the migration is performed for all virtual machines (VMs) in offline mode. When specified as true, the migration is performed for all virtual machines (VMs) in a running state.
700
+ * @memberof RecoveryPlanJob
701
+ */
702
+ RecoveryPlanJob.prototype.isLiveMigrateVMs = undefined;
703
+
704
+ /**
705
+ * Recovery plan job start time in ISO-8601 format.
706
+ * @memberof RecoveryPlanJob
707
+ */
708
+ RecoveryPlanJob.prototype.startTime = undefined;
709
+
710
+ /**
711
+ * Recovery plan job completion time in ISO-8601 format.
712
+ * @memberof RecoveryPlanJob
713
+ */
714
+ RecoveryPlanJob.prototype.endTime = undefined;
715
+
716
+ /**
717
+ * @memberof RecoveryPlanJob
718
+ */
719
+ RecoveryPlanJob.prototype.status = undefined;
720
+
721
+ /**
722
+ * Percentage complete for the recovery plan job.
723
+ * @memberof RecoveryPlanJob
724
+ */
725
+ RecoveryPlanJob.prototype.percentageComplete = undefined;
726
+
727
+ /**
728
+ * @memberof RecoveryPlanJob
729
+ */
730
+ RecoveryPlanJob.prototype.validationStatus = undefined;
731
+
732
+ /**
733
+ * Summary of all the phases involved in the recovery plan job execution:<br> - Pre-processing: Actions carried out prior to the recovery of entities, such as creating a network or synchronizing recovery points as part of a `PLANNED_FAILOVER` operation.<br> - Entity recovery: Steps performed for the recovery of the entities for the recovery plan job.<br> - Post-processing: Actions taken after the recovery of entities, such as creating a Consistency group or auditing the recovery plan job information.
734
+ * @memberof RecoveryPlanJob
735
+ */
736
+ RecoveryPlanJob.prototype.executionPhases = undefined;
737
+
738
+ /**
739
+ * Indicates whether the recovery plan job was initiated by the witness or not.
740
+ * @memberof RecoveryPlanJob
741
+ */
742
+ RecoveryPlanJob.prototype.isInitiatedByWitness = undefined;
743
+
744
+ /**
745
+ * External identifier of the owner of the recovery plan job.
746
+ * @memberof RecoveryPlanJob
747
+ */
748
+ RecoveryPlanJob.prototype.ownerExtId = undefined;
749
+
750
+ /**
751
+ * Indicates whether to enable Instant Restore. This feature allows a workload, such as a virtual machine (VM), to be quickly restored and powered on directly from an external backup repository on a Nutanix AOS cluster, without waiting for a full data transfer.
752
+ * @memberof RecoveryPlanJob
753
+ */
754
+ RecoveryPlanJob.prototype.isInstantRestore = undefined;
755
+
756
+ /**
757
+ * A globally unique identifier of an instance that is suitable for external consumption.
758
+ * @memberof RecoveryPlanJob
759
+ */
760
+ _ExternalizableAbstractModel.default.prototype.extId = undefined;
761
+ /**
762
+ * A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
763
+ * @memberof RecoveryPlanJob
764
+ */
765
+ _ExternalizableAbstractModel.default.prototype.links = undefined;
766
+ /**
767
+ * A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this ID to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).
768
+ * @memberof RecoveryPlanJob
769
+ */
770
+ _TenantAwareModel.default.prototype.tenantId = undefined;
771
+ // Implement OneOfdataprotection.v4.config.GetRecoveryPlanJobApiResponsedata interface: