@openshift-migration-advisor/planner-sdk 0.6.0-72b0022c0833 → 0.7.0-4ccf2aa66adf

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.
@@ -12,6 +12,7 @@ docs/ClusterRequirementsRequest.md
12
12
  docs/ClusterRequirementsResponse.md
13
13
  docs/ClusterSizing.md
14
14
  docs/ComplexityDiskScoreEntry.md
15
+ docs/ComplexityOSNameEntry.md
15
16
  docs/ComplexityOSScoreEntry.md
16
17
  docs/Datastore.md
17
18
  docs/DiskSizeTierSummary.md
@@ -74,6 +75,7 @@ src/models/ClusterRequirementsRequest.ts
74
75
  src/models/ClusterRequirementsResponse.ts
75
76
  src/models/ClusterSizing.ts
76
77
  src/models/ComplexityDiskScoreEntry.ts
78
+ src/models/ComplexityOSNameEntry.ts
77
79
  src/models/ComplexityOSScoreEntry.ts
78
80
  src/models/Datastore.ts
79
81
  src/models/DiskSizeTierSummary.ts
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # @openshift-migration-advisor/planner-sdk@0.6.0-72b0022c0833
1
+ # @openshift-migration-advisor/planner-sdk@0.7.0-4ccf2aa66adf
2
2
 
3
3
  A TypeScript SDK client for the raw.githubusercontent.com API.
4
4
 
@@ -87,6 +87,7 @@ All URIs are relative to *https://raw.githubusercontent.com*
87
87
  - [ClusterRequirementsResponse](docs/ClusterRequirementsResponse.md)
88
88
  - [ClusterSizing](docs/ClusterSizing.md)
89
89
  - [ComplexityDiskScoreEntry](docs/ComplexityDiskScoreEntry.md)
90
+ - [ComplexityOSNameEntry](docs/ComplexityOSNameEntry.md)
90
91
  - [ComplexityOSScoreEntry](docs/ComplexityOSScoreEntry.md)
91
92
  - [Datastore](docs/Datastore.md)
92
93
  - [DiskSizeTierSummary](docs/DiskSizeTierSummary.md)
