@proteos/sdk 0.45.0 → 0.47.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 (41) hide show
  1. package/dist/{chunk-IGIAJVX6.js → chunk-5KEJKXO5.js} +220 -34
  2. package/dist/chunk-5KEJKXO5.js.map +1 -0
  3. package/dist/{chunk-33EULWIM.cjs → chunk-Z7LC3GGU.cjs} +224 -33
  4. package/dist/chunk-Z7LC3GGU.cjs.map +1 -0
  5. package/dist/index.cjs +437 -179
  6. package/dist/index.cjs.map +1 -1
  7. package/dist/index.d.cts +659 -18
  8. package/dist/index.d.ts +659 -18
  9. package/dist/index.js +339 -97
  10. package/dist/index.js.map +1 -1
  11. package/dist/meta/index.cjs +69 -53
  12. package/dist/meta/index.d.cts +1 -1
  13. package/dist/meta/index.d.ts +1 -1
  14. package/dist/meta/index.js +1 -1
  15. package/dist/{types-BTdBFq34.d.cts → types-oECz4xTQ.d.cts} +578 -32
  16. package/dist/{types-BTdBFq34.d.ts → types-oECz4xTQ.d.ts} +578 -32
  17. package/package.json +1 -1
  18. package/src/auth/index.ts +58 -1
  19. package/src/auth/me.ts +14 -1
  20. package/src/auth/platform-entities.ts +27 -0
  21. package/src/auth/roles.ts +3 -1
  22. package/src/auth/shares.ts +181 -0
  23. package/src/auth/teams.ts +135 -0
  24. package/src/auth/types.ts +192 -4
  25. package/src/auth/user-role-assignments.ts +65 -0
  26. package/src/functions/actions.ts +29 -0
  27. package/src/functions/types.ts +6 -4
  28. package/src/index.ts +36 -0
  29. package/src/knowledge/graph.ts +6 -2
  30. package/src/knowledge/index.ts +15 -0
  31. package/src/knowledge/nodes.ts +4 -1
  32. package/src/knowledge/spaces.ts +86 -0
  33. package/src/knowledge/types.ts +89 -0
  34. package/src/meta/index.ts +11 -0
  35. package/src/meta/layout/control-registry.json +154 -27
  36. package/src/meta/layout/elements.ts +86 -0
  37. package/src/meta/layout/index.ts +2 -0
  38. package/src/meta/types.ts +245 -17
  39. package/src/workflow/types.ts +20 -3
  40. package/dist/chunk-33EULWIM.cjs.map +0 -1
  41. package/dist/chunk-IGIAJVX6.js.map +0 -1
@@ -1428,6 +1428,8 @@ declare const LayoutElementType: {
1428
1428
  readonly Component: "component";
1429
1429
  readonly Divider: "divider";
1430
1430
  readonly Text: "text";
1431
+ readonly RecordFilter: "record_filter";
1432
+ readonly List: "list";
1431
1433
  };
1432
1434
  type LayoutElementType = (typeof LayoutElementType)[keyof typeof LayoutElementType];
