@eide/foir-proto-ts 0.89.0 → 0.91.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.
@@ -13,6 +13,98 @@ import type { BreakingChange, PublishStatus } from "../../publish/v1/publish_pb.
13
13
  */
14
14
  export declare const file_operations_v1_operations: GenFile;
15
15
 
16
+ /**
17
+ * SecretBinding maps a {{secret.NAME}} placeholder in an operation's
18
+ * request template to a PROJECT-owned SecretsService secret. The
19
+ * dispatcher resolves the plaintext at call time; it is never stored on
20
+ * the operation row.
21
+ *
22
+ * @generated from message operations.v1.SecretBinding
23
+ */
24
+ export declare type SecretBinding = Message<"operations.v1.SecretBinding"> & {
25
+ /**
26
+ * @generated from field: string name = 1;
27
+ */
28
+ name: string;
29
+
30
+ /**
31
+ * SecretsService secret ref. Must be PROJECT-owned and in the same
32
+ * (tenant, project) as the operation.
33
+ *
34
+ * @generated from field: string secret_ref = 2;
35
+ */
36
+ secretRef: string;
37
+ };
38
+
39
+ /**
40
+ * Describes the message operations.v1.SecretBinding.
41
+ * Use `create(SecretBindingSchema)` to create a new message.
42
+ */
43
+ export declare const SecretBindingSchema: GenMessage<SecretBinding>;
44
+
45
+ /**
46
+ * RequestTemplate shapes the outbound HTTP request for QUERY / FIELD
47
+ * operations. Template variables {{input.X}}, {{parent.X}},
48
+ * {{secret.NAME}}, {{context.X}} are interpolated at dispatch time.
49
+ *
50
+ * @generated from message operations.v1.RequestTemplate
51
+ */
52
+ export declare type RequestTemplate = Message<"operations.v1.RequestTemplate"> & {
53
+ /**
54
+ * GET / POST / PUT / DELETE / PATCH. Defaults to POST.
55
+ *
56
+ * @generated from field: optional string method = 1;
57
+ */
58
+ method?: string | undefined;
59
+
60
+ /**
61
+ * Appended to operation.endpoint. Template variables allowed.
62
+ *
63
+ * @generated from field: optional string path_template = 2;
64
+ */
65
+ pathTemplate?: string | undefined;
66
+
67
+ /**
68
+ * Static + templated query params merged into the URL.
69
+ *
70
+ * @generated from field: map<string, string> query = 3;
71
+ */
72
+ query: { [key: string]: string };
73
+
74
+ /**
75
+ * Static + templated headers. X-Foir-Token (Ed25519) and X-Foir-Context
76
+ * are always set by the platform; these names are reserved.
77
+ *
78
+ * @generated from field: map<string, string> headers = 4;
79
+ */
80
+ headers: { [key: string]: string };
81
+
82
+ /**
83
+ * When set, replaces the default JSON-encoded input body.
84
+ *
85
+ * @generated from field: optional string body_template = 5;
86
+ */
87
+ bodyTemplate?: string | undefined;
88
+
89
+ /**
90
+ * FIELD-resolver batching opt-in. When true, ResolveOperationBatch sends
91
+ * ONE upstream request for the whole deduped input set: body_template
92
+ * receives the array as {{items}} (each element {input, parent}), the
93
+ * upstream returns an array, and response_transform maps it back by
94
+ * index. Default false = bounded-concurrency fan-out, no upstream
95
+ * contract change.
96
+ *
97
+ * @generated from field: optional bool batch_capable = 6;
98
+ */
99
+ batchCapable?: boolean | undefined;
100
+ };
101
+
102
+ /**
103
+ * Describes the message operations.v1.RequestTemplate.
104
+ * Use `create(RequestTemplateSchema)` to create a new message.
105
+ */
106
+ export declare const RequestTemplateSchema: GenMessage<RequestTemplate>;
107
+
16
108
  /**
17
109
  * @generated from message operations.v1.Operation
18
110
  */
