@objectstack/plugin-approvals 16.1.0 → 17.0.0-rc.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 (34) hide show
  1. package/.turbo/turbo-build.log +10 -10
  2. package/CHANGELOG.md +1023 -0
  3. package/dist/index.d.mts +650 -535
  4. package/dist/index.d.ts +650 -535
  5. package/dist/index.js +1713 -207
  6. package/dist/index.js.map +1 -1
  7. package/dist/index.mjs +1711 -197
  8. package/dist/index.mjs.map +1 -1
  9. package/package.json +9 -7
  10. package/scripts/i18n-extract.config.ts +6 -1
  11. package/src/approval-actor-impersonation.test.ts +330 -0
  12. package/src/approval-node.test.ts +160 -0
  13. package/src/approval-node.ts +57 -0
  14. package/src/approval-revise.test.ts +41 -34
  15. package/src/approval-service.test.ts +1408 -40
  16. package/src/approval-service.ts +1364 -107
  17. package/src/approvals-plugin.ts +36 -5
  18. package/src/approver-cross-org.integration.test.ts +206 -0
  19. package/src/approver-org-scope.test.ts +201 -0
  20. package/src/approver-org-scope.ts +261 -0
  21. package/src/index.ts +3 -0
  22. package/src/lifecycle-hooks.ts +22 -0
  23. package/src/record-lock-schedule-run.integration.test.ts +206 -0
  24. package/src/status-mirror-cascade.integration.test.ts +224 -0
  25. package/src/sys-approval-action.object.ts +9 -0
  26. package/src/sys-approval-delegation.object.test.ts +42 -0
  27. package/src/sys-approval-delegation.object.ts +3 -3
  28. package/src/sys-approval-request.object.test.ts +13 -0
  29. package/src/sys-approval-request.object.ts +17 -5
  30. package/src/translations/bundle-ownership.test.ts +48 -0
  31. package/src/translations/en.objects.generated.ts +111 -5
  32. package/src/translations/es-ES.objects.generated.ts +111 -5
  33. package/src/translations/ja-JP.objects.generated.ts +111 -5
  34. package/src/translations/zh-CN.objects.generated.ts +110 -4
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as _objectstack_spec_data from '@objectstack/spec/data';
2
2
  import { ApprovalNodeConfig } from '@objectstack/spec/automation';
3
- import { IApprovalService, SharingExecutionContext, ApprovalRequestRow, ApprovalDecisionInput, ApprovalDecisionResult, ApprovalRecallInput, ApprovalRecallResult, ApprovalSendBackInput, ApprovalSendBackResult, ApprovalResubmitInput, ApprovalResubmitResult, ApprovalStatus, ApprovalActionRow } from '@objectstack/spec/contracts';
3
+ import { RESUME_AUTHORITY_SERVICE, IApprovalService, SharingExecutionContext, ApprovalRequestRow, ApprovalDecisionInput, ApprovalDecisionResult, ApprovalRecallInput, ApprovalRecallResult, ApprovalSendBackInput, ApprovalSendBackResult, ApprovalResubmitInput, ApprovalResubmitResult, ApprovalStatus, ApprovalActionRow } from '@objectstack/spec/contracts';
4
4
  export { ApprovalActionRow, ApprovalDecisionInput, ApprovalDecisionResult, ApprovalRequestRow, ApprovalStatus, IApprovalService } from '@objectstack/spec/contracts';
5
5
  import { Plugin, PluginContext } from '@objectstack/core';
6
6
 
@@ -33,7 +33,7 @@ declare const SysApprovalRequest: Omit<{
33
33
  required: boolean;
34
34
  searchable: boolean;
35
35
  multiple: boolean;
36
- unique: boolean;
36
+ unique: boolean | "global";
37
37
  deleteBehavior: "set_null" | "cascade" | "restrict";
38
38
  hidden: boolean;
39
39
  readonly: boolean;
@@ -50,6 +50,8 @@ declare const SysApprovalRequest: Omit<{
50
50
  scale?: number | undefined;
51
51
  min?: number | undefined;
52
52
  max?: number | undefined;
53
+ accept?: string[] | undefined;
54
+ maxSize?: number | undefined;
53
55
  options?: {
54
56
  label: string;
55
57
  value: string;
@@ -186,25 +188,10 @@ declare const SysApprovalRequest: Omit<{
186
188
  generatedBy?: string | undefined;
187
189
  } | undefined;
188
190
  } | undefined;
189
- conditionalRequired?: {
190
- dialect: "cel" | "cron" | "template";
191
- source?: string | undefined;
192
- ast?: unknown;
193
- meta?: {
194
- rationale?: string | undefined;
195
- generatedBy?: string | undefined;
196
- } | undefined;
197
- } | {
198
- dialect: "cel" | "cron" | "template";
199
- source?: string | undefined;
200
- ast?: unknown;
201
- meta?: {
202
- rationale?: string | undefined;
203
- generatedBy?: string | undefined;
204
- } | undefined;
205
- } | undefined;
191
+ conditionalRequired?: undefined;
206
192
  widget?: string | undefined;
207
193
  requiredPermissions?: string[] | undefined;
194
+ ackPlaintextMasking?: boolean | undefined;
208
195
  system?: boolean | undefined;
209
196
  inlineHelpText?: string | undefined;
210
197
  autonumberFormat?: string | undefined;
@@ -316,7 +303,7 @@ declare const SysApprovalRequest: Omit<{
316
303
  indexes?: {
317
304
  fields: string[];
318
305
  type: "hash" | "btree" | "gin" | "gist" | "fulltext";
319
- unique: boolean;
306
+ unique: boolean | "global";
320
307
  name?: string | undefined;
321
308
  partial?: string | undefined;
322
309
  }[] | undefined;
@@ -367,6 +354,7 @@ declare const SysApprovalRequest: Omit<{
367
354
  } | undefined;
368
355
  reclaim?: boolean | undefined;
369
356
  } | undefined;
357
+ fileAccessDelegate?: string | undefined;
370
358
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
371
359
  activityMilestones?: {
372
360
  field: string;
@@ -408,7 +396,14 @@ declare const SysApprovalRequest: Omit<{
408
396
  wrap?: boolean | undefined;
409
397
  type?: string | undefined;
410
398
  pinned?: "left" | "right" | undefined;
411
- summary?: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled" | undefined;
399
+ summary?: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled" | {
400
+ type: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled";
401
+ field?: string | undefined;
402
+ } | undefined;
403
+ prefix?: {
404
+ field: string;
405
+ type: "text" | "badge";
406
+ } | undefined;
412
407
  link?: boolean | undefined;
413
408
  action?: string | undefined;
414
409
  }[];
@@ -689,10 +684,8 @@ declare const SysApprovalRequest: Omit<{
689
684
  files: boolean;
690
685
  feeds: boolean;
691
686
  activities: boolean;
692
- trash: boolean;
693
- mru: boolean;
694
687
  clone: boolean;
695
- apiMethods?: ("create" | "import" | "delete" | "update" | "search" | "get" | "upsert" | "list" | "bulk" | "aggregate" | "history" | "restore" | "purge" | "export")[] | undefined;
688
+ apiMethods?: ("create" | "delete" | "update" | "get" | "list" | "bulk")[] | undefined;
696
689
  } | undefined;
697
690
  sharingModel?: "private" | "public_read" | "public_read_write" | "controlled_by_parent" | undefined;
698
691
  externalSharingModel?: "private" | "public_read" | "public_read_write" | "controlled_by_parent" | undefined;
@@ -707,7 +700,7 @@ declare const SysApprovalRequest: Omit<{
707
700
  actions?: Omit<{
708
701
  name: string;
709
702
  label: string;
710
- type: "url" | "form" | "flow" | "api" | "script" | "modal";
703
+ type: "url" | "form" | "script" | "flow" | "api" | "modal";
711
704
  refreshAfter: boolean;
712
705
  objectName?: string | undefined;
713
706
  icon?: string | undefined;
@@ -725,7 +718,7 @@ declare const SysApprovalRequest: Omit<{
725
718
  timeoutMs?: number | undefined;
726
719
  memoryMb?: number | undefined;
727
720
  } | undefined;
728
- execute?: string | undefined;
721
+ execute?: undefined;
729
722
  params?: Omit<{
730
723
  required: boolean;
731
724
  name?: string | undefined;
@@ -743,6 +736,7 @@ declare const SysApprovalRequest: Omit<{
743
736
  multiple?: boolean | undefined;
744
737
  accept?: string[] | undefined;
745
738
  maxSize?: number | undefined;
739
+ reference?: string | undefined;
746
740
  defaultFromRow?: boolean | undefined;
747
741
  visible?: {
748
742
  dialect: "cel" | "cron" | "template";
@@ -959,6 +953,7 @@ declare const SysApprovalRequest: Omit<{
959
953
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
960
954
  readonly widget?: string | undefined;
961
955
  readonly multiple?: boolean | undefined;
956
+ readonly maxSize?: number | undefined;
962
957
  readonly externalId?: boolean | undefined;
963
958
  readonly defaultValue?: unknown;
964
959
  readonly requiredPermissions?: string[] | undefined;
@@ -977,10 +972,11 @@ declare const SysApprovalRequest: Omit<{
977
972
  } | undefined;
978
973
  } | undefined;
979
974
  readonly searchable?: boolean | undefined;
980
- readonly unique?: boolean | undefined;
975
+ readonly unique?: boolean | "global" | undefined;
981
976
  readonly maxLength?: number | undefined;
982
977
  readonly minLength?: number | undefined;
983
978
  readonly scale?: number | undefined;
979
+ readonly accept?: string[] | undefined;
984
980
  readonly reference?: string | undefined;
985
981
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
986
982
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -1052,15 +1048,8 @@ declare const SysApprovalRequest: Omit<{
1052
1048
  generatedBy?: string | undefined;
1053
1049
  } | undefined;
1054
1050
  } | undefined;
1055
- readonly conditionalRequired?: {
1056
- dialect: "cel" | "cron" | "template";
1057
- source?: string | undefined;
1058
- ast?: unknown;
1059
- meta?: {
1060
- rationale?: string | undefined;
1061
- generatedBy?: string | undefined;
1062
- } | undefined;
1063
- } | undefined;
1051
+ readonly conditionalRequired?: undefined;
1052
+ readonly ackPlaintextMasking?: boolean | undefined;
1064
1053
  readonly sortable?: boolean | undefined;
1065
1054
  readonly inlineHelpText?: string | undefined;
1066
1055
  readonly autonumberFormat?: string | undefined;
@@ -1092,6 +1081,7 @@ declare const SysApprovalRequest: Omit<{
1092
1081
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
1093
1082
  readonly widget?: string | undefined;
1094
1083
  readonly multiple?: boolean | undefined;
1084
+ readonly maxSize?: number | undefined;
1095
1085
  readonly externalId?: boolean | undefined;
1096
1086
  readonly defaultValue?: unknown;
1097
1087
  readonly requiredPermissions?: string[] | undefined;
@@ -1110,10 +1100,11 @@ declare const SysApprovalRequest: Omit<{
1110
1100
  } | undefined;
1111
1101
  } | undefined;
1112
1102
  readonly searchable?: boolean | undefined;
1113
- readonly unique?: boolean | undefined;
1103
+ readonly unique?: boolean | "global" | undefined;
1114
1104
  readonly maxLength?: number | undefined;
1115
1105
  readonly minLength?: number | undefined;
1116
1106
  readonly scale?: number | undefined;
1107
+ readonly accept?: string[] | undefined;
1117
1108
  reference: string;
1118
1109
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1119
1110
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -1185,15 +1176,8 @@ declare const SysApprovalRequest: Omit<{
1185
1176
  generatedBy?: string | undefined;
1186
1177
  } | undefined;
1187
1178
  } | undefined;
1188
- readonly conditionalRequired?: {
1189
- dialect: "cel" | "cron" | "template";
1190
- source?: string | undefined;
1191
- ast?: unknown;
1192
- meta?: {
1193
- rationale?: string | undefined;
1194
- generatedBy?: string | undefined;
1195
- } | undefined;
1196
- } | undefined;
1179
+ readonly conditionalRequired?: undefined;
1180
+ readonly ackPlaintextMasking?: boolean | undefined;
1197
1181
  readonly sortable?: boolean | undefined;
1198
1182
  readonly inlineHelpText?: string | undefined;
1199
1183
  readonly autonumberFormat?: string | undefined;
@@ -1225,6 +1209,7 @@ declare const SysApprovalRequest: Omit<{
1225
1209
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
1226
1210
  readonly widget?: string | undefined;
1227
1211
  readonly multiple?: boolean | undefined;
1212
+ readonly maxSize?: number | undefined;
1228
1213
  readonly externalId?: boolean | undefined;
1229
1214
  readonly defaultValue?: unknown;
1230
1215
  readonly requiredPermissions?: string[] | undefined;
@@ -1243,10 +1228,11 @@ declare const SysApprovalRequest: Omit<{
1243
1228
  } | undefined;
1244
1229
  } | undefined;
1245
1230
  readonly searchable?: boolean | undefined;
1246
- readonly unique?: boolean | undefined;
1231
+ readonly unique?: boolean | "global" | undefined;
1247
1232
  readonly maxLength?: number | undefined;
1248
1233
  readonly minLength?: number | undefined;
1249
1234
  readonly scale?: number | undefined;
1235
+ readonly accept?: string[] | undefined;
1250
1236
  readonly reference?: string | undefined;
1251
1237
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1252
1238
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -1318,15 +1304,8 @@ declare const SysApprovalRequest: Omit<{
1318
1304
  generatedBy?: string | undefined;
1319
1305
  } | undefined;
1320
1306
  } | undefined;
1321
- readonly conditionalRequired?: {
1322
- dialect: "cel" | "cron" | "template";
1323
- source?: string | undefined;
1324
- ast?: unknown;
1325
- meta?: {
1326
- rationale?: string | undefined;
1327
- generatedBy?: string | undefined;
1328
- } | undefined;
1329
- } | undefined;
1307
+ readonly conditionalRequired?: undefined;
1308
+ readonly ackPlaintextMasking?: boolean | undefined;
1330
1309
  readonly sortable?: boolean | undefined;
1331
1310
  readonly inlineHelpText?: string | undefined;
1332
1311
  readonly autonumberFormat?: string | undefined;
@@ -1358,6 +1337,7 @@ declare const SysApprovalRequest: Omit<{
1358
1337
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
1359
1338
  readonly widget?: string | undefined;
1360
1339
  readonly multiple?: boolean | undefined;
1340
+ readonly maxSize?: number | undefined;
1361
1341
  readonly externalId?: boolean | undefined;
1362
1342
  readonly defaultValue?: unknown;
1363
1343
  readonly requiredPermissions?: string[] | undefined;
@@ -1376,10 +1356,11 @@ declare const SysApprovalRequest: Omit<{
1376
1356
  } | undefined;
1377
1357
  } | undefined;
1378
1358
  readonly searchable?: boolean | undefined;
1379
- readonly unique?: boolean | undefined;
1359
+ readonly unique?: boolean | "global" | undefined;
1380
1360
  readonly maxLength?: number | undefined;
1381
1361
  readonly minLength?: number | undefined;
1382
1362
  readonly scale?: number | undefined;
1363
+ readonly accept?: string[] | undefined;
1383
1364
  readonly reference?: string | undefined;
1384
1365
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1385
1366
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -1451,15 +1432,8 @@ declare const SysApprovalRequest: Omit<{
1451
1432
  generatedBy?: string | undefined;
1452
1433
  } | undefined;
1453
1434
  } | undefined;
1454
- readonly conditionalRequired?: {
1455
- dialect: "cel" | "cron" | "template";
1456
- source?: string | undefined;
1457
- ast?: unknown;
1458
- meta?: {
1459
- rationale?: string | undefined;
1460
- generatedBy?: string | undefined;
1461
- } | undefined;
1462
- } | undefined;
1435
+ readonly conditionalRequired?: undefined;
1436
+ readonly ackPlaintextMasking?: boolean | undefined;
1463
1437
  readonly sortable?: boolean | undefined;
1464
1438
  readonly inlineHelpText?: string | undefined;
1465
1439
  readonly autonumberFormat?: string | undefined;
@@ -1491,6 +1465,7 @@ declare const SysApprovalRequest: Omit<{
1491
1465
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
1492
1466
  readonly widget?: string | undefined;
1493
1467
  readonly multiple?: boolean | undefined;
1468
+ readonly maxSize?: number | undefined;
1494
1469
  readonly externalId?: boolean | undefined;
1495
1470
  readonly defaultValue?: unknown;
1496
1471
  readonly requiredPermissions?: string[] | undefined;
@@ -1509,10 +1484,11 @@ declare const SysApprovalRequest: Omit<{
1509
1484
  } | undefined;
1510
1485
  } | undefined;
1511
1486
  readonly searchable?: boolean | undefined;
1512
- readonly unique?: boolean | undefined;
1487
+ readonly unique?: boolean | "global" | undefined;
1513
1488
  readonly maxLength?: number | undefined;
1514
1489
  readonly minLength?: number | undefined;
1515
1490
  readonly scale?: number | undefined;
1491
+ readonly accept?: string[] | undefined;
1516
1492
  readonly reference?: string | undefined;
1517
1493
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1518
1494
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -1584,15 +1560,8 @@ declare const SysApprovalRequest: Omit<{
1584
1560
  generatedBy?: string | undefined;
1585
1561
  } | undefined;
1586
1562
  } | undefined;
1587
- readonly conditionalRequired?: {
1588
- dialect: "cel" | "cron" | "template";
1589
- source?: string | undefined;
1590
- ast?: unknown;
1591
- meta?: {
1592
- rationale?: string | undefined;
1593
- generatedBy?: string | undefined;
1594
- } | undefined;
1595
- } | undefined;
1563
+ readonly conditionalRequired?: undefined;
1564
+ readonly ackPlaintextMasking?: boolean | undefined;
1596
1565
  readonly sortable?: boolean | undefined;
1597
1566
  readonly inlineHelpText?: string | undefined;
1598
1567
  readonly autonumberFormat?: string | undefined;
@@ -1624,6 +1593,7 @@ declare const SysApprovalRequest: Omit<{
1624
1593
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
1625
1594
  readonly widget?: string | undefined;
1626
1595
  readonly multiple?: boolean | undefined;
1596
+ readonly maxSize?: number | undefined;
1627
1597
  readonly externalId?: boolean | undefined;
1628
1598
  readonly defaultValue?: unknown;
1629
1599
  readonly requiredPermissions?: string[] | undefined;
@@ -1642,10 +1612,11 @@ declare const SysApprovalRequest: Omit<{
1642
1612
  } | undefined;
1643
1613
  } | undefined;
1644
1614
  readonly searchable?: boolean | undefined;
1645
- readonly unique?: boolean | undefined;
1615
+ readonly unique?: boolean | "global" | undefined;
1646
1616
  readonly maxLength?: number | undefined;
1647
1617
  readonly minLength?: number | undefined;
1648
1618
  readonly scale?: number | undefined;
1619
+ readonly accept?: string[] | undefined;
1649
1620
  reference: string;
1650
1621
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1651
1622
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -1717,15 +1688,8 @@ declare const SysApprovalRequest: Omit<{
1717
1688
  generatedBy?: string | undefined;
1718
1689
  } | undefined;
1719
1690
  } | undefined;
1720
- readonly conditionalRequired?: {
1721
- dialect: "cel" | "cron" | "template";
1722
- source?: string | undefined;
1723
- ast?: unknown;
1724
- meta?: {
1725
- rationale?: string | undefined;
1726
- generatedBy?: string | undefined;
1727
- } | undefined;
1728
- } | undefined;
1691
+ readonly conditionalRequired?: undefined;
1692
+ readonly ackPlaintextMasking?: boolean | undefined;
1729
1693
  readonly sortable?: boolean | undefined;
1730
1694
  readonly inlineHelpText?: string | undefined;
1731
1695
  readonly autonumberFormat?: string | undefined;
@@ -1757,6 +1721,7 @@ declare const SysApprovalRequest: Omit<{
1757
1721
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
1758
1722
  readonly widget?: string | undefined;
1759
1723
  readonly multiple?: boolean | undefined;
1724
+ readonly maxSize?: number | undefined;
1760
1725
  readonly externalId?: boolean | undefined;
1761
1726
  readonly defaultValue?: unknown;
1762
1727
  readonly requiredPermissions?: string[] | undefined;
@@ -1775,10 +1740,11 @@ declare const SysApprovalRequest: Omit<{
1775
1740
  } | undefined;
1776
1741
  } | undefined;
1777
1742
  readonly searchable?: boolean | undefined;
1778
- readonly unique?: boolean | undefined;
1743
+ readonly unique?: boolean | "global" | undefined;
1779
1744
  readonly maxLength?: number | undefined;
1780
1745
  readonly minLength?: number | undefined;
1781
1746
  readonly scale?: number | undefined;
1747
+ readonly accept?: string[] | undefined;
1782
1748
  readonly reference?: string | undefined;
1783
1749
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1784
1750
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -1850,15 +1816,8 @@ declare const SysApprovalRequest: Omit<{
1850
1816
  generatedBy?: string | undefined;
1851
1817
  } | undefined;
1852
1818
  } | undefined;