1433
1435
  type RowElement = CommonProps & {
@@ -1548,6 +1550,70 @@ type ComponentElement = CommonProps & {
1548
1550
  * to the host's 80px fallback when unset. */
1549
1551
  reserved_height?: number;
1550
1552
  };
1553
+ /**
1554
+ * A filter builder placed directly on a page. It owns no data of its own: it
1555
+ * publishes the filter (and the chosen subject entity) under its element id,
1556
+ * and every `list` element naming that id in `filter_element_id` renders the
1557
+ * filtered rows.
1558
+ *
1559
+ * `subject_entity` pins which entity the filter is authored against. When it is
1560
+ * absent the element renders a subject picker over the entities its bound lists
1561
+ * offer — one entry per bound list, since a list carries exactly one entity.
1562
+ *
1563
+ * The filter is in-memory: it resets on reload rather than persisting per user.
1564
+ */
1565
+ type RecordFilterElement = CommonProps & {
1566
+ type: 'record_filter';
1567
+ subject_entity?: string;
1568
+ /** `toolbar` (default) is the Filter button + active chips, matching every
1569
+ * list view. `panel` is the always-open AND/OR editor, for a page whose
1570
+ * point IS the filter. */
1571
+ variant?: 'toolbar' | 'panel';
1572
+ /** Nested AND/OR groups. Defaults to true — the records query carries the
1573
+ * whole tree, so there is no reason to hide the affordance. */
1574
+ is_complex_enabled?: boolean;
1575
+ };
1576
+ /**
1577
+ * Renders records of a configured List — the record-agnostic sibling of
1578
+ * `related_list`, and the only way to show records on a page that has no
1579
+ * record of its own.
1580
+ *
1581
+ * The List supplies everything about presentation and behaviour: columns,
1582
+ * sorting, base filters, toolbar actions, selection mode, and which page a row
1583
+ * opens. Naming more than one list makes the element switchable; the active one
1584
+ * is chosen by the bound filter's subject picker, or by the element's own
1585
+ * switcher when it is unbound.
1586
+ *
1587
+ * `filter_element_id` binds the element to a `record_filter` on the same page.
1588
+ * The bound filter is ANDed with the list's own saved filters — it narrows the
1589
+ * list, it never replaces what the list declared.
1590
+ */
1591
+ type ListElement = CommonProps & {
1592
+ type: 'list';
1593
+ /** Slugs of the lists this element can render. At least one. */
1594
+ list_slugs: string[];
1595
+ /** Element id of the `record_filter` driving this list. Unbound renders the
1596
+ * list with its own filters only. */
1597
+ filter_element_id?: string;
1598
+ /**
1599
+ * Record-page alternative to `filter_element_id`: the attribute on THIS
1600
+ * page's record holding a saved filter (as written by the `record-filter`
1601
+ * control). The list then renders what the record's own filter selects —
1602
+ * a saved-segment record showing its matches.
1603
+ *
1604
+ * Mutually exclusive with `filter_element_id`: two filters driving one list
1605
+ * has no defined precedence, so the layout validator rejects both at once.
1606
+ * Record pages only — a standalone page has no record to read.
1607
+ */
1608
+ filter_attribute?: string;
1609
+ /**
1610
+ * Attribute on this page's record naming the subject entity slug. The
1611
+ * element renders whichever of `list_slugs` targets that entity. Without
1612
+ * it the first configured list wins. Pairs with `filter_attribute`.
1613
+ */
1614
+ subject_entity_attribute?: string;
1615
+ page_size?: number;
1616
+ };
1551
1617
  type DividerElement = CommonProps & {
1552
1618
  type: 'divider';
1553
1619
  };
@@ -1557,7 +1623,7 @@ type TextElement = CommonProps & {
1557
1623
  variant: TextVariant;
1558
1624
  content: string;
1559
1625
  };
1560
- type LayoutElement = RowElement | ColumnElement | SectionElement | CardElement | TabsElement | FieldElement | RelatedListElement | RelatedRecordElement | ComponentElement | DividerElement | TextElement;
1626
+ type LayoutElement = RowElement | ColumnElement | SectionElement | CardElement | TabsElement | FieldElement | RelatedListElement | RelatedRecordElement | ComponentElement | DividerElement | TextElement | RecordFilterElement | ListElement;
1561
1627
  declare const LayoutElementSchema: z.ZodType<LayoutElement>;
1562
1628
 
1563
1629
  /**
@@ -1779,7 +1845,36 @@ interface MetaListOptions extends ListOptions {
1779
1845
  * full set; format/structural variation lives on `Attribute.meta` (see
1780
1846
  * `AttributeMeta` below), not on the type discriminator.
1781
1847
  */
1782
- type AttributeType = 'string' | 'number' | 'integer' | 'boolean' | 'array' | 'object' | 'datetime' | 'enum' | 'relation' | 'user' | 'currency' | 'knowledge-text' | 'file';
1848
+ type AttributeType = 'string' | 'number' | 'integer' | 'boolean' | 'array' | 'object' | 'datetime' | 'enum' | 'relation' | 'user' | 'principal' | 'currency' | 'knowledge-text' | 'file';
1849
+ /**
1850
+ * Attribute-level permissions: restricting a FIELD rather than a record — a
1851
+ * salary column readable only by the people team, a margin column writable only
1852
+ * by finance. Mirror of the Go `metamodel.AttributeRestrictions`.
1853
+ *
1854
+ * Orthogonal to instance-level access: a caller who may see a record may still
1855
+ * be blocked from one of its fields.
1856
+ *
1857
+ * Absent means unrestricted. Both arms FAIL CLOSED — an empty rule matches
1858
+ * nobody rather than everybody, and an unknown role or team slug never matches,
1859
+ * so a typo removes access rather than granting it.
1860
+ */
1861
+ interface AttributeAccessRule {
1862
+ /** Role slugs, matched against the caller's roles. */
1863
+ roles?: string[];
1864
+ /**
1865
+ * Team slugs. Matched through the caller's team closure, so a member of a
1866
+ * CHILD team is matched by a rule naming an ancestor.
1867
+ */
1868
+ teams?: string[];
1869
+ }
1870
+ /**
1871
+ * Read and write are gated independently, so `write` alone yields a field
1872
+ * everyone can see and only some can change.
1873
+ */
1874
+ interface AttributeRestrictions {
1875
+ read?: AttributeAccessRule;
1876
+ write?: AttributeAccessRule;
1877
+ }
1783
1878
  /** JSON-Schema string formats carried by `string` attributes. */
1784
1879
  type StringFormat = 'email' | 'uri' | 'uuid' | 'hostname' | 'ipv4' | 'ipv6';
1785
1880
  interface StringAttributeMeta {
@@ -1815,6 +1910,10 @@ interface EnumValue {
1815
1910
  value: string;
1816
1911
  label?: string;
1817
1912
  description?: string;
1913
+ /** Lucide icon name, canonical PascalCase (e.g. `CircleCheck`). Replaces the badge dot. */
1914
+ icon?: string;
1915
+ /** Tint as `#rrggbb`. Renderers derive dot/border/background from it; text stays ink. */
1916
+ color?: string;
1818
1917
  }
1819
1918
  interface EnumAttributeMeta {
1820
1919
  values: EnumValue[];
@@ -1879,6 +1978,54 @@ declare const UserAttributeMetaSchema: z.ZodObject<{
1879
1978
  }, {
1880
1979
  description?: string | undefined;
1881
1980
  }>;
1981
+ /**
1982
+ * The stored value of a `principal`-typed attribute: a {@link PrincipalRef}
1983
+ * `{ type, id }` naming anything that can HOLD ACCESS — a user (person, agent
1984
+ * or api client), a team, or the whole organization. Mirror of the Go
1985
+ * `metamodel.PrincipalAttributeMeta`.
1986
+ *
1987
+ * Distinct from `user` on purpose. `user` means "a person did this" — it is
1988
+ * authorship, and its value can never be a team. `principal` means "this party
1989
+ * may be granted access", a different question with a strictly larger
1990
+ * vocabulary. Widening `user` would have made every existing user attribute
1991
+ * silently accept a team, including the created_by / updated_by audit columns.
1992
+ */
1993
+ interface PrincipalAttributeMeta {
1994
+ description?: string;
1995
+ /**
1996
+ * Turns the attribute into a GRANTING attribute: the verbs its value confers
1997
+ * on the record. `deals.account_manager` with `["read","write"]` means setting
1998
+ * it gives that principal access with no share call — the business field IS
1999
+ * the ACL.
2000
+ *
2001
+ * `share` is the right to hand access on — share the record, set other
2002
+ * granting attributes, revoke shares. `["read","write","delete","share"]` is
2003
+ * full ownership: there is no separate owner field on the platform, the
2004
+ * business field that grants `share` IS the owner. `share` must accompany
2005
+ * at least one of read/write/delete, and an attribute granting it never
2006
+ * accepts an `org` principal.
2007
+ *
2008
+ * Empty (the default) means an ordinary reference that confers nothing, so an
2009
+ * existing principal attribute cannot start granting access by accident.
2010
+ */
2011
+ grants?: Array<'read' | 'write' | 'delete' | 'share'>;
2012
+ /**
2013
+ * Narrows which principal kinds this attribute accepts; empty means all
2014
+ * (except that an attribute granting `share` refuses `org` regardless —
2015
+ * an org-wide right to re-grant would hand record management to every
2016
+ * member).
2017
+ */
2018
+ allowed_types?: PrincipalType[];
2019
+ }
2020
+ /** The kinds a principal reference may name. */
2021
+ type PrincipalType = 'person' | 'agent' | 'api' | 'team' | 'org';
2022
+ /**
2023
+ * The stored value of a `principal`-typed attribute.
2024
+ */
2025
+ interface PrincipalRef {
2026
+ type: PrincipalType;
2027
+ id: string;
2028
+ }
1882
2029
  /**
1883
2030
  * The stored value of a `currency`-typed attribute: an exact decimal `amount`
1884
2031
  * (a STRING, never a JS number — preserves financial-system precision and
@@ -1949,7 +2096,7 @@ declare const FileAttributeMetaSchema: z.ZodObject<{
1949
2096
  * appropriate shape based on `Attribute.type`; runtime consumers can
1950
2097
  * narrow via the `type` field.
1951
2098
  */
1952
- type AttributeMeta = StringAttributeMeta | NumberAttributeMeta | DatetimeAttributeMeta | ArrayAttributeMeta | ObjectAttributeMeta | EnumAttributeMeta | RelationAttributeMeta | UserAttributeMeta | CurrencyAttributeMeta | KnowledgeTextAttributeMeta | FileAttributeMeta;
2099
+ type AttributeMeta = StringAttributeMeta | NumberAttributeMeta | DatetimeAttributeMeta | ArrayAttributeMeta | ObjectAttributeMeta | EnumAttributeMeta | RelationAttributeMeta | UserAttributeMeta | PrincipalAttributeMeta | CurrencyAttributeMeta | KnowledgeTextAttributeMeta | FileAttributeMeta;
1953
2100
  /**
1954
2101
  * Entity attribute definition. Mirrors `model.Attribute` in the Go SDK.
1955
2102
  */
@@ -1969,6 +2116,17 @@ interface Attribute {
1969
2116
  * Mirrors `IsPlatformManaged` in the Go `metamodel.Attribute`.
1970
2117
  */
1971
2118
  is_platform_managed?: boolean;
2119
+ /**
2120
+ * Attribute-level permissions. Absent means unrestricted (today's behaviour).
2121
+ * Platform-managed attributes cannot carry restrictions.
2122
+ */
2123
+ restrictions?: AttributeRestrictions;
2124
+ /**
2125
+ * Literal default, or — on a `user` / `principal` attribute only — the
2126
+ * current-user sentinel `{ type: 'current_user' }` (see
2127
+ * `CURRENT_USER_DEFAULT`), which data-service resolves to the writer at
2128
+ * record-write time.
2129
+ */
1972
2130
  default_value?: unknown;
1973
2131
  /**
1974
2132
  * Type-specific metadata. The concrete shape is determined by `type`
@@ -2002,6 +2160,46 @@ declare const AttributeSchema: z.ZodObject<{
2002
2160
  is_nullable: z.ZodOptional<z.ZodBoolean>;
2003
2161
  is_unique: z.ZodBoolean;
2004
2162
  is_read_only: z.ZodOptional<z.ZodBoolean>;
2163
+ restrictions: z.ZodOptional<z.ZodObject<{
2164
+ read: z.ZodOptional<z.ZodObject<{
2165
+ roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2166
+ teams: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2167
+ }, "strip", z.ZodTypeAny, {
2168
+ roles?: string[] | undefined;
2169
+ teams?: string[] | undefined;
2170
+ }, {
2171
+ roles?: string[] | undefined;
2172
+ teams?: string[] | undefined;
2173
+ }>>;
2174
+ write: z.ZodOptional<z.ZodObject<{
2175
+ roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2176
+ teams: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2177
+ }, "strip", z.ZodTypeAny, {
2178
+ roles?: string[] | undefined;
2179
+ teams?: string[] | undefined;
2180
+ }, {
2181
+ roles?: string[] | undefined;
2182
+ teams?: string[] | undefined;
2183
+ }>>;
2184
+ }, "strip", z.ZodTypeAny, {
2185
+ read?: {
2186
+ roles?: string[] | undefined;
2187
+ teams?: string[] | undefined;
2188
+ } | undefined;
2189
+ write?: {
2190
+ roles?: string[] | undefined;
2191
+ teams?: string[] | undefined;
2192
+ } | undefined;
2193
+ }, {
2194
+ read?: {
2195
+ roles?: string[] | undefined;
2196
+ teams?: string[] | undefined;
2197
+ } | undefined;
2198
+ write?: {
2199
+ roles?: string[] | undefined;
2200
+ teams?: string[] | undefined;
2201
+ } | undefined;
2202
+ }>>;
2005
2203
  default_value: z.ZodOptional<z.ZodUnknown>;
2006
2204
  meta: z.ZodOptional<z.ZodUnknown>;
2007
2205
  options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -2016,6 +2214,16 @@ declare const AttributeSchema: z.ZodObject<{
2016
2214
  description?: string | undefined;
2017
2215
  is_read_only?: boolean | undefined;
2018
2216
  is_nullable?: boolean | undefined;
2217
+ restrictions?: {
2218
+ read?: {
2219
+ roles?: string[] | undefined;
2220
+ teams?: string[] | undefined;
2221
+ } | undefined;
2222
+ write?: {
2223
+ roles?: string[] | undefined;
2224
+ teams?: string[] | undefined;
2225
+ } | undefined;
2226
+ } | undefined;
2019
2227
  default_value?: unknown;
2020
2228
  }, {
2021
2229
  type: string;
@@ -2028,6 +2236,16 @@ declare const AttributeSchema: z.ZodObject<{
2028
2236
  description?: string | undefined;
2029
2237
  is_read_only?: boolean | undefined;
2030
2238
  is_nullable?: boolean | undefined;
2239
+ restrictions?: {
2240
+ read?: {
2241
+ roles?: string[] | undefined;
2242
+ teams?: string[] | undefined;
2243
+ } | undefined;
2244
+ write?: {
2245
+ roles?: string[] | undefined;
2246
+ teams?: string[] | undefined;
2247
+ } | undefined;
2248
+ } | undefined;
2031
2249
  default_value?: unknown;
2032
2250
  }>;
2033
2251
  /**
@@ -2043,6 +2261,12 @@ declare function parseRelationMeta(attr: Attribute): RelationAttributeMeta | nul
2043
2261
  * attribute with no meta still resolves to an empty `{}` rather than null.
2044
2262
  */
2045
2263
  declare function parseCurrencyMeta(attr: Attribute): CurrencyAttributeMeta | null;
2264
+ /**
2265
+ * Returns the typed `PrincipalAttributeMeta` when `attr` is a principal
2266
+ * attribute; null otherwise. Principal meta is optional, so an attribute with
2267
+ * no meta resolves to an empty `{}` rather than null.
2268
+ */
2269
+ declare function parsePrincipalMeta(attr: Attribute): PrincipalAttributeMeta | null;
2046
2270
  declare function parseUserMeta(attr: Attribute): UserAttributeMeta | null;
2047
2271
  /**
2048
2272
  * Returns the typed `FileAttributeMeta` when `attr` is a file attribute; null
@@ -2126,6 +2350,46 @@ declare const EntitySchema: z.ZodObject<{
2126
2350
  is_nullable: z.ZodOptional<z.ZodBoolean>;
2127
2351
  is_unique: z.ZodBoolean;
2128
2352
  is_read_only: z.ZodOptional<z.ZodBoolean>;
2353
+ restrictions: z.ZodOptional<z.ZodObject<{
2354
+ read: z.ZodOptional<z.ZodObject<{
2355
+ roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2356
+ teams: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2357
+ }, "strip", z.ZodTypeAny, {
2358
+ roles?: string[] | undefined;
2359
+ teams?: string[] | undefined;
2360
+ }, {
2361
+ roles?: string[] | undefined;
2362
+ teams?: string[] | undefined;
2363
+ }>>;
2364
+ write: z.ZodOptional<z.ZodObject<{
2365
+ roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2366
+ teams: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2367
+ }, "strip", z.ZodTypeAny, {
2368
+ roles?: string[] | undefined;
2369
+ teams?: string[] | undefined;
2370
+ }, {
2371
+ roles?: string[] | undefined;
2372
+ teams?: string[] | undefined;
2373
+ }>>;
2374
+ }, "strip", z.ZodTypeAny, {
2375
+ read?: {
2376
+ roles?: string[] | undefined;
2377
+ teams?: string[] | undefined;
2378
+ } | undefined;
2379
+ write?: {
2380
+ roles?: string[] | undefined;
2381
+ teams?: string[] | undefined;
2382
+ } | undefined;
2383
+ }, {
2384
+ read?: {
2385
+ roles?: string[] | undefined;
2386
+ teams?: string[] | undefined;
2387
+ } | undefined;
2388
+ write?: {
2389
+ roles?: string[] | undefined;
2390
+ teams?: string[] | undefined;
2391
+ } | undefined;
2392
+ }>>;
2129
2393
  default_value: z.ZodOptional<z.ZodUnknown>;
2130
2394
  meta: z.ZodOptional<z.ZodUnknown>;
2131
2395
  options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -2140,6 +2404,16 @@ declare const EntitySchema: z.ZodObject<{
2140
2404
  description?: string | undefined;
2141
2405
  is_read_only?: boolean | undefined;
2142
2406
  is_nullable?: boolean | undefined;
2407
+ restrictions?: {
2408
+ read?: {
2409
+ roles?: string[] | undefined;
2410
+ teams?: string[] | undefined;
2411
+ } | undefined;
2412
+ write?: {
2413
+ roles?: string[] | undefined;
2414
+ teams?: string[] | undefined;
2415
+ } | undefined;
2416
+ } | undefined;
2143
2417
  default_value?: unknown;
2144
2418
  }, {
2145
2419
  type: string;
@@ -2152,6 +2426,16 @@ declare const EntitySchema: z.ZodObject<{
2152
2426
  description?: string | undefined;
2153
2427
  is_read_only?: boolean | undefined;
2154
2428
  is_nullable?: boolean | undefined;
2429
+ restrictions?: {
2430
+ read?: {
2431
+ roles?: string[] | undefined;
2432
+ teams?: string[] | undefined;
2433
+ } | undefined;
2434
+ write?: {
2435
+ roles?: string[] | undefined;
2436
+ teams?: string[] | undefined;
2437
+ } | undefined;
2438
+ } | undefined;
2155
2439
  default_value?: unknown;
2156
2440
  }>, "many">;
2157
2441
  }, "strip", z.ZodTypeAny, {
@@ -2178,6 +2462,16 @@ declare const EntitySchema: z.ZodObject<{
2178
2462
  description?: string | undefined;
2179
2463
  is_read_only?: boolean | undefined;
2180
2464
  is_nullable?: boolean | undefined;
2465
+ restrictions?: {
2466
+ read?: {
2467
+ roles?: string[] | undefined;
2468
+ teams?: string[] | undefined;
2469
+ } | undefined;
2470
+ write?: {
2471
+ roles?: string[] | undefined;
2472
+ teams?: string[] | undefined;
2473
+ } | undefined;
2474
+ } | undefined;
2181
2475
  default_value?: unknown;
2182
2476
  }[];
2183
2477
  slug: string;
@@ -2209,6 +2503,16 @@ declare const EntitySchema: z.ZodObject<{
2209
2503
  description?: string | undefined;
2210
2504
  is_read_only?: boolean | undefined;
2211
2505
  is_nullable?: boolean | undefined;
2506
+ restrictions?: {
2507
+ read?: {
2508
+ roles?: string[] | undefined;
2509
+ teams?: string[] | undefined;
2510
+ } | undefined;
2511
+ write?: {
2512
+ roles?: string[] | undefined;
2513
+ teams?: string[] | undefined;
2514
+ } | undefined;
2515
+ } | undefined;
2212
2516
  default_value?: unknown;
2213
2517
  }[];
2214
2518
  slug: string;
@@ -2263,6 +2567,46 @@ declare const EntityWithSchemaSchema: z.ZodObject<{
2263
2567
  is_nullable: z.ZodOptional<z.ZodBoolean>;
2264
2568
  is_unique: z.ZodBoolean;
2265
2569
  is_read_only: z.ZodOptional<z.ZodBoolean>;
2570
+ restrictions: z.ZodOptional<z.ZodObject<{
2571
+ read: z.ZodOptional<z.ZodObject<{
2572
+ roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2573
+ teams: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2574
+ }, "strip", z.ZodTypeAny, {
2575
+ roles?: string[] | undefined;
2576
+ teams?: string[] | undefined;
2577
+ }, {
2578
+ roles?: string[] | undefined;
2579
+ teams?: string[] | undefined;
2580
+ }>>;
2581
+ write: z.ZodOptional<z.ZodObject<{
2582
+ roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2583
+ teams: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2584
+ }, "strip", z.ZodTypeAny, {
2585
+ roles?: string[] | undefined;
2586
+ teams?: string[] | undefined;
2587
+ }, {
2588
+ roles?: string[] | undefined;
2589
+ teams?: string[] | undefined;
2590
+ }>>;
2591
+ }, "strip", z.ZodTypeAny, {
2592
+ read?: {
2593
+ roles?: string[] | undefined;
2594
+ teams?: string[] | undefined;
2595
+ } | undefined;
2596
+ write?: {
2597
+ roles?: string[] | undefined;
2598
+ teams?: string[] | undefined;
2599
+ } | undefined;
2600
+ }, {
2601
+ read?: {
2602
+ roles?: string[] | undefined;
2603
+ teams?: string[] | undefined;
2604
+ } | undefined;
2605
+ write?: {
2606
+ roles?: string[] | undefined;
2607
+ teams?: string[] | undefined;
2608
+ } | undefined;
2609
+ }>>;
2266
2610
  default_value: z.ZodOptional<z.ZodUnknown>;
2267
2611
  meta: z.ZodOptional<z.ZodUnknown>;
2268
2612
  options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -2277,6 +2621,16 @@ declare const EntityWithSchemaSchema: z.ZodObject<{
2277
2621
  description?: string | undefined;
2278
2622
  is_read_only?: boolean | undefined;
2279
2623
  is_nullable?: boolean | undefined;
2624
+ restrictions?: {
2625
+ read?: {
2626
+ roles?: string[] | undefined;
2627
+ teams?: string[] | undefined;
2628
+ } | undefined;
2629
+ write?: {
2630
+ roles?: string[] | undefined;
2631
+ teams?: string[] | undefined;
2632
+ } | undefined;
2633
+ } | undefined;
2280
2634
  default_value?: unknown;
2281
2635
  }, {
2282
2636
  type: string;
@@ -2289,6 +2643,16 @@ declare const EntityWithSchemaSchema: z.ZodObject<{
2289
2643
  description?: string | undefined;
2290
2644
  is_read_only?: boolean | undefined;
2291
2645
  is_nullable?: boolean | undefined;
2646
+ restrictions?: {
2647
+ read?: {
2648
+ roles?: string[] | undefined;
2649
+ teams?: string[] | undefined;
2650
+ } | undefined;
2651
+ write?: {
2652
+ roles?: string[] | undefined;
2653
+ teams?: string[] | undefined;
2654
+ } | undefined;
2655
+ } | undefined;
2292
2656
  default_value?: unknown;
2293
2657
  }>, "many">;
2294
2658
  } & {
@@ -2317,6 +2681,16 @@ declare const EntityWithSchemaSchema: z.ZodObject<{
2317
2681
  description?: string | undefined;
2318
2682
  is_read_only?: boolean | undefined;
2319
2683
  is_nullable?: boolean | undefined;
2684
+ restrictions?: {
2685
+ read?: {
2686
+ roles?: string[] | undefined;
2687
+ teams?: string[] | undefined;
2688
+ } | undefined;
2689
+ write?: {
2690
+ roles?: string[] | undefined;
2691
+ teams?: string[] | undefined;
2692
+ } | undefined;
2693
+ } | undefined;
2320
2694
  default_value?: unknown;
2321
2695
  }[];
2322
2696
  slug: string;
@@ -2349,6 +2723,16 @@ declare const EntityWithSchemaSchema: z.ZodObject<{
2349
2723
  description?: string | undefined;
2350
2724
  is_read_only?: boolean | undefined;
2351
2725
  is_nullable?: boolean | undefined;
2726
+ restrictions?: {
2727
+ read?: {
2728
+ roles?: string[] | undefined;
2729
+ teams?: string[] | undefined;
2730
+ } | undefined;
2731
+ write?: {
2732
+ roles?: string[] | undefined;
2733
+ teams?: string[] | undefined;
2734
+ } | undefined;
2735
+ } | undefined;
2352
2736
  default_value?: unknown;
2353
2737
  }[];
2354
2738
  slug: string;
@@ -2733,6 +3117,19 @@ interface UpdateComponentRequest {
2733
3117
  }
2734
3118
  /**
2735
3119
  * List column definition.
3120
+ *
3121
+ * `attribute` is an attribute name or a dot path, told apart by the type of
3122
+ * the first segment:
3123
+ *
3124
+ * - `name` — an attribute on the list's own entity.
3125
+ * - `address.city` — a leaf inside one of its `object` attributes.
3126
+ * - `company_id.name` — a field of the RELATED record, reached through a
3127
+ * relation attribute (the first segment is the FK).
3128
+ *
3129
+ * A bare `object` attribute is not a valid column — it carries no value of
3130
+ * its own, only leaves. Sorting follows the same grammar minus the relation
3131
+ * hop: an attribute or an object path can be ordered by, a related field
3132
+ * cannot (it would need a join).
2736
3133
  */
2737
3134
  interface Column {
2738
3135
  attribute: string;
@@ -2744,13 +3141,77 @@ interface Column {
2744
3141
  */
2745
3142
  type SortDirection = 'asc' | 'desc';
2746
3143
  /**
2747
- * Sort configuration.
3144
+ * Sort configuration. `attribute` is an attribute name or an object path
3145
+ * (`address.city`); relation paths are not sortable — ordering by a related
3146
+ * field would need a join the records query doesn't do.
2748
3147
  */
2749
3148
  interface SortConfig {
2750
3149
  attribute: string;
2751
3150
  direction: SortDirection;
2752
3151
  }
2753
3152
 
3153
+ /**
3154
+ * What a page toolbar button invokes. Absent normalizes to `action` (pages
3155
+ * persisted before `kind` existed).
3156
+ */
3157
+ type PageActionKind = 'action' | 'workflow';
3158
+ /**
3159
+ * Page action definition — one toolbar button. `kind: action` invokes a
3160
+ * function-service Action by slug (`action`) and may prefill its params;
3161
+ * `kind: workflow` starts a manual run of a workflow by key (`workflow`) and
3162
+ * may prefill its manual-trigger inputs. `params` / `inputs` map target field
3163
+ * names to Liquid templates rendered against the page scope
3164
+ * `{ record, entity, params, user }`; a resolved field is locked in the invoke
3165
+ * dialog. `skip_confirmation` fires the target immediately when every required
3166
+ * field resolved from the templates.
3167
+ */
3168
+ interface PageAction {
3169
+ label: string;
3170
+ icon: string;
3171
+ kind?: PageActionKind;
3172
+ action?: string;
3173
+ workflow?: string;
3174
+ params?: Record<string, string>;
3175
+ inputs?: Record<string, string>;
3176
+ skip_confirmation?: boolean;
3177
+ }
3178
+ declare const PageActionSchema: z.ZodObject<{
3179
+ label: z.ZodString;
3180
+ icon: z.ZodString;
3181
+ kind: z.ZodOptional<z.ZodEnum<["action", "workflow"]>>;
3182
+ action: z.ZodOptional<z.ZodString>;
3183
+ workflow: z.ZodOptional<z.ZodString>;
3184
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
3185
+ inputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
3186
+ skip_confirmation: z.ZodOptional<z.ZodBoolean>;
3187
+ }, "strip", z.ZodTypeAny, {
3188
+ label: string;
3189
+ icon: string;
3190
+ params?: Record<string, string> | undefined;
3191
+ action?: string | undefined;
3192
+ workflow?: string | undefined;
3193
+ kind?: "action" | "workflow" | undefined;
3194
+ inputs?: Record<string, string> | undefined;
3195
+ skip_confirmation?: boolean | undefined;
3196
+ }, {
3197
+ label: string;
3198
+ icon: string;
3199
+ params?: Record<string, string> | undefined;
3200
+ action?: string | undefined;
3201
+ workflow?: string | undefined;
3202
+ kind?: "action" | "workflow" | undefined;
3203
+ inputs?: Record<string, string> | undefined;
3204
+ skip_confirmation?: boolean | undefined;
3205
+ }>;
3206
+ /**
3207
+ * Whether a list's rows can be checked, and whether the checkboxes show from
3208
+ * the start:
3209
+ *
3210
+ * - `on_demand` (default) — a Select toggle in the toolbar reveals them.
3211
+ * - `always` — checkboxes are showing from the start.
3212
+ * - `off` — rows can never be checked, even when the list carries actions.
3213
+ */
3214
+ type SelectionMode = 'on_demand' | 'always' | 'off';
2754
3215
  /**
2755
3216
  * List configuration.
2756
3217
  * Note: List uses `slug` as its primary identifier, not `id`.
@@ -2762,6 +3223,15 @@ interface List extends AuditFields {
2762
3223
  name: string;
2763
3224
  entity_slug: string;
2764
3225
  columns: Column[];
3226
+ /**
3227
+ * Toolbar buttons on the list, same shape a page carries. They act on the
3228
+ * rows SELECTED in the list, so an `action` button names an `entity_batch`
3229
+ * action (invoked once with every selected record id) and prefill templates
3230
+ * resolve against the list scope `{ selection, entity, user }`.
3231
+ */
3232
+ actions?: PageAction[];
3233
+ /** Row-selection affordance; absent normalizes to `on_demand`. */
3234
+ selection_mode?: SelectionMode;
2765
3235
  /** Record page to open from this list; empty/absent = org default for the entity. */
2766
3236
  default_page_slug?: string;
2767
3237
  sorting: SortConfig[];
@@ -2831,6 +3301,35 @@ declare const ListSchema: z.ZodObject<{
2831
3301
  label: string;
2832
3302
  attribute: string;
2833
3303
  }>, "many">;
3304
+ actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
3305
+ label: z.ZodString;
3306
+ icon: z.ZodString;
3307
+ kind: z.ZodOptional<z.ZodEnum<["action", "workflow"]>>;
3308
+ action: z.ZodOptional<z.ZodString>;
3309
+ workflow: z.ZodOptional<z.ZodString>;
3310
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
3311
+ inputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
3312
+ skip_confirmation: z.ZodOptional<z.ZodBoolean>;
3313
+ }, "strip", z.ZodTypeAny, {
3314
+ label: string;
3315
+ icon: string;
3316
+ params?: Record<string, string> | undefined;
3317
+ action?: string | undefined;
3318
+ workflow?: string | undefined;
3319
+ kind?: "action" | "workflow" | undefined;
3320
+ inputs?: Record<string, string> | undefined;
3321
+ skip_confirmation?: boolean | undefined;
3322
+ }, {
3323
+ label: string;
3324
+ icon: string;
3325
+ params?: Record<string, string> | undefined;
3326
+ action?: string | undefined;
3327
+ workflow?: string | undefined;
3328
+ kind?: "action" | "workflow" | undefined;
3329
+ inputs?: Record<string, string> | undefined;
3330
+ skip_confirmation?: boolean | undefined;
3331
+ }>, "many">>;
3332
+ selection_mode: z.ZodOptional<z.ZodEnum<["on_demand", "always", "off"]>>;
2834
3333
  default_page_slug: z.ZodOptional<z.ZodString>;
2835
3334
  sorting: z.ZodArray<z.ZodObject<{
2836
3335
  attribute: z.ZodString;
@@ -2868,6 +3367,17 @@ declare const ListSchema: z.ZodObject<{
2868
3367
  direction: "asc" | "desc";
2869
3368
  }[];
2870
3369
  filters: FilterGroup[];
3370
+ actions?: {
3371
+ label: string;
3372
+ icon: string;
3373
+ params?: Record<string, string> | undefined;
3374
+ action?: string | undefined;
3375
+ workflow?: string | undefined;
3376
+ kind?: "action" | "workflow" | undefined;
3377
+ inputs?: Record<string, string> | undefined;
3378
+ skip_confirmation?: boolean | undefined;
3379
+ }[] | undefined;
3380
+ selection_mode?: "on_demand" | "always" | "off" | undefined;
2871
3381
  default_page_slug?: string | undefined;
2872
3382
  }, {
2873
3383
  name: string;
@@ -2894,6 +3404,17 @@ declare const ListSchema: z.ZodObject<{
2894
3404
  direction: "asc" | "desc";
2895
3405
  }[];
2896
3406
  filters: FilterGroup[];
3407
+ actions?: {
3408
+ label: string;
3409
+ icon: string;
3410
+ params?: Record<string, string> | undefined;
3411
+ action?: string | undefined;
3412
+ workflow?: string | undefined;
3413
+ kind?: "action" | "workflow" | undefined;
3414
+ inputs?: Record<string, string> | undefined;
3415
+ skip_confirmation?: boolean | undefined;
3416
+ }[] | undefined;
3417
+ selection_mode?: "on_demand" | "always" | "off" | undefined;
2897
3418
  default_page_slug?: string | undefined;
2898
3419
  }>;
2899
3420
  /**
@@ -2914,6 +3435,8 @@ interface CreateListRequest {
2914
3435
  entity_slug: string;
2915
3436
  name: string;
2916
3437
  columns: Column[];
3438
+ actions?: PageAction[];
3439
+ selection_mode?: SelectionMode;
2917
3440
  default_page_slug?: string;
2918
3441
  sorting: SortConfig[];
2919
3442
  filters: FilterGroup[];
@@ -2925,6 +3448,8 @@ interface UpdateListRequest {
2925
3448
  name?: string;
2926
3449
  module_slug?: string;
2927
3450
  columns?: Column[];
3451
+ actions?: PageAction[];
3452
+ selection_mode?: SelectionMode;
2928
3453
  /** Set to '' to clear back to the org default. */
2929
3454
  default_page_slug?: string;
2930
3455
  sorting?: SortConfig[];
@@ -3078,28 +3603,6 @@ interface UpdateListViewRequest {
3078
3603
  sorting?: SortConfig[];
3079
3604
  filters?: FilterGroup[];
3080
3605
  }
3081
- /**
3082
- * Page action definition. Page-level toolbar item; addressed by permissions
3083
- * and shortcuts systems.
3084
- */
3085
- interface PageAction {
3086
- label: string;
3087
- icon: string;
3088
- action: string;
3089
- }
3090
- declare const PageActionSchema: z.ZodObject<{
3091
- label: z.ZodString;
3092
- icon: z.ZodString;
3093
- action: z.ZodString;
3094
- }, "strip", z.ZodTypeAny, {
3095
- label: string;
3096
- icon: string;
3097
- action: string;
3098
- }, {
3099
- label: string;
3100
- icon: string;
3101
- action: string;
3102
- }>;
3103
3606
  /**
3104
3607
  * Page type — encodes what the page binds to and how it is served (chrome +
3105
3608
  * auth posture both follow from it):
@@ -3164,15 +3667,30 @@ declare const PageSchema: z.ZodObject<{
3164
3667
  actions: z.ZodArray<z.ZodObject<{
3165
3668
  label: z.ZodString;
3166
3669
  icon: z.ZodString;
3167
- action: z.ZodString;
3670
+ kind: z.ZodOptional<z.ZodEnum<["action", "workflow"]>>;
3671
+ action: z.ZodOptional<z.ZodString>;
3672
+ workflow: z.ZodOptional<z.ZodString>;
3673
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
3674
+ inputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
3675
+ skip_confirmation: z.ZodOptional<z.ZodBoolean>;
3168
3676
  }, "strip", z.ZodTypeAny, {
3169
3677
  label: string;
3170
3678
  icon: string;
3171
- action: string;
3679
+ params?: Record<string, string> | undefined;
3680
+ action?: string | undefined;
3681
+ workflow?: string | undefined;
3682
+ kind?: "action" | "workflow" | undefined;
3683
+ inputs?: Record<string, string> | undefined;
3684
+ skip_confirmation?: boolean | undefined;
3172
3685
  }, {
3173
3686
  label: string;
3174
3687
  icon: string;
3175
- action: string;
3688
+ params?: Record<string, string> | undefined;
3689
+ action?: string | undefined;
3690
+ workflow?: string | undefined;
3691
+ kind?: "action" | "workflow" | undefined;
3692
+ inputs?: Record<string, string> | undefined;
3693
+ skip_confirmation?: boolean | undefined;
3176
3694
  }>, "many">;
3177
3695
  layout: z.ZodObject<{
3178
3696
  version: z.ZodLiteral<1>;
@@ -3253,7 +3771,12 @@ declare const PageSchema: z.ZodObject<{
3253
3771
  actions: {
3254
3772
  label: string;
3255
3773
  icon: string;
3256
- action: string;
3774
+ params?: Record<string, string> | undefined;
3775
+ action?: string | undefined;
3776
+ workflow?: string | undefined;
3777
+ kind?: "action" | "workflow" | undefined;
3778
+ inputs?: Record<string, string> | undefined;
3779
+ skip_confirmation?: boolean | undefined;
3257
3780
  }[];
3258
3781
  layout: {
3259
3782
  version: 1;
@@ -3289,7 +3812,12 @@ declare const PageSchema: z.ZodObject<{
3289
3812
  actions: {
3290
3813
  label: string;
3291
3814
  icon: string;
3292
- action: string;
3815
+ params?: Record<string, string> | undefined;
3816
+ action?: string | undefined;
3817
+ workflow?: string | undefined;
3818
+ kind?: "action" | "workflow" | undefined;
3819
+ inputs?: Record<string, string> | undefined;
3820
+ skip_confirmation?: boolean | undefined;
3293
3821
  }[];
3294
3822
  layout: {
3295
3823
  version: 1;
@@ -3708,5 +4236,23 @@ interface UpdateDesignReferenceRequest {
3708
4236
  interface DesignReferenceContent {
3709
4237
  content: string;
3710
4238
  }
4239
+ /**
4240
+ * The one non-literal `default_value`: "whoever is writing the record".
4241
+ * Meaningful only on `user` and `principal` attributes, where data-service
4242
+ * resolves it to the caller's `{ type, id }` at write time — an owner field
4243
+ * granting `share`, an `assignee`, a `requested_by` fill themselves without a
4244
+ * hook. An object rather than a bare string because a bare string IS a valid
4245
+ * user value (clients send bare ids). Mirrors `metamodel.CurrentUserDefault`.
4246
+ */
4247
+ declare const CURRENT_USER_DEFAULT: {
4248
+ readonly type: "current_user";
4249
+ };
4250
+ type CurrentUserDefault = {
4251
+ type: 'current_user';
4252
+ };
4253
+ /** True when a `default_value` is the current-user sentinel (and nothing else). */
4254
+ declare function isCurrentUserDefault(value: unknown): value is CurrentUserDefault;
4255
+ /** Only the identity-valued attribute types can carry the sentinel. */
4256
+ declare function acceptsCurrentUserDefault(type: AttributeType): boolean;
3711
4257
 
3712
- export { FileRefSchema as $, type AuditFields as A, type CurrencyAttributeMeta as B, type ClientOptions as C, CurrencyAttributeMetaSchema as D, type CurrencySymbolSide as E, type FileRef as F, type CurrencyValue as G, DEFAULT_OPTIONS as H, DEFAULT_PAGE_SIZE as I, DONE as J, type DeployModuleRequest as K, type ListOptions as L, type DesignReference as M, type DesignReferenceContent as N, DesignReferenceSchema as O, PageIterator as P, type DesignReferenceService as Q, type Done as R, type Entity as S, EntitySchema as T, type UserRef as U, type EntityService as V, type EntityWithSchema as W, EntityWithSchemaSchema as X, type EnumAttributeMeta as Y, type EnumValue as Z, type FileAttributeMeta as _, type Attribute as a, type UpdateListRequest as a$, type FilterElement as a0, FilterElementSchema as a1, type FilterGroup as a2, FilterGroupSchema as a3, type List as a4, type ListAppsOptions as a5, type ListComponentsOptions as a6, type ListDesignReferencesOptions as a7, type ListEntitiesOptions as a8, type ListFn as a9, PLATFORM_ATTRIBUTE_NAMES as aA, PLATFORM_USER_ID as aB, type Page as aC, type PageAction as aD, PageActionSchema as aE, type PageLayout as aF, PageLayoutSchema as aG, PageSchema as aH, type PageService as aI, type PageType as aJ, type PublicPageComponent as aK, type PublicPageResponse as aL, type RelationAttributeMeta as aM, RelationAttributeMetaSchema as aN, type RequestOptions as aO, type ResolvedClientOptions as aP, type ResponseMeta as aQ, ResponseMetaSchema as aR, type SortConfig as aS, SortConfigSchema as aT, type SortDirection as aU, type Timestamps as aV, type TokenProvider as aW, type UpdateAppRequest as aX, type UpdateComponentRequest as aY, type UpdateDesignReferenceRequest as aZ, type UpdateEntityRequest as a_, type ListListViewsOptions as aa, type ListListsOptions as ab, type ListMenuConfigurationsOptions as ac, type ListModulesOptions as ad, type ListPagesOptions as ae, ListSchema as af, type ListService as ag, type ListVariablesOptions as ah, type ListView as ai, ListViewSchema as aj, type ListViewService as ak, type LogicalOperator as al, type MenuConfiguration as am, MenuConfigurationSchema as an, type MenuConfigurationService as ao, type MenuItem as ap, MenuItemSchema as aq, MenuItemType as ar, MetaClient as as, type MetaListOptions as at, type Module as au, ModuleSchema as av, type ModuleService as aw, type ModuleStatus as ax, type OnDeleteAction as ay, OnDeleteActionSchema as az, type ListResult as b, type StringFormat as b$, type UpdateListViewRequest as b0, type UpdateMenuConfigurationRequest as b1, type UpdatePageRequest as b2, type UpdateVariableRequest as b3, UserRefSchema as b4, type UserType as b5, type Variable as b6, VariableSchema as b7, type VariableService as b8, allCurrencyCodes as b9, type DividerElement as bA, type FieldElement as bB, FileAttributeMetaSchema as bC, type LayoutAlign as bD, type LayoutElement as bE, LayoutElementSchema as bF, LayoutElementType as bG, type LayoutGap as bH, type LayoutJustify as bI, type LayoutTab as bJ, type NumberAttributeMeta as bK, type ObjectAttributeMeta as bL, PAGE_BACKGROUND_TOKENS as bM, type PageBackgroundToken as bN, type PageLayoutSidePanel as bO, PageLayoutSidePanelSchema as bP, type PageStyle as bQ, PageStyleSchema as bR, type RelatedListElement as bS, type RelatedRecordElement as bT, type ResponsiveSizing as bU, type RowElement as bV, type SectionElement as bW, type SizeValue as bX, SizeValueSchema as bY, type SizingProps as bZ, type StringAttributeMeta as b_, createIterator as ba, createListResultSchema as bb, currencyLabel as bc, currencySymbol as bd, currencySymbolSide as be, formatAmount as bf, formatMoney as bg, isPlatformAttributeName as bh, localeNumberSeparators as bi, parseAmount as bj, parseCurrencyMeta as bk, parseFileMeta as bl, parseRelationMeta as bm, platformAttributes as bn, resolveOptions as bo, type AttributeForLookup as bp, type AttributeMeta as bq, BUILT_IN_CONTROLS as br, type BuiltInControlSlug as bs, type CardElement as bt, type ColumnElement as bu, type CommonProps as bv, type ComponentElement as bw, type ControlBucket as bx, type DatetimeAttributeMeta as by, type DatetimeFormat as bz, ProteosClient as c, type TabsElement as c0, type TextElement as c1, type TextVariant as c2, type UserAttributeMeta as c3, UserAttributeMetaSchema as c4, isBuiltInControl as c5, lookupCompatibleControls as c6, lookupControls as c7, lookupPrimaryControl as c8, parseUserMeta as c9, type PublicAccessOperation as d, type App as e, AppSchema as f, type AppService as g, type ArrayAttributeMeta as h, AttributeSchema as i, type AttributeType as j, AuditFieldsSchema as k, type Column as l, ColumnSchema as m, type ComparisonOperator as n, type Component as o, ComponentSchema as p, type ComponentService as q, type CreateAppRequest as r, type CreateComponentRequest as s, type CreateDesignReferenceRequest as t, type CreateEntityRequest as u, type CreateListRequest as v, type CreateListViewRequest as w, type CreateMenuConfigurationRequest as x, type CreatePageRequest as y, type CreateVariableRequest as z };
4258
+ export { type EntityWithSchema as $, type AuditFields as A, type CreateListViewRequest as B, CURRENT_USER_DEFAULT as C, type CreateMenuConfigurationRequest as D, type CreatePageRequest as E, type FileRef as F, type CreateVariableRequest as G, type CurrencyAttributeMeta as H, CurrencyAttributeMetaSchema as I, type CurrencySymbolSide as J, type CurrencyValue as K, type ListOptions as L, type CurrentUserDefault as M, DEFAULT_OPTIONS as N, DEFAULT_PAGE_SIZE as O, PageIterator as P, DONE as Q, type DeployModuleRequest as R, type DesignReference as S, type DesignReferenceContent as T, type UserRef as U, DesignReferenceSchema as V, type DesignReferenceService as W, type Done as X, type Entity as Y, EntitySchema as Z, type EntityService as _, type Attribute as a, type Timestamps as a$, EntityWithSchemaSchema as a0, type EnumAttributeMeta as a1, type EnumValue as a2, type FileAttributeMeta as a3, FileRefSchema as a4, type FilterElement as a5, FilterElementSchema as a6, type FilterGroup as a7, FilterGroupSchema as a8, type List as a9, ModuleSchema as aA, type ModuleService as aB, type ModuleStatus as aC, type OnDeleteAction as aD, OnDeleteActionSchema as aE, PLATFORM_ATTRIBUTE_NAMES as aF, PLATFORM_USER_ID as aG, type Page as aH, type PageAction as aI, type PageActionKind as aJ, PageActionSchema as aK, type PageLayout as aL, PageLayoutSchema as aM, PageSchema as aN, type PageService as aO, type PageType as aP, type PublicPageComponent as aQ, type PublicPageResponse as aR, type RelationAttributeMeta as aS, RelationAttributeMetaSchema as aT, type RequestOptions as aU, type ResolvedClientOptions as aV, type ResponseMeta as aW, ResponseMetaSchema as aX, type SortConfig as aY, SortConfigSchema as aZ, type SortDirection as a_, type ListAppsOptions as aa, type ListComponentsOptions as ab, type ListDesignReferencesOptions as ac, type ListEntitiesOptions as ad, type ListFn as ae, type ListListViewsOptions as af, type ListListsOptions as ag, type ListMenuConfigurationsOptions as ah, type ListModulesOptions as ai, type ListPagesOptions as aj, ListSchema as ak, type ListService as al, type ListVariablesOptions as am, type ListView as an, ListViewSchema as ao, type ListViewService as ap, type LogicalOperator as aq, type MenuConfiguration as ar, MenuConfigurationSchema as as, type MenuConfigurationService as at, type MenuItem as au, MenuItemSchema as av, MenuItemType as aw, MetaClient as ax, type MetaListOptions as ay, type Module as az, type ListResult as b, type PrincipalAttributeMeta as b$, type TokenProvider as b0, type UpdateAppRequest as b1, type UpdateComponentRequest as b2, type UpdateDesignReferenceRequest as b3, type UpdateEntityRequest as b4, type UpdateListRequest as b5, type UpdateListViewRequest as b6, type UpdateMenuConfigurationRequest as b7, type UpdatePageRequest as b8, type UpdateVariableRequest as b9, type BuiltInControlSlug as bA, type CardElement as bB, type ColumnElement as bC, type CommonProps as bD, type ComponentElement as bE, type ControlBucket as bF, type DatetimeAttributeMeta as bG, type DatetimeFormat as bH, type DividerElement as bI, type FieldElement as bJ, FileAttributeMetaSchema as bK, type LayoutAlign as bL, type LayoutElement as bM, LayoutElementSchema as bN, LayoutElementType as bO, type LayoutGap as bP, type LayoutJustify as bQ, type LayoutTab as bR, type ListElement as bS, type NumberAttributeMeta as bT, type ObjectAttributeMeta as bU, PAGE_BACKGROUND_TOKENS as bV, type PageBackgroundToken as bW, type PageLayoutSidePanel as bX, PageLayoutSidePanelSchema as bY, type PageStyle as bZ, PageStyleSchema as b_, UserRefSchema as ba, type UserType as bb, type Variable as bc, VariableSchema as bd, type VariableService as be, acceptsCurrentUserDefault as bf, allCurrencyCodes as bg, createIterator as bh, createListResultSchema as bi, currencyLabel as bj, currencySymbol as bk, currencySymbolSide as bl, formatAmount as bm, formatMoney as bn, isCurrentUserDefault as bo, isPlatformAttributeName as bp, localeNumberSeparators as bq, parseAmount as br, parseCurrencyMeta as bs, parseFileMeta as bt, parseRelationMeta as bu, platformAttributes as bv, resolveOptions as bw, type AttributeForLookup as bx, type AttributeMeta as by, BUILT_IN_CONTROLS as bz, ProteosClient as c, type PrincipalType as c0, type RecordFilterElement as c1, type RelatedListElement as c2, type RelatedRecordElement as c3, type ResponsiveSizing as c4, type RowElement as c5, type SectionElement as c6, type SizeValue as c7, SizeValueSchema as c8, type SizingProps as c9, type StringAttributeMeta as ca, type StringFormat as cb, type TabsElement as cc, type TextElement as cd, type TextVariant as ce, type UserAttributeMeta as cf, UserAttributeMetaSchema as cg, isBuiltInControl as ch, lookupCompatibleControls as ci, lookupControls as cj, lookupPrimaryControl as ck, parsePrincipalMeta as cl, parseUserMeta as cm, type PrincipalRef as d, type PublicAccessOperation as e, type App as f, AppSchema as g, type AppService as h, type ArrayAttributeMeta as i, type AttributeAccessRule as j, type AttributeRestrictions as k, AttributeSchema as l, type AttributeType as m, AuditFieldsSchema as n, type ClientOptions as o, type Column as p, ColumnSchema as q, type ComparisonOperator as r, type Component as s, ComponentSchema as t, type ComponentService as u, type CreateAppRequest as v, type CreateComponentRequest as w, type CreateDesignReferenceRequest as x, type CreateEntityRequest as y, type CreateListRequest as z };