@@ -167,6 +259,72 @@ export declare type Operation = Message<"operations.v1.Operation"> & {
167
259
  */
168
260
  capabilities: string[];
169
261
 
262
+ /**
263
+ * @generated from field: operations.v1.OperationKind kind = 26;
264
+ */
265
+ kind: OperationKind;
266
+
267
+ /**
268
+ * KIND_FIELD only — the model key whose generated GraphQL type gets this
269
+ * resolver attached as a field. Rejected for QUERY / MUTATION.
270
+ *
271
+ * @generated from field: optional string attached_to_model = 27;
272
+ */
273
+ attachedToModel?: string | undefined;
274
+
275
+ /**
276
+ * KIND_FIELD only — parent scalar fields projected into the request
277
+ * payload as parent:{...}. Read from the loaded record source regardless
278
+ * of the client's selection set. Reference / lazily-resolved fields are
279
+ * rejected at the write boundary.
280
+ *
281
+ * @generated from field: repeated string parent_fields = 28;
282
+ */
283
+ parentFields: string[];
284
+
285
+ /**
286
+ * Cache hint for QUERY / FIELD, honoured by the response cache. Ignored
287
+ * for MUTATION (mutations are never cached).
288
+ *
289
+ * @generated from field: optional google.protobuf.Struct cache_control = 29;
290
+ */
291
+ cacheControl?: JsonObject | undefined;
292
+
293
+ /**
294
+ * Secret references interpolated into the outbound request. Resolved at
295
+ * dispatch via SecretsService; never stored in plaintext on this row.
296
+ *
297
+ * @generated from field: repeated operations.v1.SecretBinding secret_bindings = 31;
298
+ */
299
+ secretBindings: SecretBinding[];
300
+
301
+ /**
302
+ * Outbound request shaping for QUERY / FIELD. Body defaults to the
303
+ * JSON-encoded input when unset.
304
+ *
305
+ * @generated from field: optional operations.v1.RequestTemplate request_template = 32;
306
+ */
307
+ requestTemplate?: RequestTemplate | undefined;
308
+
309
+ /**
310
+ * Optional jq program (gojq) applied to the upstream response before
311
+ * validation against output_schema. Empty = response used as-is. When
312
+ * set, replaces the legacy {success,result} unwrap heuristic. Guardrails:
313
+ * 4 KB program cap, 250 ms execution cap, 5 MB pre-transform size cap.
314
+ *
315
+ * @generated from field: optional string response_transform = 33;
316
+ */
317
+ responseTransform?: string | undefined;
318
+
319
+ /**
320
+ * Allows endpoint to resolve to a private/internal address (RFC1918,
321
+ * *.internal, link-local). Default false. TENANT-admin-only capability;
322
+ * cloud-metadata IPs are rejected even when true.
323
+ *
324
+ * @generated from field: optional bool allow_internal_endpoint = 34;
325
+ */
326
+ allowInternalEndpoint?: boolean | undefined;
327
+
170
328
  /**
171
329
  * Attribution.
172
330
  *
@@ -650,42 +808,27 @@ export declare const DeadLetterStatsSchema: GenMessage<DeadLetterStats>;
650
808
  */
651
809
  export declare type ListOperationsRequest = Message<"operations.v1.ListOperationsRequest"> & {
652
810
  /**
653
- * @generated from field: optional string category = 1;
654
- */
655
- category?: string | undefined;
656
-
657
- /**
658
- * @generated from field: optional bool is_active = 2;
811
+ * @generated from field: optional google.protobuf.Struct where = 1;
659
812
  */
660
- isActive?: boolean | undefined;
813
+ where?: JsonObject | undefined;
661
814
 
662
815
  /**
663
- * @generated from field: optional string search = 3;
664
- */
665
- search?: string | undefined;
666
-
667
- /**
668
- * @generated from field: optional string config_id = 4;
669
- */
670
- configId?: string | undefined;
671
-
672
- /**
673
- * @generated from field: optional string after = 5;
816
+ * @generated from field: optional string after = 2;
674
817
  */
675
818
  after?: string | undefined;
676
819
 
677
820
  /**
678
- * @generated from field: optional string before = 6;
821
+ * @generated from field: optional string before = 3;
679
822
  */
680
823
  before?: string | undefined;
681
824
 
682
825
  /**
683
- * @generated from field: optional int32 first = 7;
826
+ * @generated from field: optional int32 first = 4;
684
827
  */
685
828
  first?: number | undefined;
686
829
 
687
830
  /**
688
- * @generated from field: optional int32 last = 8;
831
+ * @generated from field: optional int32 last = 5;
689
832
  */
690
833
  last?: number | undefined;
691
834
  };
@@ -874,6 +1017,48 @@ export declare type CreateOperationRequest = Message<"operations.v1.CreateOperat
874
1017
  * @generated from field: repeated string capabilities = 22;
875
1018
  */
876
1019
  capabilities: string[];
1020
+
1021
+ /**
1022
+ * Resolver fields — see Operation for semantics.
1023
+ *
1024
+ * @generated from field: operations.v1.OperationKind kind = 23;
1025
+ */
1026
+ kind: OperationKind;
1027
+
1028
+ /**
1029
+ * @generated from field: optional string attached_to_model = 24;
1030
+ */
1031
+ attachedToModel?: string | undefined;
1032
+
1033
+ /**
1034
+ * @generated from field: repeated string parent_fields = 25;
1035
+ */
1036
+ parentFields: string[];
1037
+
1038
+ /**
1039
+ * @generated from field: optional google.protobuf.Struct cache_control = 26;
1040
+ */
1041
+ cacheControl?: JsonObject | undefined;
1042
+
1043
+ /**
1044
+ * @generated from field: repeated operations.v1.SecretBinding secret_bindings = 27;
1045
+ */
1046
+ secretBindings: SecretBinding[];
1047
+
1048
+ /**
1049
+ * @generated from field: optional operations.v1.RequestTemplate request_template = 28;
1050
+ */
1051
+ requestTemplate?: RequestTemplate | undefined;
1052
+
1053
+ /**
1054
+ * @generated from field: optional string response_transform = 29;
1055
+ */
1056
+ responseTransform?: string | undefined;
1057
+
1058
+ /**
1059
+ * @generated from field: optional bool allow_internal_endpoint = 30;
1060
+ */
1061
+ allowInternalEndpoint?: boolean | undefined;
877
1062
  };
