@epilot/entity-client 7.2.0 → 7.2.1

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.
package/dist/openapi.d.ts CHANGED
@@ -524,18 +524,35 @@ declare namespace Components {
524
524
  */
525
525
  edit_mode?: "direct" | "external" | "approval";
526
526
  /**
527
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
527
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
528
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
529
+ * they are ignored for `approval` mode, which resolves via explicit
530
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
531
+ *
528
532
  */
529
533
  edit_mode_config?: {
530
534
  match_strategy?: /**
531
- * Strategy for auto-clearing the changeset when an external update is received.
535
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
536
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
537
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
538
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
532
539
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
533
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
540
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
534
541
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
535
542
  *
536
543
  */
537
544
  MatchStrategy;
538
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
545
+ fuzzy_config?: /**
546
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
547
+ * Not used for `edit_mode: approval`.
548
+ *
549
+ * Type compatibility with attribute shape is enforced at schema save time:
550
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
551
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
552
+ * - relation attributes: `relation_set`
553
+ *
554
+ */
555
+ FuzzyConfig;
539
556
  };
540
557
  type: "address";
541
558
  default_address_fields?: /**
@@ -727,18 +744,35 @@ declare namespace Components {
727
744
  */
728
745
  edit_mode?: "direct" | "external" | "approval";
729
746
  /**
730
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
747
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
748
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
749
+ * they are ignored for `approval` mode, which resolves via explicit
750
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
751
+ *
731
752
  */
732
753
  edit_mode_config?: {
733
754
  match_strategy?: /**
734
- * Strategy for auto-clearing the changeset when an external update is received.
755
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
756
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
757
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
758
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
735
759
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
736
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
760
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
737
761
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
738
762
  *
739
763
  */
740
764
  MatchStrategy;
741
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
765
+ fuzzy_config?: /**
766
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
767
+ * Not used for `edit_mode: approval`.
768
+ *
769
+ * Type compatibility with attribute shape is enforced at schema save time:
770
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
771
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
772
+ * - relation attributes: `relation_set`
773
+ *
774
+ */
775
+ FuzzyConfig;
742
776
  };
743
777
  type: "relation_address";
744
778
  default_address_fields?: /**
@@ -947,18 +981,35 @@ declare namespace Components {
947
981
  */
948
982
  edit_mode?: "direct" | "external" | "approval";
949
983
  /**
950
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
984
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
985
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
986
+ * they are ignored for `approval` mode, which resolves via explicit
987
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
988
+ *
951
989
  */
952
990
  edit_mode_config?: {
953
991
  match_strategy?: /**
954
- * Strategy for auto-clearing the changeset when an external update is received.
992
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
993
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
994
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
995
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
955
996
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
956
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
997
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
957
998
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
958
999
  *
959
1000
  */
960
1001
  MatchStrategy;
961
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
1002
+ fuzzy_config?: /**
1003
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
1004
+ * Not used for `edit_mode: approval`.
1005
+ *
1006
+ * Type compatibility with attribute shape is enforced at schema save time:
1007
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
1008
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
1009
+ * - relation attributes: `relation_set`
1010
+ *
1011
+ */
1012
+ FuzzyConfig;
962
1013
  };
963
1014
  type: "automation";
964
1015
  }
@@ -1182,18 +1233,35 @@ declare namespace Components {
1182
1233
  */
1183
1234
  edit_mode?: "direct" | "external" | "approval";
1184
1235
  /**
1185
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
1236
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
1237
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
1238
+ * they are ignored for `approval` mode, which resolves via explicit
1239
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
1240
+ *
1186
1241
  */
1187
1242
  edit_mode_config?: {
1188
1243
  match_strategy?: /**
1189
- * Strategy for auto-clearing the changeset when an external update is received.
1244
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
1245
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
1246
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
1247
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
1190
1248
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
1191
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
1249
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
1192
1250
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
1193
1251
  *
1194
1252
  */
1195
1253
  MatchStrategy;
1196
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
1254
+ fuzzy_config?: /**
1255
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
1256
+ * Not used for `edit_mode: approval`.
1257
+ *
1258
+ * Type compatibility with attribute shape is enforced at schema save time:
1259
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
1260
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
1261
+ * - relation attributes: `relation_set`
1262
+ *
1263
+ */
1264
+ FuzzyConfig;
1197
1265
  };
1198
1266
  }
1199
1267
  /**
@@ -1453,18 +1521,35 @@ declare namespace Components {
1453
1521
  */
1454
1522
  edit_mode?: "direct" | "external" | "approval";
1455
1523
  /**
1456
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
1524
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
1525
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
1526
+ * they are ignored for `approval` mode, which resolves via explicit
1527
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
1528
+ *
1457
1529
  */
1458
1530
  edit_mode_config?: {
1459
1531
  match_strategy?: /**
1460
- * Strategy for auto-clearing the changeset when an external update is received.
1532
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
1533
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
1534
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
1535
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
1461
1536
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
1462
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
1537
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
1463
1538
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
1464
1539
  *
1465
1540
  */
1466
1541
  MatchStrategy;
1467
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
1542
+ fuzzy_config?: /**
1543
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
1544
+ * Not used for `edit_mode: approval`.
1545
+ *
1546
+ * Type compatibility with attribute shape is enforced at schema save time:
1547
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
1548
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
1549
+ * - relation attributes: `relation_set`
1550
+ *
1551
+ */
1552
+ FuzzyConfig;
1468
1553
  };
1469
1554
  type: "boolean";
1470
1555
  display_type?: "switch" | "checkbox";