1853
- readonly conditionalRequired?: {
1854
- dialect: "cel" | "cron" | "template";
1855
- source?: string | undefined;
1856
- ast?: unknown;
1857
- meta?: {
1858
- rationale?: string | undefined;
1859
- generatedBy?: string | undefined;
1860
- } | undefined;
1861
- } | undefined;
1819
+ readonly conditionalRequired?: undefined;
1820
+ readonly ackPlaintextMasking?: boolean | undefined;
1862
1821
  readonly sortable?: boolean | undefined;
1863
1822
  readonly inlineHelpText?: string | undefined;
1864
1823
  readonly autonumberFormat?: string | undefined;
@@ -1890,6 +1849,7 @@ declare const SysApprovalRequest: Omit<{
1890
1849
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
1891
1850
  readonly widget?: string | undefined;
1892
1851
  readonly multiple?: boolean | undefined;
1852
+ readonly maxSize?: number | undefined;
1893
1853
  readonly externalId?: boolean | undefined;
1894
1854
  readonly defaultValue?: unknown;
1895
1855
  readonly requiredPermissions?: string[] | undefined;
@@ -1908,10 +1868,11 @@ declare const SysApprovalRequest: Omit<{
1908
1868
  } | undefined;
1909
1869
  } | undefined;
1910
1870
  readonly searchable?: boolean | undefined;
1911
- readonly unique?: boolean | undefined;
1871
+ readonly unique?: boolean | "global" | undefined;
1912
1872
  readonly maxLength?: number | undefined;
1913
1873
  readonly minLength?: number | undefined;
1914
1874
  readonly scale?: number | undefined;
1875
+ readonly accept?: string[] | undefined;
1915
1876
  readonly reference?: string | undefined;
1916
1877
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1917
1878
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -1983,15 +1944,8 @@ declare const SysApprovalRequest: Omit<{
1983
1944
  generatedBy?: string | undefined;
1984
1945
  } | undefined;
1985
1946
  } | undefined;
1986
- readonly conditionalRequired?: {
1987
- dialect: "cel" | "cron" | "template";
1988
- source?: string | undefined;
1989
- ast?: unknown;
1990
- meta?: {
1991
- rationale?: string | undefined;
1992
- generatedBy?: string | undefined;
1993
- } | undefined;
1994
- } | undefined;
1947
+ readonly conditionalRequired?: undefined;
1948
+ readonly ackPlaintextMasking?: boolean | undefined;
1995
1949
  readonly sortable?: boolean | undefined;
1996
1950
  readonly inlineHelpText?: string | undefined;
1997
1951
  readonly autonumberFormat?: string | undefined;
@@ -2023,6 +1977,7 @@ declare const SysApprovalRequest: Omit<{
2023
1977
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
2024
1978
  readonly widget?: string | undefined;
2025
1979
  readonly multiple?: boolean | undefined;
1980
+ readonly maxSize?: number | undefined;
2026
1981
  readonly externalId?: boolean | undefined;
2027
1982
  readonly defaultValue?: unknown;
2028
1983
  readonly requiredPermissions?: string[] | undefined;
@@ -2041,10 +1996,11 @@ declare const SysApprovalRequest: Omit<{
2041
1996
  } | undefined;
2042
1997
  } | undefined;
2043
1998
  readonly searchable?: boolean | undefined;
2044
- readonly unique?: boolean | undefined;
1999
+ readonly unique?: boolean | "global" | undefined;
2045
2000
  readonly maxLength?: number | undefined;
2046
2001
  readonly minLength?: number | undefined;
2047
2002
  readonly scale?: number | undefined;
2003
+ readonly accept?: string[] | undefined;
2048
2004
  readonly reference?: string | undefined;
2049
2005
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2050
2006
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -2116,15 +2072,8 @@ declare const SysApprovalRequest: Omit<{
2116
2072
  generatedBy?: string | undefined;
2117
2073
  } | undefined;
2118
2074
  } | undefined;
2119
- readonly conditionalRequired?: {
2120
- dialect: "cel" | "cron" | "template";
2121
- source?: string | undefined;
2122
- ast?: unknown;
2123
- meta?: {
2124
- rationale?: string | undefined;
2125
- generatedBy?: string | undefined;
2126
- } | undefined;
2127
- } | undefined;
2075
+ readonly conditionalRequired?: undefined;
2076
+ readonly ackPlaintextMasking?: boolean | undefined;
2128
2077
  readonly sortable?: boolean | undefined;
2129
2078
  readonly inlineHelpText?: string | undefined;
2130
2079
  readonly autonumberFormat?: string | undefined;
@@ -2156,6 +2105,7 @@ declare const SysApprovalRequest: Omit<{
2156
2105
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
2157
2106
  readonly widget?: string | undefined;
2158
2107
  readonly multiple?: boolean | undefined;
2108
+ readonly maxSize?: number | undefined;
2159
2109
  readonly externalId?: boolean | undefined;
2160
2110
  readonly defaultValue?: unknown;
2161
2111
  readonly requiredPermissions?: string[] | undefined;
@@ -2174,10 +2124,11 @@ declare const SysApprovalRequest: Omit<{
2174
2124
  } | undefined;
2175
2125
  } | undefined;
2176
2126
  readonly searchable?: boolean | undefined;
2177
- readonly unique?: boolean | undefined;
2127
+ readonly unique?: boolean | "global" | undefined;
2178
2128
  readonly maxLength?: number | undefined;
2179
2129
  readonly minLength?: number | undefined;
2180
2130
  readonly scale?: number | undefined;
2131
+ readonly accept?: string[] | undefined;
2181
2132
  readonly reference?: string | undefined;
2182
2133
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2183
2134
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -2249,15 +2200,8 @@ declare const SysApprovalRequest: Omit<{
2249
2200
  generatedBy?: string | undefined;
2250
2201
  } | undefined;
2251
2202
  } | undefined;
2252
- readonly conditionalRequired?: {
2253
- dialect: "cel" | "cron" | "template";
2254
- source?: string | undefined;
2255
- ast?: unknown;
2256
- meta?: {
2257
- rationale?: string | undefined;
2258
- generatedBy?: string | undefined;
2259
- } | undefined;
2260
- } | undefined;
2203
+ readonly conditionalRequired?: undefined;
2204
+ readonly ackPlaintextMasking?: boolean | undefined;
2261
2205
  readonly sortable?: boolean | undefined;
2262
2206
  readonly inlineHelpText?: string | undefined;
2263
2207
  readonly autonumberFormat?: string | undefined;
@@ -2289,6 +2233,7 @@ declare const SysApprovalRequest: Omit<{
2289
2233
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
2290
2234
  readonly widget?: string | undefined;
2291
2235
  readonly multiple?: boolean | undefined;
2236
+ readonly maxSize?: number | undefined;
2292
2237
  readonly externalId?: boolean | undefined;
2293
2238
  readonly defaultValue?: unknown;
2294
2239
  readonly requiredPermissions?: string[] | undefined;
@@ -2307,10 +2252,11 @@ declare const SysApprovalRequest: Omit<{
2307
2252
  } | undefined;
2308
2253
  } | undefined;
2309
2254
  readonly searchable?: boolean | undefined;
2310
- readonly unique?: boolean | undefined;
2255
+ readonly unique?: boolean | "global" | undefined;
2311
2256
  readonly maxLength?: number | undefined;
2312
2257
  readonly minLength?: number | undefined;
2313
2258
  readonly scale?: number | undefined;
2259
+ readonly accept?: string[] | undefined;
2314
2260
  readonly reference?: string | undefined;
2315
2261
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2316
2262
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -2382,15 +2328,8 @@ declare const SysApprovalRequest: Omit<{
2382
2328
  generatedBy?: string | undefined;
2383
2329
  } | undefined;
2384
2330
  } | undefined;
2385
- readonly conditionalRequired?: {
2386
- dialect: "cel" | "cron" | "template";
2387
- source?: string | undefined;
2388
- ast?: unknown;
2389
- meta?: {
2390
- rationale?: string | undefined;
2391
- generatedBy?: string | undefined;
2392
- } | undefined;
2393
- } | undefined;
2331
+ readonly conditionalRequired?: undefined;
2332
+ readonly ackPlaintextMasking?: boolean | undefined;
2394
2333
  readonly sortable?: boolean | undefined;
2395
2334
  readonly inlineHelpText?: string | undefined;
2396
2335
  readonly autonumberFormat?: string | undefined;
@@ -2422,6 +2361,7 @@ declare const SysApprovalRequest: Omit<{
2422
2361
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
2423
2362
  readonly widget?: string | undefined;
2424
2363
  readonly multiple?: boolean | undefined;
2364
+ readonly maxSize?: number | undefined;
2425
2365
  readonly externalId?: boolean | undefined;
2426
2366
  readonly defaultValue?: unknown;
2427
2367
  readonly requiredPermissions?: string[] | undefined;
@@ -2440,10 +2380,11 @@ declare const SysApprovalRequest: Omit<{
2440
2380
  } | undefined;
2441
2381
  } | undefined;
2442
2382
  readonly searchable?: boolean | undefined;
2443
- readonly unique?: boolean | undefined;
2383
+ readonly unique?: boolean | "global" | undefined;
2444
2384
  readonly maxLength?: number | undefined;
2445
2385
  readonly minLength?: number | undefined;
2446
2386
  readonly scale?: number | undefined;
2387
+ readonly accept?: string[] | undefined;
2447
2388
  readonly reference?: string | undefined;
2448
2389
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2449
2390
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -2515,15 +2456,8 @@ declare const SysApprovalRequest: Omit<{
2515
2456
  generatedBy?: string | undefined;
2516
2457
  } | undefined;
2517
2458
  } | undefined;
2518
- readonly conditionalRequired?: {
2519
- dialect: "cel" | "cron" | "template";
2520
- source?: string | undefined;
2521
- ast?: unknown;
2522
- meta?: {
2523
- rationale?: string | undefined;
2524
- generatedBy?: string | undefined;
2525
- } | undefined;
2526
- } | undefined;
2459
+ readonly conditionalRequired?: undefined;
2460
+ readonly ackPlaintextMasking?: boolean | undefined;
2527
2461
  readonly sortable?: boolean | undefined;
2528
2462
  readonly inlineHelpText?: string | undefined;
2529
2463
  readonly autonumberFormat?: string | undefined;
@@ -2555,6 +2489,7 @@ declare const SysApprovalRequest: Omit<{
2555
2489
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
2556
2490
  readonly widget?: string | undefined;
2557
2491
  readonly multiple?: boolean | undefined;
2492
+ readonly maxSize?: number | undefined;
2558
2493
  readonly externalId?: boolean | undefined;
2559
2494
  readonly defaultValue?: unknown;
2560
2495
  readonly requiredPermissions?: string[] | undefined;
@@ -2573,10 +2508,11 @@ declare const SysApprovalRequest: Omit<{
2573
2508
  } | undefined;
2574
2509
  } | undefined;
2575
2510
  readonly searchable?: boolean | undefined;
2576
- readonly unique?: boolean | undefined;
2511
+ readonly unique?: boolean | "global" | undefined;
2577
2512
  readonly maxLength?: number | undefined;
2578
2513
  readonly minLength?: number | undefined;
2579
2514
  readonly scale?: number | undefined;
2515
+ readonly accept?: string[] | undefined;
2580
2516
  readonly reference?: string | undefined;
2581
2517
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2582
2518
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -2648,15 +2584,8 @@ declare const SysApprovalRequest: Omit<{
2648
2584
  generatedBy?: string | undefined;
2649
2585
  } | undefined;
2650
2586
  } | undefined;
2651
- readonly conditionalRequired?: {
2652
- dialect: "cel" | "cron" | "template";
2653
- source?: string | undefined;
2654
- ast?: unknown;
2655
- meta?: {
2656
- rationale?: string | undefined;
2657
- generatedBy?: string | undefined;
2658
- } | undefined;
2659
- } | undefined;
2587
+ readonly conditionalRequired?: undefined;
2588
+ readonly ackPlaintextMasking?: boolean | undefined;
2660
2589
  readonly sortable?: boolean | undefined;
2661
2590
  readonly inlineHelpText?: string | undefined;
2662
2591
  readonly autonumberFormat?: string | undefined;
@@ -2688,6 +2617,7 @@ declare const SysApprovalRequest: Omit<{
2688
2617
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
2689
2618
  readonly widget?: string | undefined;
2690
2619
  readonly multiple?: boolean | undefined;
2620
+ readonly maxSize?: number | undefined;
2691
2621
  readonly externalId?: boolean | undefined;
2692
2622
  readonly defaultValue?: unknown;
2693
2623
  readonly requiredPermissions?: string[] | undefined;
@@ -2706,10 +2636,11 @@ declare const SysApprovalRequest: Omit<{
2706
2636
  } | undefined;
2707
2637
  } | undefined;
2708
2638
  readonly searchable?: boolean | undefined;
2709
- readonly unique?: boolean | undefined;
2639
+ readonly unique?: boolean | "global" | undefined;
2710
2640
  readonly maxLength?: number | undefined;
2711
2641
  readonly minLength?: number | undefined;
2712
2642
  readonly scale?: number | undefined;
2643
+ readonly accept?: string[] | undefined;
2713
2644
  readonly reference?: string | undefined;
2714
2645
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2715
2646
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -2781,15 +2712,8 @@ declare const SysApprovalRequest: Omit<{
2781
2712
  generatedBy?: string | undefined;
2782
2713
  } | undefined;
2783
2714
  } | undefined;
2784
- readonly conditionalRequired?: {
2785
- dialect: "cel" | "cron" | "template";
2786
- source?: string | undefined;
2787
- ast?: unknown;
2788
- meta?: {
2789
- rationale?: string | undefined;
2790
- generatedBy?: string | undefined;
2791
- } | undefined;
2792
- } | undefined;
2715
+ readonly conditionalRequired?: undefined;
2716
+ readonly ackPlaintextMasking?: boolean | undefined;
2793
2717
  readonly sortable?: boolean | undefined;