@@ -139,7 +140,7 @@ and is automatically generated by the
139
140
  [OpenAPI Generator](https://openapi-generator.tech) project:
140
141
 
141
142
  - API version: `undefined`
142
- - Package version: `0.6.0-72b0022c0833`
143
+ - Package version: `0.7.0-4ccf2aa66adf`
143
144
  - Generator version: `7.21.0-SNAPSHOT`
144
145
  - Build package: `org.openapitools.codegen.languages.TypeScriptFetchClientCodegen`
145
146
 
@@ -0,0 +1,46 @@
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
+ * One entry in the per-OS-name complexity breakdown.
14
+ * @export
15
+ * @interface ComplexityOSNameEntry
16
+ */
17
+ export interface ComplexityOSNameEntry {
18
+ /**
19
+ * The OS name exactly as it appears in vms.osInfo (e.g. "Red Hat Enterprise Linux 9 (64-bit)").
20
+ *
21
+ * @type {string}
22
+ * @memberof ComplexityOSNameEntry
23
+ */
24
+ osName: string;
25
+ /**
26
+ * Complexity score assigned by ClassifyOS. 0 = unclassified, 1 = least complex, 4 = most complex.
27
+ *
28
+ * @type {number}
29
+ * @memberof ComplexityOSNameEntry
30
+ */
31
+ score: number;
32
+ /**
33
+ * Number of VMs running this OS.
34
+ * @type {number}
35
+ * @memberof ComplexityOSNameEntry
36
+ */
37
+ vmCount: number;
38
+ }
39
+ /**
40
+ * Check if a given object implements the ComplexityOSNameEntry interface.
41
+ */
42
+ export declare function instanceOfComplexityOSNameEntry(value: object): value is ComplexityOSNameEntry;
43
+ export declare function ComplexityOSNameEntryFromJSON(json: any): ComplexityOSNameEntry;
44
+ export declare function ComplexityOSNameEntryFromJSONTyped(json: any, ignoreDiscriminator: boolean): ComplexityOSNameEntry;
45
+ export declare function ComplexityOSNameEntryToJSON(json: any): ComplexityOSNameEntry;
46
+ export declare function ComplexityOSNameEntryToJSONTyped(value?: ComplexityOSNameEntry | 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
+ /**
15
+ * Check if a given object implements the ComplexityOSNameEntry interface.
16
+ */
17
+ export function instanceOfComplexityOSNameEntry(value) {
18
+ if (!('osName' in value) || value['osName'] === undefined)
19
+ return false;
20
+ if (!('score' in value) || value['score'] === undefined)
21
+ return false;
22
+ if (!('vmCount' in value) || value['vmCount'] === undefined)
23
+ return false;
24
+ return true;
25
+ }
26
+ export function ComplexityOSNameEntryFromJSON(json) {
27
+ return ComplexityOSNameEntryFromJSONTyped(json, false);
28
+ }
29
+ export function ComplexityOSNameEntryFromJSONTyped(json, ignoreDiscriminator) {
30
+ if (json == null) {
31
+ return json;
32
+ }
33
+ return {
34
+ 'osName': json['osName'],
35
+ 'score': json['score'],
36
+ 'vmCount': json['vmCount'],
37
+ };
38
+ }
39
+ export function ComplexityOSNameEntryToJSON(json) {
40
+ return ComplexityOSNameEntryToJSONTyped(json, false);
41
+ }
42
+ export function ComplexityOSNameEntryToJSONTyped(value, ignoreDiscriminator = false) {
43
+ if (value == null) {
44
+ return value;
45
+ }
46
+ return {
47
+ 'osName': value['osName'],
48
+ 'score': value['score'],
49
+ 'vmCount': value['vmCount'],
50
+ };
51
+ }
@@ -10,6 +10,7 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import type { ComplexityOSScoreEntry } from './ComplexityOSScoreEntry.js';
13
+ import type { ComplexityOSNameEntry } from './ComplexityOSNameEntry.js';
13
14
  import type { ComplexityDiskScoreEntry } from './ComplexityDiskScoreEntry.js';
14
15
  /**
15
16
  * Migration complexity estimation results
@@ -49,6 +50,13 @@ export interface MigrationComplexityResponse {
49
50
  osRatings: {
50
51
  [key: string]: number;
51
52
  };
53
+ /**
54
+ * Per-OS-name complexity breakdown. One entry per distinct OS name found in the cluster's inventory. Each entry carries the OS name string, its numeric complexity score (0–4), and the number of VMs running it.
55
+ *
56
+ * @type {Array<ComplexityOSNameEntry>}
57
+ * @memberof MigrationComplexityResponse
58
+ */
59
+ complexityByOSName: Array<ComplexityOSNameEntry>;
52
60
  }
53
61
  /**
54
62
  * Check if a given object implements the MigrationComplexityResponse interface.
@@ -12,6 +12,7 @@
12
12
  * Do not edit the class manually.
13
13
  */
14
14
  import { ComplexityOSScoreEntryFromJSON, ComplexityOSScoreEntryToJSON, } from './ComplexityOSScoreEntry.js';
15
+ import { ComplexityOSNameEntryFromJSON, ComplexityOSNameEntryToJSON, } from './ComplexityOSNameEntry.js';
15
16
  import { ComplexityDiskScoreEntryFromJSON, ComplexityDiskScoreEntryToJSON, } from './ComplexityDiskScoreEntry.js';
16
17
  /**
17
18
  * Check if a given object implements the MigrationComplexityResponse interface.
@@ -25,6 +26,8 @@ export function instanceOfMigrationComplexityResponse(value) {
25
26
  return false;
26
27
  if (!('osRatings' in value) || value['osRatings'] === undefined)
27
28
  return false;
29
+ if (!('complexityByOSName' in value) || value['complexityByOSName'] === undefined)
30
+ return false;
28
31
  return true;
29
32
  }
30
33
  export function MigrationComplexityResponseFromJSON(json) {
@@ -39,6 +42,7 @@ export function MigrationComplexityResponseFromJSONTyped(json, ignoreDiscriminat
39
42
  'complexityByOS': (json['complexityByOS'].map(ComplexityOSScoreEntryFromJSON)),
40
43
  'diskSizeRatings': json['diskSizeRatings'],
41
44
  'osRatings': json['osRatings'],
45
+ 'complexityByOSName': (json['complexityByOSName'].map(ComplexityOSNameEntryFromJSON)),
42
46
  };
43
47
  }
44
48
  export function MigrationComplexityResponseToJSON(json) {
@@ -53,5 +57,6 @@ export function MigrationComplexityResponseToJSONTyped(value, ignoreDiscriminato
53
57
  'complexityByOS': (value['complexityByOS'].map(ComplexityOSScoreEntryToJSON)),
54
58
  'diskSizeRatings': value['diskSizeRatings'],
55
59
  'osRatings': value['osRatings'],
60
+ 'complexityByOSName': (value['complexityByOSName'].map(ComplexityOSNameEntryToJSON)),
56
61
  };
57
62
  }
@@ -7,6 +7,7 @@ export * from './ClusterRequirementsRequest.js';
7
7
  export * from './ClusterRequirementsResponse.js';
8
8
  export * from './ClusterSizing.js';
9
9
  export * from './ComplexityDiskScoreEntry.js';
10
+ export * from './ComplexityOSNameEntry.js';
10
11
  export * from './ComplexityOSScoreEntry.js';
11
12
  export * from './Datastore.js';
12
13
  export * from './DiskSizeTierSummary.js';
@@ -9,6 +9,7 @@ export * from './ClusterRequirementsRequest.js';
9
9
  export * from './ClusterRequirementsResponse.js';
10
10
  export * from './ClusterSizing.js';
11
11
  export * from './ComplexityDiskScoreEntry.js';
12
+ export * from './ComplexityOSNameEntry.js';
12
13
  export * from './ComplexityOSScoreEntry.js';
13
14
  export * from './Datastore.js';
14
15
  export * from './DiskSizeTierSummary.js';
@@ -0,0 +1,46 @@
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
+ * One entry in the per-OS-name complexity breakdown.
14
+ * @export
15
+ * @interface ComplexityOSNameEntry
16
+ */
17
+ export interface ComplexityOSNameEntry {
18
+ /**
19
+ * The OS name exactly as it appears in vms.osInfo (e.g. "Red Hat Enterprise Linux 9 (64-bit)").
20
+ *
21
+ * @type {string}
22
+ * @memberof ComplexityOSNameEntry
23
+ */
24
+ osName: string;
25
+ /**
26
+ * Complexity score assigned by ClassifyOS. 0 = unclassified, 1 = least complex, 4 = most complex.
27
+ *
28
+ * @type {number}
29
+ * @memberof ComplexityOSNameEntry
30
+ */
31
+ score: number;
32
+ /**
33
+ * Number of VMs running this OS.
34
+ * @type {number}
35
+ * @memberof ComplexityOSNameEntry
36
+ */
37
+ vmCount: number;
38
+ }
39
+ /**
40
+ * Check if a given object implements the ComplexityOSNameEntry interface.
41
+ */
42
+ export declare function instanceOfComplexityOSNameEntry(value: object): value is ComplexityOSNameEntry;
43
+ export declare function ComplexityOSNameEntryFromJSON(json: any): ComplexityOSNameEntry;
44
+ export declare function ComplexityOSNameEntryFromJSONTyped(json: any, ignoreDiscriminator: boolean): ComplexityOSNameEntry;
45
+ export declare function ComplexityOSNameEntryToJSON(json: any): ComplexityOSNameEntry;
46
+ export declare function ComplexityOSNameEntryToJSONTyped(value?: ComplexityOSNameEntry | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,58 @@
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.instanceOfComplexityOSNameEntry = instanceOfComplexityOSNameEntry;
17
+ exports.ComplexityOSNameEntryFromJSON = ComplexityOSNameEntryFromJSON;
18
+ exports.ComplexityOSNameEntryFromJSONTyped = ComplexityOSNameEntryFromJSONTyped;
19
+ exports.ComplexityOSNameEntryToJSON = ComplexityOSNameEntryToJSON;
20
+ exports.ComplexityOSNameEntryToJSONTyped = ComplexityOSNameEntryToJSONTyped;
21
+ /**
22
+ * Check if a given object implements the ComplexityOSNameEntry interface.
23
+ */
24
+ function instanceOfComplexityOSNameEntry(value) {
25
+ if (!('osName' in value) || value['osName'] === undefined)
26
+ return false;
27
+ if (!('score' in value) || value['score'] === undefined)
28
+ return false;
29
+ if (!('vmCount' in value) || value['vmCount'] === undefined)
30
+ return false;
31
+ return true;
32
+ }
33
+ function ComplexityOSNameEntryFromJSON(json) {
34
+ return ComplexityOSNameEntryFromJSONTyped(json, false);
35
+ }
36
+ function ComplexityOSNameEntryFromJSONTyped(json, ignoreDiscriminator) {
37
+ if (json == null) {
38
+ return json;
39
+ }
40
+ return {
41
+ 'osName': json['osName'],
42
+ 'score': json['score'],
43
+ 'vmCount': json['vmCount'],
44
+ };
45
+ }
46
+ function ComplexityOSNameEntryToJSON(json) {
47
+ return ComplexityOSNameEntryToJSONTyped(json, false);
48
+ }
49
+ function ComplexityOSNameEntryToJSONTyped(value, ignoreDiscriminator = false) {
50
+ if (value == null) {
51
+ return value;
52
+ }
53
+ return {
54
+ 'osName': value['osName'],
55
+ 'score': value['score'],
56
+ 'vmCount': value['vmCount'],
57
+ };
58
+ }
@@ -10,6 +10,7 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import type { ComplexityOSScoreEntry } from './ComplexityOSScoreEntry.js';
13
+ import type { ComplexityOSNameEntry } from './ComplexityOSNameEntry.js';
13
14
  import type { ComplexityDiskScoreEntry } from './ComplexityDiskScoreEntry.js';
14
15
  /**
15
16
  * Migration complexity estimation results
@@ -49,6 +50,13 @@ export interface MigrationComplexityResponse {
49
50
  osRatings: {
50
51
  [key: string]: number;
51
52
  };
53
+ /**
54
+ * Per-OS-name complexity breakdown. One entry per distinct OS name found in the cluster's inventory. Each entry carries the OS name string, its numeric complexity score (0–4), and the number of VMs running it.
55
+ *
56
+ * @type {Array<ComplexityOSNameEntry>}
57
+ * @memberof MigrationComplexityResponse
58
+ */
59
+ complexityByOSName: Array<ComplexityOSNameEntry>;
52
60
  }
53
61
  /**
54
62
  * Check if a given object implements the MigrationComplexityResponse interface.
@@ -19,6 +19,7 @@ exports.MigrationComplexityResponseFromJSONTyped = MigrationComplexityResponseFr
19
19
  exports.MigrationComplexityResponseToJSON = MigrationComplexityResponseToJSON;
20
20
  exports.MigrationComplexityResponseToJSONTyped = MigrationComplexityResponseToJSONTyped;
21
21
  const ComplexityOSScoreEntry_js_1 = require("./ComplexityOSScoreEntry.js");
22
+ const ComplexityOSNameEntry_js_1 = require("./ComplexityOSNameEntry.js");
22
23
  const ComplexityDiskScoreEntry_js_1 = require("./ComplexityDiskScoreEntry.js");
23
24
  /**
24
25
  * Check if a given object implements the MigrationComplexityResponse interface.
@@ -32,6 +33,8 @@ function instanceOfMigrationComplexityResponse(value) {
32
33
  return false;
33
34
  if (!('osRatings' in value) || value['osRatings'] === undefined)
34
35
  return false;
36
+ if (!('complexityByOSName' in value) || value['complexityByOSName'] === undefined)
37
+ return false;
35
38
  return true;
36
39
  }
37
40
  function MigrationComplexityResponseFromJSON(json) {
@@ -46,6 +49,7 @@ function MigrationComplexityResponseFromJSONTyped(json, ignoreDiscriminator) {
46
49
  'complexityByOS': (json['complexityByOS'].map(ComplexityOSScoreEntry_js_1.ComplexityOSScoreEntryFromJSON)),
47
50
  'diskSizeRatings': json['diskSizeRatings'],
48
51
  'osRatings': json['osRatings'],
52
+ 'complexityByOSName': (json['complexityByOSName'].map(ComplexityOSNameEntry_js_1.ComplexityOSNameEntryFromJSON)),
49
53
  };
50
54
  }
51
55
  function MigrationComplexityResponseToJSON(json) {
@@ -60,5 +64,6 @@ function MigrationComplexityResponseToJSONTyped(value, ignoreDiscriminator = fal
60
64
  'complexityByOS': (value['complexityByOS'].map(ComplexityOSScoreEntry_js_1.ComplexityOSScoreEntryToJSON)),
61
65
  'diskSizeRatings': value['diskSizeRatings'],
62
66
  'osRatings': value['osRatings'],
67
+ 'complexityByOSName': (value['complexityByOSName'].map(ComplexityOSNameEntry_js_1.ComplexityOSNameEntryToJSON)),
63
68
  };
64
69
  }
@@ -7,6 +7,7 @@ export * from './ClusterRequirementsRequest.js';
7
7
  export * from './ClusterRequirementsResponse.js';
8
8
  export * from './ClusterSizing.js';
9
9
  export * from './ComplexityDiskScoreEntry.js';
10
+ export * from './ComplexityOSNameEntry.js';
10
11
  export * from './ComplexityOSScoreEntry.js';
11
12
  export * from './Datastore.js';
12
13
  export * from './DiskSizeTierSummary.js';
@@ -25,6 +25,7 @@ __exportStar(require("./ClusterRequirementsRequest.js"), exports);
25
25
  __exportStar(require("./ClusterRequirementsResponse.js"), exports);
26
26
  __exportStar(require("./ClusterSizing.js"), exports);
27
27
  __exportStar(require("./ComplexityDiskScoreEntry.js"), exports);
28
+ __exportStar(require("./ComplexityOSNameEntry.js"), exports);
28
29
  __exportStar(require("./ComplexityOSScoreEntry.js"), exports);
29
30
  __exportStar(require("./Datastore.js"), exports);
30
31
  __exportStar(require("./DiskSizeTierSummary.js"), exports);
@@ -0,0 +1,39 @@
1
+
2
+ # ComplexityOSNameEntry
3
+
4
+ One entry in the per-OS-name complexity breakdown.
5
+
6
+ ## Properties
7
+
8
+ Name | Type
9
+ ------------ | -------------
10
+ `osName` | string
11
+ `score` | number
12
+ `vmCount` | number
13
+
14
+ ## Example
15
+
16
+ ```typescript
17
+ import type { ComplexityOSNameEntry } from '@openshift-migration-advisor/planner-sdk'
18
+
19
+ // TODO: Update the object below with actual values
20
+ const example = {
21
+ "osName": null,
22
+ "score": null,
23
+ "vmCount": null,
24
+ } satisfies ComplexityOSNameEntry
25
+
26
+ console.log(example)
27
+
28
+ // Convert the instance to a JSON string
29
+ const exampleJSON: string = JSON.stringify(example)
30
+ console.log(exampleJSON)
31
+
32
+ // Parse the JSON string back to an object
33
+ const exampleParsed = JSON.parse(exampleJSON) as ComplexityOSNameEntry
34
+ console.log(exampleParsed)
35
+ ```
36
+
37
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
38
+
39
+
@@ -11,6 +11,7 @@ Name | Type
11
11
  `complexityByOS` | [Array&lt;ComplexityOSScoreEntry&gt;](ComplexityOSScoreEntry.md)
12
12
  `diskSizeRatings` | { [key: string]: number; }
13
13
  `osRatings` | { [key: string]: number; }
14
+ `complexityByOSName` | [Array&lt;ComplexityOSNameEntry&gt;](ComplexityOSNameEntry.md)
14
15
 
15
16
  ## Example
16
17
 
@@ -23,6 +24,7 @@ const example = {
23
24
  "complexityByOS": null,
24
25
  "diskSizeRatings": null,
25
26
  "osRatings": null,
27
+ "complexityByOSName": null,
26
28
  } satisfies MigrationComplexityResponse
27
29
 
28
30
  console.log(example)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openshift-migration-advisor/planner-sdk",
3
- "version": "0.6.0-72b0022c0833",
3
+ "version": "0.7.0-4ccf2aa66adf",
4
4
  "description": "OpenAPI client for @openshift-migration-advisor/planner-sdk",
5
5
  "author": "OpenAPI-Generator",
6
6
  "repository": {
@@ -0,0 +1,86 @@
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
+
15
+ import { mapValues } from '../runtime.js';
16
+ /**
17
+ * One entry in the per-OS-name complexity breakdown.
18
+ * @export
19
+ * @interface ComplexityOSNameEntry
20
+ */
21
+ export interface ComplexityOSNameEntry {
22
+ /**
23
+ * The OS name exactly as it appears in vms.osInfo (e.g. "Red Hat Enterprise Linux 9 (64-bit)").
24
+ *
25
+ * @type {string}
26
+ * @memberof ComplexityOSNameEntry
27
+ */
28
+ osName: string;
29
+ /**
30
+ * Complexity score assigned by ClassifyOS. 0 = unclassified, 1 = least complex, 4 = most complex.
31
+ *
32
+ * @type {number}
33
+ * @memberof ComplexityOSNameEntry
34
+ */
35
+ score: number;
36
+ /**
37
+ * Number of VMs running this OS.
38
+ * @type {number}
39
+ * @memberof ComplexityOSNameEntry
40
+ */
41
+ vmCount: number;
42
+ }
43
+
44
+ /**
45
+ * Check if a given object implements the ComplexityOSNameEntry interface.
46
+ */
47
+ export function instanceOfComplexityOSNameEntry(value: object): value is ComplexityOSNameEntry {
48
+ if (!('osName' in value) || value['osName'] === undefined) return false;
49
+ if (!('score' in value) || value['score'] === undefined) return false;
50
+ if (!('vmCount' in value) || value['vmCount'] === undefined) return false;
51
+ return true;
52
+ }
53
+
54
+ export function ComplexityOSNameEntryFromJSON(json: any): ComplexityOSNameEntry {
55
+ return ComplexityOSNameEntryFromJSONTyped(json, false);
56
+ }
57
+
58
+ export function ComplexityOSNameEntryFromJSONTyped(json: any, ignoreDiscriminator: boolean): ComplexityOSNameEntry {
59
+ if (json == null) {
60
+ return json;
61
+ }
62
+ return {
63
+
64
+ 'osName': json['osName'],
65
+ 'score': json['score'],
66
+ 'vmCount': json['vmCount'],
67
+ };
68
+ }
69
+
70
+ export function ComplexityOSNameEntryToJSON(json: any): ComplexityOSNameEntry {
71
+ return ComplexityOSNameEntryToJSONTyped(json, false);
72
+ }
73
+
74
+ export function ComplexityOSNameEntryToJSONTyped(value?: ComplexityOSNameEntry | null, ignoreDiscriminator: boolean = false): any {
75
+ if (value == null) {
76
+ return value;
77
+ }
78
+
79
+ return {
80
+
81
+ 'osName': value['osName'],
82
+ 'score': value['score'],
83
+ 'vmCount': value['vmCount'],
84
+ };
85
+ }
86
+
@@ -20,6 +20,13 @@ import {
20
20
  ComplexityOSScoreEntryToJSON,
21
21
  ComplexityOSScoreEntryToJSONTyped,
22
22
  } from './ComplexityOSScoreEntry.js';
23
+ import type { ComplexityOSNameEntry } from './ComplexityOSNameEntry.js';
24
+ import {
25
+ ComplexityOSNameEntryFromJSON,
26
+ ComplexityOSNameEntryFromJSONTyped,
27
+ ComplexityOSNameEntryToJSON,
28
+ ComplexityOSNameEntryToJSONTyped,
29
+ } from './ComplexityOSNameEntry.js';
23
30
  import type { ComplexityDiskScoreEntry } from './ComplexityDiskScoreEntry.js';
24
31
  import {
25
32
  ComplexityDiskScoreEntryFromJSON,
@@ -62,6 +69,13 @@ export interface MigrationComplexityResponse {
62
69
  * @memberof MigrationComplexityResponse
63
70
  */
64
71
  osRatings: { [key: string]: number; };
72
+ /**
73
+ * Per-OS-name complexity breakdown. One entry per distinct OS name found in the cluster's inventory. Each entry carries the OS name string, its numeric complexity score (0–4), and the number of VMs running it.
74
+ *
75
+ * @type {Array<ComplexityOSNameEntry>}
76
+ * @memberof MigrationComplexityResponse
77
+ */
78
+ complexityByOSName: Array<ComplexityOSNameEntry>;
65
79
  }
66
80
 
67
81
  /**
@@ -72,6 +86,7 @@ export function instanceOfMigrationComplexityResponse(value: object): value is M
72
86
  if (!('complexityByOS' in value) || value['complexityByOS'] === undefined) return false;
73
87
  if (!('diskSizeRatings' in value) || value['diskSizeRatings'] === undefined) return false;
74
88
  if (!('osRatings' in value) || value['osRatings'] === undefined) return false;
89
+ if (!('complexityByOSName' in value) || value['complexityByOSName'] === undefined) return false;
75
90
  return true;
76
91
  }
77
92
 
@@ -89,6 +104,7 @@ export function MigrationComplexityResponseFromJSONTyped(json: any, ignoreDiscri
89
104
  'complexityByOS': ((json['complexityByOS'] as Array<any>).map(ComplexityOSScoreEntryFromJSON)),
90
105
  'diskSizeRatings': json['diskSizeRatings'],
91
106
  'osRatings': json['osRatings'],
107
+ 'complexityByOSName': ((json['complexityByOSName'] as Array<any>).map(ComplexityOSNameEntryFromJSON)),
92
108
  };
93
109
  }
94
110
 
@@ -107,6 +123,7 @@ export function MigrationComplexityResponseToJSONTyped(value?: MigrationComplexi
107
123
  'complexityByOS': ((value['complexityByOS'] as Array<any>).map(ComplexityOSScoreEntryToJSON)),
108
124
  'diskSizeRatings': value['diskSizeRatings'],
109
125
  'osRatings': value['osRatings'],
126
+ 'complexityByOSName': ((value['complexityByOSName'] as Array<any>).map(ComplexityOSNameEntryToJSON)),
110
127
  };
111
128
  }
112
129
 
@@ -9,6 +9,7 @@ export * from './ClusterRequirementsRequest.js';
9
9
  export * from './ClusterRequirementsResponse.js';
10
10
  export * from './ClusterSizing.js';
11
11
  export * from './ComplexityDiskScoreEntry.js';
12
+ export * from './ComplexityOSNameEntry.js';
12
13
  export * from './ComplexityOSScoreEntry.js';
13
14
  export * from './Datastore.js';
14
15
  export * from './DiskSizeTierSummary.js';