@@ -1487,17 +1572,19 @@ declare namespace Components {
1487
1572
  created_at: string; // date-time
1488
1573
  created_by?: /* Identifies the actor that created the changeset. */ ChangesetCreator;
1489
1574
  /**
1490
- * The edit mode that triggered this changeset
1575
+ * The edit mode that triggered this changeset.
1576
+ * - `external`: auto-cleared by a matching `?direct=true` write (see `match_strategy`).
1577
+ * - `approval`: resolved only via explicit `:apply` / `:dismiss` endpoints; never auto-clears.
1578
+ *
1491
1579
  */
1492
1580
  edit_mode: "external" | "approval";
1493
- match_strategy?: /**
1494
- * Strategy for auto-clearing the changeset when an external update is received.
1495
- * - `exact`: The inbound value must exactly match the proposed value (deep equality).
1496
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
1497
- * - `any`: Any update to the attribute clears the changeset, regardless of value.
1581
+ /**
1582
+ * Match strategy copied from the attribute's `edit_mode_config` at changeset
1583
+ * creation time. Only consulted when `edit_mode` is `external`; ignored for
1584
+ * `approval` (which never auto-clears).
1498
1585
  *
1499
1586
  */
1500
- MatchStrategy;
1587
+ match_strategy?: "exact" | "fuzzy" | "any";
1501
1588
  /**
1502
1589
  * Optional label indicating where the change originated (e.g. end_customer_portal, installer_portal, journey, automation)
1503
1590
  */
@@ -1741,18 +1828,35 @@ declare namespace Components {
1741
1828
  */
1742
1829
  edit_mode?: "direct" | "external" | "approval";
1743
1830
  /**
1744
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
1831
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
1832
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
1833
+ * they are ignored for `approval` mode, which resolves via explicit
1834
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
1835
+ *
1745
1836
  */
1746
1837
  edit_mode_config?: {
1747
1838
  match_strategy?: /**
1748
- * Strategy for auto-clearing the changeset when an external update is received.
1839
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
1840
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
1841
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
1842
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
1749
1843
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
1750
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
1844
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
1751
1845
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
1752
1846
  *
1753
1847
  */
1754
1848
  MatchStrategy;
1755
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
1849
+ fuzzy_config?: /**
1850
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
1851
+ * Not used for `edit_mode: approval`.
1852
+ *
1853
+ * Type compatibility with attribute shape is enforced at schema save time:
1854
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
1855
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
1856
+ * - relation attributes: `relation_set`
1857
+ *
1858
+ */
1859
+ FuzzyConfig;
1756
1860
  };
1757
1861
  type: "computed";
1758
1862
  computed?: boolean;
@@ -1927,18 +2031,35 @@ declare namespace Components {
1927
2031
  */
1928
2032
  edit_mode?: "direct" | "external" | "approval";
1929
2033
  /**
1930
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
2034
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
2035
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
2036
+ * they are ignored for `approval` mode, which resolves via explicit
2037
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
2038
+ *
1931
2039
  */
1932
2040
  edit_mode_config?: {
1933
2041
  match_strategy?: /**
1934
- * Strategy for auto-clearing the changeset when an external update is received.
2042
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
2043
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
2044
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
2045
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
1935
2046
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
1936
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
2047
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
1937
2048
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
1938
2049
  *
1939
2050
  */
1940
2051
  MatchStrategy;
1941
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
2052
+ fuzzy_config?: /**
2053
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
2054
+ * Not used for `edit_mode: approval`.
2055
+ *
2056
+ * Type compatibility with attribute shape is enforced at schema save time:
2057
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
2058
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
2059
+ * - relation attributes: `relation_set`
2060
+ *
2061
+ */
2062
+ FuzzyConfig;
1942
2063
  };
1943
2064
  type: "consent";
1944
2065
  topic: string;
@@ -2106,18 +2227,35 @@ declare namespace Components {
2106
2227
  */
2107
2228
  edit_mode?: "direct" | "external" | "approval";
2108
2229
  /**
2109
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
2230
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
2231
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
2232
+ * they are ignored for `approval` mode, which resolves via explicit
2233
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
2234
+ *
2110
2235
  */
2111
2236
  edit_mode_config?: {
2112
2237
  match_strategy?: /**
2113
- * Strategy for auto-clearing the changeset when an external update is received.
2238
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
2239
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
2240
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
2241
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
2114
2242
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
2115
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
2243
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
2116
2244
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
2117
2245
  *
2118
2246
  */
2119
2247
  MatchStrategy;
2120
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
2248
+ fuzzy_config?: /**
2249
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
2250
+ * Not used for `edit_mode: approval`.
2251
+ *
2252
+ * Type compatibility with attribute shape is enforced at schema save time:
2253
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
2254
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
2255
+ * - relation attributes: `relation_set`
2256
+ *
2257
+ */
2258
+ FuzzyConfig;
2121
2259
  };
2122
2260
  type: "country";
2123
2261
  }
@@ -2283,18 +2421,35 @@ declare namespace Components {
2283
2421
  */
2284
2422
  edit_mode?: "direct" | "external" | "approval";
2285
2423
  /**
2286
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
2424
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
2425
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
2426
+ * they are ignored for `approval` mode, which resolves via explicit
2427
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
2428
+ *
2287
2429
  */
2288
2430
  edit_mode_config?: {
2289
2431
  match_strategy?: /**
2290
- * Strategy for auto-clearing the changeset when an external update is received.
2432
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
2433
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
2434
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
2435
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
2291
2436
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
2292
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
2437
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
2293
2438
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
2294
2439
  *
2295
2440
  */
2296
2441
  MatchStrategy;
2297
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
2442
+ fuzzy_config?: /**
2443
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
2444
+ * Not used for `edit_mode: approval`.
2445
+ *
2446
+ * Type compatibility with attribute shape is enforced at schema save time:
2447
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
2448
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
2449
+ * - relation attributes: `relation_set`
2450
+ *
2451
+ */
2452
+ FuzzyConfig;
2298
2453
  };
2299
2454
  type: "currency";
2300
2455
  currency_selector_only?: boolean;
@@ -2470,18 +2625,35 @@ declare namespace Components {
2470
2625
  */
2471
2626
  edit_mode?: "direct" | "external" | "approval";
2472
2627
  /**
2473
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
2628
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
2629
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
2630
+ * they are ignored for `approval` mode, which resolves via explicit
2631
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
2632
+ *
2474
2633
  */
2475
2634
  edit_mode_config?: {
2476
2635
  match_strategy?: /**
2477
- * Strategy for auto-clearing the changeset when an external update is received.
2636
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
2637
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
2638
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
2639
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
2478
2640
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
2479
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
2641
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
2480
2642
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
2481
2643
  *
2482
2644
  */
2483
2645
  MatchStrategy;
2484
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
2646
+ fuzzy_config?: /**
2647
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
2648
+ * Not used for `edit_mode: approval`.
2649
+ *
2650
+ * Type compatibility with attribute shape is enforced at schema save time:
2651
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
2652
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
2653
+ * - relation attributes: `relation_set`
2654
+ *
2655
+ */
2656
+ FuzzyConfig;
2485
2657
  };
2486
2658
  type: "date" | "datetime";
2487
2659
  }
@@ -2522,18 +2694,36 @@ declare namespace Components {
2522
2694
  cluster?: string;
2523
2695
  }
2524
2696
  /**
2525
- * Configuration for non-direct edit modes on an entity attribute.
2697
+ * Configuration for `edit_mode: external` auto-clear matching.
2698
+ * Fields here (`match_strategy`, `fuzzy_config`) only take effect when
2699
+ * `edit_mode` is `external`. They are ignored for `edit_mode: approval`,
2700
+ * which never auto-clears and is resolved exclusively via the
2701
+ * `:apply` / `:dismiss` changeset endpoints.
2702
+ *
2526
2703
  */
2527
2704
  export interface EditModeConfig {
2528
2705
  match_strategy?: /**
2529
- * Strategy for auto-clearing the changeset when an external update is received.
2706
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
2707
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
2708
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
2709
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
2530
2710
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
2531
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
2711
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
2532
2712
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
2533
2713
  *
2534
2714
  */
2535
2715
  MatchStrategy;
2536
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
2716
+ fuzzy_config?: /**
2717
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
2718
+ * Not used for `edit_mode: approval`.
2719
+ *
2720
+ * Type compatibility with attribute shape is enforced at schema save time:
2721
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
2722
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
2723
+ * - relation attributes: `relation_set`
2724
+ *
2725
+ */
2726
+ FuzzyConfig;
2537
2727
  }
2538
2728
  /**
2539
2729
  * Email address
@@ -2697,18 +2887,35 @@ declare namespace Components {
2697
2887
  */
2698
2888
  edit_mode?: "direct" | "external" | "approval";
2699
2889
  /**
2700
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
2890
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
2891
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
2892
+ * they are ignored for `approval` mode, which resolves via explicit
2893
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
2894
+ *
2701
2895
  */
2702
2896
  edit_mode_config?: {
2703
2897
  match_strategy?: /**
2704
- * Strategy for auto-clearing the changeset when an external update is received.
2898
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
2899
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
2900
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
2901
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
2705
2902
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
2706
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
2903
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
2707
2904
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
2708
2905
  *
2709
2906
  */
2710
2907
  MatchStrategy;
2711
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
2908
+ fuzzy_config?: /**
2909
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
2910
+ * Not used for `edit_mode: approval`.
2911
+ *
2912
+ * Type compatibility with attribute shape is enforced at schema save time:
2913
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
2914
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
2915
+ * - relation attributes: `relation_set`
2916
+ *
2917
+ */
2918
+ FuzzyConfig;
2712
2919
  };
2713
2920
  type: "email";
2714
2921
  }
@@ -5216,18 +5423,35 @@ declare namespace Components {
5216
5423
  */
5217
5424
  edit_mode?: "direct" | "external" | "approval";
5218
5425
  /**
5219
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
5426
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
5427
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
5428
+ * they are ignored for `approval` mode, which resolves via explicit
5429
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
5430
+ *
5220
5431
  */
5221
5432
  edit_mode_config?: {
5222
5433
  match_strategy?: /**
5223
- * Strategy for auto-clearing the changeset when an external update is received.
5434
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
5435
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
5436
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
5437
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
5224
5438
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
5225
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
5439
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
5226
5440
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
5227
5441
  *
5228
5442
  */
5229
5443
  MatchStrategy;
5230
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
5444
+ fuzzy_config?: /**
5445
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
5446
+ * Not used for `edit_mode: approval`.
5447
+ *
5448
+ * Type compatibility with attribute shape is enforced at schema save time:
5449
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
5450
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
5451
+ * - relation attributes: `relation_set`
5452
+ *
5453
+ */
5454
+ FuzzyConfig;
5231
5455
  };
5232
5456
  type: "image" | "file";
5233
5457
  multiple?: boolean;
@@ -5254,19 +5478,26 @@ declare namespace Components {
5254
5478
  file_size_bytes?: number;
5255
5479
  }
5256
5480
  /**
5257
- * Configuration for fuzzy match strategies on changeset auto-clearing.
5481
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
5482
+ * Not used for `edit_mode: approval`.
5483
+ *
5484
+ * Type compatibility with attribute shape is enforced at schema save time:
5485
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
5486
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
5487
+ * - relation attributes: `relation_set`
5488
+ *
5258
5489
  */
5259
5490
  export interface FuzzyConfig {
5260
5491
  /**
5261
5492
  * Which fuzzy algorithm to apply.
5262
5493
  */
5263
- type: "suffix" | "digits_only" | "normalize_phone" | "ignore_fields" | "contains_entry" | "regex";
5494
+ type: "suffix" | "digits_only" | "normalize_phone" | "ignore_fields" | "set_equivalent" | "entry_match" | "relation_set" | "regex";
5264
5495
  /**
5265
5496
  * For type=suffix: number of characters to compare from end of string.
5266
5497
  */
5267
5498
  suffix_length?: number;
5268
5499
  /**
5269
- * For type=ignore_fields: field names to exclude when comparing array entries.
5500
+ * For type=ignore_fields and type=set_equivalent: field names to exclude when comparing array entries. `_id` is always stripped by the platform regardless of this config.
5270
5501
  */
5271
5502
  fields_to_ignore?: string[];
5272
5503
  /**
@@ -5278,9 +5509,28 @@ declare namespace Components {
5278
5509
  */
5279
5510
  country_code?: string;
5280
5511
  /**
5281
- * For type=normalize_phone and type=contains_entry: attribute key(s) within array entries to compare on.
5512
+ * For type=normalize_phone: attribute key within array entries to compare on (e.g. 'phone_number').
5282
5513
  */
5283
5514
  match_on?: string;
5515
+ /**
5516
+ * For type=entry_match: business key(s) within each entry used to match proposed entries against incoming entries.
5517
+ */
5518
+ key?: /* For type=entry_match: business key(s) within each entry used to match proposed entries against incoming entries. */ string | string[];
5519
+ /**
5520
+ * For type=entry_match and type=set_equivalent: how strict the comparison is.
5521
+ * - `subset` (default for entry_match): every proposed entry must exist in incoming; extra incoming entries are allowed.
5522
+ * - `exact_set` (default for set_equivalent): the two sides must contain the same entries (order-insensitive, multiset semantics).
5523
+ *
5524
+ */
5525
+ mode?: "subset" | "exact_set";
5526
+ /**
5527
+ * For type=relation_set: when true, relation order is significant. Defaults to false (order-insensitive).
5528
+ */
5529
+ ordered?: boolean;
5530
+ /**
5531
+ * For type=relation_set: when true, each relation item's `_tags` must match on both sides (order-insensitive). Defaults to false — `_tags` are stripped before compare.
5532
+ */
5533
+ require_tags_match?: boolean;
5284
5534
  /**
5285
5535
  * For type=regex: regular expression pattern to test the incoming value against.
5286
5536
  */
@@ -6048,18 +6298,35 @@ declare namespace Components {
6048
6298
  */
6049
6299
  edit_mode?: "direct" | "external" | "approval";
6050
6300
  /**
6051
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
6301
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
6302
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
6303
+ * they are ignored for `approval` mode, which resolves via explicit
6304
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
6305
+ *
6052
6306
  */
6053
6307
  edit_mode_config?: {
6054
6308
  match_strategy?: /**
6055
- * Strategy for auto-clearing the changeset when an external update is received.
6309
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
6310
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
6311
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
6312
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
6056
6313
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
6057
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
6314
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
6058
6315
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
6059
6316
  *
6060
6317
  */
6061
6318
  MatchStrategy;
6062
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
6319
+ fuzzy_config?: /**
6320
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
6321
+ * Not used for `edit_mode: approval`.
6322
+ *
6323
+ * Type compatibility with attribute shape is enforced at schema save time:
6324
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
6325
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
6326
+ * - relation attributes: `relation_set`
6327
+ *
6328
+ */
6329
+ FuzzyConfig;
6063
6330
  };
6064
6331
  type: "internal";
6065
6332
  }
@@ -6225,18 +6492,35 @@ declare namespace Components {
6225
6492
  */
6226
6493
  edit_mode?: "direct" | "external" | "approval";
6227
6494
  /**
6228
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
6495
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
6496
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
6497
+ * they are ignored for `approval` mode, which resolves via explicit
6498
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
6499
+ *
6229
6500
  */
6230
6501
  edit_mode_config?: {
6231
6502
  match_strategy?: /**
6232
- * Strategy for auto-clearing the changeset when an external update is received.
6503
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
6504
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
6505
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
6506
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
6233
6507
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
6234
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
6508
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
6235
6509
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
6236
6510
  *
6237
6511
  */
6238
6512
  MatchStrategy;
6239
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
6513
+ fuzzy_config?: /**
6514
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
6515
+ * Not used for `edit_mode: approval`.
6516
+ *
6517
+ * Type compatibility with attribute shape is enforced at schema save time:
6518
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
6519
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
6520
+ * - relation attributes: `relation_set`
6521
+ *
6522
+ */
6523
+ FuzzyConfig;
6240
6524
  };
6241
6525
  type: "internal_user";
6242
6526
  }
@@ -6402,18 +6686,35 @@ declare namespace Components {
6402
6686
  */
6403
6687
  edit_mode?: "direct" | "external" | "approval";
6404
6688
  /**
6405
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
6689
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
6690
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
6691
+ * they are ignored for `approval` mode, which resolves via explicit
6692
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
6693
+ *
6406
6694
  */
6407
6695
  edit_mode_config?: {
6408
6696
  match_strategy?: /**
6409
- * Strategy for auto-clearing the changeset when an external update is received.
6697
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
6698
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
6699
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
6700
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
6410
6701
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
6411
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
6702
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
6412
6703
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
6413
6704
  *
6414
6705
  */
6415
6706
  MatchStrategy;
6416
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
6707
+ fuzzy_config?: /**
6708
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
6709
+ * Not used for `edit_mode: approval`.
6710
+ *
6711
+ * Type compatibility with attribute shape is enforced at schema save time:
6712
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
6713
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
6714
+ * - relation attributes: `relation_set`
6715
+ *
6716
+ */
6717
+ FuzzyConfig;
6417
6718
  };
6418
6719
  type: "invitation_email";
6419
6720
  }
@@ -6587,18 +6888,35 @@ declare namespace Components {
6587
6888
  */
6588
6889
  edit_mode?: "direct" | "external" | "approval";
6589
6890
  /**
6590
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
6891
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
6892
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
6893
+ * they are ignored for `approval` mode, which resolves via explicit
6894
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
6895
+ *
6591
6896
  */
6592
6897
  edit_mode_config?: {
6593
6898
  match_strategy?: /**
6594
- * Strategy for auto-clearing the changeset when an external update is received.
6899
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
6900
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
6901
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
6902
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
6595
6903
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
6596
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
6904
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
6597
6905
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
6598
6906
  *
6599
6907
  */
6600
6908
  MatchStrategy;
6601
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
6909
+ fuzzy_config?: /**
6910
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
6911
+ * Not used for `edit_mode: approval`.
6912
+ *
6913
+ * Type compatibility with attribute shape is enforced at schema save time:
6914
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
6915
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
6916
+ * - relation attributes: `relation_set`
6917
+ *
6918
+ */
6919
+ FuzzyConfig;
6602
6920
  };
6603
6921
  type: "link";
6604
6922
  }
@@ -6611,9 +6929,12 @@ declare namespace Components {
6611
6929
  results?: /* A saved entity view */ SavedViewItem[];
6612
6930
  }
6613
6931
  /**
6614
- * Strategy for auto-clearing the changeset when an external update is received.
6932
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
6933
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
6934
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
6935
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
6615
6936
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
6616
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
6937
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
6617
6938
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
6618
6939
  *
6619
6940
  */
@@ -6780,18 +7101,35 @@ declare namespace Components {
6780
7101
  */
6781
7102
  edit_mode?: "direct" | "external" | "approval";
6782
7103
  /**
6783
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
7104
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
7105
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
7106
+ * they are ignored for `approval` mode, which resolves via explicit
7107
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
7108
+ *
6784
7109
  */
6785
7110
  edit_mode_config?: {
6786
7111
  match_strategy?: /**
6787
- * Strategy for auto-clearing the changeset when an external update is received.
7112
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
7113
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
7114
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
7115
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
6788
7116
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
6789
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
7117
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
6790
7118
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
6791
7119
  *
6792
7120
  */
6793
7121
  MatchStrategy;
6794
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
7122
+ fuzzy_config?: /**
7123
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
7124
+ * Not used for `edit_mode: approval`.
7125
+ *
7126
+ * Type compatibility with attribute shape is enforced at schema save time:
7127
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
7128
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
7129
+ * - relation attributes: `relation_set`
7130
+ *
7131
+ */
7132
+ FuzzyConfig;
6795
7133
  };
6796
7134
  type: "message_email_address";
6797
7135
  address?: string;
@@ -6960,18 +7298,35 @@ declare namespace Components {
6960
7298
  */
6961
7299
  edit_mode?: "direct" | "external" | "approval";
6962
7300
  /**
6963
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
7301
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
7302
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
7303
+ * they are ignored for `approval` mode, which resolves via explicit
7304
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
7305
+ *
6964
7306
  */
6965
7307
  edit_mode_config?: {
6966
7308
  match_strategy?: /**
6967
- * Strategy for auto-clearing the changeset when an external update is received.
7309
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
7310
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
7311
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
7312
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
6968
7313
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
6969
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
7314
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
6970
7315
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
6971
7316
  *
6972
7317
  */
6973
7318
  MatchStrategy;
6974
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
7319
+ fuzzy_config?: /**
7320
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
7321
+ * Not used for `edit_mode: approval`.
7322
+ *
7323
+ * Type compatibility with attribute shape is enforced at schema save time:
7324
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
7325
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
7326
+ * - relation attributes: `relation_set`
7327
+ *
7328
+ */
7329
+ FuzzyConfig;
6975
7330
  };
6976
7331
  type: "multiselect" | "checkbox";
6977
7332
  /**
@@ -7244,18 +7599,35 @@ declare namespace Components {
7244
7599
  */
7245
7600
  edit_mode?: "direct" | "external" | "approval";
7246
7601
  /**
7247
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
7602
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
7603
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
7604
+ * they are ignored for `approval` mode, which resolves via explicit
7605
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
7606
+ *
7248
7607
  */
7249
7608
  edit_mode_config?: {
7250
7609
  match_strategy?: /**
7251
- * Strategy for auto-clearing the changeset when an external update is received.
7610
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
7611
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
7612
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
7613
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
7252
7614
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
7253
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
7615
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
7254
7616
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
7255
7617
  *
7256
7618
  */
7257
7619
  MatchStrategy;
7258
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
7620
+ fuzzy_config?: /**
7621
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
7622
+ * Not used for `edit_mode: approval`.
7623
+ *
7624
+ * Type compatibility with attribute shape is enforced at schema save time:
7625
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
7626
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
7627
+ * - relation attributes: `relation_set`
7628
+ *
7629
+ */
7630
+ FuzzyConfig;
7259
7631
  };
7260
7632
  type: "number";
7261
7633
  /**
@@ -7430,18 +7802,35 @@ declare namespace Components {
7430
7802
  */
7431
7803
  edit_mode?: "direct" | "external" | "approval";
7432
7804
  /**
7433
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
7805
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
7806
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
7807
+ * they are ignored for `approval` mode, which resolves via explicit
7808
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
7809
+ *
7434
7810
  */
7435
7811
  edit_mode_config?: {
7436
7812
  match_strategy?: /**
7437
- * Strategy for auto-clearing the changeset when an external update is received.
7813
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
7814
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
7815
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
7816
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
7438
7817
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
7439
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
7818
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
7440
7819
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
7441
7820
  *
7442
7821
  */
7443
7822
  MatchStrategy;
7444
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
7823
+ fuzzy_config?: /**
7824
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
7825
+ * Not used for `edit_mode: approval`.
7826
+ *
7827
+ * Type compatibility with attribute shape is enforced at schema save time:
7828
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
7829
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
7830
+ * - relation attributes: `relation_set`
7831
+ *
7832
+ */
7833
+ FuzzyConfig;
7445
7834
  };
7446
7835
  type: "ordered_list";
7447
7836
  }
@@ -7607,18 +7996,35 @@ declare namespace Components {
7607
7996
  */
7608
7997
  edit_mode?: "direct" | "external" | "approval";
7609
7998
  /**
7610
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
7999
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
8000
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
8001
+ * they are ignored for `approval` mode, which resolves via explicit
8002
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
8003
+ *
7611
8004
  */
7612
8005
  edit_mode_config?: {
7613
8006
  match_strategy?: /**
7614
- * Strategy for auto-clearing the changeset when an external update is received.
8007
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
8008
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
8009
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
8010
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
7615
8011
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
7616
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
8012
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
7617
8013
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
7618
8014
  *
7619
8015
  */
7620
8016
  MatchStrategy;
7621
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
8017
+ fuzzy_config?: /**
8018
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
8019
+ * Not used for `edit_mode: approval`.
8020
+ *
8021
+ * Type compatibility with attribute shape is enforced at schema save time:
8022
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
8023
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
8024
+ * - relation attributes: `relation_set`
8025
+ *
8026
+ */
8027
+ FuzzyConfig;
7622
8028
  };
7623
8029
  type: "partner_organisation";
7624
8030
  }
@@ -7784,18 +8190,35 @@ declare namespace Components {
7784
8190
  */
7785
8191
  edit_mode?: "direct" | "external" | "approval";
7786
8192
  /**
7787
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
8193
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
8194
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
8195
+ * they are ignored for `approval` mode, which resolves via explicit
8196
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
8197
+ *
7788
8198
  */
7789
8199
  edit_mode_config?: {
7790
8200
  match_strategy?: /**
7791
- * Strategy for auto-clearing the changeset when an external update is received.
8201
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
8202
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
8203
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
8204
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
7792
8205
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
7793
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
8206
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
7794
8207
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
7795
8208
  *
7796
8209
  */
7797
8210
  MatchStrategy;
7798
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
8211
+ fuzzy_config?: /**
8212
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
8213
+ * Not used for `edit_mode: approval`.
8214
+ *
8215
+ * Type compatibility with attribute shape is enforced at schema save time:
8216
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
8217
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
8218
+ * - relation attributes: `relation_set`
8219
+ *
8220
+ */
8221
+ FuzzyConfig;
7799
8222
  };
7800
8223
  type: "partner_status";
7801
8224
  }
@@ -7961,18 +8384,35 @@ declare namespace Components {
7961
8384
  */
7962
8385
  edit_mode?: "direct" | "external" | "approval";
7963
8386
  /**
7964
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
8387
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
8388
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
8389
+ * they are ignored for `approval` mode, which resolves via explicit
8390
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
8391
+ *
7965
8392
  */
7966
8393
  edit_mode_config?: {
7967
8394
  match_strategy?: /**
7968
- * Strategy for auto-clearing the changeset when an external update is received.
8395
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
8396
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
8397
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
8398
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
7969
8399
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
7970
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
8400
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
7971
8401
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
7972
8402
  *
7973
8403
  */
7974
8404
  MatchStrategy;
7975
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
8405
+ fuzzy_config?: /**
8406
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
8407
+ * Not used for `edit_mode: approval`.
8408
+ *
8409
+ * Type compatibility with attribute shape is enforced at schema save time:
8410
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
8411
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
8412
+ * - relation attributes: `relation_set`
8413
+ *
8414
+ */
8415
+ FuzzyConfig;
7976
8416
  };
7977
8417
  type: "payment";
7978
8418
  }
@@ -8138,18 +8578,35 @@ declare namespace Components {
8138
8578
  */
8139
8579
  edit_mode?: "direct" | "external" | "approval";
8140
8580
  /**
8141
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
8581
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
8582
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
8583
+ * they are ignored for `approval` mode, which resolves via explicit
8584
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
8585
+ *
8142
8586
  */
8143
8587
  edit_mode_config?: {
8144
8588
  match_strategy?: /**
8145
- * Strategy for auto-clearing the changeset when an external update is received.
8589
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
8590
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
8591
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
8592
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
8146
8593
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
8147
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
8594
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
8148
8595
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
8149
8596
  *
8150
8597
  */
8151
8598
  MatchStrategy;
8152
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
8599
+ fuzzy_config?: /**
8600
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
8601
+ * Not used for `edit_mode: approval`.
8602
+ *
8603
+ * Type compatibility with attribute shape is enforced at schema save time:
8604
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
8605
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
8606
+ * - relation attributes: `relation_set`
8607
+ *
8608
+ */
8609
+ FuzzyConfig;
8153
8610
  };
8154
8611
  type: "relation_payment_method";
8155
8612
  }
@@ -8315,18 +8772,35 @@ declare namespace Components {
8315
8772
  */
8316
8773
  edit_mode?: "direct" | "external" | "approval";
8317
8774
  /**
8318
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
8775
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
8776
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
8777
+ * they are ignored for `approval` mode, which resolves via explicit
8778
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
8779
+ *
8319
8780
  */
8320
8781
  edit_mode_config?: {
8321
8782
  match_strategy?: /**
8322
- * Strategy for auto-clearing the changeset when an external update is received.
8783
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
8784
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
8785
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
8786
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
8323
8787
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
8324
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
8788
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
8325
8789
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
8326
8790
  *
8327
8791
  */
8328
8792
  MatchStrategy;
8329
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
8793
+ fuzzy_config?: /**
8794
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
8795
+ * Not used for `edit_mode: approval`.
8796
+ *
8797
+ * Type compatibility with attribute shape is enforced at schema save time:
8798
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
8799
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
8800
+ * - relation attributes: `relation_set`
8801
+ *
8802
+ */
8803
+ FuzzyConfig;
8330
8804
  };
8331
8805
  type: "phone";
8332
8806
  }
@@ -8492,18 +8966,35 @@ declare namespace Components {
8492
8966
  */
8493
8967
  edit_mode?: "direct" | "external" | "approval";
8494
8968
  /**
8495
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
8969
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
8970
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
8971
+ * they are ignored for `approval` mode, which resolves via explicit
8972
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
8973
+ *
8496
8974
  */
8497
8975
  edit_mode_config?: {
8498
8976
  match_strategy?: /**
8499
- * Strategy for auto-clearing the changeset when an external update is received.
8977
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
8978
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
8979
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
8980
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
8500
8981
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
8501
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
8982
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
8502
8983
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
8503
8984
  *
8504
8985
  */
8505
8986
  MatchStrategy;
8506
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
8987
+ fuzzy_config?: /**
8988
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
8989
+ * Not used for `edit_mode: approval`.
8990
+ *
8991
+ * Type compatibility with attribute shape is enforced at schema save time:
8992
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
8993
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
8994
+ * - relation attributes: `relation_set`
8995
+ *
8996
+ */
8997
+ FuzzyConfig;
8507
8998
  };
8508
8999
  type: "portal_access";
8509
9000
  }
@@ -8669,18 +9160,35 @@ declare namespace Components {
8669
9160
  */
8670
9161
  edit_mode?: "direct" | "external" | "approval";
8671
9162
  /**
8672
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
9163
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
9164
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
9165
+ * they are ignored for `approval` mode, which resolves via explicit
9166
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
9167
+ *
8673
9168
  */
8674
9169
  edit_mode_config?: {
8675
9170
  match_strategy?: /**
8676
- * Strategy for auto-clearing the changeset when an external update is received.
9171
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
9172
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
9173
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
9174
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
8677
9175
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
8678
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
9176
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
8679
9177
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
8680
9178
  *
8681
9179
  */
8682
9180
  MatchStrategy;
8683
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
9181
+ fuzzy_config?: /**
9182
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
9183
+ * Not used for `edit_mode: approval`.
9184
+ *
9185
+ * Type compatibility with attribute shape is enforced at schema save time:
9186
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
9187
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
9188
+ * - relation attributes: `relation_set`
9189
+ *
9190
+ */
9191
+ FuzzyConfig;
8684
9192
  };
8685
9193
  type: "price_component";
8686
9194
  }
@@ -8846,18 +9354,35 @@ declare namespace Components {
8846
9354
  */
8847
9355
  edit_mode?: "direct" | "external" | "approval";
8848
9356
  /**
8849
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
9357
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
9358
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
9359
+ * they are ignored for `approval` mode, which resolves via explicit
9360
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
9361
+ *
8850
9362
  */
8851
9363
  edit_mode_config?: {
8852
9364
  match_strategy?: /**
8853
- * Strategy for auto-clearing the changeset when an external update is received.
9365
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
9366
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
9367
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
9368
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
8854
9369
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
8855
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
9370
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
8856
9371
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
8857
9372
  *
8858
9373
  */
8859
9374
  MatchStrategy;
8860
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
9375
+ fuzzy_config?: /**
9376
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
9377
+ * Not used for `edit_mode: approval`.
9378
+ *
9379
+ * Type compatibility with attribute shape is enforced at schema save time:
9380
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
9381
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
9382
+ * - relation attributes: `relation_set`
9383
+ *
9384
+ */
9385
+ FuzzyConfig;
8861
9386
  };
8862
9387
  type: "purpose";
8863
9388
  }
@@ -9038,18 +9563,35 @@ declare namespace Components {
9038
9563
  */
9039
9564
  edit_mode?: "direct" | "external" | "approval" | "list-view";
9040
9565
  /**
9041
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
9566
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
9567
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
9568
+ * they are ignored for `approval` mode, which resolves via explicit
9569
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
9570
+ *
9042
9571
  */
9043
9572
  edit_mode_config?: {
9044
9573
  match_strategy?: /**
9045
- * Strategy for auto-clearing the changeset when an external update is received.
9574
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
9575
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
9576
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
9577
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
9046
9578
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
9047
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
9579
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
9048
9580
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
9049
9581
  *
9050
9582
  */
9051
9583
  MatchStrategy;
9052
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
9584
+ fuzzy_config?: /**
9585
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
9586
+ * Not used for `edit_mode: approval`.
9587
+ *
9588
+ * Type compatibility with attribute shape is enforced at schema save time:
9589
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
9590
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
9591
+ * - relation attributes: `relation_set`
9592
+ *
9593
+ */
9594
+ FuzzyConfig;
9053
9595
  };
9054
9596
  type: "relation";
9055
9597
  relation_type?: "has_many" | "has_one";
@@ -9437,18 +9979,35 @@ declare namespace Components {
9437
9979
  */
9438
9980
  edit_mode?: "direct" | "external" | "approval";
9439
9981
  /**
9440
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
9982
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
9983
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
9984
+ * they are ignored for `approval` mode, which resolves via explicit
9985
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
9986
+ *
9441
9987
  */
9442
9988
  edit_mode_config?: {
9443
9989
  match_strategy?: /**
9444
- * Strategy for auto-clearing the changeset when an external update is received.
9990
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
9991
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
9992
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
9993
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
9445
9994
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
9446
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
9995
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
9447
9996
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
9448
9997
  *
9449
9998
  */
9450
9999
  MatchStrategy;
9451
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
10000
+ fuzzy_config?: /**
10001
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
10002
+ * Not used for `edit_mode: approval`.
10003
+ *
10004
+ * Type compatibility with attribute shape is enforced at schema save time:
10005
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
10006
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
10007
+ * - relation attributes: `relation_set`
10008
+ *
10009
+ */
10010
+ FuzzyConfig;
9452
10011
  };
9453
10012
  }
9454
10013
  /**
@@ -10018,18 +10577,35 @@ declare namespace Components {
10018
10577
  */
10019
10578
  edit_mode?: "direct" | "external" | "approval";
10020
10579
  /**
10021
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
10580
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
10581
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
10582
+ * they are ignored for `approval` mode, which resolves via explicit
10583
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
10584
+ *
10022
10585
  */
10023
10586
  edit_mode_config?: {
10024
10587
  match_strategy?: /**
10025
- * Strategy for auto-clearing the changeset when an external update is received.
10588
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
10589
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
10590
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
10591
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
10026
10592
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
10027
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
10593
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
10028
10594
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
10029
10595
  *
10030
10596
  */
10031
10597
  MatchStrategy;
10032
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
10598
+ fuzzy_config?: /**
10599
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
10600
+ * Not used for `edit_mode: approval`.
10601
+ *
10602
+ * Type compatibility with attribute shape is enforced at schema save time:
10603
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
10604
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
10605
+ * - relation attributes: `relation_set`
10606
+ *
10607
+ */
10608
+ FuzzyConfig;
10033
10609
  };
10034
10610
  type: "select" | "radio";
10035
10611
  options?: ({
@@ -10203,18 +10779,35 @@ declare namespace Components {
10203
10779
  */
10204
10780
  edit_mode?: "direct" | "external" | "approval";
10205
10781
  /**
10206
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
10782
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
10783
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
10784
+ * they are ignored for `approval` mode, which resolves via explicit
10785
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
10786
+ *
10207
10787
  */
10208
10788
  edit_mode_config?: {
10209
10789
  match_strategy?: /**
10210
- * Strategy for auto-clearing the changeset when an external update is received.
10790
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
10791
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
10792
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
10793
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
10211
10794
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
10212
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
10795
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
10213
10796
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
10214
10797
  *
10215
10798
  */
10216
10799
  MatchStrategy;
10217
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
10800
+ fuzzy_config?: /**
10801
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
10802
+ * Not used for `edit_mode: approval`.
10803
+ *
10804
+ * Type compatibility with attribute shape is enforced at schema save time:
10805
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
10806
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
10807
+ * - relation attributes: `relation_set`
10808
+ *
10809
+ */
10810
+ FuzzyConfig;
10218
10811
  };
10219
10812
  type: "sequence";
10220
10813
  /**
@@ -10397,18 +10990,35 @@ declare namespace Components {
10397
10990
  */
10398
10991
  edit_mode?: "direct" | "external" | "approval";
10399
10992
  /**
10400
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
10993
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
10994
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
10995
+ * they are ignored for `approval` mode, which resolves via explicit
10996
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
10997
+ *
10401
10998
  */
10402
10999
  edit_mode_config?: {
10403
11000
  match_strategy?: /**
10404
- * Strategy for auto-clearing the changeset when an external update is received.
11001
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
11002
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
11003
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
11004
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
10405
11005
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
10406
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
11006
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
10407
11007
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
10408
11008
  *
10409
11009
  */
10410
11010
  MatchStrategy;
10411
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
11011
+ fuzzy_config?: /**
11012
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
11013
+ * Not used for `edit_mode: approval`.
11014
+ *
11015
+ * Type compatibility with attribute shape is enforced at schema save time:
11016
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
11017
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
11018
+ * - relation attributes: `relation_set`
11019
+ *
11020
+ */
11021
+ FuzzyConfig;
10412
11022
  };
10413
11023
  type: "status";
10414
11024
  options?: ((string | null) | {
@@ -10670,18 +11280,35 @@ declare namespace Components {
10670
11280
  */
10671
11281
  edit_mode?: "direct" | "external" | "approval";
10672
11282
  /**
10673
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
11283
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
11284
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
11285
+ * they are ignored for `approval` mode, which resolves via explicit
11286
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
11287
+ *
10674
11288
  */
10675
11289
  edit_mode_config?: {
10676
11290
  match_strategy?: /**
10677
- * Strategy for auto-clearing the changeset when an external update is received.
11291
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
11292
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
11293
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
11294
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
10678
11295
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
10679
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
11296
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
10680
11297
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
10681
11298
  *
10682
11299
  */
10683
11300
  MatchStrategy;
10684
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
11301
+ fuzzy_config?: /**
11302
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
11303
+ * Not used for `edit_mode: approval`.
11304
+ *
11305
+ * Type compatibility with attribute shape is enforced at schema save time:
11306
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
11307
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
11308
+ * - relation attributes: `relation_set`
11309
+ *
11310
+ */
11311
+ FuzzyConfig;
10685
11312
  };
10686
11313
  type: "table";
10687
11314
  /**
@@ -10903,18 +11530,35 @@ declare namespace Components {
10903
11530
  */
10904
11531
  edit_mode?: "direct" | "external" | "approval";
10905
11532
  /**
10906
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
11533
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
11534
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
11535
+ * they are ignored for `approval` mode, which resolves via explicit
11536
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
11537
+ *
10907
11538
  */
10908
11539
  edit_mode_config?: {
10909
11540
  match_strategy?: /**
10910
- * Strategy for auto-clearing the changeset when an external update is received.
11541
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
11542
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
11543
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
11544
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
10911
11545
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
10912
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
11546
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
10913
11547
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
10914
11548
  *
10915
11549
  */
10916
11550
  MatchStrategy;
10917
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
11551
+ fuzzy_config?: /**
11552
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
11553
+ * Not used for `edit_mode: approval`.
11554
+ *
11555
+ * Type compatibility with attribute shape is enforced at schema save time:
11556
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
11557
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
11558
+ * - relation attributes: `relation_set`
11559
+ *
11560
+ */
11561
+ FuzzyConfig;
10918
11562
  };
10919
11563
  type: "tags";
10920
11564
  options?: string[];
@@ -11282,18 +11926,35 @@ declare namespace Components {
11282
11926
  */
11283
11927
  edit_mode?: "direct" | "external" | "approval";
11284
11928
  /**
11285
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
11929
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
11930
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
11931
+ * they are ignored for `approval` mode, which resolves via explicit
11932
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
11933
+ *
11286
11934
  */
11287
11935
  edit_mode_config?: {
11288
11936
  match_strategy?: /**
11289
- * Strategy for auto-clearing the changeset when an external update is received.
11937
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
11938
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
11939
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
11940
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
11290
11941
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
11291
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
11942
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
11292
11943
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
11293
11944
  *
11294
11945
  */
11295
11946
  MatchStrategy;
11296
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
11947
+ fuzzy_config?: /**
11948
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
11949
+ * Not used for `edit_mode: approval`.
11950
+ *
11951
+ * Type compatibility with attribute shape is enforced at schema save time:
11952
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
11953
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
11954
+ * - relation attributes: `relation_set`
11955
+ *
11956
+ */
11957
+ FuzzyConfig;
11297
11958
  };
11298
11959
  type: "string";
11299
11960
  multiline?: boolean;
@@ -11472,18 +12133,35 @@ declare namespace Components {
11472
12133
  */
11473
12134
  edit_mode?: "direct" | "external" | "approval";
11474
12135
  /**
11475
- * Configuration for non-direct edit modes. Required when edit_mode is external or approval with fuzzy match strategy.
12136
+ * Configuration for auto-clear matching on `edit_mode: external` attributes.
12137
+ * `match_strategy` and `fuzzy_config` are only consulted for `external` mode —
12138
+ * they are ignored for `approval` mode, which resolves via explicit
12139
+ * `:apply` / `:dismiss` endpoints and never auto-clears.
12140
+ *
11476
12141
  */
11477
12142
  edit_mode_config?: {
11478
12143
  match_strategy?: /**
11479
- * Strategy for auto-clearing the changeset when an external update is received.
12144
+ * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
12145
+ * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
12146
+ * Ignored for `edit_mode: approval`, which does not auto-clear and is resolved
12147
+ * exclusively via the `:apply` / `:dismiss` changeset endpoints.
11480
12148
  * - `exact`: The inbound value must exactly match the proposed value (deep equality).
11481
- * - `fuzzy`: The inbound value is compared using the configured fuzzy algorithm.
12149
+ * - `fuzzy`: The inbound value is compared using the configured `fuzzy_config` algorithm.
11482
12150
  * - `any`: Any update to the attribute clears the changeset, regardless of value.
11483
12151
  *
11484
12152
  */
11485
12153
  MatchStrategy;
11486
- fuzzy_config?: /* Configuration for fuzzy match strategies on changeset auto-clearing. */ FuzzyConfig;
12154
+ fuzzy_config?: /**
12155
+ * Configuration for fuzzy auto-clear matching on `edit_mode: external` attributes.
12156
+ * Not used for `edit_mode: approval`.
12157
+ *
12158
+ * Type compatibility with attribute shape is enforced at schema save time:
12159
+ * - scalar string attributes: `suffix`, `digits_only`, `regex`
12160
+ * - repeatable attributes: `set_equivalent`, `entry_match`, `ignore_fields`, `normalize_phone`
12161
+ * - relation attributes: `relation_set`
12162
+ *
12163
+ */
12164
+ FuzzyConfig;
11487
12165
  };
11488
12166
  type: "relation_user";
11489
12167
  multiple?: boolean;