@openshift-migration-advisor/planner-sdk 0.8.0 → 0.9.0-a26ff9932eeb

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 (79) hide show
  1. package/.openapi-generator/FILES +8 -2
  2. package/.openapi-generator/VERSION +1 -1
  3. package/README.md +8 -4
  4. package/dist/apis/AssessmentApi.d.ts +50 -5
  5. package/dist/apis/AssessmentApi.js +45 -1
  6. package/dist/esm/apis/AssessmentApi.d.ts +50 -5
  7. package/dist/esm/apis/AssessmentApi.js +46 -2
  8. package/dist/esm/models/ClusterRequirementsRequest.d.ts +9 -3
  9. package/dist/esm/models/ClusterRequirementsRequest.js +2 -0
  10. package/dist/esm/models/ComplexityOSNameEntry.d.ts +1 -1
  11. package/dist/esm/models/ComplexityOSScoreEntry.d.ts +1 -1
  12. package/dist/esm/models/EstimationContext.d.ts +40 -0
  13. package/dist/esm/models/EstimationContext.js +43 -0
  14. package/dist/esm/models/EstimationDetail.d.ts +14 -2
  15. package/dist/esm/models/EstimationDetail.js +5 -3
  16. package/dist/esm/models/MigrationComplexityResponse.d.ts +2 -2
  17. package/dist/esm/models/MigrationEstimationByComplexityResponse.d.ts +50 -0
  18. package/dist/esm/models/MigrationEstimationByComplexityResponse.js +51 -0
  19. package/dist/esm/models/MigrationEstimationRequest.d.ts +16 -0
  20. package/dist/esm/models/MigrationEstimationRequest.js +4 -0
  21. package/dist/esm/models/OsDiskEstimationEntry.d.ts +53 -0
  22. package/dist/esm/models/OsDiskEstimationEntry.js +55 -0
  23. package/dist/esm/models/SchemaEstimationResult.d.ts +47 -0
  24. package/dist/esm/models/{MigrationEstimationResponse.js → SchemaEstimationResult.js} +15 -11
  25. package/dist/esm/models/VMs.d.ts +9 -0
  26. package/dist/esm/models/VMs.js +2 -0
  27. package/dist/esm/models/index.d.ts +4 -1
  28. package/dist/esm/models/index.js +4 -1
  29. package/dist/esm/runtime.js +1 -1
  30. package/dist/models/ClusterRequirementsRequest.d.ts +9 -3
  31. package/dist/models/ClusterRequirementsRequest.js +2 -0
  32. package/dist/models/ComplexityOSNameEntry.d.ts +1 -1
  33. package/dist/models/ComplexityOSScoreEntry.d.ts +1 -1
  34. package/dist/models/EstimationContext.d.ts +40 -0
  35. package/dist/models/EstimationContext.js +50 -0
  36. package/dist/models/EstimationDetail.d.ts +14 -2
  37. package/dist/models/EstimationDetail.js +5 -3
  38. package/dist/models/MigrationComplexityResponse.d.ts +2 -2
  39. package/dist/models/MigrationEstimationByComplexityResponse.d.ts +50 -0
  40. package/dist/models/MigrationEstimationByComplexityResponse.js +58 -0
  41. package/dist/models/MigrationEstimationRequest.d.ts +16 -0
  42. package/dist/models/MigrationEstimationRequest.js +4 -0
  43. package/dist/models/OsDiskEstimationEntry.d.ts +53 -0
  44. package/dist/models/OsDiskEstimationEntry.js +62 -0
  45. package/dist/models/SchemaEstimationResult.d.ts +47 -0
  46. package/dist/models/SchemaEstimationResult.js +60 -0
  47. package/dist/models/VMs.d.ts +9 -0
  48. package/dist/models/VMs.js +2 -0
  49. package/dist/models/index.d.ts +4 -1
  50. package/dist/models/index.js +4 -1
  51. package/dist/runtime.js +1 -1
  52. package/docs/AssessmentApi.md +79 -3
  53. package/docs/ClusterRequirementsRequest.md +2 -0
  54. package/docs/EstimationContext.md +36 -0
  55. package/docs/EstimationDetail.md +5 -1
  56. package/docs/MigrationEstimationByComplexityResponse.md +38 -0
  57. package/docs/MigrationEstimationRequest.md +4 -0
  58. package/docs/OsDiskEstimationEntry.md +40 -0
  59. package/docs/{MigrationEstimationResponse.md → SchemaEstimationResult.md} +9 -7
  60. package/docs/VMs.md +2 -0
  61. package/package.json +1 -1
  62. package/src/apis/AssessmentApi.ts +95 -8
  63. package/src/models/ClusterRequirementsRequest.ts +11 -3
  64. package/src/models/ComplexityOSNameEntry.ts +1 -1
  65. package/src/models/ComplexityOSScoreEntry.ts +1 -1
  66. package/src/models/EstimationContext.ts +73 -0
  67. package/src/models/EstimationDetail.ts +19 -4
  68. package/src/models/MigrationComplexityResponse.ts +2 -2
  69. package/src/models/MigrationEstimationByComplexityResponse.ts +98 -0
  70. package/src/models/MigrationEstimationRequest.ts +18 -0
  71. package/src/models/OsDiskEstimationEntry.ts +100 -0
  72. package/src/models/SchemaEstimationResult.ts +92 -0
  73. package/src/models/VMs.ts +9 -0
  74. package/src/models/index.ts +4 -1
  75. package/src/runtime.ts +1 -1
  76. package/dist/esm/models/MigrationEstimationResponse.d.ts +0 -41
  77. package/dist/models/MigrationEstimationResponse.d.ts +0 -41
  78. package/dist/models/MigrationEstimationResponse.js +0 -56
  79. package/src/models/MigrationEstimationResponse.ts +0 -83