2794
2718
  readonly inlineHelpText?: string | undefined;
2795
2719
  readonly autonumberFormat?: string | undefined;
@@ -2821,6 +2745,7 @@ declare const SysApprovalRequest: Omit<{
2821
2745
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
2822
2746
  readonly widget?: string | undefined;
2823
2747
  readonly multiple?: boolean | undefined;
2748
+ readonly maxSize?: number | undefined;
2824
2749
  readonly externalId?: boolean | undefined;
2825
2750
  readonly defaultValue?: unknown;
2826
2751
  readonly requiredPermissions?: string[] | undefined;
@@ -2839,10 +2764,11 @@ declare const SysApprovalRequest: Omit<{
2839
2764
  } | undefined;
2840
2765
  } | undefined;
2841
2766
  readonly searchable?: boolean | undefined;
2842
- readonly unique?: boolean | undefined;
2767
+ readonly unique?: boolean | "global" | undefined;
2843
2768
  readonly maxLength?: number | undefined;
2844
2769
  readonly minLength?: number | undefined;
2845
2770
  readonly scale?: number | undefined;
2771
+ readonly accept?: string[] | undefined;
2846
2772
  readonly reference?: string | undefined;
2847
2773
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2848
2774
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -2914,15 +2840,8 @@ declare const SysApprovalRequest: Omit<{
2914
2840
  generatedBy?: string | undefined;
2915
2841
  } | undefined;
2916
2842
  } | undefined;
2917
- readonly conditionalRequired?: {
2918
- dialect: "cel" | "cron" | "template";
2919
- source?: string | undefined;
2920
- ast?: unknown;
2921
- meta?: {
2922
- rationale?: string | undefined;
2923
- generatedBy?: string | undefined;
2924
- } | undefined;
2925
- } | undefined;
2843
+ readonly conditionalRequired?: undefined;
2844
+ readonly ackPlaintextMasking?: boolean | undefined;
2926
2845
  readonly sortable?: boolean | undefined;
2927
2846
  readonly inlineHelpText?: string | undefined;
2928
2847
  readonly autonumberFormat?: string | undefined;
@@ -2954,6 +2873,7 @@ declare const SysApprovalRequest: Omit<{
2954
2873
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
2955
2874
  readonly widget?: string | undefined;
2956
2875
  readonly multiple?: boolean | undefined;
2876
+ readonly maxSize?: number | undefined;
2957
2877
  readonly externalId?: boolean | undefined;
2958
2878
  readonly defaultValue?: unknown;
2959
2879
  readonly requiredPermissions?: string[] | undefined;
@@ -2972,10 +2892,11 @@ declare const SysApprovalRequest: Omit<{
2972
2892
  } | undefined;
2973
2893
  } | undefined;
2974
2894
  readonly searchable?: boolean | undefined;
2975
- readonly unique?: boolean | undefined;
2895
+ readonly unique?: boolean | "global" | undefined;
2976
2896
  readonly maxLength?: number | undefined;
2977
2897
  readonly minLength?: number | undefined;
2978
2898
  readonly scale?: number | undefined;
2899
+ readonly accept?: string[] | undefined;
2979
2900
  readonly reference?: string | undefined;
2980
2901
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2981
2902
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -3047,15 +2968,8 @@ declare const SysApprovalRequest: Omit<{
3047
2968
  generatedBy?: string | undefined;
3048
2969
  } | undefined;
3049
2970
  } | undefined;
3050
- readonly conditionalRequired?: {
3051
- dialect: "cel" | "cron" | "template";
3052
- source?: string | undefined;
3053
- ast?: unknown;
3054
- meta?: {
3055
- rationale?: string | undefined;
3056
- generatedBy?: string | undefined;
3057
- } | undefined;
3058
- } | undefined;
2971
+ readonly conditionalRequired?: undefined;
2972
+ readonly ackPlaintextMasking?: boolean | undefined;
3059
2973
  readonly sortable?: boolean | undefined;
3060
2974
  readonly inlineHelpText?: string | undefined;
3061
2975
  readonly autonumberFormat?: string | undefined;
@@ -3087,6 +3001,7 @@ declare const SysApprovalRequest: Omit<{
3087
3001
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
3088
3002
  readonly widget?: string | undefined;
3089
3003
  readonly multiple?: boolean | undefined;
3004
+ readonly maxSize?: number | undefined;
3090
3005
  readonly externalId?: boolean | undefined;
3091
3006
  readonly defaultValue?: unknown;
3092
3007
  readonly requiredPermissions?: string[] | undefined;
@@ -3105,10 +3020,11 @@ declare const SysApprovalRequest: Omit<{
3105
3020
  } | undefined;
3106
3021
  } | undefined;
3107
3022
  readonly searchable?: boolean | undefined;
3108
- readonly unique?: boolean | undefined;
3023
+ readonly unique?: boolean | "global" | undefined;
3109
3024
  readonly maxLength?: number | undefined;
3110
3025
  readonly minLength?: number | undefined;
3111
3026
  readonly scale?: number | undefined;
3027
+ readonly accept?: string[] | undefined;
3112
3028
  readonly reference?: string | undefined;
3113
3029
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
3114
3030
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -3180,15 +3096,8 @@ declare const SysApprovalRequest: Omit<{
3180
3096
  generatedBy?: string | undefined;
3181
3097
  } | undefined;
3182
3098
  } | undefined;
3183
- readonly conditionalRequired?: {
3184
- dialect: "cel" | "cron" | "template";
3185
- source?: string | undefined;
3186
- ast?: unknown;
3187
- meta?: {
3188
- rationale?: string | undefined;
3189
- generatedBy?: string | undefined;
3190
- } | undefined;
3191
- } | undefined;
3099
+ readonly conditionalRequired?: undefined;
3100
+ readonly ackPlaintextMasking?: boolean | undefined;
3192
3101
  readonly sortable?: boolean | undefined;
3193
3102
  readonly inlineHelpText?: string | undefined;
3194
3103
  readonly autonumberFormat?: string | undefined;
@@ -3220,6 +3129,7 @@ declare const SysApprovalRequest: Omit<{
3220
3129
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
3221
3130
  readonly widget?: string | undefined;
3222
3131
  readonly multiple?: boolean | undefined;
3132
+ readonly maxSize?: number | undefined;
3223
3133
  readonly externalId?: boolean | undefined;
3224
3134
  readonly defaultValue?: unknown;
3225
3135
  readonly requiredPermissions?: string[] | undefined;
@@ -3238,10 +3148,11 @@ declare const SysApprovalRequest: Omit<{
3238
3148
  } | undefined;
3239
3149
  } | undefined;
3240
3150
  readonly searchable?: boolean | undefined;
3241
- readonly unique?: boolean | undefined;
3151
+ readonly unique?: boolean | "global" | undefined;
3242
3152
  readonly maxLength?: number | undefined;
3243
3153
  readonly minLength?: number | undefined;
3244
3154
  readonly scale?: number | undefined;
3155
+ readonly accept?: string[] | undefined;
3245
3156
  readonly reference?: string | undefined;
3246
3157
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
3247
3158
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -3313,15 +3224,8 @@ declare const SysApprovalRequest: Omit<{
3313
3224
  generatedBy?: string | undefined;
3314
3225
  } | undefined;
3315
3226
  } | undefined;
3316
- readonly conditionalRequired?: {
3317
- dialect: "cel" | "cron" | "template";
3318
- source?: string | undefined;
3319
- ast?: unknown;
3320
- meta?: {
3321
- rationale?: string | undefined;
3322
- generatedBy?: string | undefined;
3323
- } | undefined;
3324
- } | undefined;
3227
+ readonly conditionalRequired?: undefined;
3228
+ readonly ackPlaintextMasking?: boolean | undefined;
3325
3229
  readonly sortable?: boolean | undefined;
3326
3230
  readonly inlineHelpText?: string | undefined;
3327
3231
  readonly autonumberFormat?: string | undefined;
@@ -3341,6 +3245,7 @@ declare const SysApprovalRequest: Omit<{
3341
3245
  readonly name: "approval_approve";
3342
3246
  readonly label: "Approve";
3343
3247
  readonly icon: "check-circle";
3248
+ readonly variant: "primary";
3344
3249
  readonly type: "api";
3345
3250
  readonly method: "POST";
3346
3251
  readonly target: "/api/v1/approvals/requests/{id}/approve";
@@ -3356,7 +3261,7 @@ declare const SysApprovalRequest: Omit<{
3356
3261
  readonly multiple: true;
3357
3262
  readonly required: false;
3358
3263
  }];
3359
- readonly visible: "record.viewer.can_act";
3264
+ readonly visible: "record.viewer.can_act || record.viewer.can_override";
3360
3265
  readonly locations: ["record_section", "list_item"];
3361
3266
  readonly successMessage: "Approved.";
3362
3267
  readonly refreshAfter: true;
@@ -3364,6 +3269,7 @@ declare const SysApprovalRequest: Omit<{
3364
3269
  readonly name: "approval_reject";
3365
3270
  readonly label: "Reject";
3366
3271
  readonly icon: "x-circle";
3272
+ readonly variant: "danger";
3367
3273
  readonly type: "api";
3368
3274
  readonly method: "POST";
3369
3275
  readonly target: "/api/v1/approvals/requests/{id}/reject";
@@ -3379,7 +3285,7 @@ declare const SysApprovalRequest: Omit<{
3379
3285
  readonly multiple: true;
3380
3286
  readonly required: false;
3381
3287
  }];
3382
- readonly visible: "record.viewer.can_act";
3288
+ readonly visible: "record.viewer.can_act || record.viewer.can_override";
3383
3289
  readonly confirmText: "Reject this request? A rejection is final for every approver.";
3384
3290
  readonly locations: ["record_section", "list_item"];
3385
3291
  readonly successMessage: "Rejected.";
@@ -3403,7 +3309,7 @@ declare const SysApprovalRequest: Omit<{
3403
3309
  readonly type: "textarea";
3404
3310
  readonly required: false;
3405
3311
  }];
3406
- readonly visible: "record.viewer.can_act";
3312
+ readonly visible: "record.viewer.can_act || record.viewer.can_override";
3407
3313
  readonly locations: ["record_section"];
3408
3314
  readonly successMessage: "Reassigned.";
3409
3315
  readonly refreshAfter: true;