878
1063
 
879
1064
  /**
@@ -994,6 +1179,48 @@ export declare type UpdateOperationRequest = Message<"operations.v1.UpdateOperat
994
1179
  * @generated from field: repeated string capabilities = 19;
995
1180
  */
996
1181
  capabilities: string[];
1182
+
1183
+ /**
1184
+ * Resolver fields — see Operation for semantics. Absent = unchanged.
1185
+ *
1186
+ * @generated from field: optional operations.v1.OperationKind kind = 20;
1187
+ */
1188
+ kind?: OperationKind | undefined;
1189
+
1190
+ /**
1191
+ * @generated from field: optional string attached_to_model = 21;
1192
+ */
1193
+ attachedToModel?: string | undefined;
1194
+
1195
+ /**
1196
+ * @generated from field: repeated string parent_fields = 22;
1197
+ */
1198
+ parentFields: string[];
1199
+
1200
+ /**
1201
+ * @generated from field: optional google.protobuf.Struct cache_control = 23;
1202
+ */
1203
+ cacheControl?: JsonObject | undefined;
1204
+
1205
+ /**
1206
+ * @generated from field: repeated operations.v1.SecretBinding secret_bindings = 24;
1207
+ */
1208
+ secretBindings: SecretBinding[];
1209
+
1210
+ /**
1211
+ * @generated from field: optional operations.v1.RequestTemplate request_template = 25;
1212
+ */
1213
+ requestTemplate?: RequestTemplate | undefined;
1214
+
1215
+ /**
1216
+ * @generated from field: optional string response_transform = 26;
1217
+ */
1218
+ responseTransform?: string | undefined;
1219
+
1220
+ /**
1221
+ * @generated from field: optional bool allow_internal_endpoint = 27;
1222
+ */
1223
+ allowInternalEndpoint?: boolean | undefined;
997
1224
  };
998
1225
 
999
1226
  /**
@@ -1158,36 +1385,191 @@ export declare type ExecuteOperationResponse = Message<"operations.v1.ExecuteOpe
1158
1385
  export declare const ExecuteOperationResponseSchema: GenMessage<ExecuteOperationResponse>;
1159
1386
 
1160
1387
  /**
1161
- * @generated from message operations.v1.ListOperationExecutionsRequest
1388
+ * One item in a resolver batch.
1389
+ *
1390
+ * @generated from message operations.v1.BatchItem
1162
1391
  */