@@ -0,0 +1,50 @@
1
+ /**
2
+ * OpenShift Migration Advisor API
3
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
+ *
5
+ * The version of the OpenAPI document: undefined
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { OsDiskEstimationEntry } from './OsDiskEstimationEntry.js';
13
+ import type { EstimationContext } from './EstimationContext.js';
14
+ /**
15
+ *
16
+ * @export
17
+ * @interface MigrationEstimationByComplexityResponse
18
+ */
19
+ export interface MigrationEstimationByComplexityResponse {
20
+ /**
21
+ * Combined OS+Disk complexity distribution with per-bucket estimation. All 5 score levels (0-4) always present.
22
+ * @type {Array<OsDiskEstimationEntry>}
23
+ * @memberof MigrationEstimationByComplexityResponse
24
+ */
25
+ complexityByOsDisk: Array<OsDiskEstimationEntry>;
26
+ /**
27
+ * Decision matrix: outer keys are OS scores (0-4), inner keys are disk scores (1-4), values are combined scores.
28
+ * @type {{ [key: string]: { [key: string]: number; }; }}
29
+ * @memberof MigrationEstimationByComplexityResponse
30
+ */
31
+ complexityMatrix: {
32
+ [key: string]: {
33
+ [key: string]: number;
34
+ };
35
+ };
36
+ /**
37
+ *
38
+ * @type {EstimationContext}
39
+ * @memberof MigrationEstimationByComplexityResponse
40
+ */
41
+ estimationContext?: EstimationContext;
42
+ }
43
+ /**
44
+ * Check if a given object implements the MigrationEstimationByComplexityResponse interface.
45
+ */
46
+ export declare function instanceOfMigrationEstimationByComplexityResponse(value: object): value is MigrationEstimationByComplexityResponse;
47
+ export declare function MigrationEstimationByComplexityResponseFromJSON(json: any): MigrationEstimationByComplexityResponse;
48
+ export declare function MigrationEstimationByComplexityResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): MigrationEstimationByComplexityResponse;
49
+ export declare function MigrationEstimationByComplexityResponseToJSON(json: any): MigrationEstimationByComplexityResponse;
50
+ export declare function MigrationEstimationByComplexityResponseToJSONTyped(value?: MigrationEstimationByComplexityResponse | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,51 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * OpenShift Migration Advisor API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: undefined
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { OsDiskEstimationEntryFromJSON, OsDiskEstimationEntryToJSON, } from './OsDiskEstimationEntry.js';
15
+ import { EstimationContextFromJSON, EstimationContextToJSON, } from './EstimationContext.js';
16
+ /**
17
+ * Check if a given object implements the MigrationEstimationByComplexityResponse interface.
18
+ */
19
+ export function instanceOfMigrationEstimationByComplexityResponse(value) {
20
+ if (!('complexityByOsDisk' in value) || value['complexityByOsDisk'] === undefined)
21
+ return false;
22
+ if (!('complexityMatrix' in value) || value['complexityMatrix'] === undefined)
23
+ return false;
24
+ return true;
25
+ }
26
+ export function MigrationEstimationByComplexityResponseFromJSON(json) {
27
+ return MigrationEstimationByComplexityResponseFromJSONTyped(json, false);
28
+ }
29
+ export function MigrationEstimationByComplexityResponseFromJSONTyped(json, ignoreDiscriminator) {
30
+ if (json == null) {
31
+ return json;
32
+ }
33
+ return {
34
+ 'complexityByOsDisk': (json['complexityByOsDisk'].map(OsDiskEstimationEntryFromJSON)),
35
+ 'complexityMatrix': json['complexityMatrix'],
36
+ 'estimationContext': json['estimationContext'] == null ? undefined : EstimationContextFromJSON(json['estimationContext']),
37
+ };
38
+ }
39
+ export function MigrationEstimationByComplexityResponseToJSON(json) {
40
+ return MigrationEstimationByComplexityResponseToJSONTyped(json, false);
41
+ }
42
+ export function MigrationEstimationByComplexityResponseToJSONTyped(value, ignoreDiscriminator = false) {
43
+ if (value == null) {
44
+ return value;
45
+ }
46
+ return {
47
+ 'complexityByOsDisk': (value['complexityByOsDisk'].map(OsDiskEstimationEntryToJSON)),
48
+ 'complexityMatrix': value['complexityMatrix'],
49
+ 'estimationContext': EstimationContextToJSON(value['estimationContext']),
50
+ };
51
+ }
@@ -21,6 +21,22 @@ export interface MigrationEstimationRequest {
21
21
  * @memberof MigrationEstimationRequest
22
22
  */
23
23
  clusterId: string;
24
+ /**
25
+ * Schemas to run. Valid values: "network-based", "storage-offload". If omitted, all schemas are run.
26
+ *
27
+ * @type {Array<string>}
28
+ * @memberof MigrationEstimationRequest
29
+ */
30
+ estimationSchema?: Array<string>;
31
+ /**
32
+ * Optional calculator parameter overrides. Keys must match known calculator param names (e.g. "transfer_rate_mbps", "work_hours_per_day", "troubleshoot_mins_per_vm", "post_migration_engineers"). User-supplied values take precedence over both defaults and inventory-derived values. Unknown keys are silently ignored.
33
+ *
34
+ * @type {{ [key: string]: any; }}
35
+ * @memberof MigrationEstimationRequest
36
+ */
37
+ params?: {
38
+ [key: string]: any;
39
+ };
24
40
  }
25
41
  /**
26
42
  * Check if a given object implements the MigrationEstimationRequest interface.
@@ -28,6 +28,8 @@ export function MigrationEstimationRequestFromJSONTyped(json, ignoreDiscriminato
28
28
  }
29
29
  return {
30
30
  'clusterId': json['clusterId'],
31
+ 'estimationSchema': json['estimationSchema'] == null ? undefined : json['estimationSchema'],
32
+ 'params': json['params'] == null ? undefined : json['params'],
31
33
  };
32
34
  }
33
35
  export function MigrationEstimationRequestToJSON(json) {
@@ -39,5 +41,7 @@ export function MigrationEstimationRequestToJSONTyped(value, ignoreDiscriminator
39
41
  }
40
42
  return {
41
43
  'clusterId': value['clusterId'],
44
+ 'estimationSchema': value['estimationSchema'],
45
+ 'params': value['params'],
42
46
  };
43
47
  }
@@ -0,0 +1,53 @@
1
+ /**
2
+ * OpenShift Migration Advisor API
3
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
+ *
5
+ * The version of the OpenAPI document: undefined
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { SchemaEstimationResult } from './SchemaEstimationResult.js';
13
+ /**
14
+ *
15
+ * @export
16
+ * @interface OsDiskEstimationEntry
17
+ */
18
+ export interface OsDiskEstimationEntry {
19
+ /**
20
+ * Combined OS+Disk complexity score (0-4).
21
+ * @type {number}
22
+ * @memberof OsDiskEstimationEntry
23
+ */
24
+ score: number;
25
+ /**
26
+ * Number of VMs at this complexity level.
27
+ * @type {number}
28
+ * @memberof OsDiskEstimationEntry
29
+ */
30
+ vmCount: number;
31
+ /**
32
+ * Total provisioned disk across VMs in this bucket (decimal TB). 0.0 when ComplexityDistribution is absent from the inventory.
33
+ * @type {number}
34
+ * @memberof OsDiskEstimationEntry
35
+ */
36
+ totalDiskSizeTB: number;
37
+ /**
38
+ * Full estimation breakdown keyed by schema name. Absent for empty buckets (vmCount == 0).
39
+ * @type {{ [key: string]: SchemaEstimationResult; }}
40
+ * @memberof OsDiskEstimationEntry
41
+ */
42
+ estimation?: {
43
+ [key: string]: SchemaEstimationResult;
44
+ };
45
+ }
46
+ /**
47
+ * Check if a given object implements the OsDiskEstimationEntry interface.
48
+ */
49
+ export declare function instanceOfOsDiskEstimationEntry(value: object): value is OsDiskEstimationEntry;
50
+ export declare function OsDiskEstimationEntryFromJSON(json: any): OsDiskEstimationEntry;
51
+ export declare function OsDiskEstimationEntryFromJSONTyped(json: any, ignoreDiscriminator: boolean): OsDiskEstimationEntry;
52
+ export declare function OsDiskEstimationEntryToJSON(json: any): OsDiskEstimationEntry;
53
+ export declare function OsDiskEstimationEntryToJSONTyped(value?: OsDiskEstimationEntry | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,55 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * OpenShift Migration Advisor API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: undefined
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { mapValues } from '../runtime.js';
15
+ import { SchemaEstimationResultFromJSON, SchemaEstimationResultToJSON, } from './SchemaEstimationResult.js';
16
+ /**
17
+ * Check if a given object implements the OsDiskEstimationEntry interface.
18
+ */
19
+ export function instanceOfOsDiskEstimationEntry(value) {
20
+ if (!('score' in value) || value['score'] === undefined)
21
+ return false;
22
+ if (!('vmCount' in value) || value['vmCount'] === undefined)
23
+ return false;
24
+ if (!('totalDiskSizeTB' in value) || value['totalDiskSizeTB'] === undefined)
25
+ return false;
26
+ return true;
27
+ }
28
+ export function OsDiskEstimationEntryFromJSON(json) {
29
+ return OsDiskEstimationEntryFromJSONTyped(json, false);
30
+ }
31
+ export function OsDiskEstimationEntryFromJSONTyped(json, ignoreDiscriminator) {
32
+ if (json == null) {
33
+ return json;
34
+ }
35
+ return {
36
+ 'score': json['score'],
37
+ 'vmCount': json['vmCount'],
38
+ 'totalDiskSizeTB': json['totalDiskSizeTB'],
39
+ 'estimation': json['estimation'] == null ? undefined : (mapValues(json['estimation'], SchemaEstimationResultFromJSON)),
40
+ };
41
+ }
42
+ export function OsDiskEstimationEntryToJSON(json) {
43
+ return OsDiskEstimationEntryToJSONTyped(json, false);
44
+ }
45
+ export function OsDiskEstimationEntryToJSONTyped(value, ignoreDiscriminator = false) {
46
+ if (value == null) {
47
+ return value;
48
+ }
49
+ return {
50
+ 'score': value['score'],
51
+ 'vmCount': value['vmCount'],
52
+ 'totalDiskSizeTB': value['totalDiskSizeTB'],
53
+ 'estimation': value['estimation'] == null ? undefined : (mapValues(value['estimation'], SchemaEstimationResultToJSON)),
54
+ };
55
+ }
@@ -0,0 +1,47 @@
1
+ /**
2
+ * OpenShift Migration Advisor API
3
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
+ *
5
+ * The version of the OpenAPI document: undefined
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { EstimationDetail } from './EstimationDetail.js';
13
+ /**
14
+ * Estimation results for a single schema
15
+ * @export
16
+ * @interface SchemaEstimationResult
17
+ */
18
+ export interface SchemaEstimationResult {
19
+ /**
20
+ * Minimum total estimated duration across all calculators
21
+ * @type {string}
22
+ * @memberof SchemaEstimationResult
23
+ */
24
+ minTotalDuration: string;
25
+ /**
26
+ * Maximum total estimated duration across all calculators
27
+ * @type {string}
28
+ * @memberof SchemaEstimationResult
29
+ */
30
+ maxTotalDuration: string;
31
+ /**
32
+ * Per-calculator results
33
+ * @type {{ [key: string]: EstimationDetail; }}
34
+ * @memberof SchemaEstimationResult
35
+ */
36
+ breakdown: {
37
+ [key: string]: EstimationDetail;
38
+ };
39
+ }
40
+ /**
41
+ * Check if a given object implements the SchemaEstimationResult interface.
42
+ */
43
+ export declare function instanceOfSchemaEstimationResult(value: object): value is SchemaEstimationResult;
44
+ export declare function SchemaEstimationResultFromJSON(json: any): SchemaEstimationResult;
45
+ export declare function SchemaEstimationResultFromJSONTyped(json: any, ignoreDiscriminator: boolean): SchemaEstimationResult;
46
+ export declare function SchemaEstimationResultToJSON(json: any): SchemaEstimationResult;
47
+ export declare function SchemaEstimationResultToJSONTyped(value?: SchemaEstimationResult | null, ignoreDiscriminator?: boolean): any;
@@ -14,36 +14,40 @@
14
14
  import { mapValues } from '../runtime.js';
15
15
  import { EstimationDetailFromJSON, EstimationDetailToJSON, } from './EstimationDetail.js';
16
16
  /**
17
- * Check if a given object implements the MigrationEstimationResponse interface.
17
+ * Check if a given object implements the SchemaEstimationResult interface.
18
18
  */
19
- export function instanceOfMigrationEstimationResponse(value) {
20
- if (!('totalDuration' in value) || value['totalDuration'] === undefined)
19
+ export function instanceOfSchemaEstimationResult(value) {
20
+ if (!('minTotalDuration' in value) || value['minTotalDuration'] === undefined)
21
+ return false;
22
+ if (!('maxTotalDuration' in value) || value['maxTotalDuration'] === undefined)
21
23
  return false;
22
24
  if (!('breakdown' in value) || value['breakdown'] === undefined)
23
25
  return false;
24
26
  return true;
25
27
  }
26
- export function MigrationEstimationResponseFromJSON(json) {
27
- return MigrationEstimationResponseFromJSONTyped(json, false);
28
+ export function SchemaEstimationResultFromJSON(json) {
29
+ return SchemaEstimationResultFromJSONTyped(json, false);
28
30
  }
29
- export function MigrationEstimationResponseFromJSONTyped(json, ignoreDiscriminator) {
31
+ export function SchemaEstimationResultFromJSONTyped(json, ignoreDiscriminator) {
30
32
  if (json == null) {
31
33
  return json;
32
34
  }
33
35
  return {
34
- 'totalDuration': json['totalDuration'],
36
+ 'minTotalDuration': json['minTotalDuration'],
37
+ 'maxTotalDuration': json['maxTotalDuration'],
35
38
  'breakdown': (mapValues(json['breakdown'], EstimationDetailFromJSON)),
36
39
  };
37
40
  }
38
- export function MigrationEstimationResponseToJSON(json) {
39
- return MigrationEstimationResponseToJSONTyped(json, false);
41
+ export function SchemaEstimationResultToJSON(json) {
42
+ return SchemaEstimationResultToJSONTyped(json, false);
40
43
  }
41
- export function MigrationEstimationResponseToJSONTyped(value, ignoreDiscriminator = false) {
44
+ export function SchemaEstimationResultToJSONTyped(value, ignoreDiscriminator = false) {
42
45
  if (value == null) {
43
46
  return value;
44
47
  }
45
48
  return {
46
- 'totalDuration': value['totalDuration'],
49
+ 'minTotalDuration': value['minTotalDuration'],
50
+ 'maxTotalDuration': value['maxTotalDuration'],
47
51
  'breakdown': (mapValues(value['breakdown'], EstimationDetailToJSON)),
48
52
  };
49
53
  }
@@ -94,10 +94,19 @@ export interface VMs {
94
94
  * Distribution of VMs by migration complexity level (0=Unsupported, 1=Easy, 2=Medium, 3=Hard, 4=WhiteGlove)
95
95
  * @type {{ [key: string]: number; }}
96
96
  * @memberof VMs
97
+ * @deprecated
97
98
  */
98
99
  distributionByComplexity?: {
99
100
  [key: string]: number;
100
101
  };
102
+ /**
103
+ * Distribution of VMs by migration complexity level, enriched with total disk size per level. Supersedes distributionByComplexity.
104
+ * @type {{ [key: string]: DiskSizeTierSummary; }}
105
+ * @memberof VMs
106
+ */
107
+ complexityDistribution?: {
108
+ [key: string]: DiskSizeTierSummary;
109
+ };
101
110
  /**
102
111
  *
103
112
  * @type {VMResourceBreakdown}
@@ -60,6 +60,7 @@ export function VMsFromJSONTyped(json, ignoreDiscriminator) {
60
60
  'distributionByMemoryTier': json['distributionByMemoryTier'] == null ? undefined : json['distributionByMemoryTier'],
61
61
  'distributionByNicCount': json['distributionByNicCount'] == null ? undefined : json['distributionByNicCount'],
62
62
  'distributionByComplexity': json['distributionByComplexity'] == null ? undefined : json['distributionByComplexity'],
63
+ 'complexityDistribution': json['complexityDistribution'] == null ? undefined : (mapValues(json['complexityDistribution'], DiskSizeTierSummaryFromJSON)),
63
64
  'ramGB': VMResourceBreakdownFromJSON(json['ramGB']),
64
65
  'diskGB': VMResourceBreakdownFromJSON(json['diskGB']),
65
66
  'diskCount': VMResourceBreakdownFromJSON(json['diskCount']),
@@ -90,6 +91,7 @@ export function VMsToJSONTyped(value, ignoreDiscriminator = false) {
90
91
  'distributionByMemoryTier': value['distributionByMemoryTier'],
91
92
  'distributionByNicCount': value['distributionByNicCount'],
92
93
  'distributionByComplexity': value['distributionByComplexity'],
94
+ 'complexityDistribution': value['complexityDistribution'] == null ? undefined : (mapValues(value['complexityDistribution'], DiskSizeTierSummaryToJSON)),
93
95
  'ramGB': VMResourceBreakdownToJSON(value['ramGB']),
94
96
  'diskGB': VMResourceBreakdownToJSON(value['diskGB']),
95
97
  'diskCount': VMResourceBreakdownToJSON(value['diskCount']),
@@ -12,6 +12,7 @@ export * from './ComplexityOSScoreEntry.js';
12
12
  export * from './Datastore.js';
13
13
  export * from './DiskSizeTierSummary.js';
14
14
  export * from './DiskTypeSummary.js';
15
+ export * from './EstimationContext.js';
15
16
  export * from './EstimationDetail.js';
16
17
  export * from './Histogram.js';
17
18
  export * from './Host.js';
@@ -26,13 +27,15 @@ export * from './JobStatus.js';
26
27
  export * from './Label.js';
27
28
  export * from './MigrationComplexityRequest.js';
28
29
  export * from './MigrationComplexityResponse.js';
30
+ export * from './MigrationEstimationByComplexityResponse.js';
29
31
  export * from './MigrationEstimationRequest.js';
30
- export * from './MigrationEstimationResponse.js';
31
32
  export * from './MigrationIssue.js';
32
33
  export * from './ModelError.js';
33
34
  export * from './Network.js';
35
+ export * from './OsDiskEstimationEntry.js';
34
36
  export * from './OsInfo.js';
35
37
  export * from './PresignedUrl.js';
38
+ export * from './SchemaEstimationResult.js';
36
39
  export * from './SizingOverCommitRatio.js';
37
40
  export * from './SizingResourceConsumption.js';
38
41
  export * from './SizingResourceLimits.js';
@@ -14,6 +14,7 @@ export * from './ComplexityOSScoreEntry.js';
14
14
  export * from './Datastore.js';
15
15
  export * from './DiskSizeTierSummary.js';
16
16
  export * from './DiskTypeSummary.js';
17
+ export * from './EstimationContext.js';
17
18
  export * from './EstimationDetail.js';
18
19
  export * from './Histogram.js';
19
20
  export * from './Host.js';
@@ -28,13 +29,15 @@ export * from './JobStatus.js';
28
29
  export * from './Label.js';
29
30
  export * from './MigrationComplexityRequest.js';
30
31
  export * from './MigrationComplexityResponse.js';
32
+ export * from './MigrationEstimationByComplexityResponse.js';
31
33
  export * from './MigrationEstimationRequest.js';
32
- export * from './MigrationEstimationResponse.js';
33
34
  export * from './MigrationIssue.js';
34
35
  export * from './ModelError.js';
35
36
  export * from './Network.js';
37
+ export * from './OsDiskEstimationEntry.js';
36
38
  export * from './OsInfo.js';
37
39
  export * from './PresignedUrl.js';
40
+ export * from './SchemaEstimationResult.js';
38
41
  export * from './SizingOverCommitRatio.js';
39
42
  export * from './SizingResourceConsumption.js';
40
43
  export * from './SizingResourceLimits.js';
@@ -210,7 +210,7 @@ export class BaseAPI {
210
210
  return next;
211
211
  }
212
212
  }
213
- BaseAPI.jsonRegex = new RegExp('^(:?application\/json|[^;/ \t]+\/[^;/ \t]+[+]json)[ \t]*(:?;.*)?$', 'i');
213
+ BaseAPI.jsonRegex = /^(:?application\/json|[^;/ \t]+\/[^;/ \t]+[+]json)[ \t]*(:?;.*)?$/i;
214
214
  ;
215
215
  function isBlob(value) {
216
216
  return typeof Blob !== 'undefined' && value instanceof Blob;
@@ -52,7 +52,7 @@ export interface ClusterRequirementsRequest {
52
52
  */
53
53
  workerNodeThreads?: number;
54
54
  /**
55
- * Allow workload scheduling on control plane nodes
55
+ * Allow workload scheduling on control plane nodes (default: false)
56
56
  * @type {boolean}
57
57
  * @memberof ClusterRequirementsRequest
58
58
  */
@@ -64,17 +64,23 @@ export interface ClusterRequirementsRequest {
64
64
  */
65
65
  controlPlaneCPU?: number;
66
66
  /**
67
- * Memory (GB) per control plane node (default: 16)
67
+ * Memory in GB per control plane node (default: 16)
68
68
  * @type {number}
69
69
  * @memberof ClusterRequirementsRequest
70
70
  */
71
71
  controlPlaneMemory?: number;
72
72
  /**
73
- * Number of control plane nodes (1 for single node, 3 for HA)
73
+ * Number of control plane nodes: 1 or 3 (default: 3)
74
74
  * @type {ClusterRequirementsRequestControlPlaneNodeCountEnum}
75
75
  * @memberof ClusterRequirementsRequest
76
76
  */
77
77
  controlPlaneNodeCount?: ClusterRequirementsRequestControlPlaneNodeCountEnum;
78
+ /**
79
+ * If true, control plane is hosted externally. Incompatible with control plane fields (default: false)
80
+ * @type {boolean}
81
+ * @memberof ClusterRequirementsRequest
82
+ */
83
+ hostedControlPlane?: boolean;
78
84
  }
79
85
  /**
80
86
  * @export
@@ -77,6 +77,7 @@ function ClusterRequirementsRequestFromJSONTyped(json, ignoreDiscriminator) {
77
77
  'controlPlaneCPU': json['controlPlaneCPU'] == null ? undefined : json['controlPlaneCPU'],
78
78
  'controlPlaneMemory': json['controlPlaneMemory'] == null ? undefined : json['controlPlaneMemory'],
79
79
  'controlPlaneNodeCount': json['controlPlaneNodeCount'] == null ? undefined : json['controlPlaneNodeCount'],
80
+ 'hostedControlPlane': json['hostedControlPlane'] == null ? undefined : json['hostedControlPlane'],
80
81
  };
81
82
  }
82
83
  function ClusterRequirementsRequestToJSON(json) {
@@ -97,5 +98,6 @@ function ClusterRequirementsRequestToJSONTyped(value, ignoreDiscriminator = fals
97
98
  'controlPlaneCPU': value['controlPlaneCPU'],
98
99
  'controlPlaneMemory': value['controlPlaneMemory'],
99
100
  'controlPlaneNodeCount': value['controlPlaneNodeCount'],
101
+ 'hostedControlPlane': value['hostedControlPlane'],
100
102
  };
101
103
  }
@@ -23,7 +23,7 @@ export interface ComplexityOSNameEntry {
23
23
  */
24
24
  osName: string;
25
25
  /**
26
- * Complexity score assigned by ClassifyOS. 0 = unclassified, 1 = least complex, 4 = most complex.
26
+ * Complexity score assigned by ClassifyOS. 0 = unknown, 1 = least complex, 4 = most complex.
27
27
  *
28
28
  * @type {number}
29
29
  * @memberof ComplexityOSNameEntry
@@ -16,7 +16,7 @@
16
16
  */
17
17
  export interface ComplexityOSScoreEntry {
18
18
  /**
19
- * Complexity score from 0 to 4, where 1 indicates the least complex OS to migrate and 0 indicates an OS that could not be classified.
19
+ * Complexity score from 0 to 4, where 1 indicates the least complex OS to migrate and 0 indicates an OS with unknown complexity.
20
20
  *
21
21
  * @type {number}
22
22
  * @memberof ComplexityOSScoreEntry
@@ -0,0 +1,40 @@
1
+ /**
2
+ * OpenShift Migration Advisor API
3
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
+ *
5
+ * The version of the OpenAPI document: undefined
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface EstimationContext
16
+ */
17
+ export interface EstimationContext {
18
+ /**
19
+ *
20
+ * @type {Array<string>}
21
+ * @memberof EstimationContext
22
+ */
23
+ schemas?: Array<string>;
24
+ /**
25
+ *
26
+ * @type {{ [key: string]: number; }}
27
+ * @memberof EstimationContext
28
+ */
29
+ params?: {
30
+ [key: string]: number;
31
+ };
32
+ }
33
+ /**
34
+ * Check if a given object implements the EstimationContext interface.
35
+ */
36
+ export declare function instanceOfEstimationContext(value: object): value is EstimationContext;
37
+ export declare function EstimationContextFromJSON(json: any): EstimationContext;
38
+ export declare function EstimationContextFromJSONTyped(json: any, ignoreDiscriminator: boolean): EstimationContext;
39
+ export declare function EstimationContextToJSON(json: any): EstimationContext;
40
+ export declare function EstimationContextToJSONTyped(value?: EstimationContext | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * OpenShift Migration Advisor API
6
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
7
+ *
8
+ * The version of the OpenAPI document: undefined
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfEstimationContext = instanceOfEstimationContext;
17
+ exports.EstimationContextFromJSON = EstimationContextFromJSON;
18
+ exports.EstimationContextFromJSONTyped = EstimationContextFromJSONTyped;
19
+ exports.EstimationContextToJSON = EstimationContextToJSON;
20
+ exports.EstimationContextToJSONTyped = EstimationContextToJSONTyped;
21
+ /**
22
+ * Check if a given object implements the EstimationContext interface.
23
+ */
24
+ function instanceOfEstimationContext(value) {
25
+ return true;
26
+ }
27
+ function EstimationContextFromJSON(json) {
28
+ return EstimationContextFromJSONTyped(json, false);
29
+ }
30
+ function EstimationContextFromJSONTyped(json, ignoreDiscriminator) {
31
+ if (json == null) {
32
+ return json;
33
+ }
34
+ return {
35
+ 'schemas': json['schemas'] == null ? undefined : json['schemas'],
36
+ 'params': json['params'] == null ? undefined : json['params'],
37
+ };
38
+ }
39
+ function EstimationContextToJSON(json) {
40
+ return EstimationContextToJSONTyped(json, false);
41
+ }
42
+ function EstimationContextToJSONTyped(value, ignoreDiscriminator = false) {
43
+ if (value == null) {
44
+ return value;
45
+ }
46
+ return {
47
+ 'schemas': value['schemas'],
48
+ 'params': value['params'],
49
+ };
50
+ }
@@ -16,11 +16,23 @@
16
16
  */
17
17
  export interface EstimationDetail {
18
18
  /**
19
- * Estimated duration for this component (formatted as duration string)
19
+ * Estimated duration for this component (point calculators only)
20
20
  * @type {string}
21
21
  * @memberof EstimationDetail
22
22
  */
23
- duration: string;
23
+ duration?: string;
24
+ /**
25
+ * Minimum estimated duration (ranged calculators only)
26
+ * @type {string}
27
+ * @memberof EstimationDetail
28
+ */
29
+ minDuration?: string;
30
+ /**
31
+ * Maximum estimated duration (ranged calculators only)
32
+ * @type {string}
33
+ * @memberof EstimationDetail
34
+ */
35
+ maxDuration?: string;
24
36
  /**
25
37
  * Explanation of how the estimation was calculated
26
38
  * @type {string}