@@ -3519,7 +3425,7 @@ declare const SysApprovalAction: Omit<{
3519
3425
  required: boolean;
3520
3426
  searchable: boolean;
3521
3427
  multiple: boolean;
3522
- unique: boolean;
3428
+ unique: boolean | "global";
3523
3429
  deleteBehavior: "set_null" | "cascade" | "restrict";
3524
3430
  hidden: boolean;
3525
3431
  readonly: boolean;
@@ -3536,6 +3442,8 @@ declare const SysApprovalAction: Omit<{
3536
3442
  scale?: number | undefined;
3537
3443
  min?: number | undefined;
3538
3444
  max?: number | undefined;
3445
+ accept?: string[] | undefined;
3446
+ maxSize?: number | undefined;
3539
3447
  options?: {
3540
3448
  label: string;
3541
3449
  value: string;
@@ -3672,25 +3580,10 @@ declare const SysApprovalAction: Omit<{
3672
3580
  generatedBy?: string | undefined;
3673
3581
  } | undefined;
3674
3582
  } | undefined;
3675
- conditionalRequired?: {
3676
- dialect: "cel" | "cron" | "template";
3677
- source?: string | undefined;
3678
- ast?: unknown;
3679
- meta?: {
3680
- rationale?: string | undefined;
3681
- generatedBy?: string | undefined;
3682
- } | undefined;
3683
- } | {
3684
- dialect: "cel" | "cron" | "template";
3685
- source?: string | undefined;
3686
- ast?: unknown;
3687
- meta?: {
3688
- rationale?: string | undefined;
3689
- generatedBy?: string | undefined;
3690
- } | undefined;
3691
- } | undefined;
3583
+ conditionalRequired?: undefined;
3692
3584
  widget?: string | undefined;
3693
3585
  requiredPermissions?: string[] | undefined;
3586
+ ackPlaintextMasking?: boolean | undefined;
3694
3587
  system?: boolean | undefined;
3695
3588
  inlineHelpText?: string | undefined;
3696
3589
  autonumberFormat?: string | undefined;
@@ -3802,7 +3695,7 @@ declare const SysApprovalAction: Omit<{
3802
3695
  indexes?: {
3803
3696
  fields: string[];
3804
3697
  type: "hash" | "btree" | "gin" | "gist" | "fulltext";
3805
- unique: boolean;
3698
+ unique: boolean | "global";
3806
3699
  name?: string | undefined;
3807
3700
  partial?: string | undefined;
3808
3701
  }[] | undefined;
@@ -3853,6 +3746,7 @@ declare const SysApprovalAction: Omit<{
3853
3746
  } | undefined;
3854
3747
  reclaim?: boolean | undefined;
3855
3748
  } | undefined;
3749
+ fileAccessDelegate?: string | undefined;
3856
3750
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
3857
3751
  activityMilestones?: {
3858
3752
  field: string;
@@ -3894,7 +3788,14 @@ declare const SysApprovalAction: Omit<{
3894
3788
  wrap?: boolean | undefined;
3895
3789
  type?: string | undefined;
3896
3790
  pinned?: "left" | "right" | undefined;
3897
- summary?: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled" | undefined;
3791
+ summary?: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled" | {
3792
+ type: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled";
3793
+ field?: string | undefined;
3794
+ } | undefined;
3795
+ prefix?: {
3796
+ field: string;
3797
+ type: "text" | "badge";
3798
+ } | undefined;
3898
3799
  link?: boolean | undefined;
3899
3800
  action?: string | undefined;
3900
3801
  }[];
@@ -4175,10 +4076,8 @@ declare const SysApprovalAction: Omit<{
4175
4076
  files: boolean;
4176
4077
  feeds: boolean;
4177
4078
  activities: boolean;
4178
- trash: boolean;
4179
- mru: boolean;
4180
4079
  clone: boolean;
4181
- apiMethods?: ("create" | "import" | "delete" | "update" | "search" | "get" | "upsert" | "list" | "bulk" | "aggregate" | "history" | "restore" | "purge" | "export")[] | undefined;
4080
+ apiMethods?: ("create" | "delete" | "update" | "get" | "list" | "bulk")[] | undefined;
4182
4081
  } | undefined;
4183
4082
  sharingModel?: "private" | "public_read" | "public_read_write" | "controlled_by_parent" | undefined;
4184
4083
  externalSharingModel?: "private" | "public_read" | "public_read_write" | "controlled_by_parent" | undefined;
@@ -4193,7 +4092,7 @@ declare const SysApprovalAction: Omit<{
4193
4092
  actions?: Omit<{
4194
4093
  name: string;
4195
4094
  label: string;
4196
- type: "url" | "form" | "flow" | "api" | "script" | "modal";
4095
+ type: "url" | "form" | "script" | "flow" | "api" | "modal";
4197
4096
  refreshAfter: boolean;
4198
4097
  objectName?: string | undefined;
4199
4098
  icon?: string | undefined;
@@ -4211,7 +4110,7 @@ declare const SysApprovalAction: Omit<{
4211
4110
  timeoutMs?: number | undefined;
4212
4111
  memoryMb?: number | undefined;
4213
4112
  } | undefined;
4214
- execute?: string | undefined;
4113
+ execute?: undefined;
4215
4114
  params?: Omit<{
4216
4115
  required: boolean;
4217
4116
  name?: string | undefined;
@@ -4229,6 +4128,7 @@ declare const SysApprovalAction: Omit<{
4229
4128
  multiple?: boolean | undefined;
4230
4129
  accept?: string[] | undefined;
4231
4130
  maxSize?: number | undefined;
4131
+ reference?: string | undefined;
4232
4132
  defaultFromRow?: boolean | undefined;
4233
4133
  visible?: {
4234
4134
  dialect: "cel" | "cron" | "template";
@@ -4325,6 +4225,7 @@ declare const SysApprovalAction: Omit<{
4325
4225
  readonly nameField: "id";
4326
4226
  readonly titleFormat: "{action} · {step_name}";
4327
4227
  readonly highlightFields: ["request_id", "step_name", "action", "actor_id", "created_at"];
4228
+ readonly fileAccessDelegate: "approvals";
4328
4229
  readonly listViews: {
4329
4230
  readonly recent: {
4330
4231
  readonly type: "grid";
@@ -4419,6 +4320,7 @@ declare const SysApprovalAction: Omit<{
4419
4320
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
4420
4321
  readonly widget?: string | undefined;
4421
4322
  readonly multiple?: boolean | undefined;
4323
+ readonly maxSize?: number | undefined;
4422
4324
  readonly externalId?: boolean | undefined;
4423
4325
  readonly defaultValue?: unknown;
4424
4326
  readonly requiredPermissions?: string[] | undefined;
@@ -4437,10 +4339,11 @@ declare const SysApprovalAction: Omit<{
4437
4339
  } | undefined;
4438
4340
  } | undefined;
4439
4341
  readonly searchable?: boolean | undefined;
4440
- readonly unique?: boolean | undefined;
4342
+ readonly unique?: boolean | "global" | undefined;
4441
4343
  readonly maxLength?: number | undefined;
4442
4344
  readonly minLength?: number | undefined;
4443
4345
  readonly scale?: number | undefined;
4346
+ readonly accept?: string[] | undefined;
4444
4347
  readonly reference?: string | undefined;
4445
4348
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
4446
4349
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -4512,15 +4415,8 @@ declare const SysApprovalAction: Omit<{
4512
4415
  generatedBy?: string | undefined;
4513
4416
  } | undefined;
4514
4417
  } | undefined;
4515
- readonly conditionalRequired?: {
4516
- dialect: "cel" | "cron" | "template";
4517
- source?: string | undefined;
4518
- ast?: unknown;
4519
- meta?: {
4520
- rationale?: string | undefined;
4521
- generatedBy?: string | undefined;
4522
- } | undefined;
4523
- } | undefined;
4418
+ readonly conditionalRequired?: undefined;
4419
+ readonly ackPlaintextMasking?: boolean | undefined;
4524
4420
  readonly sortable?: boolean | undefined;
4525
4421
  readonly inlineHelpText?: string | undefined;
4526
4422
  readonly autonumberFormat?: string | undefined;
@@ -4552,6 +4448,7 @@ declare const SysApprovalAction: Omit<{
4552
4448
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
4553
4449
  readonly widget?: string | undefined;
4554
4450
  readonly multiple?: boolean | undefined;
4451
+ readonly maxSize?: number | undefined;
4555
4452
  readonly externalId?: boolean | undefined;
4556
4453
  readonly defaultValue?: unknown;
4557
4454
  readonly requiredPermissions?: string[] | undefined;
@@ -4570,10 +4467,11 @@ declare const SysApprovalAction: Omit<{
4570
4467
  } | undefined;
4571
4468
  } | undefined;
4572
4469
  readonly searchable?: boolean | undefined;
4573
- readonly unique?: boolean | undefined;
4470
+ readonly unique?: boolean | "global" | undefined;
4574
4471
  readonly maxLength?: number | undefined;
4575
4472
  readonly minLength?: number | undefined;
4576
4473
  readonly scale?: number | undefined;
4474
+ readonly accept?: string[] | undefined;
4577
4475
  reference: string;
4578
4476
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
4579
4477
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -4645,15 +4543,8 @@ declare const SysApprovalAction: Omit<{
4645
4543
  generatedBy?: string | undefined;
4646
4544
  } | undefined;
4647
4545
  } | undefined;
4648
- readonly conditionalRequired?: {
4649
- dialect: "cel" | "cron" | "template";
4650
- source?: string | undefined;
4651
- ast?: unknown;
4652
- meta?: {
4653
- rationale?: string | undefined;
4654
- generatedBy?: string | undefined;
4655
- } | undefined;
4656
- } | undefined;
4546
+ readonly conditionalRequired?: undefined;
4547
+ readonly ackPlaintextMasking?: boolean | undefined;
4657
4548
  readonly sortable?: boolean | undefined;
4658
4549
  readonly inlineHelpText?: string | undefined;
4659
4550
  readonly autonumberFormat?: string | undefined;
@@ -4685,6 +4576,7 @@ declare const SysApprovalAction: Omit<{
4685
4576
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
4686
4577
  readonly widget?: string | undefined;
4687
4578
  readonly multiple?: boolean | undefined;
4579
+ readonly maxSize?: number | undefined;
4688
4580
  readonly externalId?: boolean | undefined;
4689
4581
  readonly defaultValue?: unknown;
4690
4582
  readonly requiredPermissions?: string[] | undefined;
@@ -4703,10 +4595,11 @@ declare const SysApprovalAction: Omit<{
4703
4595
  } | undefined;
4704
4596
  } | undefined;
4705
4597
  readonly searchable?: boolean | undefined;
4706
- readonly unique?: boolean | undefined;
4598
+ readonly unique?: boolean | "global" | undefined;
4707
4599
  readonly maxLength?: number | undefined;
4708
4600
  readonly minLength?: number | undefined;
4709
4601
  readonly scale?: number | undefined;
4602
+ readonly accept?: string[] | undefined;
4710
4603
  reference: string;
4711
4604
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
4712
4605
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -4778,15 +4671,8 @@ declare const SysApprovalAction: Omit<{
4778
4671
  generatedBy?: string | undefined;
4779
4672
  } | undefined;
4780
4673
  } | undefined;
4781
- readonly conditionalRequired?: {
4782
- dialect: "cel" | "cron" | "template";
4783
- source?: string | undefined;
4784
- ast?: unknown;
4785
- meta?: {
4786
- rationale?: string | undefined;
4787
- generatedBy?: string | undefined;
4788
- } | undefined;
4789
- } | undefined;
4674
+ readonly conditionalRequired?: undefined;
4675
+ readonly ackPlaintextMasking?: boolean | undefined;
4790
4676
  readonly sortable?: boolean | undefined;
4791
4677
  readonly inlineHelpText?: string | undefined;
4792
4678
  readonly autonumberFormat?: string | undefined;
@@ -4818,6 +4704,7 @@ declare const SysApprovalAction: Omit<{
4818
4704
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
4819
4705
  readonly widget?: string | undefined;
4820
4706
  readonly multiple?: boolean | undefined;
4707
+ readonly maxSize?: number | undefined;
4821
4708
  readonly externalId?: boolean | undefined;
4822
4709
  readonly defaultValue?: unknown;
4823
4710
  readonly requiredPermissions?: string[] | undefined;
@@ -4836,10 +4723,11 @@ declare const SysApprovalAction: Omit<{
4836
4723
  } | undefined;
4837
4724
  } | undefined;
4838
4725
  readonly searchable?: boolean | undefined;
4839
- readonly unique?: boolean | undefined;
4726
+ readonly unique?: boolean | "global" | undefined;
4840
4727
  readonly maxLength?: number | undefined;
4841
4728
  readonly minLength?: number | undefined;
4842
4729
  readonly scale?: number | undefined;
4730
+ readonly accept?: string[] | undefined;
4843
4731
  readonly reference?: string | undefined;
4844
4732
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
4845
4733
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -4911,15 +4799,8 @@ declare const SysApprovalAction: Omit<{
4911
4799
  generatedBy?: string | undefined;
4912
4800
  } | undefined;
4913
4801
  } | undefined;
4914
- readonly conditionalRequired?: {
4915
- dialect: "cel" | "cron" | "template";
4916
- source?: string | undefined;
4917
- ast?: unknown;
4918
- meta?: {
4919
- rationale?: string | undefined;
4920
- generatedBy?: string | undefined;
4921
- } | undefined;
4922
- } | undefined;
4802
+ readonly conditionalRequired?: undefined;
4803
+ readonly ackPlaintextMasking?: boolean | undefined;
4923
4804
  readonly sortable?: boolean | undefined;
4924
4805
  readonly inlineHelpText?: string | undefined;
4925
4806
  readonly autonumberFormat?: string | undefined;
@@ -4951,6 +4832,7 @@ declare const SysApprovalAction: Omit<{
4951
4832
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
4952
4833
  readonly widget?: string | undefined;
4953
4834
  readonly multiple?: boolean | undefined;
4835
+ readonly maxSize?: number | undefined;
4954
4836
  readonly externalId?: boolean | undefined;
4955
4837
  readonly defaultValue?: unknown;
4956
4838
  readonly requiredPermissions?: string[] | undefined;
@@ -4969,10 +4851,11 @@ declare const SysApprovalAction: Omit<{
4969
4851
  } | undefined;
4970
4852
  } | undefined;
4971
4853
  readonly searchable?: boolean | undefined;
4972
- readonly unique?: boolean | undefined;
4854
+ readonly unique?: boolean | "global" | undefined;
4973
4855
  readonly maxLength?: number | undefined;
4974
4856
  readonly minLength?: number | undefined;
4975
4857
  readonly scale?: number | undefined;
4858
+ readonly accept?: string[] | undefined;
4976
4859
  readonly reference?: string | undefined;
4977
4860
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
4978
4861
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -5044,15 +4927,8 @@ declare const SysApprovalAction: Omit<{
5044
4927
  generatedBy?: string | undefined;
5045
4928
  } | undefined;
5046
4929
  } | undefined;
5047
- readonly conditionalRequired?: {
5048
- dialect: "cel" | "cron" | "template";
5049
- source?: string | undefined;
5050
- ast?: unknown;
5051
- meta?: {
5052
- rationale?: string | undefined;
5053
- generatedBy?: string | undefined;
5054
- } | undefined;
5055
- } | undefined;
4930
+ readonly conditionalRequired?: undefined;
4931
+ readonly ackPlaintextMasking?: boolean | undefined;
5056
4932
  readonly sortable?: boolean | undefined;
5057
4933
  readonly inlineHelpText?: string | undefined;
5058
4934
  readonly autonumberFormat?: string | undefined;
@@ -5084,6 +4960,7 @@ declare const SysApprovalAction: Omit<{
5084
4960
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
5085
4961
  readonly widget?: string | undefined;
5086
4962
  readonly multiple?: boolean | undefined;
4963
+ readonly maxSize?: number | undefined;
5087
4964
  readonly externalId?: boolean | undefined;
5088
4965
  readonly defaultValue?: unknown;
5089
4966
  readonly requiredPermissions?: string[] | undefined;
@@ -5102,10 +4979,11 @@ declare const SysApprovalAction: Omit<{
5102
4979
  } | undefined;
5103
4980
  } | undefined;
5104
4981
  readonly searchable?: boolean | undefined;
5105
- readonly unique?: boolean | undefined;
4982
+ readonly unique?: boolean | "global" | undefined;
5106
4983
  readonly maxLength?: number | undefined;
5107
4984
  readonly minLength?: number | undefined;
5108
4985
  readonly scale?: number | undefined;
4986
+ readonly accept?: string[] | undefined;
5109
4987
  readonly reference?: string | undefined;
5110
4988
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
5111
4989
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -5177,15 +5055,8 @@ declare const SysApprovalAction: Omit<{
5177
5055
  generatedBy?: string | undefined;
5178
5056
  } | undefined;
5179
5057
  } | undefined;
5180
- readonly conditionalRequired?: {
5181
- dialect: "cel" | "cron" | "template";
5182
- source?: string | undefined;
5183
- ast?: unknown;
5184
- meta?: {
5185
- rationale?: string | undefined;
5186
- generatedBy?: string | undefined;
5187
- } | undefined;
5188
- } | undefined;
5058
+ readonly conditionalRequired?: undefined;
5059
+ readonly ackPlaintextMasking?: boolean | undefined;
5189
5060
  readonly sortable?: boolean | undefined;
5190
5061
  readonly inlineHelpText?: string | undefined;
5191
5062
  readonly autonumberFormat?: string | undefined;
@@ -5217,6 +5088,7 @@ declare const SysApprovalAction: Omit<{
5217
5088
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
5218
5089
  readonly widget?: string | undefined;
5219
5090
  readonly multiple?: boolean | undefined;
5091
+ readonly maxSize?: number | undefined;
5220
5092
  readonly externalId?: boolean | undefined;
5221
5093
  readonly defaultValue?: unknown;
5222
5094
  readonly requiredPermissions?: string[] | undefined;
@@ -5235,10 +5107,11 @@ declare const SysApprovalAction: Omit<{
5235
5107
  } | undefined;
5236
5108
  } | undefined;
5237
5109
  readonly searchable?: boolean | undefined;
5238
- readonly unique?: boolean | undefined;
5110
+ readonly unique?: boolean | "global" | undefined;
5239
5111
  readonly maxLength?: number | undefined;
5240
5112
  readonly minLength?: number | undefined;
5241
5113
  readonly scale?: number | undefined;
5114
+ readonly accept?: string[] | undefined;
5242
5115
  reference: string;
5243
5116
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
5244
5117
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -5310,15 +5183,8 @@ declare const SysApprovalAction: Omit<{
5310
5183
  generatedBy?: string | undefined;
5311
5184
  } | undefined;
5312
5185
  } | undefined;
5313
- readonly conditionalRequired?: {
5314
- dialect: "cel" | "cron" | "template";
5315
- source?: string | undefined;
5316
- ast?: unknown;
5317
- meta?: {
5318
- rationale?: string | undefined;
5319
- generatedBy?: string | undefined;
5320
- } | undefined;
5321
- } | undefined;
5186
+ readonly conditionalRequired?: undefined;
5187
+ readonly ackPlaintextMasking?: boolean | undefined;
5322
5188
  readonly sortable?: boolean | undefined;
5323
5189
  readonly inlineHelpText?: string | undefined;
5324
5190
  readonly autonumberFormat?: string | undefined;
@@ -5350,6 +5216,7 @@ declare const SysApprovalAction: Omit<{
5350
5216
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
5351
5217
  readonly widget?: string | undefined;
5352
5218
  readonly multiple?: boolean | undefined;
5219
+ readonly maxSize?: number | undefined;
5353
5220
  readonly externalId?: boolean | undefined;
5354
5221
  readonly defaultValue?: unknown;
5355
5222
  readonly requiredPermissions?: string[] | undefined;
@@ -5368,10 +5235,11 @@ declare const SysApprovalAction: Omit<{
5368
5235
  } | undefined;
5369
5236
  } | undefined;
5370
5237
  readonly searchable?: boolean | undefined;
5371
- readonly unique?: boolean | undefined;
5238
+ readonly unique?: boolean | "global" | undefined;
5372
5239
  readonly maxLength?: number | undefined;
5373
5240
  readonly minLength?: number | undefined;
5374
5241
  readonly scale?: number | undefined;
5242
+ readonly accept?: string[] | undefined;
5375
5243
  readonly reference?: string | undefined;
5376
5244
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
5377
5245
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -5443,15 +5311,8 @@ declare const SysApprovalAction: Omit<{
5443
5311
  generatedBy?: string | undefined;
5444
5312
  } | undefined;
5445
5313
  } | undefined;
5446
- readonly conditionalRequired?: {
5447
- dialect: "cel" | "cron" | "template";
5448
- source?: string | undefined;
5449
- ast?: unknown;
5450
- meta?: {
5451
- rationale?: string | undefined;
5452
- generatedBy?: string | undefined;
5453
- } | undefined;
5454
- } | undefined;
5314
+ readonly conditionalRequired?: undefined;
5315
+ readonly ackPlaintextMasking?: boolean | undefined;
5455
5316
  readonly sortable?: boolean | undefined;
5456
5317
  readonly inlineHelpText?: string | undefined;
5457
5318
  readonly autonumberFormat?: string | undefined;
@@ -5483,6 +5344,7 @@ declare const SysApprovalAction: Omit<{
5483
5344
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
5484
5345
  readonly widget?: string | undefined;
5485
5346
  readonly multiple?: boolean | undefined;
5347
+ readonly maxSize?: number | undefined;
5486
5348
  readonly externalId?: boolean | undefined;
5487
5349
  readonly defaultValue?: unknown;
5488
5350
  readonly requiredPermissions?: string[] | undefined;
@@ -5501,10 +5363,11 @@ declare const SysApprovalAction: Omit<{
5501
5363
  } | undefined;
5502
5364
  } | undefined;
5503
5365
  readonly searchable?: boolean | undefined;
5504
- readonly unique?: boolean | undefined;
5366
+ readonly unique?: boolean | "global" | undefined;
5505
5367
  readonly maxLength?: number | undefined;
5506
5368
  readonly minLength?: number | undefined;
5507
5369
  readonly scale?: number | undefined;
5370
+ readonly accept?: string[] | undefined;
5508
5371
  readonly reference?: string | undefined;
5509
5372
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
5510
5373
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -5576,15 +5439,8 @@ declare const SysApprovalAction: Omit<{
5576
5439
  generatedBy?: string | undefined;
5577
5440
  } | undefined;
5578
5441
  } | undefined;
5579
- readonly conditionalRequired?: {
5580
- dialect: "cel" | "cron" | "template";
5581
- source?: string | undefined;
5582
- ast?: unknown;
5583
- meta?: {
5584
- rationale?: string | undefined;
5585
- generatedBy?: string | undefined;
5586
- } | undefined;
5587
- } | undefined;
5442
+ readonly conditionalRequired?: undefined;
5443
+ readonly ackPlaintextMasking?: boolean | undefined;
5588
5444
  readonly sortable?: boolean | undefined;
5589
5445
  readonly inlineHelpText?: string | undefined;
5590
5446
  readonly autonumberFormat?: string | undefined;
@@ -5616,6 +5472,7 @@ declare const SysApprovalAction: Omit<{
5616
5472
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
5617
5473
  readonly widget?: string | undefined;
5618
5474
  readonly multiple?: boolean | undefined;
5475
+ readonly maxSize?: number | undefined;
5619
5476
  readonly externalId?: boolean | undefined;
5620
5477
  readonly defaultValue?: unknown;
5621
5478
  readonly requiredPermissions?: string[] | undefined;
@@ -5634,10 +5491,11 @@ declare const SysApprovalAction: Omit<{
5634
5491
  } | undefined;
5635
5492
  } | undefined;
5636
5493
  readonly searchable?: boolean | undefined;
5637
- readonly unique?: boolean | undefined;
5494
+ readonly unique?: boolean | "global" | undefined;
5638
5495
  readonly maxLength?: number | undefined;
5639
5496
  readonly minLength?: number | undefined;
5640
5497
  readonly scale?: number | undefined;
5498
+ readonly accept?: string[] | undefined;
5641
5499
  readonly reference?: string | undefined;
5642
5500
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
5643
5501
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -5709,15 +5567,8 @@ declare const SysApprovalAction: Omit<{
5709
5567
  generatedBy?: string | undefined;
5710
5568
  } | undefined;
5711
5569
  } | undefined;
