@vates/types 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/xo.d.mts +77 -3
  2. package/package.json +1 -1
package/dist/xo.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import type { Branded, DOMAIN_TYPE, HOST_ALLOWED_OPERATIONS, HOST_POWER_STATE, STORAGE_OPERATIONS, VDI_OPERATIONS, VDI_TYPE, VM_OPERATIONS, VM_POWER_STATE } from './common.mjs';
1
+ import type { Branded, DOMAIN_TYPE, HOST_ALLOWED_OPERATIONS, HOST_POWER_STATE, POOL_ALLOWED_OPERATIONS, STORAGE_OPERATIONS, VDI_OPERATIONS, VDI_TYPE, VIF_LOCKING_MODE, VM_OPERATIONS, VM_POWER_STATE } from './common.mjs';
2
2
  type BaseXapiXo = {
3
3
  $pool: XoPool['id'];
4
4
  /**
@@ -41,7 +41,11 @@ type BaseXoVm = BaseXapiXo & {
41
41
  process?: string;
42
42
  version?: string;
43
43
  };
44
+ /**
45
+ * @deprecated use isNestedVirtEnabled instead
46
+ */
44
47
  expNestedHvm: boolean;
48
+ isNestedVirtEnabled: boolean;
45
49
  hasVendorDevice: boolean;
46
50
  high_availability: string;
47
51
  installTime?: number;
@@ -87,6 +91,17 @@ type BaseXoVm = BaseXapiXo & {
87
91
  version: null | string;
88
92
  };
89
93
  };
94
+ export type XoAlarm = Omit<XoMessage, '$object' | 'body'> & {
95
+ body: {
96
+ value: string;
97
+ name: string;
98
+ };
99
+ object: {
100
+ type: XapiXoRecord['type'] | 'unknown';
101
+ uuid: XapiXoRecord['uuid'];
102
+ href?: string;
103
+ };
104
+ };
90
105
  export type XoGroup = {
91
106
  id: Branded<'group'>;
92
107
  name: string;
@@ -176,6 +191,18 @@ export type XoHostPatch = BaseXapiXo & {
176
191
  id: Branded<'host_patch'>;
177
192
  type: 'host_patch';
178
193
  };
194
+ export type XoMessage = BaseXapiXo & {
195
+ $object: XapiXoRecord['id'];
196
+ body: string;
197
+ id: Branded<'message'>;
198
+ name: string;
199
+ time: number;
200
+ type: 'message';
201
+ };
202
+ export type XoNetwork = BaseXapiXo & {
203
+ id: Branded<'network'>;
204
+ type: 'network';
205
+ };
179
206
  export type XoPbd = BaseXapiXo & {
180
207
  id: Branded<'PBD'>;
181
208
  type: 'PBD';
@@ -193,8 +220,40 @@ export type XoPif = BaseXapiXo & {
193
220
  type: 'PIF';
194
221
  };
195
222
  export type XoPool = BaseXapiXo & {
223
+ auto_poweron: boolean;
224
+ cpus: {
225
+ cores?: number;
226
+ sockets?: number;
227
+ };
228
+ crashDumpSr?: XoSr['id'];
229
+ current_operations: Record<string, POOL_ALLOWED_OPERATIONS>;
230
+ defaultSr?: XoSr['id'];
231
+ HA_enabled: boolean;
232
+ haSrs: XoSr['id'][];
196
233
  id: Branded<'pool'>;
234
+ master: XoHost['id'];
235
+ migrationCompression?: boolean;
236
+ name_description: string;
237
+ name_label: string;
238
+ otherConfig: Record<string, string>;
239
+ platform_version: string;
240
+ suspendSr?: XoSr['id'];
241
+ tags: string[];
197
242
  type: 'pool';
243
+ vtpmSupported: boolean;
244
+ xosanPackInstallationTime: number | null;
245
+ zstdSupported: boolean;
246
+ };
247
+ export type XoJob = {
248
+ id: Branded<'job'>;
249
+ };
250
+ export type XoSchedule = {
251
+ cron: string;
252
+ enable: boolean;
253
+ id: Branded<'schedule'>;
254
+ jobId: XoJob['id'];
255
+ name?: string;
256
+ timezone?: string;
198
257
  };
199
258
  export type XoServer = {
200
259
  allowUnauthorized: boolean;
@@ -289,7 +348,22 @@ export type XoVgpu = BaseXapiXo & {
289
348
  type: 'VGPU';
290
349
  };
291
350
  export type XoVif = BaseXapiXo & {
351
+ $VM: XoVm['id'];
352
+ $network: XoNetwork['id'];
353
+ allowedIpv4Addresses: string[];
354
+ allowedIpv6Addresses: string[];
355
+ attached: boolean;
356
+ device: string;
292
357
  id: Branded<'VIF'>;
358
+ lockingMode: VIF_LOCKING_MODE;
359
+ MAC: string;
360
+ MTU: number;
361
+ other_config: Record<string, string>;
362
+ /**
363
+ * In kB/s
364
+ */
365
+ rateLimit?: number;
366
+ txChecksumming: boolean;
293
367
  type: 'VIF';
294
368
  };
295
369
  export type XoVm = BaseXoVm & {
@@ -327,7 +401,7 @@ export type XoVtpm = BaseXapiXo & {
327
401
  id: Branded<'VTPM'>;
328
402
  type: 'VTPM';
329
403
  };
330
- export type XapiXoRecord = XoHost | XoPool | XoSr | XoVbd | XoVdi | XoVdiSnapshot | XoVdiUnmanaged | XoVgpu | XoVif | XoVm | XoVmController | XoVmSnapshot | XoVmTemplate | XoVtpm;
331
- export type NonXapiXoRecord = XoGroup | XoServer | XoUser;
404
+ export type XapiXoRecord = XoAlarm | XoHost | XoMessage | XoNetwork | XoPool | XoSr | XoVbd | XoVdi | XoVdiSnapshot | XoVdiUnmanaged | XoVgpu | XoVif | XoVm | XoVmController | XoVmSnapshot | XoVmTemplate | XoVtpm;
405
+ export type NonXapiXoRecord = XoGroup | XoJob | XoSchedule | XoServer | XoUser;
332
406
  export type XoRecord = XapiXoRecord | NonXapiXoRecord;
333
407
  export {};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vates/types",
3
3
  "private": false,
4
- "version": "1.1.0",
4
+ "version": "1.2.0",
5
5
  "main": "./dist/index.mjs",
6
6
  "exports": {
7
7
  ".": {