@sourceregistry/node-ovsdb 1.0.1 → 1.0.3

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.
@@ -1,162 +1,223 @@
1
1
  /**
2
- * A JSON value of any type.
2
+ * JSON primitive values.
3
3
  */
4
- export type JsonValue = string | number | boolean | null | JsonValue[] | {
5
- [key: string]: JsonValue;
6
- };
4
+ export type JsonPrimitive = string | number | boolean | null;
7
5
  /**
8
- * An error object as defined in RFC 7047, Section 3.1.
6
+ * A JSON object value.
9
7
  */
10
- export interface OvsdbError {
11
- error: string;
12
- details: string | null;
8
+ export interface JsonObject {
13
9
  [key: string]: JsonValue;
14
10
  }
15
11
  /**
16
- * A result that can be either a success value or an error.
12
+ * Any JSON-compatible value.
17
13
  */
18
- export type OvsdbResult<T> = T | OvsdbError;
14
+ export type JsonValue = JsonPrimitive | JsonValue[] | JsonObject;
19
15
  /**
20
- * The response to an RPC request as defined in RFC 7047, Section 4.1.
16
+ * A UUID wrapper used by OVSDB atoms and transaction results.
21
17
  */
22
- export interface OvsdbResponse<T = JsonValue> {
23
- result: OvsdbResult<T>;
18
+ export type Uuid = ["uuid", string];
19
+ /**
20
+ * A named UUID wrapper used to reference values created earlier in a transaction.
21
+ */
22
+ export type NamedUuid = ["named-uuid", string];
23
+ /**
24
+ * An OVSDB set value.
25
+ */
26
+ export type OvsSet<T = JsonValue> = ["set", T[]];
27
+ /**
28
+ * An OVSDB map value.
29
+ */
30
+ export type OvsMap<TKey = JsonValue, TValue = JsonValue> = ["map", Array<[TKey, TValue]>];
31
+ /**
32
+ * Any commonly exchanged OVSDB value.
33
+ */
34
+ export type OvsdbValue = JsonValue | Uuid | NamedUuid | OvsSet | OvsMap;
35
+ /**
36
+ * A generic row shape for application-level table typing.
37
+ */
38
+ export type RowRecord = Record<string, OvsdbValue>;
39
+ /**
40
+ * A generic table map keyed by table name.
41
+ */
42
+ export type DatabaseTableMap = Record<string, RowRecord>;
43
+ /**
44
+ * Extracts valid table names from a database type.
45
+ */
46
+ export type TableName<TDatabase extends DatabaseTableMap> = Extract<keyof TDatabase, string>;
47
+ /**
48
+ * Extracts the row type for a table in a database type.
49
+ */
50
+ export type TableRow<TDatabase extends DatabaseTableMap, TTable extends TableName<TDatabase>> = TDatabase[TTable];
51
+ /**
52
+ * Extracts valid column names for a table in a database type.
53
+ */
54
+ export type ColumnName<TDatabase extends DatabaseTableMap, TTable extends TableName<TDatabase>> = Extract<keyof TableRow<TDatabase, TTable>, string>;
55
+ /**
56
+ * OVSDB operation and RPC errors.
57
+ */
58
+ export interface OvsdbError {
59
+ error: string;
60
+ details?: string | null;
61
+ [key: string]: JsonValue | undefined;
62
+ }
63
+ /**
64
+ * A successful JSON-RPC response envelope.
65
+ */
66
+ export interface OvsdbSuccessResponse<TResult = JsonValue> {
67
+ result: TResult;
24
68
  error: null;
25
69
  id: JsonValue;
26
70
  }
27
71
  /**
28
- * A monitor request configuration as defined in RFC 7047, Section 4.1.5.
29
- * Renamed from 'MonitorRequest' to avoid conflict with the top-level request.
72
+ * A failed JSON-RPC response envelope.
30
73
  */
31
- export interface MonitorConfig {
32
- columns?: string[];
33
- select?: {
34
- initial?: boolean;
35
- insert?: boolean;
36
- delete?: boolean;
37
- modify?: boolean;
38
- };
74
+ export interface OvsdbErrorResponse {
75
+ result?: null;
76
+ error: OvsdbError;
77
+ id: JsonValue;
39
78
  }
40
79
  /**
41
- * The request for the 'list_dbs' method.
80
+ * A JSON-RPC response returned by an OVSDB server.
42
81
  */
43
- export type ListDbsRequest = {
44
- method: 'list_dbs';
45
- params: [];
46
- id: JsonValue;
47
- };
82
+ export type OvsdbResponse<TResult = JsonValue> = OvsdbSuccessResponse<TResult> | OvsdbErrorResponse;
48
83
  /**
49
- * The response for the 'list_dbs' method.
84
+ * A JSON-RPC notification emitted by the server.
50
85
  */
51
- export type ListDbsResponse = OvsdbResponse<string[]>;
86
+ export interface OvsdbNotificationBase<TMethod extends string, TParams extends unknown[]> {
87
+ method: TMethod;
88
+ params: TParams;
89
+ id: null;
90
+ }
52
91
  /**
53
- * The request for the 'get_schema' method.
92
+ * RFC 7047 condition operators plus Open vSwitch extensions used by monitor condition APIs.
54
93
  */
55
- export type GetSchemaRequest = {
56
- method: 'get_schema';
57
- params: [string];
58
- id: JsonValue;
59
- };
94
+ export type ConditionFunction = "<" | "<=" | "==" | "!=" | ">" | ">=" | "includes" | "excludes";
60
95
  /**
61
- * The response for the 'get_schema' method.
96
+ * OVSDB mutation operators.
62
97
  */
63
- export type GetSchemaResponse = OvsdbResponse<DatabaseSchema>;
98
+ export type MutationOperator = "+=" | "-=" | "*=" | "/=" | "%=" | "insert" | "delete";
64
99
  /**
65
- * The request for the 'transact' method.
100
+ * A column condition for a specific table.
66
101
  */
67
- export type TransactRequest = {
68
- method: 'transact';
69
- params: [string, DatabaseOperation[]];
70
- id: JsonValue;
71
- };
102
+ export type ConditionForTable<TDatabase extends DatabaseTableMap, TTable extends TableName<TDatabase>> = {
103
+ [TColumn in ColumnName<TDatabase, TTable>]: [
104
+ TColumn,
105
+ ConditionFunction,
106
+ TableRow<TDatabase, TTable>[TColumn] | OvsdbValue
107
+ ];
108
+ }[ColumnName<TDatabase, TTable>] | [string, ConditionFunction, OvsdbValue];
72
109
  /**
73
- * The response for the 'transact' method.
110
+ * A column mutation for a specific table.
74
111
  */
75
- export type TransactResponse = OvsdbResponse<Array<OvsdbResult<unknown>>>;
112
+ export type MutationForTable<TDatabase extends DatabaseTableMap, TTable extends TableName<TDatabase>> = {
113
+ [TColumn in ColumnName<TDatabase, TTable>]: [
114
+ TColumn,
115
+ MutationOperator,
116
+ TableRow<TDatabase, TTable>[TColumn] | OvsdbValue
117
+ ];
118
+ }[ColumnName<TDatabase, TTable>] | [string, MutationOperator, OvsdbValue];
76
119
  /**
77
- * The request for the 'monitor' method.
120
+ * Select clauses for monitor requests.
78
121
  */
79
- export type MonitorRequest = {
80
- method: 'monitor';
81
- params: [string, JsonValue, Record<string, MonitorConfig[]>];
82
- id: JsonValue;
83
- };
122
+ export interface MonitorSelect {
123
+ initial?: boolean;
124
+ insert?: boolean;
125
+ delete?: boolean;
126
+ modify?: boolean;
127
+ }
84
128
  /**
85
- * The response for the 'monitor' method.
129
+ * A standard OVSDB monitor request for a table.
86
130
  */
87
- export type MonitorResponse = OvsdbResponse<Record<string, TableUpdate>>;
131
+ export interface MonitorRequest<TDatabase extends DatabaseTableMap = DatabaseTableMap, TTable extends TableName<TDatabase> = TableName<TDatabase>> {
132
+ columns?: Array<ColumnName<TDatabase, TTable> | string>;
133
+ select?: MonitorSelect;
134
+ }
88
135
  /**
89
- * The request for the 'monitor_cancel' method.
136
+ * A conditional monitor request for a table.
90
137
  */
91
- export type MonitorCancelRequest = {
92
- method: 'monitor_cancel';
93
- params: [JsonValue];
94
- id: JsonValue;
95
- };
138
+ export interface MonitorCondRequest<TDatabase extends DatabaseTableMap = DatabaseTableMap, TTable extends TableName<TDatabase> = TableName<TDatabase>> extends MonitorRequest<TDatabase, TTable> {
139
+ where?: Array<ConditionForTable<TDatabase, TTable>>;
140
+ }
96
141
  /**
97
- * The response for the 'monitor_cancel' method.
142
+ * Table update payload used by RFC 7047 monitor notifications.
98
143
  */
99
- export type MonitorCancelResponse = OvsdbResponse<Record<string, never>>;
144
+ export type TableUpdate<TDatabase extends DatabaseTableMap = DatabaseTableMap, TTable extends TableName<TDatabase> = TableName<TDatabase>> = Record<string, RowUpdate<TableRow<TDatabase, TTable>>>;
100
145
  /**
101
- * The request for the 'echo' method.
146
+ * RFC 7047 row update payload.
102
147
  */
103
- export type EchoRequest = {
104
- method: 'echo';
105
- params: JsonValue[];
106
- id: JsonValue;
107
- };
148
+ export interface RowUpdate<TRow extends RowRecord = RowRecord> {
149
+ old?: Partial<TRow>;
150
+ new?: Partial<TRow>;
151
+ }
108
152
  /**
109
- * The response for the 'echo' method.
153
+ * Open vSwitch conditional monitor update payload.
110
154
  */
111
- export type EchoResponse = OvsdbResponse<JsonValue[]>;
155
+ export type TableUpdate2<TDatabase extends DatabaseTableMap = DatabaseTableMap, TTable extends TableName<TDatabase> = TableName<TDatabase>> = Record<string, RowUpdate2<TableRow<TDatabase, TTable>>>;
112
156
  /**
113
- * The notification for the 'update' method.
157
+ * Open vSwitch conditional row update payload.
114
158
  */
115
- export type UpdateNotification = {
116
- method: 'update';
117
- params: [JsonValue, Record<string, TableUpdate>];
118
- id: null;
119
- };
159
+ export interface RowUpdate2<TRow extends RowRecord = RowRecord> {
160
+ initial?: Partial<TRow>;
161
+ insert?: Partial<TRow>;
162
+ modify?: Partial<TRow>;
163
+ delete?: Partial<TRow>;
164
+ old?: Partial<TRow>;
165
+ new?: Partial<TRow>;
166
+ }
120
167
  /**
121
- * The notification for the 'locked' method.
168
+ * Multi-table update payload returned by RFC 7047 `monitor`.
122
169
  */
123
- export type LockedNotification = {
124
- method: 'locked';
125
- params: [string];
126
- id: null;
127
- };
170
+ export type TableUpdates<TDatabase extends DatabaseTableMap = DatabaseTableMap> = Partial<{
171
+ [TTable in TableName<TDatabase>]: TableUpdate<TDatabase, TTable>;
172
+ }> & Record<string, TableUpdate>;
128
173
  /**
129
- * The notification for the 'stolen' method.
174
+ * Multi-table update payload returned by conditional monitor extensions.
175
+ */
176
+ export type TableUpdates2<TDatabase extends DatabaseTableMap = DatabaseTableMap> = Partial<{
177
+ [TTable in TableName<TDatabase>]: TableUpdate2<TDatabase, TTable>;
178
+ }> & Record<string, TableUpdate2>;
179
+ /**
180
+ * OVSDB schema response payload.
130
181
  */
131
- export type StolenNotification = {
132
- method: 'stolen';
133
- params: [string];
134
- id: null;
135
- };
136
182
  export interface DatabaseSchema {
137
183
  name: string;
138
184
  version: string;
139
185
  cksum?: string;
140
186
  tables: Record<string, TableSchema>;
141
187
  }
188
+ /**
189
+ * Table schema metadata.
190
+ */
142
191
  export interface TableSchema {
143
192
  columns: Record<string, ColumnSchema>;
144
193
  maxRows?: number;
145
194
  isRoot?: boolean;
146
195
  indexes?: string[][];
147
196
  }
197
+ /**
198
+ * Column schema metadata.
199
+ */
148
200
  export interface ColumnSchema {
149
201
  type: Type;
150
202
  ephemeral?: boolean;
151
203
  mutable?: boolean;
152
204
  }
205
+ /**
206
+ * OVSDB type metadata.
207
+ */
153
208
  export type Type = AtomicType | {
154
209
  key: BaseType;
155
210
  value?: BaseType;
156
211
  min?: number;
157
- max?: number | 'unlimited';
212
+ max?: number | "unlimited";
158
213
  };
159
- export type AtomicType = 'integer' | 'real' | 'boolean' | 'string' | 'uuid';
214
+ /**
215
+ * OVSDB atomic types.
216
+ */
217
+ export type AtomicType = "integer" | "real" | "boolean" | "string" | "uuid";
218
+ /**
219
+ * OVSDB base type metadata.
220
+ */
160
221
  export type BaseType = AtomicType | {
161
222
  type: AtomicType;
162
223
  enum?: JsonValue;
@@ -167,56 +228,275 @@ export type BaseType = AtomicType | {
167
228
  minLength?: number;
168
229
  maxLength?: number;
169
230
  refTable?: string;
170
- refType?: 'strong' | 'weak';
231
+ refType?: "strong" | "weak";
171
232
  };
172
- export type TableUpdate = Record<string, RowUpdate>;
173
- export interface RowUpdate {
174
- old?: Record<string, JsonValue>;
175
- new?: Record<string, JsonValue>;
176
- }
177
- export type DatabaseOperation = {
178
- op: 'insert';
179
- table: string;
180
- row: Record<string, JsonValue>;
233
+ /**
234
+ * Insert operation.
235
+ */
236
+ export type InsertOperation<TDatabase extends DatabaseTableMap, TTable extends TableName<TDatabase> = TableName<TDatabase>> = {
237
+ op: "insert";
238
+ table: TTable;
239
+ row: Partial<TableRow<TDatabase, TTable>> & RowRecord;
181
240
  uuidName?: string;
182
- } | {
183
- op: 'select';
184
- table: string;
185
- where: Condition[];
186
- columns?: string[];
187
- } | {
188
- op: 'update';
189
- table: string;
190
- where: Condition[];
191
- row: Record<string, JsonValue>;
192
- } | {
193
- op: 'mutate';
194
- table: string;
195
- where: Condition[];
196
- mutations: Mutation[];
197
- } | {
198
- op: 'delete';
199
- table: string;
200
- where: Condition[];
201
- } | {
202
- op: 'wait';
241
+ };
242
+ /**
243
+ * Select operation.
244
+ */
245
+ export type SelectOperation<TDatabase extends DatabaseTableMap, TTable extends TableName<TDatabase> = TableName<TDatabase>> = {
246
+ op: "select";
247
+ table: TTable;
248
+ where: Array<ConditionForTable<TDatabase, TTable>>;
249
+ columns?: Array<ColumnName<TDatabase, TTable> | string>;
250
+ };
251
+ /**
252
+ * Update operation.
253
+ */
254
+ export type UpdateOperation<TDatabase extends DatabaseTableMap, TTable extends TableName<TDatabase> = TableName<TDatabase>> = {
255
+ op: "update";
256
+ table: TTable;
257
+ where: Array<ConditionForTable<TDatabase, TTable>>;
258
+ row: Partial<TableRow<TDatabase, TTable>> & RowRecord;
259
+ };
260
+ /**
261
+ * Mutate operation.
262
+ */
263
+ export type MutateOperation<TDatabase extends DatabaseTableMap, TTable extends TableName<TDatabase> = TableName<TDatabase>> = {
264
+ op: "mutate";
265
+ table: TTable;
266
+ where: Array<ConditionForTable<TDatabase, TTable>>;
267
+ mutations: Array<MutationForTable<TDatabase, TTable>>;
268
+ };
269
+ /**
270
+ * Delete operation.
271
+ */
272
+ export type DeleteOperation<TDatabase extends DatabaseTableMap, TTable extends TableName<TDatabase> = TableName<TDatabase>> = {
273
+ op: "delete";
274
+ table: TTable;
275
+ where: Array<ConditionForTable<TDatabase, TTable>>;
276
+ };
277
+ /**
278
+ * Wait operation.
279
+ */
280
+ export type WaitOperation<TDatabase extends DatabaseTableMap, TTable extends TableName<TDatabase> = TableName<TDatabase>> = {
281
+ op: "wait";
203
282
  timeout?: number;
204
- table: string;
205
- where: Condition[];
206
- columns: string[];
207
- until: '==' | '!=';
208
- rows: Record<string, JsonValue>[];
209
- } | {
210
- op: 'commit';
283
+ table: TTable;
284
+ where: Array<ConditionForTable<TDatabase, TTable>>;
285
+ columns: Array<ColumnName<TDatabase, TTable> | string>;
286
+ until: "==" | "!=";
287
+ rows: Array<Partial<TableRow<TDatabase, TTable>> & RowRecord>;
288
+ };
289
+ /**
290
+ * Commit operation.
291
+ */
292
+ export interface CommitOperation {
293
+ op: "commit";
211
294
  durable: boolean;
212
- } | {
213
- op: 'abort';
214
- } | {
215
- op: 'comment';
295
+ }
296
+ /**
297
+ * Abort operation.
298
+ */
299
+ export interface AbortOperation {
300
+ op: "abort";
301
+ }
302
+ /**
303
+ * Comment operation.
304
+ */
305
+ export interface CommentOperation {
306
+ op: "comment";
216
307
  comment: string;
217
- } | {
218
- op: 'assert';
308
+ }
309
+ /**
310
+ * Assert operation.
311
+ */
312
+ export interface AssertOperation {
313
+ op: "assert";
219
314
  lock: string;
315
+ }
316
+ /**
317
+ * Any OVSDB transaction operation.
318
+ */
319
+ export type DatabaseOperation<TDatabase extends DatabaseTableMap = DatabaseTableMap> = InsertOperation<TDatabase> | SelectOperation<TDatabase> | UpdateOperation<TDatabase> | MutateOperation<TDatabase> | DeleteOperation<TDatabase> | WaitOperation<TDatabase> | CommitOperation | AbortOperation | CommentOperation | AssertOperation;
320
+ /**
321
+ * Insert operation result.
322
+ */
323
+ export interface InsertResult {
324
+ uuid: Uuid;
325
+ }
326
+ /**
327
+ * Count-based operation result.
328
+ */
329
+ export interface CountResult {
330
+ count: number;
331
+ }
332
+ /**
333
+ * Select operation result.
334
+ */
335
+ export interface SelectResult<TRow extends RowRecord = RowRecord> {
336
+ rows: TRow[];
337
+ }
338
+ /**
339
+ * Acknowledge-style operation result.
340
+ */
341
+ export type EmptyResult = Record<string, never>;
342
+ /**
343
+ * Maps a transaction operation type to its result payload.
344
+ */
345
+ export type OperationResult<TDatabase extends DatabaseTableMap, TOperation extends DatabaseOperation<TDatabase>> = TOperation extends InsertOperation<TDatabase> ? InsertResult : TOperation extends SelectOperation<TDatabase, infer TTable> ? SelectResult<TableRow<TDatabase, TTable>> : TOperation extends UpdateOperation<TDatabase> ? CountResult : TOperation extends MutateOperation<TDatabase> ? CountResult : TOperation extends DeleteOperation<TDatabase> ? CountResult : TOperation extends WaitOperation<TDatabase> ? EmptyResult : TOperation extends CommitOperation ? EmptyResult : TOperation extends AbortOperation ? EmptyResult : TOperation extends CommentOperation ? EmptyResult : TOperation extends AssertOperation ? EmptyResult : never;
346
+ /**
347
+ * Maps a transaction tuple to its response tuple.
348
+ */
349
+ export type OperationResults<TDatabase extends DatabaseTableMap, TOperations extends readonly DatabaseOperation<TDatabase>[]> = {
350
+ [TIndex in keyof TOperations]: TOperations[TIndex] extends DatabaseOperation<TDatabase> ? OperationResult<TDatabase, TOperations[TIndex]> | OvsdbError : never;
220
351
  };
221
- export type Condition = [string, string, JsonValue];
222
- export type Mutation = [string, string, JsonValue];
352
+ /**
353
+ * `list_dbs` response payload.
354
+ */
355
+ export type ListDbsResult = string[];
356
+ /**
357
+ * `monitor_cond_since` response payload.
358
+ */
359
+ export type MonitorCondSinceResult<TDatabase extends DatabaseTableMap = DatabaseTableMap> = [
360
+ found: boolean,
361
+ lastTransactionId: string | null,
362
+ updates: TableUpdates2<TDatabase>
363
+ ];
364
+ /**
365
+ * `list_dbs` request envelope.
366
+ */
367
+ export interface ListDbsRequest {
368
+ method: "list_dbs";
369
+ params: [];
370
+ id: JsonValue;
371
+ }
372
+ /**
373
+ * `get_schema` request envelope.
374
+ */
375
+ export interface GetSchemaRequest {
376
+ method: "get_schema";
377
+ params: [string];
378
+ id: JsonValue;
379
+ }
380
+ /**
381
+ * `transact` request envelope.
382
+ */
383
+ export interface TransactRequest<TDatabase extends DatabaseTableMap = DatabaseTableMap> {
384
+ method: "transact";
385
+ params: [string, ...DatabaseOperation<TDatabase>[]];
386
+ id: JsonValue;
387
+ }
388
+ /**
389
+ * `cancel` request envelope.
390
+ */
391
+ export interface CancelRequest {
392
+ method: "cancel";
393
+ params: [JsonValue];
394
+ id: JsonValue;
395
+ }
396
+ /**
397
+ * `monitor` request envelope.
398
+ */
399
+ export interface MonitorRpcRequest<TDatabase extends DatabaseTableMap = DatabaseTableMap> {
400
+ method: "monitor";
401
+ params: [string, JsonValue, Record<string, MonitorRequest<TDatabase>>];
402
+ id: JsonValue;
403
+ }
404
+ /**
405
+ * `monitor_cond` request envelope.
406
+ */
407
+ export interface MonitorCondRpcRequest<TDatabase extends DatabaseTableMap = DatabaseTableMap> {
408
+ method: "monitor_cond";
409
+ params: [string, JsonValue, Record<string, MonitorCondRequest<TDatabase>>];
410
+ id: JsonValue;
411
+ }
412
+ /**
413
+ * `monitor_cond_since` request envelope.
414
+ */
415
+ export interface MonitorCondSinceRpcRequest<TDatabase extends DatabaseTableMap = DatabaseTableMap> {
416
+ method: "monitor_cond_since";
417
+ params: [string, JsonValue, Record<string, MonitorCondRequest<TDatabase>>, string | null];
418
+ id: JsonValue;
419
+ }
420
+ /**
421
+ * `monitor_cancel` request envelope.
422
+ */
423
+ export interface MonitorCancelRequest {
424
+ method: "monitor_cancel";
425
+ params: [JsonValue];
426
+ id: JsonValue;
427
+ }
428
+ /**
429
+ * `lock` request envelope.
430
+ */
431
+ export interface LockRequest {
432
+ method: "lock";
433
+ params: [string];
434
+ id: JsonValue;
435
+ }
436
+ /**
437
+ * `steal` request envelope.
438
+ */
439
+ export interface StealRequest {
440
+ method: "steal";
441
+ params: [string];
442
+ id: JsonValue;
443
+ }
444
+ /**
445
+ * `unlock` request envelope.
446
+ */
447
+ export interface UnlockRequest {
448
+ method: "unlock";
449
+ params: [string];
450
+ id: JsonValue;
451
+ }
452
+ /**
453
+ * `echo` request envelope.
454
+ */
455
+ export interface EchoRequest {
456
+ method: "echo";
457
+ params: JsonValue[];
458
+ id: JsonValue;
459
+ }
460
+ /**
461
+ * Open vSwitch `set_db_change_aware` request envelope.
462
+ */
463
+ export interface SetDbChangeAwareRequest {
464
+ method: "set_db_change_aware";
465
+ params: [boolean];
466
+ id: JsonValue;
467
+ }
468
+ /**
469
+ * RFC 7047 `update` notification payload.
470
+ */
471
+ export type UpdateNotification<TDatabase extends DatabaseTableMap = DatabaseTableMap> = OvsdbNotificationBase<"update", [
472
+ JsonValue,
473
+ TableUpdates<TDatabase>
474
+ ]>;
475
+ /**
476
+ * Open vSwitch `update2` notification payload.
477
+ */
478
+ export type Update2Notification<TDatabase extends DatabaseTableMap = DatabaseTableMap> = OvsdbNotificationBase<"update2", [
479
+ JsonValue,
480
+ TableUpdates2<TDatabase>
481
+ ]>;
482
+ /**
483
+ * Open vSwitch `update3` notification payload.
484
+ */
485
+ export type Update3Notification<TDatabase extends DatabaseTableMap = DatabaseTableMap> = OvsdbNotificationBase<"update3", [
486
+ JsonValue,
487
+ TableUpdates2<TDatabase>,
488
+ string | null
489
+ ]>;
490
+ /**
491
+ * Lock acquisition notification payload.
492
+ */
493
+ export type LockedNotification = OvsdbNotificationBase<"locked", [string]>;
494
+ /**
495
+ * Lock stolen notification payload.
496
+ */
497
+ export type StolenNotification = OvsdbNotificationBase<"stolen", [string]>;
498
+ /**
499
+ * Any server notification emitted by the client.
500
+ */
501
+ export type OvsdbNotification<TDatabase extends DatabaseTableMap = DatabaseTableMap> = UpdateNotification<TDatabase> | Update2Notification<TDatabase> | Update3Notification<TDatabase> | LockedNotification | StolenNotification;
502
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}