@foir/sdk 0.10.0 → 0.12.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 (52) hide show
  1. package/CHANGELOG.md +353 -2
  2. package/README.md +10 -2
  3. package/dist/app/client.d.ts +371 -0
  4. package/dist/app/contract/index.d.ts +23 -0
  5. package/dist/app/contract/proto/apps/v1/apps_pb.d.ts +1465 -0
  6. package/dist/app/contract/proto/apps/v1/discovery_pb.d.ts +678 -0
  7. package/dist/app/dispatch.d.ts +64 -0
  8. package/dist/app/errors.d.ts +50 -0
  9. package/dist/app/index.d.ts +40 -0
  10. package/dist/app/manifest.d.ts +56 -0
  11. package/dist/app/naming.d.ts +31 -0
  12. package/dist/app/record-key.d.ts +17 -0
  13. package/dist/app/ticket.d.ts +37 -0
  14. package/dist/app/vocabulary.generated.d.ts +20 -0
  15. package/dist/app-contract.js +124 -0
  16. package/dist/app.js +998 -0
  17. package/dist/auth/auth.d.ts +24 -6
  18. package/dist/auth/index.d.ts +2 -1
  19. package/dist/auth/ops.d.ts +8 -0
  20. package/dist/auth.js +230 -60
  21. package/dist/client.js +80 -15
  22. package/dist/codegen/preset.d.ts +3 -2
  23. package/dist/data/builtins.d.ts +17 -1
  24. package/dist/data/client.d.ts +10 -8
  25. package/dist/data/document.d.ts +13 -0
  26. package/dist/data/index.d.ts +15 -5
  27. package/dist/data/manifest.d.ts +31 -3
  28. package/dist/data/schema.d.ts +16 -9
  29. package/dist/data/selection.d.ts +15 -0
  30. package/dist/data/transport.d.ts +277 -23
  31. package/dist/data/ws-transport.d.ts +8 -2
  32. package/dist/data.js +313 -72
  33. package/dist/graphql/client.d.ts +1 -1
  34. package/dist/graphql/foir-request.d.ts +1 -1
  35. package/dist/index.js +0 -9
  36. package/dist/live/drift.d.ts +9 -10
  37. package/dist/live.js +1 -1
  38. package/dist/next.js +158 -37
  39. package/dist/placement/index.d.ts +129 -0
  40. package/dist/placement.js +144 -0
  41. package/dist/push.js +212 -50
  42. package/dist/react.js +158 -37
  43. package/dist/server/callback-client.d.ts +30 -9
  44. package/dist/server/continue-run.d.ts +56 -0
  45. package/dist/server/index.d.ts +6 -3
  46. package/dist/server/operation-types.d.ts +114 -65
  47. package/dist/server/read-dispatch.d.ts +53 -0
  48. package/dist/server/require-scoped-token.d.ts +71 -7
  49. package/dist/server/verify-scoped-token.d.ts +109 -3
  50. package/dist/server.js +566 -138
  51. package/dist/transport/foir-http.d.ts +103 -5
  52. package/package.json +24 -6