5712
- readonly conditionalRequired?: {
5713
- dialect: "cel" | "cron" | "template";
5714
- source?: string | undefined;
5715
- ast?: unknown;
5716
- meta?: {
5717
- rationale?: string | undefined;
5718
- generatedBy?: string | undefined;
5719
- } | undefined;
5720
- } | undefined;
5570
+ readonly conditionalRequired?: undefined;
5571
+ readonly ackPlaintextMasking?: boolean | undefined;
5721
5572
  readonly sortable?: boolean | undefined;
5722
5573
  readonly inlineHelpText?: string | undefined;
5723
5574
  readonly autonumberFormat?: string | undefined;
@@ -5765,7 +5616,7 @@ declare const SysApprovalApprover: Omit<{
5765
5616
  required: boolean;
5766
5617
  searchable: boolean;
5767
5618
  multiple: boolean;
5768
- unique: boolean;
5619
+ unique: boolean | "global";
5769
5620
  deleteBehavior: "set_null" | "cascade" | "restrict";
5770
5621
  hidden: boolean;
5771
5622
  readonly: boolean;
@@ -5782,6 +5633,8 @@ declare const SysApprovalApprover: Omit<{
5782
5633
  scale?: number | undefined;
5783
5634
  min?: number | undefined;
5784
5635
  max?: number | undefined;
5636
+ accept?: string[] | undefined;
5637
+ maxSize?: number | undefined;
5785
5638
  options?: {
5786
5639
  label: string;
5787
5640
  value: string;
@@ -5918,25 +5771,10 @@ declare const SysApprovalApprover: Omit<{
5918
5771
  generatedBy?: string | undefined;
5919
5772
  } | undefined;
5920
5773
  } | undefined;
5921
- conditionalRequired?: {
5922
- dialect: "cel" | "cron" | "template";
5923
- source?: string | undefined;
5924
- ast?: unknown;
5925
- meta?: {
5926
- rationale?: string | undefined;
5927
- generatedBy?: string | undefined;
5928
- } | undefined;
5929
- } | {
5930
- dialect: "cel" | "cron" | "template";
5931
- source?: string | undefined;
5932
- ast?: unknown;
5933
- meta?: {
5934
- rationale?: string | undefined;
5935
- generatedBy?: string | undefined;
5936
- } | undefined;
5937
- } | undefined;
5774
+ conditionalRequired?: undefined;
5938
5775
  widget?: string | undefined;
5939
5776
  requiredPermissions?: string[] | undefined;
5777
+ ackPlaintextMasking?: boolean | undefined;
5940
5778
  system?: boolean | undefined;
5941
5779
  inlineHelpText?: string | undefined;
5942
5780
  autonumberFormat?: string | undefined;
@@ -6048,7 +5886,7 @@ declare const SysApprovalApprover: Omit<{
6048
5886
  indexes?: {
6049
5887
  fields: string[];
6050
5888
  type: "hash" | "btree" | "gin" | "gist" | "fulltext";
6051
- unique: boolean;
5889
+ unique: boolean | "global";
6052
5890
  name?: string | undefined;
6053
5891
  partial?: string | undefined;
6054
5892
  }[] | undefined;
@@ -6099,6 +5937,7 @@ declare const SysApprovalApprover: Omit<{
6099
5937
  } | undefined;
6100
5938
  reclaim?: boolean | undefined;
6101
5939
  } | undefined;
5940
+ fileAccessDelegate?: string | undefined;
6102
5941
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
6103
5942
  activityMilestones?: {
6104
5943
  field: string;
@@ -6140,7 +5979,14 @@ declare const SysApprovalApprover: Omit<{
6140
5979
  wrap?: boolean | undefined;
6141
5980
  type?: string | undefined;
6142
5981
  pinned?: "left" | "right" | undefined;
6143
- summary?: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled" | undefined;
5982
+ summary?: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled" | {
5983
+ type: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled";
5984
+ field?: string | undefined;
5985
+ } | undefined;
5986
+ prefix?: {
5987
+ field: string;
5988
+ type: "text" | "badge";
5989
+ } | undefined;
6144
5990
  link?: boolean | undefined;
6145
5991
  action?: string | undefined;
6146
5992
  }[];
@@ -6421,10 +6267,8 @@ declare const SysApprovalApprover: Omit<{
6421
6267
  files: boolean;
6422
6268
  feeds: boolean;
6423
6269
  activities: boolean;
6424
- trash: boolean;
6425
- mru: boolean;
6426
6270
  clone: boolean;
6427
- apiMethods?: ("create" | "import" | "delete" | "update" | "search" | "get" | "upsert" | "list" | "bulk" | "aggregate" | "history" | "restore" | "purge" | "export")[] | undefined;
6271
+ apiMethods?: ("create" | "delete" | "update" | "get" | "list" | "bulk")[] | undefined;
6428
6272
  } | undefined;
6429
6273
  sharingModel?: "private" | "public_read" | "public_read_write" | "controlled_by_parent" | undefined;
6430
6274
  externalSharingModel?: "private" | "public_read" | "public_read_write" | "controlled_by_parent" | undefined;
@@ -6439,7 +6283,7 @@ declare const SysApprovalApprover: Omit<{
6439
6283
  actions?: Omit<{
6440
6284
  name: string;
6441
6285
  label: string;
6442
- type: "url" | "form" | "flow" | "api" | "script" | "modal";
6286
+ type: "url" | "form" | "script" | "flow" | "api" | "modal";
6443
6287
  refreshAfter: boolean;
6444
6288
  objectName?: string | undefined;
6445
6289
  icon?: string | undefined;
@@ -6457,7 +6301,7 @@ declare const SysApprovalApprover: Omit<{
6457
6301
  timeoutMs?: number | undefined;
6458
6302
  memoryMb?: number | undefined;
6459
6303
  } | undefined;
6460
- execute?: string | undefined;
6304
+ execute?: undefined;
6461
6305
  params?: Omit<{
6462
6306
  required: boolean;
6463
6307
  name?: string | undefined;
@@ -6475,6 +6319,7 @@ declare const SysApprovalApprover: Omit<{
6475
6319
  multiple?: boolean | undefined;
6476
6320
  accept?: string[] | undefined;
6477
6321
  maxSize?: number | undefined;
6322
+ reference?: string | undefined;
6478
6323
  defaultFromRow?: boolean | undefined;
6479
6324
  visible?: {
6480
6325
  dialect: "cel" | "cron" | "template";
@@ -6598,6 +6443,7 @@ declare const SysApprovalApprover: Omit<{
6598
6443
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
6599
6444
  readonly widget?: string | undefined;
6600
6445
  readonly multiple?: boolean | undefined;
6446
+ readonly maxSize?: number | undefined;
6601
6447
  readonly externalId?: boolean | undefined;
6602
6448
  readonly defaultValue?: unknown;
6603
6449
  readonly requiredPermissions?: string[] | undefined;
@@ -6616,10 +6462,11 @@ declare const SysApprovalApprover: Omit<{
6616
6462
  } | undefined;
6617
6463
  } | undefined;
6618
6464
  readonly searchable?: boolean | undefined;
6619
- readonly unique?: boolean | undefined;
6465
+ readonly unique?: boolean | "global" | undefined;
6620
6466
  readonly maxLength?: number | undefined;
6621
6467
  readonly minLength?: number | undefined;
6622
6468
  readonly scale?: number | undefined;
6469
+ readonly accept?: string[] | undefined;
6623
6470
  readonly reference?: string | undefined;
6624
6471
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
6625
6472
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -6691,15 +6538,8 @@ declare const SysApprovalApprover: Omit<{
6691
6538
  generatedBy?: string | undefined;
6692
6539
  } | undefined;
6693
6540
  } | undefined;
6694
- readonly conditionalRequired?: {
6695
- dialect: "cel" | "cron" | "template";
6696
- source?: string | undefined;
6697
- ast?: unknown;
6698
- meta?: {
6699
- rationale?: string | undefined;
6700
- generatedBy?: string | undefined;
6701
- } | undefined;
6702
- } | undefined;
6541
+ readonly conditionalRequired?: undefined;
6542
+ readonly ackPlaintextMasking?: boolean | undefined;
6703
6543
  readonly sortable?: boolean | undefined;
6704
6544
  readonly inlineHelpText?: string | undefined;
6705
6545
  readonly autonumberFormat?: string | undefined;
@@ -6731,6 +6571,7 @@ declare const SysApprovalApprover: Omit<{
6731
6571
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
6732
6572
  readonly widget?: string | undefined;
6733
6573
  readonly multiple?: boolean | undefined;
6574
+ readonly maxSize?: number | undefined;
6734
6575
  readonly externalId?: boolean | undefined;
6735
6576
  readonly defaultValue?: unknown;
6736
6577
  readonly requiredPermissions?: string[] | undefined;
@@ -6749,10 +6590,11 @@ declare const SysApprovalApprover: Omit<{
6749
6590
  } | undefined;
6750
6591
  } | undefined;
6751
6592
  readonly searchable?: boolean | undefined;
6752
- readonly unique?: boolean | undefined;
6593
+ readonly unique?: boolean | "global" | undefined;
6753
6594
  readonly maxLength?: number | undefined;
6754
6595
  readonly minLength?: number | undefined;
6755
6596
  readonly scale?: number | undefined;
6597
+ readonly accept?: string[] | undefined;
6756
6598
  reference: string;
6757
6599
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
6758
6600
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -6824,15 +6666,8 @@ declare const SysApprovalApprover: Omit<{
6824
6666
  generatedBy?: string | undefined;
6825
6667
  } | undefined;
6826
6668
  } | undefined;
6827
- readonly conditionalRequired?: {
6828
- dialect: "cel" | "cron" | "template";
6829
- source?: string | undefined;
6830
- ast?: unknown;
6831
- meta?: {
6832
- rationale?: string | undefined;
6833
- generatedBy?: string | undefined;
6834
- } | undefined;
6835
- } | undefined;
6669
+ readonly conditionalRequired?: undefined;
6670
+ readonly ackPlaintextMasking?: boolean | undefined;
6836
6671
  readonly sortable?: boolean | undefined;
6837
6672
  readonly inlineHelpText?: string | undefined;
6838
6673
  readonly autonumberFormat?: string | undefined;
@@ -6864,6 +6699,7 @@ declare const SysApprovalApprover: Omit<{
6864
6699
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
6865
6700
  readonly widget?: string | undefined;
6866
6701
  readonly multiple?: boolean | undefined;
6702
+ readonly maxSize?: number | undefined;
6867
6703
  readonly externalId?: boolean | undefined;
6868
6704
  readonly defaultValue?: unknown;
6869
6705
  readonly requiredPermissions?: string[] | undefined;
@@ -6882,10 +6718,11 @@ declare const SysApprovalApprover: Omit<{
6882
6718
  } | undefined;
6883
6719
  } | undefined;
6884
6720
  readonly searchable?: boolean | undefined;
6885
- readonly unique?: boolean | undefined;
6721
+ readonly unique?: boolean | "global" | undefined;
6886
6722
  readonly maxLength?: number | undefined;
6887
6723
  readonly minLength?: number | undefined;
6888
6724
  readonly scale?: number | undefined;
6725
+ readonly accept?: string[] | undefined;
6889
6726
  reference: string;
6890
6727
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
6891
6728
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -6957,15 +6794,8 @@ declare const SysApprovalApprover: Omit<{
6957
6794
  generatedBy?: string | undefined;
6958
6795
  } | undefined;
6959
6796
  } | undefined;
6960
- readonly conditionalRequired?: {
6961
- dialect: "cel" | "cron" | "template";
6962
- source?: string | undefined;
6963
- ast?: unknown;
6964
- meta?: {
6965
- rationale?: string | undefined;
6966
- generatedBy?: string | undefined;
6967
- } | undefined;
6968
- } | undefined;
6797
+ readonly conditionalRequired?: undefined;
6798
+ readonly ackPlaintextMasking?: boolean | undefined;
6969
6799
  readonly sortable?: boolean | undefined;
6970
6800
  readonly inlineHelpText?: string | undefined;
6971
6801
  readonly autonumberFormat?: string | undefined;
@@ -6997,6 +6827,7 @@ declare const SysApprovalApprover: Omit<{
6997
6827
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
6998
6828
  readonly widget?: string | undefined;
6999
6829
  readonly multiple?: boolean | undefined;
6830
+ readonly maxSize?: number | undefined;
7000
6831
  readonly externalId?: boolean | undefined;
7001
6832
  readonly defaultValue?: unknown;
7002
6833
  readonly requiredPermissions?: string[] | undefined;
@@ -7015,10 +6846,11 @@ declare const SysApprovalApprover: Omit<{
7015
6846
  } | undefined;
7016
6847
  } | undefined;
7017
6848
  readonly searchable?: boolean | undefined;
7018
- readonly unique?: boolean | undefined;
6849
+ readonly unique?: boolean | "global" | undefined;
7019
6850
  readonly maxLength?: number | undefined;
7020
6851
  readonly minLength?: number | undefined;
7021
6852
  readonly scale?: number | undefined;
6853
+ readonly accept?: string[] | undefined;
7022
6854
  readonly reference?: string | undefined;
7023
6855
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
7024
6856
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -7090,15 +6922,8 @@ declare const SysApprovalApprover: Omit<{
7090
6922
  generatedBy?: string | undefined;
7091
6923
  } | undefined;
7092
6924
  } | undefined;
7093
- readonly conditionalRequired?: {
7094
- dialect: "cel" | "cron" | "template";
7095
- source?: string | undefined;
7096
- ast?: unknown;
7097
- meta?: {
7098
- rationale?: string | undefined;
7099
- generatedBy?: string | undefined;
7100
- } | undefined;
7101
- } | undefined;
6925
+ readonly conditionalRequired?: undefined;
6926
+ readonly ackPlaintextMasking?: boolean | undefined;
7102
6927
  readonly sortable?: boolean | undefined;
7103
6928
  readonly inlineHelpText?: string | undefined;
7104
6929
  readonly autonumberFormat?: string | undefined;
@@ -7130,6 +6955,7 @@ declare const SysApprovalApprover: Omit<{
7130
6955
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
7131
6956
  readonly widget?: string | undefined;
7132
6957
  readonly multiple?: boolean | undefined;
6958
+ readonly maxSize?: number | undefined;
7133
6959
  readonly externalId?: boolean | undefined;
7134
6960
  readonly defaultValue?: unknown;
7135
6961
  readonly requiredPermissions?: string[] | undefined;
@@ -7148,10 +6974,11 @@ declare const SysApprovalApprover: Omit<{
7148
6974
  } | undefined;
7149
6975
  } | undefined;
7150
6976
  readonly searchable?: boolean | undefined;
7151
- readonly unique?: boolean | undefined;
6977
+ readonly unique?: boolean | "global" | undefined;
7152
6978
  readonly maxLength?: number | undefined;
7153
6979
  readonly minLength?: number | undefined;
7154
6980
  readonly scale?: number | undefined;
6981
+ readonly accept?: string[] | undefined;
7155
6982
  readonly reference?: string | undefined;
7156
6983
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
7157
6984
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -7223,15 +7050,8 @@ declare const SysApprovalApprover: Omit<{
7223
7050
  generatedBy?: string | undefined;
7224
7051
  } | undefined;
7225
7052
  } | undefined;
7226
- readonly conditionalRequired?: {
7227
- dialect: "cel" | "cron" | "template";
7228
- source?: string | undefined;
7229
- ast?: unknown;
7230
- meta?: {
7231
- rationale?: string | undefined;
7232
- generatedBy?: string | undefined;
7233
- } | undefined;
7234
- } | undefined;
7053
+ readonly conditionalRequired?: undefined;
7054
+ readonly ackPlaintextMasking?: boolean | undefined;
7235
7055
  readonly sortable?: boolean | undefined;
7236
7056
  readonly inlineHelpText?: string | undefined;
7237
7057
  readonly autonumberFormat?: string | undefined;
@@ -7282,7 +7102,7 @@ declare const SysApprovalDelegation: Omit<{
7282
7102
  required: boolean;
7283
7103
  searchable: boolean;
7284
7104
  multiple: boolean;
7285
- unique: boolean;
7105
+ unique: boolean | "global";
7286
7106
  deleteBehavior: "set_null" | "cascade" | "restrict";
7287
7107
  hidden: boolean;
7288
7108
  readonly: boolean;
@@ -7299,6 +7119,8 @@ declare const SysApprovalDelegation: Omit<{
7299
7119
  scale?: number | undefined;
7300
7120
  min?: number | undefined;
7301
7121
  max?: number | undefined;
7122
+ accept?: string[] | undefined;
7123
+ maxSize?: number | undefined;
7302
7124
  options?: {
7303
7125
  label: string;
7304
7126
  value: string;
@@ -7435,25 +7257,10 @@ declare const SysApprovalDelegation: Omit<{
7435
7257
  generatedBy?: string | undefined;
7436
7258
  } | undefined;
7437
7259
  } | undefined;
7438
- conditionalRequired?: {
7439
- dialect: "cel" | "cron" | "template";
7440
- source?: string | undefined;
7441
- ast?: unknown;
7442
- meta?: {
7443
- rationale?: string | undefined;
7444
- generatedBy?: string | undefined;
7445
- } | undefined;
7446
- } | {
7447
- dialect: "cel" | "cron" | "template";
7448
- source?: string | undefined;
7449
- ast?: unknown;
7450
- meta?: {
7451
- rationale?: string | undefined;
7452
- generatedBy?: string | undefined;
7453
- } | undefined;
7454
- } | undefined;
7260
+ conditionalRequired?: undefined;
7455
7261
  widget?: string | undefined;
7456
7262
  requiredPermissions?: string[] | undefined;
7263
+ ackPlaintextMasking?: boolean | undefined;
7457
7264
  system?: boolean | undefined;
7458
7265
  inlineHelpText?: string | undefined;
7459
7266
  autonumberFormat?: string | undefined;
@@ -7565,7 +7372,7 @@ declare const SysApprovalDelegation: Omit<{
7565
7372
  indexes?: {
7566
7373
  fields: string[];
7567
7374
  type: "hash" | "btree" | "gin" | "gist" | "fulltext";
7568
- unique: boolean;
7375
+ unique: boolean | "global";
7569
7376
  name?: string | undefined;
7570
7377
  partial?: string | undefined;
7571
7378
  }[] | undefined;
@@ -7616,6 +7423,7 @@ declare const SysApprovalDelegation: Omit<{
7616
7423
  } | undefined;
7617
7424
  reclaim?: boolean | undefined;
7618
7425
  } | undefined;
7426
+ fileAccessDelegate?: string | undefined;
7619
7427
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
7620
7428
  activityMilestones?: {
7621
7429
  field: string;
@@ -7657,7 +7465,14 @@ declare const SysApprovalDelegation: Omit<{
7657
7465
  wrap?: boolean | undefined;
7658
7466
  type?: string | undefined;
7659
7467
  pinned?: "left" | "right" | undefined;
7660
- summary?: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled" | undefined;
7468
+ summary?: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled" | {
7469
+ type: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled";
7470
+ field?: string | undefined;
7471
+ } | undefined;
7472
+ prefix?: {
7473
+ field: string;
7474
+ type: "text" | "badge";
7475
+ } | undefined;
7661
7476
  link?: boolean | undefined;
7662
7477
  action?: string | undefined;
7663
7478
  }[];
@@ -7938,10 +7753,8 @@ declare const SysApprovalDelegation: Omit<{
7938
7753
  files: boolean;
7939
7754
  feeds: boolean;
7940
7755
  activities: boolean;
7941
- trash: boolean;
7942
- mru: boolean;
7943
7756
  clone: boolean;
7944
- apiMethods?: ("create" | "import" | "delete" | "update" | "search" | "get" | "upsert" | "list" | "bulk" | "aggregate" | "history" | "restore" | "purge" | "export")[] | undefined;
7757
+ apiMethods?: ("create" | "delete" | "update" | "get" | "list" | "bulk")[] | undefined;
7945
7758
  } | undefined;
7946
7759
  sharingModel?: "private" | "public_read" | "public_read_write" | "controlled_by_parent" | undefined;
7947
7760
  externalSharingModel?: "private" | "public_read" | "public_read_write" | "controlled_by_parent" | undefined;
@@ -7956,7 +7769,7 @@ declare const SysApprovalDelegation: Omit<{
7956
7769
  actions?: Omit<{
7957
7770
  name: string;
7958
7771
  label: string;
7959
- type: "url" | "form" | "flow" | "api" | "script" | "modal";
7772
+ type: "url" | "form" | "script" | "flow" | "api" | "modal";
7960
7773
  refreshAfter: boolean;
7961
7774
  objectName?: string | undefined;
7962
7775
  icon?: string | undefined;
@@ -7974,7 +7787,7 @@ declare const SysApprovalDelegation: Omit<{
7974
7787
  timeoutMs?: number | undefined;
7975
7788
  memoryMb?: number | undefined;
7976
7789
  } | undefined;
7977
- execute?: string | undefined;
7790
+ execute?: undefined;
7978
7791
  params?: Omit<{
7979
7792
  required: boolean;
7980
7793
  name?: string | undefined;
@@ -7992,6 +7805,7 @@ declare const SysApprovalDelegation: Omit<{
7992
7805
  multiple?: boolean | undefined;
7993
7806
  accept?: string[] | undefined;
7994
7807
  maxSize?: number | undefined;
7808
+ reference?: string | undefined;
7995
7809
  defaultFromRow?: boolean | undefined;
7996
7810
  visible?: {
7997
7811
  dialect: "cel" | "cron" | "template";
@@ -8141,6 +7955,7 @@ declare const SysApprovalDelegation: Omit<{
8141
7955
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
8142
7956
  readonly widget?: string | undefined;
8143
7957
  readonly multiple?: boolean | undefined;
7958
+ readonly maxSize?: number | undefined;
8144
7959
  readonly externalId?: boolean | undefined;
8145
7960
  readonly defaultValue?: unknown;
8146
7961
  readonly requiredPermissions?: string[] | undefined;
@@ -8159,10 +7974,11 @@ declare const SysApprovalDelegation: Omit<{
8159
7974
  } | undefined;
8160
7975
  } | undefined;
8161
7976
  readonly searchable?: boolean | undefined;
8162
- readonly unique?: boolean | undefined;
7977
+ readonly unique?: boolean | "global" | undefined;
8163
7978
  readonly maxLength?: number | undefined;
8164
7979
  readonly minLength?: number | undefined;
8165
7980
  readonly scale?: number | undefined;
7981
+ readonly accept?: string[] | undefined;
8166
7982
  readonly reference?: string | undefined;
8167
7983
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
8168
7984
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -8234,15 +8050,8 @@ declare const SysApprovalDelegation: Omit<{
8234
8050
  generatedBy?: string | undefined;
8235
8051
  } | undefined;
8236
8052
  } | undefined;
8237
- readonly conditionalRequired?: {
8238
- dialect: "cel" | "cron" | "template";
8239
- source?: string | undefined;
8240
- ast?: unknown;
8241
- meta?: {
8242
- rationale?: string | undefined;
8243
- generatedBy?: string | undefined;
8244
- } | undefined;
8245
- } | undefined;
8053
+ readonly conditionalRequired?: undefined;
8054
+ readonly ackPlaintextMasking?: boolean | undefined;
8246
8055
  readonly sortable?: boolean | undefined;
8247
8056
  readonly inlineHelpText?: string | undefined;
8248
8057
  readonly autonumberFormat?: string | undefined;
@@ -8274,6 +8083,7 @@ declare const SysApprovalDelegation: Omit<{
8274
8083
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
8275
8084
  readonly widget?: string | undefined;
8276
8085
  readonly multiple?: boolean | undefined;
8086
+ readonly maxSize?: number | undefined;
8277
8087
  readonly externalId?: boolean | undefined;
8278
8088
  readonly defaultValue?: unknown;
8279
8089
  readonly requiredPermissions?: string[] | undefined;
@@ -8292,10 +8102,11 @@ declare const SysApprovalDelegation: Omit<{
8292
8102
  } | undefined;
8293
8103
  } | undefined;
8294
8104
  readonly searchable?: boolean | undefined;
8295
- readonly unique?: boolean | undefined;
8105
+ readonly unique?: boolean | "global" | undefined;
8296
8106
  readonly maxLength?: number | undefined;
8297
8107
  readonly minLength?: number | undefined;
8298
8108
  readonly scale?: number | undefined;
8109
+ readonly accept?: string[] | undefined;
8299
8110
  reference: string;
8300
8111
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
8301
8112
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -8367,15 +8178,8 @@ declare const SysApprovalDelegation: Omit<{
8367
8178
  generatedBy?: string | undefined;
8368
8179
  } | undefined;
8369
8180
  } | undefined;
8370
- readonly conditionalRequired?: {
8371
- dialect: "cel" | "cron" | "template";
8372
- source?: string | undefined;
8373
- ast?: unknown;
8374
- meta?: {
8375
- rationale?: string | undefined;
8376
- generatedBy?: string | undefined;
8377
- } | undefined;
8378
- } | undefined;
8181
+ readonly conditionalRequired?: undefined;
8182
+ readonly ackPlaintextMasking?: boolean | undefined;
8379
8183
  readonly sortable?: boolean | undefined;
8380
8184
  readonly inlineHelpText?: string | undefined;
8381
8185
  readonly autonumberFormat?: string | undefined;
@@ -8407,6 +8211,7 @@ declare const SysApprovalDelegation: Omit<{
8407
8211
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
8408
8212
  readonly widget?: string | undefined;
8409
8213
  readonly multiple?: boolean | undefined;
8214
+ readonly maxSize?: number | undefined;
8410
8215
  readonly externalId?: boolean | undefined;
8411
8216
  readonly defaultValue?: unknown;
8412
8217
  readonly requiredPermissions?: string[] | undefined;
@@ -8425,10 +8230,11 @@ declare const SysApprovalDelegation: Omit<{
8425
8230
  } | undefined;
8426
8231
  } | undefined;
8427
8232
  readonly searchable?: boolean | undefined;
8428
- readonly unique?: boolean | undefined;
8233
+ readonly unique?: boolean | "global" | undefined;
8429
8234
  readonly maxLength?: number | undefined;
8430
8235
  readonly minLength?: number | undefined;
8431
8236
  readonly scale?: number | undefined;
8237
+ readonly accept?: string[] | undefined;
8432
8238
  reference: string;
8433
8239
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
8434
8240
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -8500,15 +8306,8 @@ declare const SysApprovalDelegation: Omit<{
8500
8306
  generatedBy?: string | undefined;
8501
8307
  } | undefined;
8502
8308
  } | undefined;
8503
- readonly conditionalRequired?: {
8504
- dialect: "cel" | "cron" | "template";
8505
- source?: string | undefined;
8506
- ast?: unknown;
8507
- meta?: {
8508
- rationale?: string | undefined;
8509
- generatedBy?: string | undefined;
8510
- } | undefined;
8511
- } | undefined;
8309
+ readonly conditionalRequired?: undefined;
8310
+ readonly ackPlaintextMasking?: boolean | undefined;
8512
8311
  readonly sortable?: boolean | undefined;
8513
8312
  readonly inlineHelpText?: string | undefined;
8514
8313
  readonly autonumberFormat?: string | undefined;
@@ -8540,6 +8339,7 @@ declare const SysApprovalDelegation: Omit<{
8540
8339
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
8541
8340
  readonly widget?: string | undefined;
8542
8341
  readonly multiple?: boolean | undefined;
8342
+ readonly maxSize?: number | undefined;
8543
8343
  readonly externalId?: boolean | undefined;
8544
8344
  readonly defaultValue?: unknown;
8545
8345
  readonly requiredPermissions?: string[] | undefined;
@@ -8558,10 +8358,11 @@ declare const SysApprovalDelegation: Omit<{
8558
8358
  } | undefined;
8559
8359
  } | undefined;
8560
8360
  readonly searchable?: boolean | undefined;
8561
- readonly unique?: boolean | undefined;
8361
+ readonly unique?: boolean | "global" | undefined;
8562
8362
  readonly maxLength?: number | undefined;
8563
8363
  readonly minLength?: number | undefined;
8564
8364
  readonly scale?: number | undefined;
8365
+ readonly accept?: string[] | undefined;
8565
8366
  readonly reference?: string | undefined;
8566
8367
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
8567
8368
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -8633,15 +8434,8 @@ declare const SysApprovalDelegation: Omit<{
8633
8434
  generatedBy?: string | undefined;
8634
8435
  } | undefined;
8635
8436
  } | undefined;
8636
- readonly conditionalRequired?: {
8637
- dialect: "cel" | "cron" | "template";
8638
- source?: string | undefined;
8639
- ast?: unknown;
8640
- meta?: {
8641
- rationale?: string | undefined;
8642
- generatedBy?: string | undefined;
8643
- } | undefined;
8644
- } | undefined;
8437
+ readonly conditionalRequired?: undefined;
8438
+ readonly ackPlaintextMasking?: boolean | undefined;
8645
8439
  readonly sortable?: boolean | undefined;
8646
8440
  readonly inlineHelpText?: string | undefined;
8647
8441
  readonly autonumberFormat?: string | undefined;
@@ -8673,6 +8467,7 @@ declare const SysApprovalDelegation: Omit<{
8673
8467
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
8674
8468
  readonly widget?: string | undefined;
8675
8469
  readonly multiple?: boolean | undefined;
8470
+ readonly maxSize?: number | undefined;
8676
8471
  readonly externalId?: boolean | undefined;
8677
8472
  readonly defaultValue?: unknown;
8678
8473
  readonly requiredPermissions?: string[] | undefined;
@@ -8691,10 +8486,11 @@ declare const SysApprovalDelegation: Omit<{
8691
8486
  } | undefined;
8692
8487
  } | undefined;
8693
8488
  readonly searchable?: boolean | undefined;
8694
- readonly unique?: boolean | undefined;
8489
+ readonly unique?: boolean | "global" | undefined;
8695
8490
  readonly maxLength?: number | undefined;
8696
8491
  readonly minLength?: number | undefined;
8697
8492
  readonly scale?: number | undefined;
8493
+ readonly accept?: string[] | undefined;
8698
8494
  readonly reference?: string | undefined;
8699
8495
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
8700
8496
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -8766,15 +8562,8 @@ declare const SysApprovalDelegation: Omit<{
8766
8562
  generatedBy?: string | undefined;
8767
8563
  } | undefined;
8768
8564
  } | undefined;
8769
- readonly conditionalRequired?: {
8770
- dialect: "cel" | "cron" | "template";
8771
- source?: string | undefined;
8772
- ast?: unknown;
8773
- meta?: {
8774
- rationale?: string | undefined;
8775
- generatedBy?: string | undefined;
8776
- } | undefined;
8777
- } | undefined;
8565
+ readonly conditionalRequired?: undefined;
8566
+ readonly ackPlaintextMasking?: boolean | undefined;
8778
8567
  readonly sortable?: boolean | undefined;
8779
8568
  readonly inlineHelpText?: string | undefined;
8780
8569
  readonly autonumberFormat?: string | undefined;
@@ -8806,6 +8595,7 @@ declare const SysApprovalDelegation: Omit<{
8806
8595
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
8807
8596
  readonly widget?: string | undefined;
8808
8597
  readonly multiple?: boolean | undefined;
8598
+ readonly maxSize?: number | undefined;
8809
8599
  readonly externalId?: boolean | undefined;
8810
8600
  readonly defaultValue?: unknown;
8811
8601
  readonly requiredPermissions?: string[] | undefined;
@@ -8824,10 +8614,11 @@ declare const SysApprovalDelegation: Omit<{
8824
8614
  } | undefined;
8825
8615
  } | undefined;
8826
8616
  readonly searchable?: boolean | undefined;
8827
- readonly unique?: boolean | undefined;
8617
+ readonly unique?: boolean | "global" | undefined;
8828
8618
  readonly maxLength?: number | undefined;
8829
8619
  readonly minLength?: number | undefined;
8830
8620
  readonly scale?: number | undefined;
8621
+ readonly accept?: string[] | undefined;
8831
8622
  readonly reference?: string | undefined;
8832
8623
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
8833
8624
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -8899,15 +8690,8 @@ declare const SysApprovalDelegation: Omit<{
8899
8690
  generatedBy?: string | undefined;
8900
8691
  } | undefined;
8901
8692
  } | undefined;
8902
- readonly conditionalRequired?: {
8903
- dialect: "cel" | "cron" | "template";
8904
- source?: string | undefined;
8905
- ast?: unknown;
8906
- meta?: {
8907
- rationale?: string | undefined;
8908
- generatedBy?: string | undefined;
8909
- } | undefined;
8910
- } | undefined;
8693
+ readonly conditionalRequired?: undefined;
8694
+ readonly ackPlaintextMasking?: boolean | undefined;
8911
8695
  readonly sortable?: boolean | undefined;
8912
8696
  readonly inlineHelpText?: string | undefined;
8913
8697
  readonly autonumberFormat?: string | undefined;
@@ -8939,6 +8723,7 @@ declare const SysApprovalDelegation: Omit<{
8939
8723
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
8940
8724
  readonly widget?: string | undefined;
8941
8725
  readonly multiple?: boolean | undefined;
8726
+ readonly maxSize?: number | undefined;
8942
8727
  readonly externalId?: boolean | undefined;
8943
8728
  readonly defaultValue?: unknown;
8944
8729
  readonly requiredPermissions?: string[] | undefined;
@@ -8957,10 +8742,11 @@ declare const SysApprovalDelegation: Omit<{
8957
8742
  } | undefined;
8958
8743
  } | undefined;
8959
8744
  readonly searchable?: boolean | undefined;
8960
- readonly unique?: boolean | undefined;
8745
+ readonly unique?: boolean | "global" | undefined;
8961
8746
  readonly maxLength?: number | undefined;
8962
8747
  readonly minLength?: number | undefined;
8963
8748
  readonly scale?: number | undefined;
8749
+ readonly accept?: string[] | undefined;
8964
8750
  reference: string;
8965
8751
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
8966
8752
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -9032,15 +8818,8 @@ declare const SysApprovalDelegation: Omit<{
9032
8818
  generatedBy?: string | undefined;
9033
8819
  } | undefined;
9034
8820
  } | undefined;
9035
- readonly conditionalRequired?: {
9036
- dialect: "cel" | "cron" | "template";
9037
- source?: string | undefined;
9038
- ast?: unknown;
9039
- meta?: {
9040
- rationale?: string | undefined;
9041
- generatedBy?: string | undefined;
9042
- } | undefined;
9043
- } | undefined;
8821
+ readonly conditionalRequired?: undefined;
8822
+ readonly ackPlaintextMasking?: boolean | undefined;
9044
8823
  readonly sortable?: boolean | undefined;
9045
8824
  readonly inlineHelpText?: string | undefined;
9046
8825
  readonly autonumberFormat?: string | undefined;
@@ -9072,6 +8851,7 @@ declare const SysApprovalDelegation: Omit<{
9072
8851
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
9073
8852
  readonly widget?: string | undefined;
9074
8853
  readonly multiple?: boolean | undefined;
8854
+ readonly maxSize?: number | undefined;
9075
8855
  readonly externalId?: boolean | undefined;
9076
8856
  readonly defaultValue?: unknown;
9077
8857
  readonly requiredPermissions?: string[] | undefined;
@@ -9090,10 +8870,11 @@ declare const SysApprovalDelegation: Omit<{
9090
8870
  } | undefined;
9091
8871
  } | undefined;
9092
8872
  readonly searchable?: boolean | undefined;
9093
- readonly unique?: boolean | undefined;
8873
+ readonly unique?: boolean | "global" | undefined;
9094
8874
  readonly maxLength?: number | undefined;
9095
8875
  readonly minLength?: number | undefined;
9096
8876
  readonly scale?: number | undefined;
8877
+ readonly accept?: string[] | undefined;
9097
8878
  readonly reference?: string | undefined;
9098
8879
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
9099
8880
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -9165,15 +8946,8 @@ declare const SysApprovalDelegation: Omit<{
9165
8946
  generatedBy?: string | undefined;
9166
8947
  } | undefined;
9167
8948
  } | undefined;
9168
- readonly conditionalRequired?: {
9169
- dialect: "cel" | "cron" | "template";
9170
- source?: string | undefined;
9171
- ast?: unknown;
9172
- meta?: {
9173
- rationale?: string | undefined;
9174
- generatedBy?: string | undefined;
9175
- } | undefined;
9176
- } | undefined;
8949
+ readonly conditionalRequired?: undefined;
8950
+ readonly ackPlaintextMasking?: boolean | undefined;
9177
8951
  readonly sortable?: boolean | undefined;
9178
8952
  readonly inlineHelpText?: string | undefined;
9179
8953
  readonly autonumberFormat?: string | undefined;
@@ -9205,6 +8979,7 @@ declare const SysApprovalDelegation: Omit<{
9205
8979
  readonly returnType?: "number" | "boolean" | "date" | "text" | undefined;
9206
8980
  readonly widget?: string | undefined;
9207
8981
  readonly multiple?: boolean | undefined;
8982
+ readonly maxSize?: number | undefined;
9208
8983
  readonly externalId?: boolean | undefined;
9209
8984
  readonly defaultValue?: unknown;
9210
8985
  readonly requiredPermissions?: string[] | undefined;
@@ -9223,10 +8998,11 @@ declare const SysApprovalDelegation: Omit<{
9223
8998
  } | undefined;
9224
8999
  } | undefined;
9225
9000
  readonly searchable?: boolean | undefined;
9226
- readonly unique?: boolean | undefined;
9001
+ readonly unique?: boolean | "global" | undefined;
9227
9002
  readonly maxLength?: number | undefined;
9228
9003
  readonly minLength?: number | undefined;
9229
9004
  readonly scale?: number | undefined;
9005
+ readonly accept?: string[] | undefined;
9230
9006
  readonly reference?: string | undefined;
9231
9007
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
9232
9008
  readonly inlineEdit?: boolean | "grid" | "form" | undefined;
@@ -9298,15 +9074,8 @@ declare const SysApprovalDelegation: Omit<{
9298
9074
  generatedBy?: string | undefined;
9299
9075
  } | undefined;
9300
9076
  } | undefined;
