@optimizely-opal/opal-tools-sdk 0.1.9-dev → 0.1.10-dev

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/proteus.d.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  * DO NOT MODIFY - This file is auto-generated from proteus-document-spec.json
4
4
  * Run 'npm run generate:proteus' to regenerate
5
5
  */
6
- export type OpalProteusDocumentSpecification = ProteusAction | ProteusAtomicCondition | ProteusBadge | ProteusCancelAction | ProteusChart | ProteusCondition | ProteusDataTable | ProteusDocument | ProteusElement | ProteusEventHandler | ProteusField | ProteusGroup | ProteusHeading | ProteusImage | ProteusInput | ProteusLink | ProteusMap | ProteusNode | ProteusRange | ProteusSelect | ProteusSelectContent | ProteusSelectTrigger | ProteusSeparator | ProteusShow | ProteusText | ProteusTextarea | ProteusValue;
6
+ export type OpalProteusDocumentSpecification = ProteusAction | ProteusAtomicCondition | ProteusBadge | ProteusCancelAction | ProteusChart | ProteusCondition | ProteusDataTable | ProteusDocument | ProteusElement | ProteusEventHandler | ProteusField | ProteusGroup | ProteusHeading | ProteusImage | ProteusInput | ProteusLink | ProteusMap | ProteusNode | ProteusRange | ProteusSelect | ProteusSelectContent | ProteusSelectTrigger | ProteusSeparator | ProteusShow | ProteusText | ProteusTextarea | ProteusTime | ProteusValue;
7
7
  export interface ProteusAction {
8
8
  $type: "Action";
9
9
  alignItems?: SprinklePropAlignItems;
@@ -12,7 +12,7 @@ export interface ProteusAction {
12
12
  /**
13
13
  * Control the appearance by selecting between the different button types.
14
14
  */
15
- appearance?: "danger" | "danger-outline" | "default" | "default-opal" | "inverse" | "primary" | "primary-opal" | "subtle";
15
+ appearance?: "danger" | "danger-outline" | "default" | "default-opal" | "inverse" | "primary" | "primary-opal" | "subtle" | ProteusValue;
16
16
  backgroundImage?: SprinklePropBackgroundImage;
17
17
  bg?: SprinklePropBg;
18
18
  border?: SprinklePropBorder;
@@ -60,6 +60,15 @@ export interface ProteusAction {
60
60
  * Name of registered tool to call
61
61
  */
62
62
  tool: string;
63
+ } | {
64
+ /**
65
+ * The action type
66
+ */
67
+ action: "download";
68
+ /**
69
+ * URL to download
70
+ */
71
+ url: string;
63
72
  };
64
73
  overflow?: SprinklePropOverflow;
65
74
  overflowX?: SprinklePropOverflowX;
@@ -187,7 +196,7 @@ export interface ProteusBadge {
187
196
  /**
188
197
  * Control the appearance by selecting between the different badge types.
189
198
  */
190
- intent?: "danger" | "information" | "neutral" | "primary" | "success" | "warning";
199
+ intent?: "danger" | "information" | "neutral" | "primary" | "success" | "warning" | ProteusValue;
191
200
  justifyContent?: SprinklePropJustifyContent;
192
201
  justifyItems?: SprinklePropJustifyItems;
193
202
  m?: SprinklePropM;
@@ -384,7 +393,7 @@ export interface ProteusDocument {
384
393
  /**
385
394
  * The official name of the application
386
395
  */
387
- appName: string;
396
+ appName?: string;
388
397
  /**
389
398
  * If true, hides chat prompt and forces user interaction with document. User can press ESC or close to abandon.
390
399
  */
@@ -405,9 +414,9 @@ export interface ProteusDocument {
405
414
  /**
406
415
  * A single Proteus UI component element identified by its $type discriminator
407
416
  */
408
- export type ProteusElement = ProteusAction | ProteusBadge | ProteusCancelAction | ProteusChart | ProteusDataTable | ProteusField | ProteusGroup | ProteusHeading | ProteusImage | ProteusInput | ProteusLink | ProteusMap | ProteusRange | ProteusSelect | ProteusSelectContent | ProteusSelectTrigger | ProteusSeparator | ProteusShow | ProteusText | ProteusTextarea | ProteusValue;
417
+ export type ProteusElement = ProteusAction | ProteusBadge | ProteusCancelAction | ProteusChart | ProteusDataTable | ProteusField | ProteusGroup | ProteusHeading | ProteusImage | ProteusInput | ProteusLink | ProteusMap | ProteusRange | ProteusSelect | ProteusSelectContent | ProteusSelectTrigger | ProteusSeparator | ProteusShow | ProteusText | ProteusTextarea | ProteusTime | ProteusValue;
409
418
  /**
410
- * Handler for user interactions - either a server-side tool call or client-side message
419
+ * Handler for user interactions - a server-side tool call, client-side message, or client-side component action
411
420
  */
412
421
  export type ProteusEventHandler = {
413
422
  /**
@@ -419,6 +428,15 @@ export type ProteusEventHandler = {
419
428
  * Name of registered tool to call
420
429
  */
421
430
  tool: string;
431
+ } | {
432
+ /**
433
+ * The action type
434
+ */
435
+ action: "download";
436
+ /**
437
+ * URL to download
438
+ */
439
+ url: string;
422
440
  };
423
441
  export interface ProteusField {
424
442
  $type: "Field";
@@ -486,7 +504,7 @@ export interface ProteusField {
486
504
  /**
487
505
  * Display an asterisk for required inputs.
488
506
  */
489
- required?: boolean;
507
+ required?: boolean | ProteusValue;
490
508
  rounded?: SprinklePropRounded;
491
509
  shadow?: SprinklePropShadow;
492
510
  size?: SprinklePropSize;
@@ -503,7 +521,7 @@ export interface ProteusGroup {
503
521
  * Set the element's `align-items` CSS property. Defaults to `center` when
504
522
  * `flexDirection='row'`, and `stretch` when `flexDirection='column'`.
505
523
  */
506
- alignItems?: "center" | "end" | "normal" | "start" | "stretch";
524
+ alignItems?: "center" | "end" | "normal" | "start" | "stretch" | ProteusValue;
507
525
  alignSelf?: SprinklePropAlignSelf;
508
526
  animation?: SprinklePropAnimation;
509
527
  backgroundImage?: SprinklePropBackgroundImage;
@@ -524,7 +542,7 @@ export interface ProteusGroup {
524
542
  *
525
543
  * Default: 'row' (CSS standard)
526
544
  */
527
- flexDirection?: "column" | "column-reverse" | "row" | "row-reverse";
545
+ flexDirection?: "column" | "column-reverse" | "row" | "row-reverse" | ProteusValue;
528
546
  flexWrap?: SprinklePropFlexWrap;
529
547
  fontFamily?: SprinklePropFontFamily;
530
548
  fontSize?: SprinklePropFontSize;
@@ -605,7 +623,7 @@ export interface ProteusHeading {
605
623
  *
606
624
  * Use `asChild` to decouple the semantic level from visual appearance.
607
625
  */
608
- level?: "1" | "2" | "3" | "4";
626
+ level?: "1" | "2" | "3" | "4" | ProteusValue;
609
627
  m?: SprinklePropM;
610
628
  maxH?: SprinklePropMaxH;
611
629
  maxW?: SprinklePropMaxW;
@@ -722,7 +740,7 @@ export interface ProteusInput {
722
740
  /**
723
741
  * Control the appearance of the input.
724
742
  */
725
- appearance?: "default" | "number";
743
+ appearance?: "default" | "number" | ProteusValue;
726
744
  backgroundImage?: SprinklePropBackgroundImage;
727
745
  bg?: SprinklePropBg;
728
746
  border?: SprinklePropBorder;
@@ -758,7 +776,7 @@ export interface ProteusInput {
758
776
  /**
759
777
  * The name of the form control element.
760
778
  */
761
- name?: string;
779
+ name?: ProteusValue | string;
762
780
  objectFit?: SprinklePropObjectFit;
763
781
  overflow?: SprinklePropOverflow;
764
782
  overflowX?: SprinklePropOverflowX;
@@ -769,7 +787,7 @@ export interface ProteusInput {
769
787
  /**
770
788
  * The placeholder text to use when control has no value.
771
789
  */
772
- placeholder?: string;
790
+ placeholder?: ProteusValue | string;
773
791
  placeItems?: SprinklePropPlaceItems;
774
792
  pointerEvents?: SprinklePropPointerEvents;
775
793
  pr?: SprinklePropPr;
@@ -784,7 +802,7 @@ export interface ProteusInput {
784
802
  /**
785
803
  * The input type.
786
804
  */
787
- type?: "button" | "checkbox" | "color" | "date" | "datetime-local" | "email" | "file" | "hidden" | "image" | "month" | "number" | "password" | "radio" | "range" | "reset" | "search" | "submit" | "tel" | "text" | "time" | "url" | "week" | string;
805
+ type?: "button" | "checkbox" | "color" | "date" | "datetime-local" | "email" | "file" | "hidden" | "image" | "month" | "number" | "password" | "radio" | "range" | "reset" | "search" | "submit" | "tel" | "text" | "time" | "url" | "week" | ProteusValue | string;
788
806
  w?: SprinklePropW;
789
807
  whiteSpace?: SprinklePropWhiteSpace;
790
808
  z?: SprinklePropZ;
@@ -819,7 +837,7 @@ export interface ProteusLink {
819
837
  /**
820
838
  * The link href.
821
839
  */
822
- href?: string;
840
+ href?: ProteusValue | string;
823
841
  justifyContent?: SprinklePropJustifyContent;
824
842
  justifyItems?: SprinklePropJustifyItems;
825
843
  m?: SprinklePropM;
@@ -857,11 +875,9 @@ export interface ProteusLink {
857
875
  export interface ProteusMap {
858
876
  $type: "Map";
859
877
  /**
860
- * Template object to render for each item in the array. Value paths inside this template are relative to the current item (e.g., path='title' resolves to each item's 'title' field). Use a leading '/' to reference top-level data (e.g., path='/title' resolves to the root data's 'title').
878
+ * A Proteus node can be a string, number, boolean, null, a single element, or an array of these types (similar to ReactNode)
861
879
  */
862
- children?: {
863
- [k: string]: undefined | unknown;
864
- };
880
+ children?: (boolean | null | number | ProteusElement | string)[] | boolean | null | number | ProteusElement | string;
865
881
  /**
866
882
  * JSON pointer path to the source array in the data (e.g., '/results')
867
883
  */
@@ -916,14 +932,14 @@ export interface ProteusRange {
916
932
  /**
917
933
  * The maximum value for the range.
918
934
  */
919
- max?: number;
935
+ max?: number | ProteusValue;
920
936
  maxH?: SprinklePropMaxH;
921
937
  maxW?: SprinklePropMaxW;
922
938
  mb?: SprinklePropMb;
923
939
  /**
924
940
  * The minimum value for the range.
925
941
  */
926
- min?: number;
942
+ min?: number | ProteusValue;
927
943
  ml?: SprinklePropMl;
928
944
  mr?: SprinklePropMr;
929
945
  mt?: SprinklePropMt;
@@ -947,7 +963,7 @@ export interface ProteusRange {
947
963
  /**
948
964
  * The stepping interval for the range.
949
965
  */
950
- step?: number;
966
+ step?: number | ProteusValue;
951
967
  textAlign?: SprinklePropTextAlign;
952
968
  textTransform?: SprinklePropTextTransform;
953
969
  transition?: SprinklePropTransition;
@@ -961,7 +977,7 @@ export interface ProteusSelect {
961
977
  /**
962
978
  * The name of the inner select element.
963
979
  */
964
- name?: string;
980
+ name?: ProteusValue | string;
965
981
  /**
966
982
  * The select items/options we want to render.
967
983
  */
@@ -1198,7 +1214,7 @@ export interface ProteusText {
1198
1214
  /**
1199
1215
  * Truncate the text at specific number of lines.
1200
1216
  */
1201
- lineClamp?: "1" | "2" | "3" | "4";
1217
+ lineClamp?: "1" | "2" | "3" | "4" | ProteusValue;
1202
1218
  m?: SprinklePropM;
1203
1219
  maxH?: SprinklePropMaxH;
1204
1220
  maxW?: SprinklePropMaxW;
@@ -1230,7 +1246,7 @@ export interface ProteusText {
1230
1246
  /**
1231
1247
  * Whether to truncate the text and add an ellipsis at the end.
1232
1248
  */
1233
- truncate?: boolean;
1249
+ truncate?: boolean | ProteusValue;
1234
1250
  w?: SprinklePropW;
1235
1251
  whiteSpace?: SprinklePropWhiteSpace;
1236
1252
  z?: SprinklePropZ;
@@ -1268,7 +1284,7 @@ export interface ProteusTextarea {
1268
1284
  /**
1269
1285
  * Limits the height of the textarea when `resize=auto` is used.
1270
1286
  */
1271
- maxRows?: 1 | 2 | 3 | 4 | 5;
1287
+ maxRows?: 1 | 2 | 3 | 4 | 5 | ProteusValue;
1272
1288
  maxW?: SprinklePropMaxW;
1273
1289
  mb?: SprinklePropMb;
1274
1290
  ml?: SprinklePropMl;
@@ -1279,7 +1295,7 @@ export interface ProteusTextarea {
1279
1295
  /**
1280
1296
  * The name of the form control element.
1281
1297
  */
1282
- name?: string;
1298
+ name?: ProteusValue | string;
1283
1299
  objectFit?: SprinklePropObjectFit;
1284
1300
  overflow?: SprinklePropOverflow;
1285
1301
  overflowX?: SprinklePropOverflowX;
@@ -1290,7 +1306,7 @@ export interface ProteusTextarea {
1290
1306
  /**
1291
1307
  * The placeholder text to use when control has no value.
1292
1308
  */
1293
- placeholder?: string;
1309
+ placeholder?: ProteusValue | string;
1294
1310
  placeItems?: SprinklePropPlaceItems;
1295
1311
  pointerEvents?: SprinklePropPointerEvents;
1296
1312
  pr?: SprinklePropPr;
@@ -1300,13 +1316,85 @@ export interface ProteusTextarea {
1300
1316
  /**
1301
1317
  * Control whether resizing mode is manual, automatic, or disabled.
1302
1318
  */
1303
- resize?: "auto" | "none" | "vertical";
1319
+ resize?: "auto" | "none" | "vertical" | ProteusValue;
1304
1320
  rounded?: SprinklePropRounded;
1305
1321
  /**
1306
1322
  * The number of rows to display.
1307
1323
  */
1308
- rows?: number;
1324
+ rows?: number | ProteusValue;
1325
+ shadow?: SprinklePropShadow;
1326
+ textAlign?: SprinklePropTextAlign;
1327
+ textTransform?: SprinklePropTextTransform;
1328
+ transition?: SprinklePropTransition;
1329
+ w?: SprinklePropW;
1330
+ whiteSpace?: SprinklePropWhiteSpace;
1331
+ z?: SprinklePropZ;
1332
+ }
1333
+ export interface ProteusTime {
1334
+ $type: "Time";
1335
+ alignItems?: SprinklePropAlignItems;
1336
+ alignSelf?: SprinklePropAlignSelf;
1337
+ animation?: SprinklePropAnimation;
1338
+ backgroundImage?: SprinklePropBackgroundImage;
1339
+ bg?: SprinklePropBg;
1340
+ border?: SprinklePropBorder;
1341
+ borderB?: SprinklePropBorderB;
1342
+ borderColor?: SprinklePropBorderColor;
1343
+ borderL?: SprinklePropBorderL;
1344
+ borderR?: SprinklePropBorderR;
1345
+ borderT?: SprinklePropBorderT;
1346
+ color?: SprinklePropColor;
1347
+ cursor?: SprinklePropCursor;
1348
+ /**
1349
+ * The date to display. Can be a `Date` object or an ISO 8601 string.
1350
+ */
1351
+ date: ProteusValue | string;
1352
+ display?: SprinklePropDisplay;
1353
+ flex?: SprinklePropFlex;
1354
+ flexDirection?: SprinklePropFlexDirection;
1355
+ flexWrap?: SprinklePropFlexWrap;
1356
+ fontFamily?: SprinklePropFontFamily;
1357
+ fontSize?: SprinklePropFontSize;
1358
+ fontWeight?: SprinklePropFontWeight;
1359
+ gap?: SprinklePropGap;
1360
+ gridColumn?: SprinklePropGridColumn;
1361
+ gridTemplateColumns?: SprinklePropGridTemplateColumns;
1362
+ h?: SprinklePropH;
1363
+ justifyContent?: SprinklePropJustifyContent;
1364
+ justifyItems?: SprinklePropJustifyItems;
1365
+ m?: SprinklePropM;
1366
+ maxH?: SprinklePropMaxH;
1367
+ maxW?: SprinklePropMaxW;
1368
+ mb?: SprinklePropMb;
1369
+ ml?: SprinklePropMl;
1370
+ mr?: SprinklePropMr;
1371
+ mt?: SprinklePropMt;
1372
+ mx?: SprinklePropMx;
1373
+ my?: SprinklePropMy;
1374
+ objectFit?: SprinklePropObjectFit;
1375
+ overflow?: SprinklePropOverflow;
1376
+ overflowX?: SprinklePropOverflowX;
1377
+ overflowY?: SprinklePropOverflowY;
1378
+ p?: SprinklePropP;
1379
+ pb?: SprinklePropPb;
1380
+ pl?: SprinklePropPl;
1381
+ placeItems?: SprinklePropPlaceItems;
1382
+ pointerEvents?: SprinklePropPointerEvents;
1383
+ pr?: SprinklePropPr;
1384
+ pt?: SprinklePropPt;
1385
+ px?: SprinklePropPx;
1386
+ py?: SprinklePropPy;
1387
+ rounded?: SprinklePropRounded;
1309
1388
  shadow?: SprinklePropShadow;
1389
+ /**
1390
+ * Whether to show the date part of the value. Defaults to `true`.
1391
+ */
1392
+ showDate?: boolean | ProteusValue;
1393
+ /**
1394
+ * Whether to show the time part of the value. Defaults to `false`.
1395
+ */
1396
+ showTime?: boolean | ProteusValue;
1397
+ size?: SprinklePropSize;
1310
1398
  textAlign?: SprinklePropTextAlign;
1311
1399
  textTransform?: SprinklePropTextTransform;
1312
1400
  transition?: SprinklePropTransition;
@@ -1324,234 +1412,234 @@ export interface ProteusValue {
1324
1412
  /**
1325
1413
  * Set the element's `align-items` CSS property
1326
1414
  */
1327
- export type SprinklePropAlignItems = "center" | "end" | "normal" | "start" | "stretch";
1415
+ export type SprinklePropAlignItems = "center" | "end" | "normal" | "start" | "stretch" | ProteusValue;
1328
1416
  /**
1329
1417
  * Set the element's `align-self` CSS property
1330
1418
  */
1331
- export type SprinklePropAlignSelf = "center" | "end" | "normal" | "start" | "stretch";
1419
+ export type SprinklePropAlignSelf = "center" | "end" | "normal" | "start" | "stretch" | ProteusValue;
1332
1420
  /**
1333
1421
  * Animate element with CSS animations
1334
1422
  */
1335
- export type SprinklePropAnimation = "ping" | "pulse" | "spin";
1423
+ export type SprinklePropAnimation = "ping" | "pulse" | "spin" | ProteusValue;
1336
1424
  /**
1337
1425
  * Set the element's `background-image` CSS property
1338
1426
  */
1339
- export type SprinklePropBackgroundImage = "gradient.opal";
1427
+ export type SprinklePropBackgroundImage = "gradient.opal" | ProteusValue;
1340
1428
  /**
1341
1429
  * Set the element's background color. Only accepts predefined color tokens starting with `bg.` (e.g., `bg.default`, `bg.accent`, `bg.error`), or the special values `current` and `transparent`.
1342
1430
  */
1343
- export type SprinklePropBg = "bg.accent" | "bg.accent.hovered" | "bg.accent.light" | "bg.accent.pressed" | "bg.accent.subtle" | "bg.avatar.neutral" | "bg.avatar.purple" | "bg.default" | "bg.default.hovered" | "bg.default.inverse" | "bg.default.inverse.hovered" | "bg.default.inverse.pressed" | "bg.default.pressed" | "bg.error" | "bg.error.hovered" | "bg.error.light" | "bg.error.pressed" | "bg.error.subtle" | "bg.error.subtlest" | "bg.information" | "bg.information.light" | "bg.information.subtle" | "bg.overlay" | "bg.page" | "bg.secondary" | "bg.secondary.hovered" | "bg.spinner.default" | "bg.spinner.inverse" | "bg.success" | "bg.success.hovered" | "bg.success.light" | "bg.success.subtle" | "bg.tertiary" | "bg.tertiary.hovered" | "bg.warning" | "bg.warning.hovered" | "bg.warning.light" | "bg.warning.subtle" | "current" | "transparent";
1431
+ export type SprinklePropBg = "bg.accent" | "bg.accent.hovered" | "bg.accent.light" | "bg.accent.pressed" | "bg.accent.subtle" | "bg.avatar.neutral" | "bg.avatar.purple" | "bg.default" | "bg.default.hovered" | "bg.default.inverse" | "bg.default.inverse.hovered" | "bg.default.inverse.pressed" | "bg.default.pressed" | "bg.error" | "bg.error.hovered" | "bg.error.light" | "bg.error.pressed" | "bg.error.subtle" | "bg.error.subtlest" | "bg.information" | "bg.information.light" | "bg.information.subtle" | "bg.overlay" | "bg.page" | "bg.secondary" | "bg.secondary.hovered" | "bg.spinner.default" | "bg.spinner.inverse" | "bg.success" | "bg.success.hovered" | "bg.success.light" | "bg.success.subtle" | "bg.tertiary" | "bg.tertiary.hovered" | "bg.warning" | "bg.warning.hovered" | "bg.warning.light" | "bg.warning.subtle" | "current" | "transparent" | ProteusValue;
1344
1432
  /**
1345
1433
  * Set the element's `border-width` CSS property
1346
1434
  */
1347
- export type SprinklePropBorder = "0" | "1" | "2";
1435
+ export type SprinklePropBorder = "0" | "1" | "2" | ProteusValue;
1348
1436
  /**
1349
1437
  * Set the element's `border-bottom-width` CSS property
1350
1438
  */
1351
- export type SprinklePropBorderB = "0" | "1" | "2";
1439
+ export type SprinklePropBorderB = "0" | "1" | "2" | ProteusValue;
1352
1440
  /**
1353
1441
  * Set the element's border color. Only accepts predefined color tokens starting with `border.` (e.g., `border.default`, `border.accent`, `border.error`), or the special values `current` and `transparent`.
1354
1442
  */
1355
- export type SprinklePropBorderColor = "border.accent" | "border.control" | "border.control.hovered" | "border.default" | "border.disabled" | "border.error" | "border.focus" | "border.focus.error" | "border.secondary" | "border.success" | "border.tertiary" | "border.warning" | "current" | "transparent";
1443
+ export type SprinklePropBorderColor = "border.accent" | "border.control" | "border.control.hovered" | "border.default" | "border.disabled" | "border.error" | "border.focus" | "border.focus.error" | "border.secondary" | "border.success" | "border.tertiary" | "border.warning" | "current" | "transparent" | ProteusValue;
1356
1444
  /**
1357
1445
  * Set the element's `border-left-width` CSS property
1358
1446
  */
1359
- export type SprinklePropBorderL = "0" | "1" | "2";
1447
+ export type SprinklePropBorderL = "0" | "1" | "2" | ProteusValue;
1360
1448
  /**
1361
1449
  * Set the element's `border-right-width` CSS property
1362
1450
  */
1363
- export type SprinklePropBorderR = "0" | "1" | "2";
1451
+ export type SprinklePropBorderR = "0" | "1" | "2" | ProteusValue;
1364
1452
  /**
1365
1453
  * Set the element's `border-top-width` CSS property
1366
1454
  */
1367
- export type SprinklePropBorderT = "0" | "1" | "2";
1455
+ export type SprinklePropBorderT = "0" | "1" | "2" | ProteusValue;
1368
1456
  /**
1369
1457
  * Set the element's text color. Only accepts predefined color tokens starting with `fg.` (e.g., `fg.default`, `fg.accent`, `fg.error`), or the special values `current` and `transparent`.
1370
1458
  */
1371
- export type SprinklePropColor = "current" | "fg.accent" | "fg.accent.hovered" | "fg.accent.strong" | "fg.avatar.neutral" | "fg.avatar.purple" | "fg.default" | "fg.default.inverse" | "fg.disabled" | "fg.error" | "fg.error.hovered" | "fg.error.light" | "fg.error.strong" | "fg.information" | "fg.information.light" | "fg.information.strong" | "fg.link.default" | "fg.link.default.hovered" | "fg.link.inverse" | "fg.link.subtle" | "fg.link.visited" | "fg.secondary" | "fg.spinner.default" | "fg.spinner.inverse" | "fg.success" | "fg.success.hovered" | "fg.success.light" | "fg.success.strong" | "fg.tertiary" | "fg.warning" | "fg.warning.hovered" | "fg.warning.inverse" | "fg.warning.light" | "fg.warning.strong" | "fg.white" | "transparent";
1459
+ export type SprinklePropColor = "current" | "fg.accent" | "fg.accent.hovered" | "fg.accent.strong" | "fg.avatar.neutral" | "fg.avatar.purple" | "fg.default" | "fg.default.inverse" | "fg.disabled" | "fg.error" | "fg.error.hovered" | "fg.error.light" | "fg.error.strong" | "fg.information" | "fg.information.light" | "fg.information.strong" | "fg.link.default" | "fg.link.default.hovered" | "fg.link.inverse" | "fg.link.subtle" | "fg.link.visited" | "fg.secondary" | "fg.spinner.default" | "fg.spinner.inverse" | "fg.success" | "fg.success.hovered" | "fg.success.light" | "fg.success.strong" | "fg.tertiary" | "fg.warning" | "fg.warning.hovered" | "fg.warning.inverse" | "fg.warning.light" | "fg.warning.strong" | "fg.white" | "transparent" | ProteusValue;
1372
1460
  /**
1373
1461
  * Set the element's `cursor` CSS property
1374
1462
  */
1375
- export type SprinklePropCursor = "default" | "pointer" | "text";
1463
+ export type SprinklePropCursor = "default" | "pointer" | "text" | ProteusValue;
1376
1464
  /**
1377
1465
  * Set the element's `display` CSS property
1378
1466
  */
1379
- export type SprinklePropDisplay = "block" | "flex" | "grid" | "inline" | "inline-block" | "inline-flex" | "none" | "table" | "table-cell" | "table-row";
1467
+ export type SprinklePropDisplay = "block" | "flex" | "grid" | "inline" | "inline-block" | "inline-flex" | "none" | "table" | "table-cell" | "table-row" | ProteusValue;
1380
1468
  /**
1381
1469
  * Set the element's `flex` CSS property
1382
1470
  */
1383
- export type SprinklePropFlex = "1" | "auto" | "initial" | "none";
1471
+ export type SprinklePropFlex = "1" | "auto" | "initial" | "none" | ProteusValue;
1384
1472
  /**
1385
1473
  * Set the element's `flex-direction` CSS property
1386
1474
  */
1387
- export type SprinklePropFlexDirection = "column" | "column-reverse" | "row" | "row-reverse";
1475
+ export type SprinklePropFlexDirection = "column" | "column-reverse" | "row" | "row-reverse" | ProteusValue;
1388
1476
  /**
1389
1477
  * Set the element's `flex-wrap` CSS property
1390
1478
  */
1391
- export type SprinklePropFlexWrap = "nowrap" | "wrap";
1479
+ export type SprinklePropFlexWrap = "nowrap" | "wrap" | ProteusValue;
1392
1480
  /**
1393
1481
  * Set the element's font family. Only accepts predefined fontFamily tokens.
1394
1482
  */
1395
- export type SprinklePropFontFamily = "mono" | "sans";
1483
+ export type SprinklePropFontFamily = "mono" | "sans" | ProteusValue;
1396
1484
  /**
1397
1485
  * Set the element's font size and line height (both properties are set together). Only accepts predefined fontSize tokens.
1398
1486
  */
1399
- export type SprinklePropFontSize = "2xl" | "3xl" | "4xl" | "inherit" | "lg" | "md" | "sm" | "xl" | "xs";
1487
+ export type SprinklePropFontSize = "2xl" | "3xl" | "4xl" | "inherit" | "lg" | "md" | "sm" | "xl" | "xs" | ProteusValue;
1400
1488
  /**
1401
1489
  * Set the element's `font-weight` CSS property
1402
1490
  */
1403
- export type SprinklePropFontWeight = "400" | "500" | "600" | "700" | "inherit";
1491
+ export type SprinklePropFontWeight = "400" | "500" | "600" | "700" | "inherit" | ProteusValue;
1404
1492
  /**
1405
1493
  * Set the element's `gap` CSS property
1406
1494
  */
1407
- export type SprinklePropGap = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80";
1495
+ export type SprinklePropGap = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | ProteusValue;
1408
1496
  /**
1409
1497
  * Set the element's size across grid columns
1410
1498
  */
1411
- export type SprinklePropGridColumn = "1" | "2" | "3" | "4";
1499
+ export type SprinklePropGridColumn = "1" | "2" | "3" | "4" | ProteusValue;
1412
1500
  /**
1413
1501
  * Control number of columns in a grid layout
1414
1502
  */
1415
- export type SprinklePropGridTemplateColumns = "1" | "2" | "3" | "4";
1503
+ export type SprinklePropGridTemplateColumns = "1" | "2" | "3" | "4" | ProteusValue;
1416
1504
  /**
1417
1505
  * Set the element's height. Only accepts predefined size tokens.
1418
1506
  */
1419
- export type SprinklePropH = "0" | "1/2" | "1/3" | "1/4" | "2/3" | "2xs" | "3/4" | "3xl" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "56" | "64" | "80" | "224" | "384" | "auto" | "fit" | "full" | "lg" | "max" | "md" | "min" | "sm" | "xl" | "xs";
1507
+ export type SprinklePropH = "0" | "1/2" | "1/3" | "1/4" | "2/3" | "2xs" | "3/4" | "3xl" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "56" | "64" | "80" | "224" | "384" | "auto" | "fit" | "full" | "lg" | "max" | "md" | "min" | "sm" | "xl" | "xs" | ProteusValue;
1420
1508
  /**
1421
1509
  * Set the element's `justify-content` CSS property
1422
1510
  */
1423
- export type SprinklePropJustifyContent = "center" | "end" | "flex-end" | "flex-start" | "normal" | "space-around" | "space-between" | "space-evenly" | "start" | "stretch";
1511
+ export type SprinklePropJustifyContent = "center" | "end" | "flex-end" | "flex-start" | "normal" | "space-around" | "space-between" | "space-evenly" | "start" | "stretch" | ProteusValue;
1424
1512
  /**
1425
1513
  * Set the element's `justify-items` CSS property
1426
1514
  */
1427
- export type SprinklePropJustifyItems = "center" | "end" | "normal" | "start" | "stretch";
1515
+ export type SprinklePropJustifyItems = "center" | "end" | "normal" | "start" | "stretch" | ProteusValue;
1428
1516
  /**
1429
1517
  * Set the element's margin on all sides. Only accepts predefined spacing tokens.
1430
1518
  */
1431
- export type SprinklePropM = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto";
1519
+ export type SprinklePropM = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto" | ProteusValue;
1432
1520
  /**
1433
1521
  * Set the element's maximum height. Only accepts predefined maxSize tokens.
1434
1522
  */
1435
- export type SprinklePropMaxH = "full" | "lg" | "md" | "sm" | "xs";
1523
+ export type SprinklePropMaxH = "full" | "lg" | "md" | "sm" | "xs" | ProteusValue;
1436
1524
  /**
1437
1525
  * Set the element's maximum width. Only accepts predefined maxSize tokens.
1438
1526
  */
1439
- export type SprinklePropMaxW = "full" | "lg" | "md" | "sm" | "xs";
1527
+ export type SprinklePropMaxW = "full" | "lg" | "md" | "sm" | "xs" | ProteusValue;
1440
1528
  /**
1441
1529
  * Set the element's bottom margin. Only accepts predefined spacing tokens.
1442
1530
  */
1443
- export type SprinklePropMb = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto";
1531
+ export type SprinklePropMb = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto" | ProteusValue;
1444
1532
  /**
1445
1533
  * Set the element's left margin. Only accepts predefined spacing tokens.
1446
1534
  */
1447
- export type SprinklePropMl = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto";
1535
+ export type SprinklePropMl = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto" | ProteusValue;
1448
1536
  /**
1449
1537
  * Set the element's right margin. Only accepts predefined spacing tokens.
1450
1538
  */
1451
- export type SprinklePropMr = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto";
1539
+ export type SprinklePropMr = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto" | ProteusValue;
1452
1540
  /**
1453
1541
  * Set the element's top margin. Only accepts predefined spacing tokens.
1454
1542
  */
1455
- export type SprinklePropMt = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto";
1543
+ export type SprinklePropMt = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto" | ProteusValue;
1456
1544
  /**
1457
1545
  * Set the element's left and right margin. Only accepts predefined spacing tokens.
1458
1546
  */
1459
- export type SprinklePropMx = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto";
1547
+ export type SprinklePropMx = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto" | ProteusValue;
1460
1548
  /**
1461
1549
  * Set the element's top and bottom margin. Only accepts predefined spacing tokens.
1462
1550
  */
1463
- export type SprinklePropMy = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto";
1551
+ export type SprinklePropMy = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | "auto" | ProteusValue;
1464
1552
  /**
1465
1553
  * Set the element's `object-fit` CSS property
1466
1554
  */
1467
- export type SprinklePropObjectFit = "contain" | "cover" | "fill" | "none";
1555
+ export type SprinklePropObjectFit = "contain" | "cover" | "fill" | "none" | ProteusValue;
1468
1556
  /**
1469
1557
  * Set the element's `overflow` CSS property
1470
1558
  */
1471
- export type SprinklePropOverflow = "auto" | "hidden" | "visible";
1559
+ export type SprinklePropOverflow = "auto" | "hidden" | "visible" | ProteusValue;
1472
1560
  /**
1473
1561
  * Set the element's `overflow-x` CSS property
1474
1562
  */
1475
- export type SprinklePropOverflowX = "auto" | "hidden" | "visible";
1563
+ export type SprinklePropOverflowX = "auto" | "hidden" | "visible" | ProteusValue;
1476
1564
  /**
1477
1565
  * Set the element's `overflow-y` CSS property
1478
1566
  */
1479
- export type SprinklePropOverflowY = "auto" | "hidden" | "visible";
1567
+ export type SprinklePropOverflowY = "auto" | "hidden" | "visible" | ProteusValue;
1480
1568
  /**
1481
1569
  * Set the element's padding on all sides. Only accepts predefined spacing tokens.
1482
1570
  */
1483
- export type SprinklePropP = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80";
1571
+ export type SprinklePropP = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | ProteusValue;
1484
1572
  /**
1485
1573
  * Set the element's bottom padding. Only accepts predefined spacing tokens.
1486
1574
  */
1487
- export type SprinklePropPb = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80";
1575
+ export type SprinklePropPb = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | ProteusValue;
1488
1576
  /**
1489
1577
  * Set the element's left padding. Only accepts predefined spacing tokens.
1490
1578
  */
1491
- export type SprinklePropPl = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80";
1579
+ export type SprinklePropPl = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | ProteusValue;
1492
1580
  /**
1493
1581
  * Set the element's `place-items` CSS property
1494
1582
  */
1495
- export type SprinklePropPlaceItems = "center";
1583
+ export type SprinklePropPlaceItems = "center" | ProteusValue;
1496
1584
  /**
1497
1585
  * Set the element's `pointer-events` CSS property
1498
1586
  */
1499
- export type SprinklePropPointerEvents = "auto" | "none";
1587
+ export type SprinklePropPointerEvents = "auto" | "none" | ProteusValue;
1500
1588
  /**
1501
1589
  * Set the element's right padding. Only accepts predefined spacing tokens.
1502
1590
  */
1503
- export type SprinklePropPr = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80";
1591
+ export type SprinklePropPr = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | ProteusValue;
1504
1592
  /**
1505
1593
  * Set the element's top padding. Only accepts predefined spacing tokens.
1506
1594
  */
1507
- export type SprinklePropPt = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80";
1595
+ export type SprinklePropPt = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | ProteusValue;
1508
1596
  /**
1509
1597
  * Set the element's left and right padding. Only accepts predefined spacing tokens.
1510
1598
  */
1511
- export type SprinklePropPx = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80";
1599
+ export type SprinklePropPx = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | ProteusValue;
1512
1600
  /**
1513
1601
  * Set the element's top and bottom padding. Only accepts predefined spacing tokens.
1514
1602
  */
1515
- export type SprinklePropPy = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80";
1603
+ export type SprinklePropPy = "0" | "2" | "4" | "6" | "8" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "64" | "80" | ProteusValue;
1516
1604
  /**
1517
1605
  * Set the element's border radius. Only accepts predefined borderRadius tokens.
1518
1606
  */
1519
- export type SprinklePropRounded = "full" | "inherit" | "lg" | "md" | "none" | "sm" | "xl" | "xs";
1607
+ export type SprinklePropRounded = "full" | "inherit" | "lg" | "md" | "none" | "sm" | "xl" | "xs" | ProteusValue;
1520
1608
  /**
1521
1609
  * Set the element's box shadow. Only accepts predefined boxShadow tokens.
1522
1610
  */
1523
- export type SprinklePropShadow = "lg" | "md" | "none" | "sm" | "xl";
1611
+ export type SprinklePropShadow = "lg" | "md" | "none" | "sm" | "xl" | ProteusValue;
1524
1612
  /**
1525
1613
  * Set the element's width and height. Only accepts predefined size tokens.
1526
1614
  *
1527
1615
  * When width and height are the same, use `size` instead of setting both
1528
1616
  * `w` and `h` separately (e.g., prefer `size="24"` over `w="24" h="24"`).
1529
1617
  */
1530
- export type SprinklePropSize = "0" | "1/2" | "1/3" | "1/4" | "2/3" | "2xs" | "3/4" | "3xl" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "56" | "64" | "80" | "224" | "384" | "auto" | "fit" | "full" | "lg" | "max" | "md" | "min" | "sm" | "xl" | "xs";
1618
+ export type SprinklePropSize = "0" | "1/2" | "1/3" | "1/4" | "2/3" | "2xs" | "3/4" | "3xl" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "56" | "64" | "80" | "224" | "384" | "auto" | "fit" | "full" | "lg" | "max" | "md" | "min" | "sm" | "xl" | "xs" | ProteusValue;
1531
1619
  /**
1532
1620
  * Set the element's `text-align` CSS property
1533
1621
  */
1534
- export type SprinklePropTextAlign = "center" | "end" | "justify" | "start";
1622
+ export type SprinklePropTextAlign = "center" | "end" | "justify" | "start" | ProteusValue;
1535
1623
  /**
1536
1624
  * Set the element's `text-transform` CSS property
1537
1625
  */
1538
- export type SprinklePropTextTransform = "capitalize" | "none" | "uppercase";
1626
+ export type SprinklePropTextTransform = "capitalize" | "none" | "uppercase" | ProteusValue;
1539
1627
  /**
1540
1628
  * Control which CSS properties should transition
1541
1629
  */
1542
- export type SprinklePropTransition = "all" | "colors" | "none" | "opacity" | "transform";
1630
+ export type SprinklePropTransition = "all" | "colors" | "none" | "opacity" | "transform" | ProteusValue;
1543
1631
  /**
1544
1632
  * Set the element's width. Only accepts predefined size tokens.
1545
1633
  */
1546
- export type SprinklePropW = "0" | "1/2" | "1/3" | "1/4" | "2/3" | "2xs" | "3/4" | "3xl" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "56" | "64" | "80" | "224" | "384" | "auto" | "fit" | "full" | "lg" | "max" | "md" | "min" | "sm" | "xl" | "xs";
1634
+ export type SprinklePropW = "0" | "1/2" | "1/3" | "1/4" | "2/3" | "2xs" | "3/4" | "3xl" | "10" | "12" | "16" | "20" | "24" | "32" | "40" | "48" | "56" | "64" | "80" | "224" | "384" | "auto" | "fit" | "full" | "lg" | "max" | "md" | "min" | "sm" | "xl" | "xs" | ProteusValue;
1547
1635
  /**
1548
1636
  * Set the element's `white-space` CSS property
1549
1637
  */
1550
- export type SprinklePropWhiteSpace = "nowrap";
1638
+ export type SprinklePropWhiteSpace = "nowrap" | ProteusValue;
1551
1639
  /**
1552
1640
  * Set the element's stacking order. Only accepts predefined zIndex tokens (e.g., popover, toast, tooltip) or numeric values (0, 10, 20, 30, auto).
1553
1641
  */
1554
- export type SprinklePropZ = "0" | "10" | "20" | "30" | "auto" | "popover" | "toast" | "tooltip";
1642
+ export type SprinklePropZ = "0" | "10" | "20" | "30" | "auto" | "popover" | "toast" | "tooltip" | ProteusValue;
1555
1643
  /**
1556
1644
  * Builder namespace for Adaptive UI Document components.
1557
1645
  *
@@ -1583,5 +1671,6 @@ export declare const UI: {
1583
1671
  Show: (props: Omit<ProteusShow, "$type">) => ProteusShow;
1584
1672
  Text: (props: Omit<ProteusText, "$type">) => ProteusText;
1585
1673
  Textarea: (props: Omit<ProteusTextarea, "$type">) => ProteusTextarea;
1674
+ Time: (props: Omit<ProteusTime, "$type">) => ProteusTime;
1586
1675
  Value: (props: Omit<ProteusValue, "$type">) => ProteusValue;
1587
1676
  };