@@ -0,0 +1,678 @@
1
+ // @generated by protoc-gen-es v2.12.1 with parameter "import_extension=js"
2
+ // @generated from file apps/v1/discovery.proto (package apps.v1, syntax proto3)
3
+ /* eslint-disable */
4
+
5
+ import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
6
+ import type { JsonObject, Message } from "@bufbuild/protobuf";
7
+ import type { Timestamp } from "@bufbuild/protobuf/wkt";
8
+
9
+ /**
10
+ * Describes the file apps/v1/discovery.proto.
11
+ */
12
+ export declare const file_apps_v1_discovery: GenFile;
13
+
14
+ /**
15
+ * What the setup screen tells an app's discovery, so that what it suggests
16
+ * fits this project rather than an empty one.
17
+ *
18
+ * @generated from message apps.v1.DiscoveryRequest
19
+ */
20
+ export declare type DiscoveryRequest = Message<"apps.v1.DiscoveryRequest"> & {
21
+ /**
22
+ * The project's locale codes. An app suggesting locales can say which of its
23
+ * own the project already has.
24
+ *
25
+ * @generated from field: repeated string project_locales = 1;
26
+ */
27
+ projectLocales: string[];
28
+
29
+ /**
30
+ * The install's current settings, when it has any. A discovery run again
31
+ * keeps what the operator already confirmed as its suggestion, rather than
32
+ * proposing something new each time.
33
+ *
34
+ * @generated from field: google.protobuf.Struct current_settings = 2;
35
+ */
36
+ currentSettings?: JsonObject | undefined;
37
+ };
38
+
39
+ /**
40
+ * Describes the message apps.v1.DiscoveryRequest.
41
+ * Use `create(DiscoveryRequestSchema)` to create a new message.
42
+ */
43
+ export declare const DiscoveryRequestSchema: GenMessage<DiscoveryRequest>;
44
+
45
+ /**
46
+ * @generated from message apps.v1.DiscoveryResult
47
+ */
48
+ export declare type DiscoveryResult = Message<"apps.v1.DiscoveryResult"> & {
49
+ /**
50
+ * @generated from field: google.protobuf.Timestamp discovered_at = 1;
51
+ */
52
+ discoveredAt?: Timestamp | undefined;
53
+
54
+ /**
55
+ * True only when everything below is the whole picture: nothing truncated,
56
+ * no availability undetermined, every request answered. A screen offering
57
+ * choices from an incomplete result says so.
58
+ *
59
+ * @generated from field: bool complete = 2;
60
+ */
61
+ complete: boolean;
62
+
63
+ /**
64
+ * The account the app is connected to, as the operator knows it.
65
+ *
66
+ * @generated from field: apps.v1.DiscoveredAccount account = 3;
67
+ */
68
+ account?: DiscoveredAccount | undefined;
69
+
70
+ /**
71
+ * Keyed by the manifest's source name. A name the manifest does not declare
72
+ * is ignored by the reader, since it has no source to map it onto.
73
+ *
74
+ * @generated from field: map<string, apps.v1.DiscoveredSource> sources = 4;
75
+ */
76
+ sources: { [key: string]: DiscoveredSource };
77
+
78
+ /**
79
+ * The account's own locales.
80
+ *
81
+ * @generated from field: repeated apps.v1.DiscoveredLocale locales = 5;
82
+ */
83
+ locales: DiscoveredLocale[];
84
+
85
+ /**
86
+ * Values for the app's own settings (its manifest's settings_schema),
87
+ * suggested from what was found. The operator confirms each; nothing here is
88
+ * applied on its own.
89
+ *
90
+ * @generated from field: google.protobuf.Struct suggested_settings = 6;
91
+ */
92
+ suggestedSettings?: JsonObject | undefined;
93
+
94
+ /**
95
+ * What the operator should know, most severe first.
96
+ *
97
+ * @generated from field: repeated apps.v1.DiscoveryNotice notices = 7;
98
+ */
99
+ notices: DiscoveryNotice[];
100
+
101
+ /**
102
+ * Access the app asked the account for and was not granted, in the vendor's
103
+ * own words (an OAuth scope, say). Reconnecting the account asks again.
104
+ *
105
+ * @generated from field: repeated string missing_access = 8;
106
+ */
107
+ missingAccess: string[];
108
+ };
109
+
110
+ /**
111
+ * Describes the message apps.v1.DiscoveryResult.
112
+ * Use `create(DiscoveryResultSchema)` to create a new message.
113
+ */
114
+ export declare const DiscoveryResultSchema: GenMessage<DiscoveryResult>;
115
+
116
+ /**
117
+ * @generated from message apps.v1.DiscoveredAccount
118
+ */
119
+ export declare type DiscoveredAccount = Message<"apps.v1.DiscoveredAccount"> & {
120
+ /**
121
+ * The account's own name for itself.
122
+ *
123
+ * @generated from field: string name = 1;
124
+ */
125
+ name: string;
126
+
127
+ /**
128
+ * Where the account lives, for the operator to recognise it: a store's
129
+ * domain, a workspace's address.
130
+ *
131
+ * @generated from field: string url = 2;
132
+ */
133
+ url: string;
134
+ };
135
+
136
+ /**
137
+ * Describes the message apps.v1.DiscoveredAccount.
138
+ * Use `create(DiscoveredAccountSchema)` to create a new message.
139
+ */
140
+ export declare const DiscoveredAccountSchema: GenMessage<DiscoveredAccount>;
141
+
142
+ /**
143
+ * @generated from message apps.v1.DiscoveredSource
144
+ */
145
+ export declare type DiscoveredSource = Message<"apps.v1.DiscoveredSource"> & {
146
+ /**
147
+ * @generated from field: apps.v1.Availability availability = 1;
148
+ */
149
+ availability?: Availability | undefined;
150
+
151
+ /**
152
+ * How many records the account holds. Absent when the app did not count.
153
+ *
154
+ * @generated from field: optional apps.v1.DiscoveredCount record_count = 2;
155
+ */
156
+ recordCount?: DiscoveredCount | undefined;
157
+
158
+ /**
159
+ * The fields a record can be keyed by, the app's recommendation first. The
160
+ * setup offers the first unless the operator chooses another.
161
+ *
162
+ * @generated from field: repeated apps.v1.NaturalKeyCandidate natural_keys = 3;
163
+ */
164
+ naturalKeys: NaturalKeyCandidate[];
165
+
166
+ /**
167
+ * How the fields below are grouped for the operator, in order.
168
+ *
169
+ * @generated from field: repeated apps.v1.DiscoveredFieldGroup field_groups = 4;
170
+ */
171
+ fieldGroups: DiscoveredFieldGroup[];
172
+
173
+ /**
174
+ * The source's fields, in the order the app would show them.
175
+ *
176
+ * @generated from field: repeated apps.v1.DiscoveredField fields = 5;
177
+ */
178
+ fields: DiscoveredField[];
179
+
180
+ /**
181
+ * The app stopped listing fields before the end. The list is a prefix.
182
+ *
183
+ * @generated from field: bool truncated = 6;
184
+ */
185
+ truncated: boolean;
186
+
187
+ /**
188
+ * For an optional source: the app recommends syncing it by default.
189
+ *
190
+ * @generated from field: bool recommended = 7;
191
+ */
192
+ recommended: boolean;
193
+ };
194
+
195
+ /**
196
+ * Describes the message apps.v1.DiscoveredSource.
197
+ * Use `create(DiscoveredSourceSchema)` to create a new message.
198
+ */
199
+ export declare const DiscoveredSourceSchema: GenMessage<DiscoveredSource>;
200
+
201
+ /**
202
+ * @generated from message apps.v1.NaturalKeyCandidate
203
+ */
204
+ export declare type NaturalKeyCandidate = Message<"apps.v1.NaturalKeyCandidate"> & {
205
+ /**
206
+ * @generated from field: string key = 1;
207
+ */
208
+ key: string;
209
+
210
+ /**
211
+ * @generated from field: string label = 2;
212
+ */
213
+ label: string;
214
+
215
+ /**
216
+ * The value never changes for a record, so it can key one.
217
+ *
218
+ * @generated from field: bool stable = 3;
219
+ */
220
+ stable: boolean;
221
+
222
+ /**
223
+ * @generated from field: string note = 4;
224
+ */
225
+ note: string;
226
+ };
227
+
228
+ /**
229
+ * Describes the message apps.v1.NaturalKeyCandidate.
230
+ * Use `create(NaturalKeyCandidateSchema)` to create a new message.
231
+ */
232
+ export declare const NaturalKeyCandidateSchema: GenMessage<NaturalKeyCandidate>;
233
+
234
+ /**
235
+ * @generated from message apps.v1.DiscoveredFieldGroup
236
+ */
237
+ export declare type DiscoveredFieldGroup = Message<"apps.v1.DiscoveredFieldGroup"> & {
238
+ /**
239
+ * @generated from field: string id = 1;
240
+ */
241
+ id: string;
242
+
243
+ /**
244
+ * @generated from field: string label = 2;
245
+ */
246
+ label: string;
247
+
248
+ /**
249
+ * @generated from field: string description = 3;
250
+ */
251
+ description: string;
252
+
253
+ /**
254
+ * @generated from field: bool collapsed_by_default = 4;
255
+ */
256
+ collapsedByDefault: boolean;
257
+ };
258
+
259
+ /**
260
+ * Describes the message apps.v1.DiscoveredFieldGroup.
261
+ * Use `create(DiscoveredFieldGroupSchema)` to create a new message.
262
+ */
263
+ export declare const DiscoveredFieldGroupSchema: GenMessage<DiscoveredFieldGroup>;
264
+
265
+ /**
266
+ * @generated from message apps.v1.DiscoveredField
267
+ */
268
+ export declare type DiscoveredField = Message<"apps.v1.DiscoveredField"> & {
269
+ /**
270
+ * The app's own name for the field: the key the mapping names.
271
+ *
272
+ * @generated from field: string key = 1;
273
+ */
274
+ key: string;
275
+
276
+ /**
277
+ * @generated from field: string label = 2;
278
+ */
279
+ label: string;
280
+
281
+ /**
282
+ * @generated from field: string help = 3;
283
+ */
284
+ help: string;
285
+
286
+ /**
287
+ * The id of the DiscoveredFieldGroup it belongs to.
288
+ *
289
+ * @generated from field: string group = 4;
290
+ */
291
+ group: string;
292
+
293
+ /**
294
+ * The account's owner defined it (a custom field), as against one the
295
+ * vendor's system always has.
296
+ *
297
+ * @generated from field: bool custom = 5;
298
+ */
299
+ custom: boolean;
300
+
301
+ /**
302
+ * @generated from field: apps.v1.Availability availability = 6;
303
+ */
304
+ availability?: Availability | undefined;
305
+
306
+ /**
307
+ * How to create a model field for it. Absent when no platform type holds
308
+ * it, in which case its availability says so.
309
+ *
310
+ * @generated from field: optional apps.v1.FieldProvision provision = 7;
311
+ */
312
+ provision?: FieldProvision | undefined;
313
+
314
+ /**
315
+ * The model field key the app would give it.
316
+ *
317
+ * @generated from field: string suggested_model_field = 8;
318
+ */
319
+ suggestedModelField: string;
320
+
321
+ /**
322
+ * The value differs by locale.
323
+ *
324
+ * @generated from field: bool localized = 9;
325
+ */
326
+ localized: boolean;
327
+
328
+ /**
329
+ * How many records hold a value. Absent when the app did not count.
330
+ *
331
+ * @generated from field: optional int64 usage_count = 10;
332
+ */
333
+ usageCount?: bigint | undefined;
334
+ };
335
+
336
+ /**
337
+ * Describes the message apps.v1.DiscoveredField.
338
+ * Use `create(DiscoveredFieldSchema)` to create a new message.
339
+ */
340
+ export declare const DiscoveredFieldSchema: GenMessage<DiscoveredField>;
341
+
342
+ /**
343
+ * @generated from message apps.v1.FieldProvision
344
+ */
345
+ export declare type FieldProvision = Message<"apps.v1.FieldProvision"> & {
346
+ /**
347
+ * A platform field type.
348
+ *
349
+ * @generated from field: string type = 1;
350
+ */
351
+ type: string;
352
+
353
+ /**
354
+ * For a list: the type of its items.
355
+ *
356
+ * @generated from field: string item_type = 2;
357
+ */
358
+ itemType: string;
359
+
360
+ /**
361
+ * @generated from field: bool required = 3;
362
+ */
363
+ required: boolean;
364
+
365
+ /**
366
+ * @generated from field: apps.v1.Fidelity fidelity = 4;
367
+ */
368
+ fidelity: Fidelity;
369
+
370
+ /**
371
+ * Why the fidelity is not EXACT.
372
+ *
373
+ * @generated from field: string note = 5;
374
+ */
375
+ note: string;
376
+ };
377
+
378
+ /**
379
+ * Describes the message apps.v1.FieldProvision.
380
+ * Use `create(FieldProvisionSchema)` to create a new message.
381
+ */
382
+ export declare const FieldProvisionSchema: GenMessage<FieldProvision>;
383
+
384
+ /**
385
+ * @generated from message apps.v1.Availability
386
+ */
387
+ export declare type Availability = Message<"apps.v1.Availability"> & {
388
+ /**
389
+ * @generated from field: apps.v1.AvailabilityState state = 1;
390
+ */
391
+ state: AvailabilityState;
392
+
393
+ /**
394
+ * Why, whenever the state is not AVAILABLE.
395
+ *
396
+ * @generated from field: apps.v1.DiscoveryNotice reason = 2;
397
+ */
398
+ reason?: DiscoveryNotice | undefined;
399
+ };
400
+
401
+ /**
402
+ * Describes the message apps.v1.Availability.
403
+ * Use `create(AvailabilitySchema)` to create a new message.
404
+ */
405
+ export declare const AvailabilitySchema: GenMessage<Availability>;
406
+
407
+ /**
408
+ * @generated from message apps.v1.DiscoveredCount
409
+ */
410
+ export declare type DiscoveredCount = Message<"apps.v1.DiscoveredCount"> & {
411
+ /**
412
+ * @generated from field: int64 value = 1;
413
+ */
414
+ value: bigint;
415
+
416
+ /**
417
+ * The account counts no higher: the true number is at least `value`.
418
+ *
419
+ * @generated from field: bool at_least = 2;
420
+ */
421
+ atLeast: boolean;
422
+ };
423
+
424
+ /**
425
+ * Describes the message apps.v1.DiscoveredCount.
426
+ * Use `create(DiscoveredCountSchema)` to create a new message.
427
+ */
428
+ export declare const DiscoveredCountSchema: GenMessage<DiscoveredCount>;
429
+
430
+ /**
431
+ * @generated from message apps.v1.DiscoveredLocale
432
+ */
433
+ export declare type DiscoveredLocale = Message<"apps.v1.DiscoveredLocale"> & {
434
+ /**
435
+ * A BCP 47 tag.
436
+ *
437
+ * @generated from field: string code = 1;
438
+ */
439
+ code: string;
440
+
441
+ /**
442
+ * @generated from field: string name = 2;
443
+ */
444
+ name: string;
445
+
446
+ /**
447
+ * The account's primary locale.
448
+ *
449
+ * @generated from field: bool primary = 3;
450
+ */
451
+ primary: boolean;
452
+
453
+ /**
454
+ * Offered to the account's own audience.
455
+ *
456
+ * @generated from field: bool published = 4;
457
+ */
458
+ published: boolean;
459
+ };
460
+
461
+ /**
462
+ * Describes the message apps.v1.DiscoveredLocale.
463
+ * Use `create(DiscoveredLocaleSchema)` to create a new message.
464
+ */
465
+ export declare const DiscoveredLocaleSchema: GenMessage<DiscoveredLocale>;
466
+
467
+ /**
468
+ * @generated from message apps.v1.DiscoveryNotice
469
+ */
470
+ export declare type DiscoveryNotice = Message<"apps.v1.DiscoveryNotice"> & {
471
+ /**
472
+ * The app's own code for it, stable across discoveries, so a screen can tell
473
+ * two notices apart without reading their words.
474
+ *
475
+ * @generated from field: string code = 1;
476
+ */
477
+ code: string;
478
+
479
+ /**
480
+ * @generated from field: apps.v1.NoticeSeverity severity = 2;
481
+ */
482
+ severity: NoticeSeverity;
483
+
484
+ /**
485
+ * @generated from field: string title = 3;
486
+ */
487
+ title: string;
488
+
489
+ /**
490
+ * @generated from field: string detail = 4;
491
+ */
492
+ detail: string;
493
+
494
+ /**
495
+ * What it is about: a source or field name, when it is about one.
496
+ *
497
+ * @generated from field: string subject = 5;
498
+ */
499
+ subject: string;
500
+
501
+ /**
502
+ * What the operator can do about it, when there is something.
503
+ *
504
+ * @generated from field: optional apps.v1.NoticeRemedy remedy = 6;
505
+ */
506
+ remedy?: NoticeRemedy | undefined;
507
+ };
508
+
509
+ /**
510
+ * Describes the message apps.v1.DiscoveryNotice.
511
+ * Use `create(DiscoveryNoticeSchema)` to create a new message.
512
+ */
513
+ export declare const DiscoveryNoticeSchema: GenMessage<DiscoveryNotice>;
514
+
515
+ /**
516
+ * @generated from message apps.v1.NoticeRemedy
517
+ */
518
+ export declare type NoticeRemedy = Message<"apps.v1.NoticeRemedy"> & {
519
+ /**
520
+ * @generated from field: apps.v1.RemedyAction action = 1;
521
+ */
522
+ action: RemedyAction;
523
+
524
+ /**
525
+ * @generated from field: string label = 2;
526
+ */
527
+ label: string;
528
+ };
529
+
530
+ /**
531
+ * Describes the message apps.v1.NoticeRemedy.
532
+ * Use `create(NoticeRemedySchema)` to create a new message.
533
+ */
534
+ export declare const NoticeRemedySchema: GenMessage<NoticeRemedy>;
535
+
536
+ /**
537
+ * How faithfully a created field holds the account's value.
538
+ *
539
+ * @generated from enum apps.v1.Fidelity
540
+ */
541
+ export enum Fidelity {
542
+ /**
543
+ * @generated from enum value: FIDELITY_UNSPECIFIED = 0;
544
+ */
545
+ UNSPECIFIED = 0,
546
+
547
+ /**
548
+ * Held exactly as the account holds it.
549
+ *
550
+ * @generated from enum value: FIDELITY_EXACT = 1;
551
+ */
552
+ EXACT = 1,
553
+
554
+ /**
555
+ * Held in another form that loses nothing, as the note says: HTML parsed
556
+ * into the platform's rich text, say.
557
+ *
558
+ * @generated from enum value: FIDELITY_CONVERTED = 2;
559
+ */
560
+ CONVERTED = 2,
561
+
562
+ /**
563
+ * Held, losing something the note names: a unit, a reference's target.
564
+ *
565
+ * @generated from enum value: FIDELITY_LOSSY = 3;
566
+ */
567
+ LOSSY = 3,
568
+ }
569
+
570
+ /**
571
+ * Describes the enum apps.v1.Fidelity.
572
+ */
573
+ export declare const FidelitySchema: GenEnum<Fidelity>;
574
+
575
+ /**
576
+ * @generated from enum apps.v1.AvailabilityState
577
+ */
578
+ export enum AvailabilityState {
579
+ /**
580
+ * @generated from enum value: AVAILABILITY_STATE_UNSPECIFIED = 0;
581
+ */
582
+ UNSPECIFIED = 0,
583
+
584
+ /**
585
+ * The account can give it.
586
+ *
587
+ * @generated from enum value: AVAILABILITY_STATE_AVAILABLE = 1;
588
+ */
589
+ AVAILABLE = 1,
590
+
591
+ /**
592
+ * The account cannot give it until something changes: access not granted,
593
+ * an approval the vendor has not given. The reason names what.
594
+ *
595
+ * @generated from enum value: AVAILABILITY_STATE_BLOCKED = 2;
596
+ */
597
+ BLOCKED = 2,
598
+
599
+ /**
600
+ * The app could not tell. The reason says why, and the operator decides.
601
+ *
602
+ * @generated from enum value: AVAILABILITY_STATE_UNDETERMINED = 3;
603
+ */
604
+ UNDETERMINED = 3,
605
+ }
606
+
607
+ /**
608
+ * Describes the enum apps.v1.AvailabilityState.
609
+ */
610
+ export declare const AvailabilityStateSchema: GenEnum<AvailabilityState>;
611
+
612
+ /**
613
+ * @generated from enum apps.v1.NoticeSeverity
614
+ */
615
+ export enum NoticeSeverity {
616
+ /**
617
+ * @generated from enum value: NOTICE_SEVERITY_UNSPECIFIED = 0;
618
+ */
619
+ UNSPECIFIED = 0,
620
+
621
+ /**
622
+ * @generated from enum value: NOTICE_SEVERITY_INFO = 1;
623
+ */
624
+ INFO = 1,
625
+
626
+ /**
627
+ * @generated from enum value: NOTICE_SEVERITY_WARNING = 2;
628
+ */
629
+ WARNING = 2,
630
+
631
+ /**
632
+ * @generated from enum value: NOTICE_SEVERITY_ERROR = 3;
633
+ */
634
+ ERROR = 3,
635
+ }
636
+
637
+ /**
638
+ * Describes the enum apps.v1.NoticeSeverity.
639
+ */
640
+ export declare const NoticeSeveritySchema: GenEnum<NoticeSeverity>;
641
+
642
+ /**
643
+ * @generated from enum apps.v1.RemedyAction
644
+ */
645
+ export enum RemedyAction {
646
+ /**
647
+ * @generated from enum value: REMEDY_ACTION_UNSPECIFIED = 0;
648
+ */
649
+ UNSPECIFIED = 0,
650
+
651
+ /**
652
+ * Connect the account again, asking for the access it lacks.
653
+ *
654
+ * @generated from enum value: REMEDY_ACTION_RECONNECT = 1;
655
+ */
656
+ RECONNECT = 1,
657
+
658
+ /**
659
+ * Run discovery again, once something outside has changed: an approval the
660
+ * vendor gives the app, say, which nothing here can hurry.
661
+ *
662
+ * @generated from enum value: REMEDY_ACTION_RERUN_DISCOVERY = 2;
663
+ */
664
+ RERUN_DISCOVERY = 2,
665
+
666
+ /**
667
+ * Nothing the operator can do here; the app's support can.
668
+ *
669
+ * @generated from enum value: REMEDY_ACTION_CONTACT_SUPPORT = 3;
670
+ */
671
+ CONTACT_SUPPORT = 3,
672
+ }
673
+
674
+ /**
675
+ * Describes the enum apps.v1.RemedyAction.
676
+ */
677
+ export declare const RemedyActionSchema: GenEnum<RemedyAction>;
678
+