1163
- export declare type ListOperationExecutionsRequest = Message<"operations.v1.ListOperationExecutionsRequest"> & {
1392
+ export declare type BatchItem = Message<"operations.v1.BatchItem"> & {
1393
+ /**
1394
+ * Dataloader's canonical key; echoed back in BatchResult.key.
1395
+ *
1396
+ * @generated from field: string key = 1;
1397
+ */
1398
+ key: string;
1399
+
1400
+ /**
1401
+ * @generated from field: optional google.protobuf.Struct input = 2;
1402
+ */
1403
+ input?: JsonObject | undefined;
1404
+
1405
+ /**
1406
+ * KIND_FIELD parent_fields payload (parent:{...}).
1407
+ *
1408
+ * @generated from field: optional google.protobuf.Struct parent = 3;
1409
+ */
1410
+ parent?: JsonObject | undefined;
1411
+ };
1412
+
1413
+ /**
1414
+ * Describes the message operations.v1.BatchItem.
1415
+ * Use `create(BatchItemSchema)` to create a new message.
1416
+ */
1417
+ export declare const BatchItemSchema: GenMessage<BatchItem>;
1418
+
1419
+ /**
1420
+ * @generated from message operations.v1.BatchResult
1421
+ */
1422
+ export declare type BatchResult = Message<"operations.v1.BatchResult"> & {
1423
+ /**
1424
+ * @generated from field: string key = 1;
1425
+ */
1426
+ key: string;
1427
+
1428
+ /**
1429
+ * Null when this item failed.
1430
+ *
1431
+ * @generated from field: optional google.protobuf.Struct result = 2;
1432
+ */
1433
+ result?: JsonObject | undefined;
1434
+
1435
+ /**
1436
+ * Per-item error, surfaced as a field error at that GraphQL position
1437
+ * only; the rest of the batch still returns.
1438
+ *
1439
+ * @generated from field: optional string error = 3;
1440
+ */
1441
+ error?: string | undefined;
1442
+ };
1443
+
1444
+ /**
1445
+ * Describes the message operations.v1.BatchResult.
1446
+ * Use `create(BatchResultSchema)` to create a new message.
1447
+ */
1448
+ export declare const BatchResultSchema: GenMessage<BatchResult>;
1449
+
1450
+ /**
1451
+ * @generated from message operations.v1.ResolveOperationBatchRequest
1452
+ */
1453
+ export declare type ResolveOperationBatchRequest = Message<"operations.v1.ResolveOperationBatchRequest"> & {
1164
1454
  /**
1165
1455
  * @generated from field: string operation_key = 1;
1166
1456
  */
1167
1457
  operationKey: string;
1168
1458
 
1169
1459
  /**
1170
- * @generated from field: optional string status = 2;
1460
+ * @generated from field: repeated operations.v1.BatchItem items = 2;
1171
1461
  */
1172
- status?: string | undefined;
1462
+ items: BatchItem[];
1463
+
1464
+ /**
1465
+ * @generated from field: optional string customer_id = 3;
1466
+ */
1467
+ customerId?: string | undefined;
1468
+ };
1469
+
1470
+ /**
1471
+ * Describes the message operations.v1.ResolveOperationBatchRequest.
1472
+ * Use `create(ResolveOperationBatchRequestSchema)` to create a new message.
1473
+ */
1474
+ export declare const ResolveOperationBatchRequestSchema: GenMessage<ResolveOperationBatchRequest>;
1475
+
1476
+ /**
1477
+ * @generated from message operations.v1.ResolveOperationBatchResponse
1478
+ */
1479
+ export declare type ResolveOperationBatchResponse = Message<"operations.v1.ResolveOperationBatchResponse"> & {
1480
+ /**
1481
+ * @generated from field: repeated operations.v1.BatchResult results = 1;
1482
+ */
1483
+ results: BatchResult[];
1484
+ };
1485
+
1486
+ /**
1487
+ * Describes the message operations.v1.ResolveOperationBatchResponse.
1488
+ * Use `create(ResolveOperationBatchResponseSchema)` to create a new message.
1489
+ */
1490
+ export declare const ResolveOperationBatchResponseSchema: GenMessage<ResolveOperationBatchResponse>;
1491
+
1492
+ /**
1493
+ * Single-item convenience for KIND_QUERY (root, non-list). Shares the
1494
+ * batch handler internally.
1495
+ *
1496
+ * @generated from message operations.v1.ResolveOperationRequest
1497
+ */
1498
+ export declare type ResolveOperationRequest = Message<"operations.v1.ResolveOperationRequest"> & {
1499
+ /**
1500
+ * @generated from field: string operation_key = 1;
1501
+ */
1502
+ operationKey: string;
1503
+
1504
+ /**
1505
+ * @generated from field: optional google.protobuf.Struct input = 2;
1506
+ */
1507
+ input?: JsonObject | undefined;
1508
+
1509
+ /**
1510
+ * @generated from field: optional google.protobuf.Struct parent = 3;
1511
+ */
1512
+ parent?: JsonObject | undefined;
1173
1513
 
1174
1514
  /**
1175
- * @generated from field: optional string after = 3;
1515
+ * @generated from field: optional string customer_id = 4;
1516
+ */
1517
+ customerId?: string | undefined;
1518
+ };
1519
+
1520
+ /**
1521
+ * Describes the message operations.v1.ResolveOperationRequest.
1522
+ * Use `create(ResolveOperationRequestSchema)` to create a new message.
1523
+ */
1524
+ export declare const ResolveOperationRequestSchema: GenMessage<ResolveOperationRequest>;
1525
+
1526
+ /**
1527
+ * @generated from message operations.v1.ResolveOperationResponse
1528
+ */
1529
+ export declare type ResolveOperationResponse = Message<"operations.v1.ResolveOperationResponse"> & {
1530
+ /**
1531
+ * @generated from field: optional google.protobuf.Struct result = 1;
1532
+ */
1533
+ result?: JsonObject | undefined;
1534
+
1535
+ /**
1536
+ * @generated from field: optional string error = 2;
1537
+ */
1538
+ error?: string | undefined;
1539
+ };
1540
+
1541
+ /**
1542
+ * Describes the message operations.v1.ResolveOperationResponse.
1543
+ * Use `create(ResolveOperationResponseSchema)` to create a new message.
1544
+ */
1545
+ export declare const ResolveOperationResponseSchema: GenMessage<ResolveOperationResponse>;
1546
+
1547
+ /**
1548
+ * @generated from message operations.v1.ListOperationExecutionsRequest
1549
+ */
1550
+ export declare type ListOperationExecutionsRequest = Message<"operations.v1.ListOperationExecutionsRequest"> & {
1551
+ /**
1552
+ * @generated from field: optional google.protobuf.Struct where = 1;
1553
+ */
1554
+ where?: JsonObject | undefined;
1555
+
1556
+ /**
1557
+ * @generated from field: optional string after = 2;
1176
1558
  */
1177
1559
  after?: string | undefined;
1178
1560
 
1179
1561
  /**
1180
- * @generated from field: optional string before = 4;
1562
+ * @generated from field: optional string before = 3;
1181
1563
  */
1182
1564
  before?: string | undefined;
1183
1565
 
1184
1566
  /**
1185
- * @generated from field: optional int32 first = 5;
1567
+ * @generated from field: optional int32 first = 4;
1186
1568
  */
1187
1569
  first?: number | undefined;
1188
1570
 
1189
1571
  /**
1190
- * @generated from field: optional int32 last = 6;
1572
+ * @generated from field: optional int32 last = 5;
1191
1573
  */
1192
1574
  last?: number | undefined;
1193
1575
  };
@@ -1268,32 +1650,27 @@ export declare const GetOperationExecutionStatsResponseSchema: GenMessage<GetOpe
1268
1650
  */
1269
1651
  export declare type ListDeadLetterEntriesRequest = Message<"operations.v1.ListDeadLetterEntriesRequest"> & {
1270
1652
  /**
1271
- * @generated from field: optional string operation_key = 1;
1653
+ * @generated from field: optional google.protobuf.Struct where = 1;
1272
1654
  */
1273
- operationKey?: string | undefined;
1655
+ where?: JsonObject | undefined;
1274
1656
 
1275
1657
  /**
1276
- * @generated from field: optional string status = 2;
1277
- */
1278
- status?: string | undefined;
1279
-
1280
- /**
1281
- * @generated from field: optional string after = 3;
1658
+ * @generated from field: optional string after = 2;
1282
1659
  */
1283
1660
  after?: string | undefined;
1284
1661
 
1285
1662
  /**
1286
- * @generated from field: optional string before = 4;
1663
+ * @generated from field: optional string before = 3;
1287
1664
  */
1288
1665
  before?: string | undefined;
1289
1666
 
1290
1667
  /**
1291
- * @generated from field: optional int32 first = 5;
1668
+ * @generated from field: optional int32 first = 4;
1292
1669
  */
1293
1670
  first?: number | undefined;
1294
1671
 
1295
1672
  /**
1296
- * @generated from field: optional int32 last = 6;
1673
+ * @generated from field: optional int32 last = 5;
1297
1674
  */
1298
1675
  last?: number | undefined;
1299
1676
  };
@@ -2567,6 +2944,47 @@ export declare type CancelScheduledOperationPublishResponse = Message<"operation
2567
2944
  */
2568
2945
  export declare const CancelScheduledOperationPublishResponseSchema: GenMessage<CancelScheduledOperationPublishResponse>;
2569
2946
 
2947
+ /**
2948
+ * OperationKind discriminates how an operation surfaces in the public
2949
+ * GraphQL schema and how it is dispatched.
2950
+ * MUTATION — existing behaviour: executeXxx root mutation, async-capable,
2951
+ * dispatched via the worker queue.
2952
+ * QUERY — root Query field, cacheable, dispatched synchronously
2953
+ * in-process via ResolveOperation.
2954
+ * FIELD — field on a model object type, cacheable, batched per request
2955
+ * via ResolveOperationBatch.
2956
+ * Rows written before this enum existed carry UNSPECIFIED; the platform
2957
+ * treats UNSPECIFIED as MUTATION for backwards-compatibility.
2958
+ *
2959
+ * @generated from enum operations.v1.OperationKind
2960
+ */
2961
+ export enum OperationKind {
2962
+ /**
2963
+ * @generated from enum value: OPERATION_KIND_UNSPECIFIED = 0;
2964
+ */
2965
+ UNSPECIFIED = 0,
2966
+
2967
+ /**
2968
+ * @generated from enum value: OPERATION_KIND_MUTATION = 1;
2969
+ */
2970
+ MUTATION = 1,
2971
+
2972
+ /**
2973
+ * @generated from enum value: OPERATION_KIND_QUERY = 2;
2974
+ */
2975
+ QUERY = 2,
2976
+
2977
+ /**
2978
+ * @generated from enum value: OPERATION_KIND_FIELD = 3;
2979
+ */
2980
+ FIELD = 3,
2981
+ }
2982
+
2983
+ /**
2984
+ * Describes the enum operations.v1.OperationKind.
2985
+ */
2986
+ export declare const OperationKindSchema: GenEnum<OperationKind>;
2987
+
2570
2988
  /**
2571
2989
  * Execution mode.
2572
2990
  *
@@ -2650,6 +3068,25 @@ export declare const OperationsService: GenService<{
2650
3068
  input: typeof ExecuteOperationRequestSchema;
2651
3069
  output: typeof ExecuteOperationResponseSchema;
2652
3070
  },
3071
+ /**
3072
+ * Synchronous in-process dispatch for KIND_QUERY / KIND_FIELD. No queue,
3073
+ * no execution row, no DLQ/watchdog. See message comments.
3074
+ *
3075
+ * @generated from rpc operations.v1.OperationsService.ResolveOperation
3076
+ */
3077
+ resolveOperation: {
3078
+ methodKind: "unary";
3079
+ input: typeof ResolveOperationRequestSchema;
3080
+ output: typeof ResolveOperationResponseSchema;
3081
+ },
3082
+ /**
3083
+ * @generated from rpc operations.v1.OperationsService.ResolveOperationBatch
3084
+ */
3085
+ resolveOperationBatch: {
3086
+ methodKind: "unary";
3087
+ input: typeof ResolveOperationBatchRequestSchema;
3088
+ output: typeof ResolveOperationBatchResponseSchema;
3089
+ },
2653
3090
  /**
2654
3091
  * @generated from rpc operations.v1.OperationsService.ListOperationExecutions
2655
3092
  */