9301
- readonly conditionalRequired?: {
9302
- dialect: "cel" | "cron" | "template";
9303
- source?: string | undefined;
9304
- ast?: unknown;
9305
- meta?: {
9306
- rationale?: string | undefined;
9307
- generatedBy?: string | undefined;
9308
- } | undefined;
9309
- } | undefined;
9077
+ readonly conditionalRequired?: undefined;
9078
+ readonly ackPlaintextMasking?: boolean | undefined;
9310
9079
  readonly sortable?: boolean | undefined;
9311
9080
  readonly inlineHelpText?: string | undefined;
9312
9081
  readonly autonumberFormat?: string | undefined;
@@ -9324,9 +9093,7 @@ declare const SysApprovalDelegation: Omit<{
9324
9093
  readonly trackHistory: true;
9325
9094
  readonly searchable: true;
9326
9095
  readonly apiEnabled: true;
9327
- readonly apiMethods: ["get", "list", "create", "update", "delete"];
9328
- readonly trash: true;
9329
- readonly mru: false;
9096
+ readonly apiMethods: ["get", "list", "create", "update", "delete", "bulk"];
9330
9097
  };
9331
9098
  }, "fields">;
9332
9099
 
@@ -9363,6 +9130,14 @@ interface ApprovalResumeSurface {
9363
9130
  resume?(runId: string, signal?: {
9364
9131
  output?: Record<string, unknown>;
9365
9132
  branchLabel?: string;
9133
+ /**
9134
+ * #3801: the engine refuses a resume of an `approval` suspension unless
9135
+ * the signal carries this marker — the proof that the resume is the tail
9136
+ * of a decision THIS service already authorized and recorded, not a raw
9137
+ * `POST …/runs/:runId/resume` around it. Every resume below stamps it via
9138
+ * {@link ApprovalService.serviceResume}.
9139
+ */
9140
+ [RESUME_AUTHORITY_SERVICE]?: true;
9366
9141
  }): Promise<unknown>;
9367
9142
  /** Flow definition lookup, used to derive step-progress display data. */
9368
9143
  getFlow?(name: string): Promise<any | null>;
@@ -9372,6 +9147,21 @@ interface ApprovalResumeSurface {
9372
9147
  * which has no reject edge to resume down.
9373
9148
  */
9374
9149
  cancelRun?(runId: string, reason?: string): Promise<unknown>;
9150
+ /**
9151
+ * Look up a run's recorded outcome (#3456). Used by the dead-run sweep to ask
9152
+ * "is the run behind this pending request still alive?".
9153
+ *
9154
+ * The contract that makes the sweep safe is the answer for a run that is
9155
+ * merely SUSPENDED (the normal state of a run waiting on an approval): the
9156
+ * engine writes no execution-log entry until a run reaches a terminal state,
9157
+ * so a suspended run resolves to `null`, never to a status. The sweep
9158
+ * therefore acts only on an explicit terminal-failure status and treats
9159
+ * `null` — unknown run, evicted log, no durable store, no automation engine —
9160
+ * as "still alive".
9161
+ */
9162
+ getRun?(runId: string): Promise<{
9163
+ status?: string;
9164
+ } | null>;
9375
9165
  }
9376
9166
  /**
9377
9167
  * Optional messaging surface (ADR-0012 `messaging` service). When attached,
@@ -9403,6 +9193,28 @@ type ActionTokenOutcome = {
9403
9193
  reason: 'invalid' | 'expired' | 'consumed' | 'not_pending' | 'not_approver';
9404
9194
  request?: ApprovalRequestRow;
9405
9195
  };
9196
+ /**
9197
+ * Evaluation context an approval node hands to `expression` approvers
9198
+ * (#3447 P2). `current` (the live record) is supplied by openNodeRequest's
9199
+ * re-read; these two carry the other roots.
9200
+ */
9201
+ interface ApproverExpressionContext {
9202
+ /** Submit-time snapshot (the flow's `$record`) — bound as `trigger.*`. */
9203
+ trigger?: Record<string, unknown> | null;
9204
+ /** Flow variables at node entry (nested by dotted key) — bound as `vars.*`. */
9205
+ vars?: Record<string, unknown> | null;
9206
+ }
9207
+ /**
9208
+ * Non-request outcome of {@link ApprovalService.openNodeRequest}: the node
9209
+ * resolved an empty approver slate and its `onEmptyApprovers: 'auto_approve'`
9210
+ * policy waved it through (#3447 P2). No `sys_approval_request` row exists —
9211
+ * nobody was ever asked — so the node must complete down its `approve` edge
9212
+ * instead of suspending.
9213
+ */
9214
+ interface ApprovalNodeAutoOutcome {
9215
+ autoApproved: true;
9216
+ reason: 'empty_approvers';
9217
+ }
9406
9218
  interface ApprovalServiceOptions {
9407
9219
  engine: ApprovalEngine;
9408
9220
  clock?: ApprovalClock;
@@ -9427,6 +9239,14 @@ interface ApprovalServiceOptions {
9427
9239
  * the Console and IM webviews; outbound email needs the absolute form.
9428
9240
  */
9429
9241
  publicBaseUrl?: string;
9242
+ /**
9243
+ * [ADR-0105 D9] The tenancy posture in force. Cross-organization approver
9244
+ * targeting is a `group`-posture capability; the resolver refuses the
9245
+ * declaration under any other posture rather than silently ignoring it.
9246
+ * Absent (a stack booted with no tenancy service) reads as "unknown" and the
9247
+ * guard stands down.
9248
+ */
9249
+ tenancyPosture?: () => string | undefined;
9430
9250
  }
9431
9251
  declare class ApprovalService implements IApprovalService {
9432
9252
  private readonly engine;
@@ -9435,7 +9255,17 @@ declare class ApprovalService implements IApprovalService {
9435
9255
  private automation?;
9436
9256
  private messaging?;
9437
9257
  private publicBaseUrl;
9258
+ private tenancyPosture?;
9438
9259
  constructor(opts: ApprovalServiceOptions);
9260
+ /** Attach (or replace) the ADR-0105 D9 posture provider. */
9261
+ attachTenancyPosture(provider: () => string | undefined): void;
9262
+ /** Deps bundle for the ADR-0105 D9 org-scope helpers. */
9263
+ private get orgScopeDeps();
9264
+ /**
9265
+ * [ADR-0105 D9] Which organization's directory resolves ONE approver spec.
9266
+ * Absent declaration ⇒ the request's own organization (unchanged, no reads).
9267
+ */
9268
+ private directoryOrgFor;
9439
9269
  /** Attach (or replace) the automation surface used to resume flow runs. */
9440
9270
  attachAutomation(automation: ApprovalResumeSurface): void;
9441
9271
  /** Attach (or replace) the messaging surface used for thread notifications. */
@@ -9444,6 +9274,58 @@ declare class ApprovalService implements IApprovalService {
9444
9274
  private notify;
9445
9275
  /** Load a request row and assert it is still pending. */
9446
9276
  private loadPendingRow;
9277
+ /**
9278
+ * Privileged-override gate (#3424). A stuck approval — one routed to a
9279
+ * position/team with no holders (so its `pending_approvers` is only an
9280
+ * unresolvable `type:value` literal) or to approvers who have all since left —
9281
+ * is otherwise undecidable: no concrete user is in the slate, so every normal
9282
+ * `decide` / `reassign` / `recall` is `FORBIDDEN` and (with `lockRecord`) the
9283
+ * record stays locked forever with no in-product recovery. A platform or
9284
+ * tenant admin — the same posture the engine's superuser bypass already
9285
+ * trusts — may always act on a PENDING request to release it: approve, reject,
9286
+ * reassign it to a real approver, or recall it.
9287
+ *
9288
+ * A platform admin crosses the tenant wall (matching the unscoped
9289
+ * `admin_full_access` evidence); a tenant admin may override only within their
9290
+ * own org (or an org-less request). A system context always passes. Signals are
9291
+ * read defensively off the resolved exec context (`permissions` / `positions` /
9292
+ * the derived `posture`, ADR-0095) so any transport that resolves through the
9293
+ * shared authz resolver lights this up without extra wiring.
9294
+ */
9295
+ private isOverrideActor;
9296
+ /**
9297
+ * Pin the acting identity to the AUTHENTICATED CALLER (#3800).
9298
+ *
9299
+ * Every public entrypoint accepts an `actorId`, and the REST routes fill it
9300
+ * from `body.actorId ?? body.actor_id ?? context.userId` — so before this
9301
+ * gate the body won. The authorization checks downstream all read that value
9302
+ * (`pending_approvers.includes(input.actorId)`, `submitter_id === actorId`),
9303
+ * which made the body-supplied string not merely the audit label but the key
9304
+ * that opens the door: any authenticated user could name a pending approver
9305
+ * and have that approver's decision recorded and the owning flow resumed.
9306
+ * #3783 drew this line for the data-write identity ({@link actingUserId});
9307
+ * this closes the authorization half.
9308
+ *
9309
+ * A caller may still name an identity OTHER than their bare user id, because
9310
+ * a slot legitimately can be keyed by one: `resolveApproverSpec` stores the
9311
+ * `type:value` literal when a graph lookup yields nothing, and an author may
9312
+ * write an email as a `user` approver. So the rule is not "actorId must equal
9313
+ * userId" — it is **"actorId must be an identity the SERVER can prove belongs
9314
+ * to the caller"**. Anything else is `FORBIDDEN`.
9315
+ *
9316
+ * A system context is exempt and keeps its explicit actor: the SLA sweep
9317
+ * passes the reserved {@link SLA_ACTOR_ID} sentinel, and the ADR-0043 action
9318
+ * link passes the approver its single-use token is cryptographically bound to
9319
+ * (having also put them on the context). Those are the only two callers that
9320
+ * hold a trustworthy actor with no session behind them.
9321
+ *
9322
+ * A caller with NO identity at all cannot act. That case is reachable: the
9323
+ * REST anonymous-deny only fires when `api.requireAuth` is set, so without it
9324
+ * an anonymous request previously decided approvals outright by naming one.
9325
+ */
9326
+ private resolveActor;
9327
+ /** Does `userId`'s own account carry `email`? (Slots keyed by email, #3800.) */
9328
+ private callerHasEmail;
9447
9329
  /**
9448
9330
  * Expand the approvers on an Approval node into user IDs by querying the
9449
9331
  * graph tables for `team:` / `department:` / `position:` /
@@ -9487,8 +9369,46 @@ declare class ApprovalService implements IApprovalService {
9487
9369
  * lookup yields nothing — same behaviour as before the extraction.
9488
9370
  */
9489
9371
  private resolveApproverSpec;
9372
+ /**
9373
+ * Resolve an `expression` approver (#3447 P2): evaluate its CEL source at
9374
+ * node entry against the three explicit roots — `current` (live record),
9375
+ * `trigger` (submit snapshot), `vars` (flow variables) — then expand the
9376
+ * result into people per `resolveAs`.
9377
+ *
9378
+ * Every failure here THROWS (config/parse errors as `VALIDATION_FAILED`,
9379
+ * evaluation faults as `EXPRESSION_FAILED`) so the approval node fails
9380
+ * loudly instead of opening a request routed to nobody — an approver
9381
+ * expression that cannot run is a routing bug, never "condition not met".
9382
+ * Error messages carry the correct spelling because their primary reader is
9383
+ * the AI author fixing the flow on the next validate pass.
9384
+ *
9385
+ * Returns `slots` (approver id + optional per_group sub-key) and `raw` (the
9386
+ * expression's own values, pre-expansion) for the `__resolvedFrom` audit.
9387
+ */
9388
+ private resolveExpressionApprovers;
9490
9389
  /** Flat team — `sys_team` is better-auth's collaboration grouping (no hierarchy). */
9491
9390
  private expandTeamUsers;
9391
+ /**
9392
+ * Tenant scope for a `sys_business_unit` read that may legitimately be
9393
+ * env-wide (#3807).
9394
+ *
9395
+ * `organization_id = null` on a platform object means "owned by no
9396
+ * organization" — a row written by a seed, the file layer, or bootstrap,
9397
+ * i.e. before (or outside) any org exists. A strict
9398
+ * `organization_id = <request org>` equality made every such row invisible:
9399
+ * the seed check below found nothing, the whole expansion returned `[]`, and
9400
+ * the approver fell back to the dead `department:<id>` literal that routes to
9401
+ * nobody. That is not an edge case — an app's org tree is normally seeded
9402
+ * (a seed cannot know the org id the runtime mints at boot) while the
9403
+ * approval request always carries one, so EVERY department approver a
9404
+ * designer could pick resolved to nobody.
9405
+ *
9406
+ * Widen to "this org ∪ env-wide", the same predicate `sys_metadata`'s
9407
+ * pending-draft listing settled on for the identical reason. Another org's
9408
+ * unit still fails the match, so the wall between two organizations is
9409
+ * unchanged — only rows belonging to no org at all become visible.
9410
+ */
9411
+ private businessUnitOrgScope;
9492
9412
  /** Recursive department — walks `sys_business_unit.parent_business_unit_id`. */
9493
9413
  private expandBusinessUnitUsers;
9494
9414
  /**
@@ -9528,12 +9448,68 @@ declare class ApprovalService implements IApprovalService {
9528
9448
  * the one expiring soonest wins (the most specific coverage window).
9529
9449
  */
9530
9450
  private lookupActiveDelegation;
9531
- /** Mirror a request status onto a business-object field, if configured. */
9451
+ /**
9452
+ * Mirror a request status onto a business-object field, if configured.
9453
+ *
9454
+ * **Elevated, but not anonymous (#3783).** The write stays `isSystem`: the
9455
+ * record is normally LOCKED while its approval is live and the submitter
9456
+ * cannot edit it, so only a platform write can land the status — that is what
9457
+ * the lock hook's system exemption (`lifecycle-hooks.ts`) is for. What it must
9458
+ * NOT do is throw away *who* caused the transition. Every status below is
9459
+ * something a specific human just did — a submitter submitting or recalling,
9460
+ * an approver deciding or sending back — and this write is what fires the
9461
+ * target object's record-change flows. With no `userId` on it those cascades
9462
+ * inherit no trigger user, and since #3760 a `runAs:'user'` run with no trigger
9463
+ * user has its data ops REFUSED — so "when the invoice is approved, do X", the
9464
+ * most natural approvals automation there is, had to declare `runAs:'system'`
9465
+ * and take blanket elevation for a case where a perfectly good scoped identity
9466
+ * existed. Re-attaching the actor lets those cascades run as the deciding user
9467
+ * with RLS enforced. Same shape the approval node already uses when it calls
9468
+ * into this service (`approval-node.ts`).
9469
+ *
9470
+ * `actorId` is `null` for the genuinely machine-driven transitions (the SLA
9471
+ * escalation's auto-decision, the dead-run sweep). There is no human to name
9472
+ * there, and naming a sentinel would put a non-user in `updated_by` and in
9473
+ * every downstream flow's identity. Those cascades stay user-less — a flow
9474
+ * that wants to react to them still has to declare `runAs:'system'`, which is
9475
+ * the honest answer rather than an oversight.
9476
+ *
9477
+ * Deliberately carries `userId` ONLY, not the request's org. On an
9478
+ * ExecutionContext `tenantId` is a driver-scoping knob, not attribution
9479
+ * (`buildDriverOptions` turns it into a tenant predicate on the update), so
9480
+ * passing it would newly org-scope this write and silently no-op the mirror on
9481
+ * a record whose org differs from the request's — while buying nothing: the
9482
+ * automation engine back-fills the run's `tenantId` from the resolved user's
9483
+ * own grants.
9484
+ */
9532
9485
  private mirrorStatusField;
9486
+ /**
9487
+ * Re-read a business record's CURRENT state by id so approver resolution binds
9488
+ * to live data at node entry, not the trigger snapshot the flow froze into
9489
+ * `$record` at submit time (#3447). A `field` / `manager` approver names *who*
9490
+ * decides, and an earlier node — or the approver of an earlier step — may have
9491
+ * written that routing field after submit (e.g. a lead reviewer picking which
9492
+ * departments co-review). Graph approvers (team / position / …) already query
9493
+ * live; this brings the in-record types into line.
9494
+ *
9495
+ * Read under system identity: approver routing is a platform concern and the
9496
+ * record is the flow's own subject, so the submitter's RLS/FLS must not narrow
9497
+ * it. Degrades to `fallback` (the snapshot) when the record can't be re-read —
9498
+ * hard-deleted between submit and node entry, or an object whose backend can't
9499
+ * serve a point read — warning rather than throwing so a transient miss can't
9500
+ * wedge an approval. That "warn but proceed" stance matches the
9501
+ * no-concrete-approver guard (#3424) and the "record is gone" enrichment path
9502
+ * that already falls back to the payload snapshot.
9503
+ */
9504
+ private loadLiveRecord;
9533
9505
  /**
9534
9506
  * Open a pending approval request on behalf of a flow's Approval node. The
9535
9507
  * node config (approvers / behavior / status field) is snapshotted on the row
9536
9508
  * so a decision can be made without any process to resolve against.
9509
+ *
9510
+ * #3447 P2: may instead return an {@link ApprovalNodeAutoOutcome} — no
9511
+ * request opened — when the slate resolves empty and the node's
9512
+ * `onEmptyApprovers` policy is `auto_approve`.
9537
9513
  */
9538
9514
  openNodeRequest(input: {
9539
9515
  object: string;
@@ -9549,7 +9525,13 @@ declare class ApprovalService implements IApprovalService {
9549
9525
  submitterId?: string | null;
9550
9526
  record?: any;
9551
9527
  organizationId?: string | null;
9552
- }, context: SharingExecutionContext): Promise<ApprovalRequestRow>;
9528
+ /**
9529
+ * #3447 P2: flow variables at node entry (nested by dotted key, as the
9530
+ * engine's CEL conditions see them) — the `vars.*` root for `expression`
9531
+ * approvers. `input.record` doubles as their `trigger.*` root.
9532
+ */
9533
+ variables?: Record<string, unknown> | null;
9534
+ }, context: SharingExecutionContext): Promise<ApprovalRequestRow | ApprovalNodeAutoOutcome>;
9553
9535
  /**
9554
9536
  * True when the approve tally satisfies the node's `behavior` (#3266):
9555
9537
  * - `unanimous` — every resolved approver approved.
@@ -9573,13 +9555,31 @@ declare class ApprovalService implements IApprovalService {
9573
9555
  actorId: string;
9574
9556
  comment?: string;
9575
9557
  attachments?: string[];
9558
+ outputs?: Record<string, unknown>;
9576
9559
  }, context: SharingExecutionContext): Promise<{
9577
9560
  request: ApprovalRequestRow;
9578
9561
  runId: string | null;
9579
9562
  nodeId: string | null;
9580
9563
  finalized: boolean;
9581
9564
  decision: 'approve' | 'reject';
9565
+ outputs?: Record<string, unknown>;
9582
9566
  }>;
9567
+ /**
9568
+ * Continue the owning flow run after an outcome this service has already
9569
+ * authorized and written down (#3801).
9570
+ *
9571
+ * The `approval` node declares `resumeAuthority: 'service'`, so the engine
9572
+ * refuses any resume of an approval suspension that does not carry
9573
+ * {@link RESUME_AUTHORITY_SERVICE}. Every approvals-side resume goes through
9574
+ * here so the marker is stamped in ONE place — a new outcome path cannot
9575
+ * quietly ship a resume that the gate then rejects at runtime, and nothing
9576
+ * in this file hands the marker to a caller-supplied signal.
9577
+ *
9578
+ * Callers still guard on `typeof this.automation?.resume === 'function'`
9579
+ * (approvals runs fine with no automation attached) and keep their own
9580
+ * try/catch, because what a failed resume means differs per path.
9581
+ */
9582
+ private serviceResume;
9583
9583
  /**
9584
9584
  * Public contract entrypoint (ADR-0019). Records a decision on a node-driven
9585
9585
  * request via {@link ApprovalService.decideNode} and, when it finalizes,
@@ -9638,7 +9638,10 @@ declare class ApprovalService implements IApprovalService {
9638
9638
  /**
9639
9639
  * Hand a pending-approver slot to someone else. `from` defaults to the
9640
9640
  * actor itself; the actor must hold the slot being handed over (or be a
9641
- * system caller). Audits `reassign` and notifies the new approver.
9641
+ * system caller). A privileged admin (#3424) may reassign a request whose
9642
+ * slate holds no real user — an unstaffed-position literal — by handing the
9643
+ * whole request to a real approver, rescuing it from the locked dead-end.
9644
+ * Audits `reassign` and notifies the new approver.
9642
9645
  */
9643
9646
  reassign(requestId: string, input: {
9644
9647
  actorId: string;
@@ -9710,6 +9713,43 @@ declare class ApprovalService implements IApprovalService {
9710
9713
  scanned: number;
9711
9714
  escalated: number;
9712
9715
  }>;
9716
+ /**
9717
+ * One dead-run sweep: a pending request whose owning flow run has reached a
9718
+ * TERMINAL state can never be decided — nothing is left to resume — so the
9719
+ * request is finalised as `recalled` and, with `lockRecord`, the record it was
9720
+ * holding is released.
9721
+ *
9722
+ * This is the recovery half of #3456. The prevention half is the record lock's
9723
+ * owning-run exemption (`lifecycle-hooks.ts`), which stops a run from killing
9724
+ * itself on its own lock in the first place; this sweep cleans up the runs that
9725
+ * still die — for any reason, including a process crash, which no in-band
9726
+ * handler can catch because the process that would have run it is gone.
9727
+ *
9728
+ * **Fail-safe by construction.** It acts only on an explicit terminal status
9729
+ * from a closed set. Every other answer — `paused` (the normal state of a run
9730
+ * waiting on its approval), `running`, an unrecognised status, `null` (unknown
9731
+ * run, evicted log, no durable store), a `getRun` that throws, or no automation
9732
+ * engine at all — is read as "still alive" and left strictly alone. The failure
9733
+ * mode is therefore "a dead run's lock survives until an admin recalls it"
9734
+ * (today's behaviour, #3424), never "a live approval is destroyed".
9735
+ *
9736
+ * `recalled` is the finalisation because it is the platform's existing terminal
9737
+ * state for *a live request that ended without a decision*; the audit row names
9738
+ * the real cause and {@link DEAD_RUN_ACTOR_ID} the real actor, so a dead-run
9739
+ * release is never mistaken for a submitter's withdrawal.
9740
+ */
9741
+ releaseDeadRunRequests(): Promise<{
9742
+ scanned: number;
9743
+ released: number;
9744
+ }>;
9745
+ /**
9746
+ * Finalise one pending request whose owning run is terminal. Mirrors the
9747
+ * shape of {@link recall} — audit row first (so a crash mid-release leaves a
9748
+ * trace of the intent), then the status transition, approver-index sync and
9749
+ * the optional status-field mirror. No resume/cancel of the run: it is already
9750
+ * terminal, which is precisely why we are here.
9751
+ */
9752
+ private abandonForDeadRun;
9713
9753
  /** Execute the configured escalation action for one overdue request. */
9714
9754
  private escalateRequest;
9715
9755
  /**
@@ -9726,11 +9766,20 @@ declare class ApprovalService implements IApprovalService {
9726
9766
  private resolveUserNames;
9727
9767
  /** Lookup-typed fields (key + referenced object) of an object's schema. */
9728
9768
  private resolveLookupFields;
9769
+ /**
9770
+ * Field key → display label for an object's schema. Lets the inbox summary
9771
+ * show a human field name ("考核状态") instead of a title-cased machine key
9772
+ * ("Assessment Status"). For a single-locale project the schema label already
9773
+ * IS the localized string; symmetric with `resolveDisplayField`/lookup
9774
+ * resolution that power `payload_display`.
9775
+ */
9776
+ private resolveFieldLabels;
9729
9777
  /**
9730
9778
  * Attach inbox display fields to rows so clients never render a raw
9731
9779
  * identifier: `record_title`, `submitter_name`, `object_label`,
9732
- * `pending_approver_names` (user-id approvers), and `payload_display`
9733
- * (lookup foreign keys in the snapshot → referenced record titles).
9780
+ * `pending_approver_names` (user-id approvers), `payload_display`
9781
+ * (lookup foreign keys in the snapshot → referenced record titles), and
9782
+ * `payload_labels` (snapshot field keys → the target object's field labels).
9734
9783
  * Batched: one query per distinct object (target + referenced) plus one
9735
9784
  * `sys_user` lookup. Best-effort — a deleted record falls back to the
9736
9785
  * payload snapshot, and any failure leaves the field unset rather than
@@ -9769,6 +9818,32 @@ declare class ApprovalService implements IApprovalService {
9769
9818
  * Returns null when the filter is absent (callers skip the id constraint).
9770
9819
  */
9771
9820
  private approverRequestIds;
9821
+ /**
9822
+ * The request ids this caller is a PARTICIPANT of, or `null` for a caller
9823
+ * who may see everything in scope (#3590).
9824
+ *
9825
+ * These reads deliberately run with `SYSTEM_CTX` to bypass RLS — the
9826
+ * approver-visibility rule spans several identity forms that RLS cannot model
9827
+ * cleanly, which is why it has to be expressed here. Until now only the
9828
+ * TENANT half of that rule was applied, so any authenticated user could read
9829
+ * any request in their tenant (and, once attachments derived their access
9830
+ * from the request, its files too). This adds the participant half.
9831
+ *
9832
+ * A participant is the submitter, a current approver, or someone who has
9833
+ * already acted on the request (a past approver whose slot has moved on, a
9834
+ * commenter). Admins with override authority keep the unrestricted view the
9835
+ * "all requests" console surface depends on.
9836
+ *
9837
+ * Keying on the concrete user id is sufficient rather than an approximation:
9838
+ * position/team/manager/field approvers are resolved to concrete user ids at
9839
+ * open time, and the `type:value` literal is only the fallback for a spec
9840
+ * that resolved to NOBODY — a slot no one can act on either way (`can_act`
9841
+ * is a plain membership test over the resolved ids). So this cannot hide a
9842
+ * request from someone who could actually act on it.
9843
+ */
9844
+ private visibleRequestIds;
9845
+ /** Intersect an existing `where.id` constraint with the participant set. */
9846
+ private applyVisibility;
9772
9847
  listRequests(filter: {
9773
9848
  object?: string;
9774
9849
  recordId?: string;
@@ -9780,7 +9855,20 @@ declare class ApprovalService implements IApprovalService {
9780
9855
  offset?: number;
9781
9856
  } | undefined, context: SharingExecutionContext): Promise<ApprovalRequestRow[]>;
9782
9857
  countRequests(filter: Parameters<IApprovalService['listRequests']>[0], context: SharingExecutionContext): Promise<number>;
9858
+ /**
9859
+ * Read the request a write path just changed, to echo back as its result.
9860
+ *
9861
+ * NOT participant-gated (#3590), deliberately: the operation authorized
9862
+ * itself by its own rule before writing, so re-asking "may you see this?"
9863
+ * for the echo answers a question that has already been settled — and would
9864
+ * answer it WRONG for a caller context that carries no `userId` (a
9865
+ * flow-driven resume, a service-to-service call), turning a successful write
9866
+ * into a `null` result. Gating belongs on the read API, not on an
9867
+ * operation's own return value.
9868
+ */
9869
+ private readBackRequest;
9783
9870
  getRequest(requestId: string, context: SharingExecutionContext): Promise<ApprovalRequestRow | null>;
9871
+ private loadRequest;
9784
9872
  /**
9785
9873
  * Server-computed decision aggregation progress (#3266 / objectui#2678 P1.5).
9786
9874
  * Single-read enrichment only (like {@link ApprovalService.attachFlowSteps}):
@@ -9798,8 +9886,13 @@ declare class ApprovalService implements IApprovalService {
9798
9886
  * caller's user id is in the resolved `pending_approvers` while the request is
9799
9887
  * still `pending` (position/team/manager approvers are already resolved to
9800
9888
  * concrete user ids at open time, so a plain membership test is faithful).
9801
- * `is_submitter` is a straight owner check. System/tokenless contexts get a
9802
- * both-false block. Cheap + synchronoussafe on list reads.
9889
+ * `is_submitter` is a straight owner check. `can_override` (#3424) is true for
9890
+ * a platform/tenant admin on a PENDING request the recovery path for an
9891
+ * approval routed to an unstaffed position or to approvers who have all left;
9892
+ * clients OR it into the decision actions' `visible` gate so an admin can act
9893
+ * even when they hold no slot. System/tokenless contexts get a both-false
9894
+ * `can_act`/`is_submitter` block (system gets `can_override` too — it may act
9895
+ * on anything). Cheap + synchronous — safe on list reads.
9803
9896
  */
9804
9897
  private attachViewers;
9805
9898
  /**
@@ -9811,6 +9904,22 @@ declare class ApprovalService implements IApprovalService {
9811
9904
  */
9812
9905
  private attachFlowSteps;
9813
9906
  listActions(requestId: string, context: SharingExecutionContext): Promise<ApprovalActionRow[]>;
9907
+ /**
9908
+ * `IFileAccessDelegate` — may this caller download a decision attachment?
9909
+ * (ADR-0104 D3 wave 2; declared by `sys_approval_action.fileAccessDelegate`.)
9910
+ *
9911
+ * A file referenced by `sys_approval_action.attachments` is owned by that
9912
+ * audit row, so the storage service would otherwise authorize the download by
9913
+ * testing whether the caller can READ the row. It cannot: `sys_approval_action`
9914
+ * is deliberately closed to ordinary approver positions, so that test denies
9915
+ * the very approver the attachment was filed for.
9916
+ *
9917
+ * The rule that actually governs seeing a decision is the one `listActions`
9918
+ * applies — can the caller see the PARENT REQUEST? — so this reuses it
9919
+ * exactly, rather than inventing a second, looser rule for the bytes. Fails
9920
+ * closed on any error.
9921
+ */
9922
+ authorizeFileRead(actionId: string, context: SharingExecutionContext): Promise<boolean>;
9814
9923
  }
9815
9924
 
9816
9925
  interface ApprovalsPluginOptions {
@@ -9869,6 +9978,12 @@ interface ApprovalAutomationSurface {
9869
9978
  error?: string;
9870
9979
  suspend?: boolean;
9871
9980
  correlation?: string;
9981
+ /**
9982
+ * #3447 P2: walk this labelled out-edge on normal (non-suspend)
9983
+ * completion — how an `onEmptyApprovers: 'auto_approve'` node continues
9984
+ * down `approve` without a decision. Mirrors NodeExecutionResult.
9985
+ */
9986
+ branchLabel?: string;
9872
9987
  }>;
9873
9988
  }): void;
9874
9989
  resume?(runId: string, signal?: {
@@ -9887,4 +10002,4 @@ interface MinimalLogger {
9887
10002
  */
9888
10003
  declare function registerApprovalNode(automation: ApprovalAutomationSurface, service: ApprovalService, logger?: MinimalLogger): void;
9889
10004
 
9890
- export { type ApprovalAutomationSurface, type ApprovalClock, type ApprovalEngine, type ApprovalResumeSurface, ApprovalService, type ApprovalServiceOptions, type ApprovalsPluginOptions, ApprovalsServicePlugin, SysApprovalAction, SysApprovalApprover, SysApprovalDelegation, SysApprovalRequest, registerApprovalNode };
10005
+ export { type ApprovalAutomationSurface, type ApprovalClock, type ApprovalEngine, type ApprovalNodeAutoOutcome, type ApprovalResumeSurface, ApprovalService, type ApprovalServiceOptions, type ApprovalsPluginOptions, ApprovalsServicePlugin, type ApproverExpressionContext, SysApprovalAction, SysApprovalApprover, SysApprovalDelegation, SysApprovalRequest, registerApprovalNode };