@picteus/extension-sdk 0.15.0 → 0.16.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 (236) hide show
  1. package/dist/featureViewGrammar.d.ts +2814 -0
  2. package/dist/featureViewGrammar.js +2612 -0
  3. package/dist/generated/featureViewGrammar.d.ts +3913 -0
  4. package/dist/generated/featureViewGrammar.js +4099 -0
  5. package/dist/generated/viewKit.d.ts +3884 -0
  6. package/dist/generated/viewKit.js +4099 -0
  7. package/dist/index.d.ts +1 -0
  8. package/dist/index.js +1 -0
  9. package/dist/picteus-ws-client/apis/AdministrationApi.d.ts +1 -1
  10. package/dist/picteus-ws-client/apis/AdministrationApi.js +1 -1
  11. package/dist/picteus-ws-client/apis/ApiSecretApi.d.ts +1 -1
  12. package/dist/picteus-ws-client/apis/ApiSecretApi.js +1 -1
  13. package/dist/picteus-ws-client/apis/CollectionApi.d.ts +1 -1
  14. package/dist/picteus-ws-client/apis/CollectionApi.js +1 -1
  15. package/dist/picteus-ws-client/apis/ExtensionApi.d.ts +65 -32
  16. package/dist/picteus-ws-client/apis/ExtensionApi.js +82 -37
  17. package/dist/picteus-ws-client/apis/ImageApi.d.ts +1 -1
  18. package/dist/picteus-ws-client/apis/ImageApi.js +1 -1
  19. package/dist/picteus-ws-client/apis/ImageAttachmentApi.d.ts +1 -1
  20. package/dist/picteus-ws-client/apis/ImageAttachmentApi.js +1 -1
  21. package/dist/picteus-ws-client/apis/MiscellaneousApi.d.ts +1 -1
  22. package/dist/picteus-ws-client/apis/MiscellaneousApi.js +1 -1
  23. package/dist/picteus-ws-client/apis/RepositoryApi.d.ts +5 -5
  24. package/dist/picteus-ws-client/apis/RepositoryApi.js +3 -3
  25. package/dist/picteus-ws-client/apis/SettingsApi.d.ts +1 -1
  26. package/dist/picteus-ws-client/apis/SettingsApi.js +1 -1
  27. package/dist/picteus-ws-client/models/ApiSecret.d.ts +1 -1
  28. package/dist/picteus-ws-client/models/ApiSecret.js +1 -1
  29. package/dist/picteus-ws-client/models/ApiSecretSummary.d.ts +1 -1
  30. package/dist/picteus-ws-client/models/ApiSecretSummary.js +1 -1
  31. package/dist/picteus-ws-client/models/ApiSecretType.d.ts +1 -1
  32. package/dist/picteus-ws-client/models/ApiSecretType.js +1 -1
  33. package/dist/picteus-ws-client/models/ApplicationConfiguration.d.ts +1 -1
  34. package/dist/picteus-ws-client/models/ApplicationConfiguration.js +1 -1
  35. package/dist/picteus-ws-client/models/ApplicationMetadata.d.ts +1 -1
  36. package/dist/picteus-ws-client/models/ApplicationMetadata.js +1 -1
  37. package/dist/picteus-ws-client/models/ApplicationMetadataItem.d.ts +1 -1
  38. package/dist/picteus-ws-client/models/ApplicationMetadataItem.js +1 -1
  39. package/dist/picteus-ws-client/models/ApplicationMetadataItemValue.d.ts +1 -1
  40. package/dist/picteus-ws-client/models/ApplicationMetadataItemValue.js +1 -1
  41. package/dist/picteus-ws-client/models/ApplicationSettings.d.ts +1 -1
  42. package/dist/picteus-ws-client/models/ApplicationSettings.js +1 -1
  43. package/dist/picteus-ws-client/models/Collection.d.ts +1 -1
  44. package/dist/picteus-ws-client/models/Collection.js +1 -1
  45. package/dist/picteus-ws-client/models/CommandEntity.d.ts +1 -1
  46. package/dist/picteus-ws-client/models/CommandEntity.js +1 -1
  47. package/dist/picteus-ws-client/models/ComputedImageFormat.d.ts +1 -1
  48. package/dist/picteus-ws-client/models/ComputedImageFormat.js +1 -1
  49. package/dist/picteus-ws-client/models/ConfigurationCapability.d.ts +1 -1
  50. package/dist/picteus-ws-client/models/ConfigurationCapability.js +1 -1
  51. package/dist/picteus-ws-client/models/ConfigurationExtensionCommand.d.ts +1 -1
  52. package/dist/picteus-ws-client/models/ConfigurationExtensionCommand.js +1 -1
  53. package/dist/picteus-ws-client/models/ConstantsRegistry.d.ts +1 -1
  54. package/dist/picteus-ws-client/models/ConstantsRegistry.js +1 -1
  55. package/dist/picteus-ws-client/models/Dates.d.ts +1 -1
  56. package/dist/picteus-ws-client/models/Dates.js +1 -1
  57. package/dist/picteus-ws-client/models/Extension.d.ts +5 -5
  58. package/dist/picteus-ws-client/models/Extension.js +5 -5
  59. package/dist/picteus-ws-client/models/ExtensionActivity.d.ts +1 -1
  60. package/dist/picteus-ws-client/models/ExtensionActivity.js +1 -1
  61. package/dist/picteus-ws-client/models/ExtensionActivityKind.d.ts +1 -1
  62. package/dist/picteus-ws-client/models/ExtensionActivityKind.js +1 -1
  63. package/dist/picteus-ws-client/models/ExtensionAndManual.d.ts +5 -5
  64. package/dist/picteus-ws-client/models/ExtensionAndManual.js +5 -5
  65. package/dist/picteus-ws-client/models/ExtensionCategory.d.ts +1 -1
  66. package/dist/picteus-ws-client/models/ExtensionCategory.js +1 -1
  67. package/dist/picteus-ws-client/models/ExtensionGenerationOptions.d.ts +1 -1
  68. package/dist/picteus-ws-client/models/ExtensionGenerationOptions.js +1 -1
  69. package/dist/picteus-ws-client/models/ExtensionIdImageEmbeddingName.d.ts +1 -1
  70. package/dist/picteus-ws-client/models/ExtensionIdImageEmbeddingName.js +1 -1
  71. package/dist/picteus-ws-client/models/ExtensionImageEmbeddings.d.ts +1 -1
  72. package/dist/picteus-ws-client/models/ExtensionImageEmbeddings.js +1 -1
  73. package/dist/picteus-ws-client/models/ExtensionImageFeature.d.ts +1 -1
  74. package/dist/picteus-ws-client/models/ExtensionImageFeature.js +1 -1
  75. package/dist/picteus-ws-client/models/ExtensionImageFeatureName.d.ts +1 -1
  76. package/dist/picteus-ws-client/models/ExtensionImageFeatureName.js +1 -1
  77. package/dist/picteus-ws-client/models/ExtensionImageFeaturesAttribute.d.ts +1 -1
  78. package/dist/picteus-ws-client/models/ExtensionImageFeaturesAttribute.js +1 -1
  79. package/dist/picteus-ws-client/models/ExtensionImageTag.d.ts +1 -1
  80. package/dist/picteus-ws-client/models/ExtensionImageTag.js +1 -1
  81. package/dist/picteus-ws-client/models/ExtensionImageTagsAttribute.d.ts +1 -1
  82. package/dist/picteus-ws-client/models/ExtensionImageTagsAttribute.js +1 -1
  83. package/dist/picteus-ws-client/models/ExtensionManual.d.ts +1 -1
  84. package/dist/picteus-ws-client/models/ExtensionManual.js +1 -1
  85. package/dist/picteus-ws-client/models/ExtensionSettings.d.ts +1 -1
  86. package/dist/picteus-ws-client/models/ExtensionSettings.js +1 -1
  87. package/dist/picteus-ws-client/models/ExtensionState.d.ts +25 -0
  88. package/dist/picteus-ws-client/models/ExtensionState.js +43 -0
  89. package/dist/picteus-ws-client/models/ExtensionsConfiguration.d.ts +1 -1
  90. package/dist/picteus-ws-client/models/ExtensionsConfiguration.js +1 -1
  91. package/dist/picteus-ws-client/models/GenerationRecipe.d.ts +1 -1
  92. package/dist/picteus-ws-client/models/GenerationRecipe.js +1 -1
  93. package/dist/picteus-ws-client/models/GenerationRecipePrompt.d.ts +1 -1
  94. package/dist/picteus-ws-client/models/GenerationRecipePrompt.js +1 -1
  95. package/dist/picteus-ws-client/models/Image.d.ts +1 -1
  96. package/dist/picteus-ws-client/models/Image.js +1 -1
  97. package/dist/picteus-ws-client/models/ImageDimensions.d.ts +1 -1
  98. package/dist/picteus-ws-client/models/ImageDimensions.js +1 -1
  99. package/dist/picteus-ws-client/models/ImageDistance.d.ts +1 -1
  100. package/dist/picteus-ws-client/models/ImageDistance.js +1 -1
  101. package/dist/picteus-ws-client/models/ImageEmbedding.d.ts +1 -1
  102. package/dist/picteus-ws-client/models/ImageEmbedding.js +1 -1
  103. package/dist/picteus-ws-client/models/ImageFeature.d.ts +1 -1
  104. package/dist/picteus-ws-client/models/ImageFeature.js +1 -1
  105. package/dist/picteus-ws-client/models/ImageFeatureFormat.d.ts +3 -1
  106. package/dist/picteus-ws-client/models/ImageFeatureFormat.js +4 -2
  107. package/dist/picteus-ws-client/models/ImageFeatureNullValue.d.ts +1 -1
  108. package/dist/picteus-ws-client/models/ImageFeatureNullValue.js +1 -1
  109. package/dist/picteus-ws-client/models/ImageFeatureType.d.ts +1 -1
  110. package/dist/picteus-ws-client/models/ImageFeatureType.js +1 -1
  111. package/dist/picteus-ws-client/models/ImageFeatureValue.d.ts +1 -1
  112. package/dist/picteus-ws-client/models/ImageFeatureValue.js +1 -1
  113. package/dist/picteus-ws-client/models/ImageFormat.d.ts +1 -1
  114. package/dist/picteus-ws-client/models/ImageFormat.js +1 -1
  115. package/dist/picteus-ws-client/models/ImageMediaUrl.d.ts +1 -1
  116. package/dist/picteus-ws-client/models/ImageMediaUrl.js +1 -1
  117. package/dist/picteus-ws-client/models/ImageMetadata.d.ts +1 -1
  118. package/dist/picteus-ws-client/models/ImageMetadata.js +1 -1
  119. package/dist/picteus-ws-client/models/ImageResizeRender.d.ts +1 -1
  120. package/dist/picteus-ws-client/models/ImageResizeRender.js +1 -1
  121. package/dist/picteus-ws-client/models/ImageSummary.d.ts +1 -1
  122. package/dist/picteus-ws-client/models/ImageSummary.js +1 -1
  123. package/dist/picteus-ws-client/models/InstructionsPrompt.d.ts +1 -1
  124. package/dist/picteus-ws-client/models/InstructionsPrompt.js +1 -1
  125. package/dist/picteus-ws-client/models/Manifest.d.ts +1 -1
  126. package/dist/picteus-ws-client/models/Manifest.js +1 -1
  127. package/dist/picteus-ws-client/models/ManifestCapability.d.ts +1 -1
  128. package/dist/picteus-ws-client/models/ManifestCapability.js +1 -1
  129. package/dist/picteus-ws-client/models/ManifestCapabilityId.d.ts +1 -1
  130. package/dist/picteus-ws-client/models/ManifestCapabilityId.js +1 -1
  131. package/dist/picteus-ws-client/models/ManifestEvent.d.ts +1 -1
  132. package/dist/picteus-ws-client/models/ManifestEvent.js +1 -1
  133. package/dist/picteus-ws-client/models/ManifestExecution.d.ts +1 -1
  134. package/dist/picteus-ws-client/models/ManifestExecution.js +1 -1
  135. package/dist/picteus-ws-client/models/ManifestExtensionCommand.d.ts +1 -1
  136. package/dist/picteus-ws-client/models/ManifestExtensionCommand.js +1 -1
  137. package/dist/picteus-ws-client/models/ManifestExtensionCommandOn.d.ts +1 -1
  138. package/dist/picteus-ws-client/models/ManifestExtensionCommandOn.js +1 -1
  139. package/dist/picteus-ws-client/models/ManifestExtensionCommandSpecification.d.ts +1 -1
  140. package/dist/picteus-ws-client/models/ManifestExtensionCommandSpecification.js +1 -1
  141. package/dist/picteus-ws-client/models/ManifestExtensionCommandUi.d.ts +1 -1
  142. package/dist/picteus-ws-client/models/ManifestExtensionCommandUi.js +1 -1
  143. package/dist/picteus-ws-client/models/ManifestInstructions.d.ts +1 -1
  144. package/dist/picteus-ws-client/models/ManifestInstructions.js +1 -1
  145. package/dist/picteus-ws-client/models/ManifestInterfaceElement.d.ts +1 -1
  146. package/dist/picteus-ws-client/models/ManifestInterfaceElement.js +1 -1
  147. package/dist/picteus-ws-client/models/ManifestInterfaceElementIntegration.d.ts +1 -1
  148. package/dist/picteus-ws-client/models/ManifestInterfaceElementIntegration.js +1 -1
  149. package/dist/picteus-ws-client/models/ManifestRuntime.d.ts +1 -1
  150. package/dist/picteus-ws-client/models/ManifestRuntime.js +1 -1
  151. package/dist/picteus-ws-client/models/ManifestRuntimeEnvironment.d.ts +1 -1
  152. package/dist/picteus-ws-client/models/ManifestRuntimeEnvironment.js +1 -1
  153. package/dist/picteus-ws-client/models/ManifestThrottlingPolicy.d.ts +1 -1
  154. package/dist/picteus-ws-client/models/ManifestThrottlingPolicy.js +1 -1
  155. package/dist/picteus-ws-client/models/ManifestUserInterface.d.ts +1 -1
  156. package/dist/picteus-ws-client/models/ManifestUserInterface.js +1 -1
  157. package/dist/picteus-ws-client/models/PromptKind.d.ts +1 -1
  158. package/dist/picteus-ws-client/models/PromptKind.js +1 -1
  159. package/dist/picteus-ws-client/models/Repository.d.ts +5 -5
  160. package/dist/picteus-ws-client/models/Repository.js +5 -5
  161. package/dist/picteus-ws-client/models/RepositoryActivity.d.ts +1 -1
  162. package/dist/picteus-ws-client/models/RepositoryActivity.js +1 -1
  163. package/dist/picteus-ws-client/models/RepositoryActivityKind.d.ts +1 -1
  164. package/dist/picteus-ws-client/models/RepositoryActivityKind.js +1 -1
  165. package/dist/picteus-ws-client/models/RepositoryLocationType.d.ts +1 -1
  166. package/dist/picteus-ws-client/models/RepositoryLocationType.js +1 -1
  167. package/dist/picteus-ws-client/models/RepositoryState.d.ts +27 -0
  168. package/dist/picteus-ws-client/models/RepositoryState.js +45 -0
  169. package/dist/picteus-ws-client/models/RunCommandParameters.d.ts +1 -1
  170. package/dist/picteus-ws-client/models/RunCommandParameters.js +1 -1
  171. package/dist/picteus-ws-client/models/SearchCriteria.d.ts +1 -1
  172. package/dist/picteus-ws-client/models/SearchCriteria.js +1 -1
  173. package/dist/picteus-ws-client/models/SearchFeatureComparisonOperator.d.ts +1 -1
  174. package/dist/picteus-ws-client/models/SearchFeatureComparisonOperator.js +1 -1
  175. package/dist/picteus-ws-client/models/SearchFeatureCondition.d.ts +1 -1
  176. package/dist/picteus-ws-client/models/SearchFeatureCondition.js +1 -1
  177. package/dist/picteus-ws-client/models/SearchFeatureConditionValue.d.ts +1 -1
  178. package/dist/picteus-ws-client/models/SearchFeatureConditionValue.js +1 -1
  179. package/dist/picteus-ws-client/models/SearchFeatureLogicalOperator.d.ts +1 -1
  180. package/dist/picteus-ws-client/models/SearchFeatureLogicalOperator.js +1 -1
  181. package/dist/picteus-ws-client/models/SearchFeatures.d.ts +1 -1
  182. package/dist/picteus-ws-client/models/SearchFeatures.js +1 -1
  183. package/dist/picteus-ws-client/models/SearchFeaturesResult.d.ts +1 -1
  184. package/dist/picteus-ws-client/models/SearchFeaturesResult.js +1 -1
  185. package/dist/picteus-ws-client/models/SearchFilter.d.ts +1 -1
  186. package/dist/picteus-ws-client/models/SearchFilter.js +1 -1
  187. package/dist/picteus-ws-client/models/SearchFilterOrigin.d.ts +1 -1
  188. package/dist/picteus-ws-client/models/SearchFilterOrigin.js +1 -1
  189. package/dist/picteus-ws-client/models/SearchImageIdResult.d.ts +1 -1
  190. package/dist/picteus-ws-client/models/SearchImageIdResult.js +1 -1
  191. package/dist/picteus-ws-client/models/SearchImageResult.d.ts +1 -1
  192. package/dist/picteus-ws-client/models/SearchImageResult.js +1 -1
  193. package/dist/picteus-ws-client/models/SearchImageSummaryResult.d.ts +1 -1
  194. package/dist/picteus-ws-client/models/SearchImageSummaryResult.js +1 -1
  195. package/dist/picteus-ws-client/models/SearchImagesOrigin.d.ts +1 -1
  196. package/dist/picteus-ws-client/models/SearchImagesOrigin.js +1 -1
  197. package/dist/picteus-ws-client/models/SearchKeyword.d.ts +1 -1
  198. package/dist/picteus-ws-client/models/SearchKeyword.js +1 -1
  199. package/dist/picteus-ws-client/models/SearchMediaUrlResult.d.ts +1 -1
  200. package/dist/picteus-ws-client/models/SearchMediaUrlResult.js +1 -1
  201. package/dist/picteus-ws-client/models/SearchOriginNature.d.ts +1 -1
  202. package/dist/picteus-ws-client/models/SearchOriginNature.js +1 -1
  203. package/dist/picteus-ws-client/models/SearchParameters.d.ts +1 -1
  204. package/dist/picteus-ws-client/models/SearchParameters.js +1 -1
  205. package/dist/picteus-ws-client/models/SearchProperties.d.ts +1 -1
  206. package/dist/picteus-ws-client/models/SearchProperties.js +1 -1
  207. package/dist/picteus-ws-client/models/SearchPropertyRange.d.ts +1 -1
  208. package/dist/picteus-ws-client/models/SearchPropertyRange.js +1 -1
  209. package/dist/picteus-ws-client/models/SearchRange.d.ts +1 -1
  210. package/dist/picteus-ws-client/models/SearchRange.js +1 -1
  211. package/dist/picteus-ws-client/models/SearchRepositoriesOrigin.d.ts +1 -1
  212. package/dist/picteus-ws-client/models/SearchRepositoriesOrigin.js +1 -1
  213. package/dist/picteus-ws-client/models/SearchSorting.d.ts +1 -1
  214. package/dist/picteus-ws-client/models/SearchSorting.js +1 -1
  215. package/dist/picteus-ws-client/models/SearchSortingProperty.d.ts +1 -1
  216. package/dist/picteus-ws-client/models/SearchSortingProperty.js +1 -1
  217. package/dist/picteus-ws-client/models/SearchTags.d.ts +1 -1
  218. package/dist/picteus-ws-client/models/SearchTags.js +1 -1
  219. package/dist/picteus-ws-client/models/SearchTagsResult.d.ts +1 -1
  220. package/dist/picteus-ws-client/models/SearchTagsResult.js +1 -1
  221. package/dist/picteus-ws-client/models/Software.d.ts +1 -1
  222. package/dist/picteus-ws-client/models/Software.js +1 -1
  223. package/dist/picteus-ws-client/models/TextualPrompt.d.ts +1 -1
  224. package/dist/picteus-ws-client/models/TextualPrompt.js +1 -1
  225. package/dist/picteus-ws-client/models/UserInterfaceAnchor.d.ts +1 -1
  226. package/dist/picteus-ws-client/models/UserInterfaceAnchor.js +1 -1
  227. package/dist/picteus-ws-client/models/UserInterfaceSidebarIntegration.d.ts +1 -1
  228. package/dist/picteus-ws-client/models/UserInterfaceSidebarIntegration.js +1 -1
  229. package/dist/picteus-ws-client/models/UserInterfaceWindowIntegration.d.ts +1 -1
  230. package/dist/picteus-ws-client/models/UserInterfaceWindowIntegration.js +1 -1
  231. package/dist/picteus-ws-client/models/index.d.ts +2 -2
  232. package/dist/picteus-ws-client/models/index.js +2 -2
  233. package/dist/picteus-ws-client/runtime.d.ts +1 -1
  234. package/dist/picteus-ws-client/runtime.js +1 -1
  235. package/dist/picteusExtension.js +17 -14
  236. package/package.json +1 -1
@@ -0,0 +1,3913 @@
1
+ /** Generic base class providing recursive JSON serialization for all model instances. */
2
+ export declare abstract class GrammarNode<T = unknown> {
3
+ /**
4
+ * Serializes this model instance into a strongly-typed, JSON-compatible plain object.
5
+ *
6
+ * @returns The plain object representation conforming to interface `T`.
7
+ */
8
+ toJSON(): T;
9
+ /**
10
+ * Returns the compact JSON string representation of this model instance with no indentation.
11
+ *
12
+ * @returns Compact JSON string without indentation.
13
+ */
14
+ toString(): string;
15
+ }
16
+ /** Typographic stroke weight styling. */
17
+ export declare enum TextWeight {
18
+ /** Thin / light text weight */
19
+ thin = "thin",
20
+ /** Standard text weight */
21
+ normal = "normal",
22
+ /** Heavy / bold text weight */
23
+ heavy = "heavy"
24
+ }
25
+ /** Visual text color intensity and contrast. */
26
+ export declare enum TextIntensity {
27
+ /** Low visual contrast / subdued text color */
28
+ low = "low",
29
+ /** Standard text color */
30
+ medium = "medium",
31
+ /** High visual contrast / intense text color */
32
+ high = "high"
33
+ }
34
+ /** Representation style for short string values. */
35
+ export declare enum StringShortRepresentation {
36
+ /** Standard plain text rendering */
37
+ plain = "plain",
38
+ /** Visual chip / tag pill representation */
39
+ chip = "chip"
40
+ }
41
+ /** Supported syntax highlighting languages for formatted code blocks. */
42
+ export declare enum CodeLanguage {
43
+ /** XML markup syntax */
44
+ xml = "xml",
45
+ /** JSON format syntax */
46
+ json = "json",
47
+ /** YAML format syntax */
48
+ yaml = "yaml"
49
+ }
50
+ /** Visual color tone variants for badge pill representations. */
51
+ export declare enum BadgeVariant {
52
+ /** Neutral gray tone */
53
+ neutral = "neutral",
54
+ /** Success green tone */
55
+ success = "success",
56
+ /** Warning yellow/orange tone */
57
+ warning = "warning",
58
+ /** Danger red tone */
59
+ danger = "danger"
60
+ }
61
+ /** Presentation format styles for timestamp elements. */
62
+ export declare enum TimestampFormat {
63
+ /** Complete date and time display */
64
+ full = "full",
65
+ /** Date-only display */
66
+ date = "date",
67
+ /** Time-only display */
68
+ time = "time",
69
+ /** Relative time expression (e.g. "5 minutes ago") */
70
+ relative = "relative"
71
+ }
72
+ /** Visual style variants for interactive button actions. */
73
+ export declare enum ButtonVariant {
74
+ /** Primary emphasis button style for default/recommended actions */
75
+ primary = "primary",
76
+ /** Secondary standard button style */
77
+ secondary = "secondary",
78
+ /** Subtle low-contrast button style */
79
+ subtle = "subtle",
80
+ /** Destructive / dangerous action button style */
81
+ danger = "danger"
82
+ }
83
+ /** Text horizontal alignment options for table columns. */
84
+ export declare enum TableColumnAlign {
85
+ /** Left-aligned text */
86
+ left = "left",
87
+ /** Center-aligned text */
88
+ center = "center",
89
+ /** Right-aligned text */
90
+ right = "right"
91
+ }
92
+ /** Visual styling variants for hairline dividers. */
93
+ export declare enum DividerStyle {
94
+ /** Subtle thin hairline border */
95
+ hairline = "hairline",
96
+ /** Solid standard divider line */
97
+ solid = "solid",
98
+ /** Dashed separator line */
99
+ dashed = "dashed"
100
+ }
101
+ /**
102
+ * Polymorphic root base model for all visual UI elements in Picteus feature views.
103
+ * Uses the @discriminator("type") decorator so all child models inheriting from UiElement
104
+ * are automatically recognized by schema emitters and SDK code generators.
105
+ */
106
+ export interface UiElementBase {
107
+ /** The polymorphic discriminator type tag. */
108
+ readonly type: string;
109
+ }
110
+ /** Abstract base class for all `UiElement` models. */
111
+ export declare abstract class BaseUiElement<T = UiElement> extends GrammarNode<T> implements UiElementBase {
112
+ abstract readonly type: string;
113
+ }
114
+ /** Polymorphic base model for interactive actions. */
115
+ export interface UiActionBase {
116
+ /** The polymorphic discriminator type tag. */
117
+ readonly type: string;
118
+ /** Display label for the action */
119
+ readonly label: string;
120
+ }
121
+ /** Abstract base class for all `UiAction` models. */
122
+ export declare abstract class BaseUiAction<T = UiAction> extends GrammarNode<T> implements UiActionBase {
123
+ abstract readonly type: string;
124
+ abstract readonly label: string;
125
+ }
126
+ /** Truncation configuration for long textual content with optional expand affordance. */
127
+ export interface TruncateOptions {
128
+ /** Maximum number of characters to display before truncating */
129
+ readonly characterLimit: number;
130
+ /**
131
+ * Whether to render a "Show more" / "Show less" toggle affordance
132
+ *
133
+ * @defaultValue true
134
+ */
135
+ readonly showMore?: boolean;
136
+ }
137
+ /** Base modifier traits for elements that support copy affordance. */
138
+ export interface BaseModifiers {
139
+ /** Adds an interactive copy button/action next to the rendered value */
140
+ readonly copyable?: boolean;
141
+ }
142
+ /** Common modifier traits that can be attached to primitive elements. */
143
+ export interface PrimitiveModifiers extends BaseModifiers {
144
+ /** Configures character truncation threshold with show-more affordance */
145
+ readonly truncate?: TruncateOptions;
146
+ /**
147
+ * Typographic text weight
148
+ *
149
+ * @defaultValue TextWeight.normal
150
+ */
151
+ readonly weight?: TextWeight;
152
+ /**
153
+ * Visual text color intensity
154
+ *
155
+ * @defaultValue TextIntensity.medium
156
+ */
157
+ readonly intensity?: TextIntensity;
158
+ /**
159
+ * Whether to use monospace font rendering (for hashes, IDs, codes)
160
+ *
161
+ * @defaultValue false
162
+ */
163
+ readonly monospace?: boolean;
164
+ }
165
+ /**
166
+ * Short string primitive element.
167
+ * Supports plain text or compact chip pill presentation.
168
+ */
169
+ export interface StringShortElement extends UiElementBase {
170
+ /**
171
+ * Discriminator type
172
+ *
173
+ * @defaultValue "string-short"
174
+ */
175
+ readonly type: "string-short";
176
+ /** Text value */
177
+ readonly value: string;
178
+ /**
179
+ * Display representation mode
180
+ *
181
+ * @defaultValue StringShortRepresentation.plain
182
+ */
183
+ readonly representation?: StringShortRepresentation;
184
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
185
+ readonly modifiers?: PrimitiveModifiers;
186
+ }
187
+ /** Multiline text block primitive element for descriptions, comments, or prose. */
188
+ export interface StringLongElement extends UiElementBase {
189
+ /**
190
+ * Discriminator type
191
+ *
192
+ * @defaultValue "string-long"
193
+ */
194
+ readonly type: "string-long";
195
+ /** Text value */
196
+ readonly value: string;
197
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
198
+ readonly modifiers?: PrimitiveModifiers;
199
+ }
200
+ /** Monospace code block or formatted code snippet representation. */
201
+ export interface StringCodeElement extends UiElementBase {
202
+ /**
203
+ * Discriminator type
204
+ *
205
+ * @defaultValue "string-code"
206
+ */
207
+ readonly type: "string-code";
208
+ /** Text value */
209
+ readonly value: string;
210
+ /** Optional syntax highlighting language identifier */
211
+ readonly language?: CodeLanguage;
212
+ /** Optional visual modifiers (copyable) */
213
+ readonly modifiers?: BaseModifiers;
214
+ }
215
+ /** XML markup code block element. */
216
+ export interface XmlElement extends UiElementBase {
217
+ /**
218
+ * Discriminator type
219
+ *
220
+ * @defaultValue "xml"
221
+ */
222
+ readonly type: "xml";
223
+ /** XML content value */
224
+ readonly value: string;
225
+ /** Optional visual modifiers (copyable) */
226
+ readonly modifiers?: BaseModifiers;
227
+ }
228
+ /** JSON data or structure representation element. */
229
+ export interface JsonElement extends UiElementBase {
230
+ /**
231
+ * Discriminator type
232
+ *
233
+ * @defaultValue "json"
234
+ */
235
+ readonly type: "json";
236
+ /** JSON content value */
237
+ readonly value: string;
238
+ /** Optional visual modifiers (copyable) */
239
+ readonly modifiers?: BaseModifiers;
240
+ }
241
+ /** Hyperlink representation for external or internal URL navigation. */
242
+ export interface StringUrlElement extends UiElementBase {
243
+ /**
244
+ * Discriminator type
245
+ *
246
+ * @defaultValue "string-url"
247
+ */
248
+ readonly type: "string-url";
249
+ /** Target URL or navigation destination */
250
+ readonly value: string;
251
+ /** Optional custom anchor text label */
252
+ readonly label?: string;
253
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
254
+ readonly modifiers?: PrimitiveModifiers;
255
+ }
256
+ /** Monospace semantic identifier representation. */
257
+ export interface IdentifierElement extends UiElementBase {
258
+ /**
259
+ * Discriminator type
260
+ *
261
+ * @defaultValue "identifier"
262
+ */
263
+ readonly type: "identifier";
264
+ /** Identifier string value */
265
+ readonly value: string;
266
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
267
+ readonly modifiers?: PrimitiveModifiers;
268
+ }
269
+ /** Aspect ratio representation (e.g. "16:9", "4:3", "1:1"). */
270
+ export interface RatioElement extends UiElementBase {
271
+ /**
272
+ * Discriminator type
273
+ *
274
+ * @defaultValue "ratio"
275
+ */
276
+ readonly type: "ratio";
277
+ /** Aspect ratio textual expression */
278
+ readonly value: string;
279
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
280
+ readonly modifiers?: PrimitiveModifiers;
281
+ }
282
+ /** Single color swatch representation with hex value and copy affordance. */
283
+ export interface ColourElement extends UiElementBase {
284
+ /**
285
+ * Discriminator type
286
+ *
287
+ * @defaultValue "color-swatch"
288
+ */
289
+ readonly type: "color-swatch";
290
+ /** Hexadecimal color code */
291
+ readonly value: string;
292
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
293
+ readonly modifiers?: PrimitiveModifiers;
294
+ }
295
+ /** Plain unbounded numeric value primitive element. */
296
+ export interface NumberUnboundedElement extends UiElementBase {
297
+ /**
298
+ * Discriminator type
299
+ *
300
+ * @defaultValue "number-unbounded"
301
+ */
302
+ readonly type: "number-unbounded";
303
+ /** Numeric value */
304
+ readonly value: number;
305
+ /** Optional unit suffix (e.g. "px", "ms", "MB") */
306
+ readonly unit?: string;
307
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
308
+ readonly modifiers?: PrimitiveModifiers;
309
+ }
310
+ /** Bounded numeric rating represented as visual stars. */
311
+ export interface NumberBoundedStarsElement extends UiElementBase {
312
+ /**
313
+ * Discriminator type
314
+ *
315
+ * @defaultValue "number-stars"
316
+ */
317
+ readonly type: "number-stars";
318
+ /** Numeric rating score */
319
+ readonly value: number;
320
+ /** Maximum rating scale (defaults to 5) */
321
+ readonly maximum?: number;
322
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
323
+ readonly modifiers?: PrimitiveModifiers;
324
+ }
325
+ /** Bounded numeric meter representation (read-only progress / score bar). */
326
+ export interface NumberBoundedMeterElement extends UiElementBase {
327
+ /**
328
+ * Discriminator type
329
+ *
330
+ * @defaultValue "number-meter"
331
+ */
332
+ readonly type: "number-meter";
333
+ /** Numeric value */
334
+ readonly value: number;
335
+ /** Minimum scale bound (defaults to 0) */
336
+ readonly minimum?: number;
337
+ /** Maximum scale bound (e.g. 100) */
338
+ readonly maximum?: number;
339
+ /** Optional custom text label override (e.g. "68 / 100") */
340
+ readonly label?: string;
341
+ /** Optional unit suffix (e.g. "%") */
342
+ readonly unit?: string;
343
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
344
+ readonly modifiers?: PrimitiveModifiers;
345
+ }
346
+ /** Plain boolean value representation (textual "true" / "false"). */
347
+ export interface BooleanPlainElement extends UiElementBase {
348
+ /**
349
+ * Discriminator type
350
+ *
351
+ * @defaultValue "boolean-plain"
352
+ */
353
+ readonly type: "boolean-plain";
354
+ /** Boolean state value */
355
+ readonly value: boolean;
356
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
357
+ readonly modifiers?: PrimitiveModifiers;
358
+ }
359
+ /** Visual badge pill representation of a boolean state. */
360
+ export interface BooleanBadgeElement extends UiElementBase {
361
+ /**
362
+ * Discriminator type
363
+ *
364
+ * @defaultValue "boolean-badge"
365
+ */
366
+ readonly type: "boolean-badge";
367
+ /** Boolean state value */
368
+ readonly value: boolean;
369
+ /**
370
+ * Custom display label when true (defaults to "true")
371
+ *
372
+ * @defaultValue "true"
373
+ */
374
+ readonly trueLabel?: string;
375
+ /**
376
+ * Custom display label when false (defaults to "false")
377
+ *
378
+ * @defaultValue "false"
379
+ */
380
+ readonly falseLabel?: string;
381
+ /**
382
+ * Badge color tone
383
+ *
384
+ * @defaultValue BadgeVariant.neutral
385
+ */
386
+ readonly variant?: BadgeVariant;
387
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
388
+ readonly modifiers?: PrimitiveModifiers;
389
+ }
390
+ /** Formatted date and time representation. */
391
+ export interface TimestampElement extends UiElementBase {
392
+ /**
393
+ * Discriminator type
394
+ *
395
+ * @defaultValue "timestamp"
396
+ */
397
+ readonly type: "timestamp";
398
+ /** ISO 8601 date string or epoch timestamp in milliseconds */
399
+ readonly value: string;
400
+ /**
401
+ * Presentation date/time format
402
+ *
403
+ * @defaultValue TimestampFormat.full
404
+ */
405
+ readonly format?: TimestampFormat;
406
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
407
+ readonly modifiers?: PrimitiveModifiers;
408
+ }
409
+ /** Thumbnail image reference with placeholder fallback handling. */
410
+ export interface ImageReferenceElement extends UiElementBase {
411
+ /**
412
+ * Discriminator type
413
+ *
414
+ * @defaultValue "image-ref"
415
+ */
416
+ readonly type: "image-ref";
417
+ /** Image source URI (HTTPS URL, base64 data URI, or asset path) */
418
+ readonly src: string;
419
+ /** Accessible alternative description */
420
+ readonly alt?: string;
421
+ /**
422
+ * Aspect ratio of the thumbnail container
423
+ *
424
+ * @defaultValue "1:1"
425
+ */
426
+ readonly aspectRatio?: string;
427
+ /** Fallback placeholder image URI */
428
+ readonly placeholder?: string;
429
+ }
430
+ /** Dominant color set palette rendered in descending dominance order. */
431
+ export interface DominantColourSetElement extends UiElementBase {
432
+ /**
433
+ * Discriminator type
434
+ *
435
+ * @defaultValue "color-set"
436
+ */
437
+ readonly type: "color-set";
438
+ /** List of hexadecimal color strings in descending priority */
439
+ readonly colors: string[];
440
+ }
441
+ /** Interactive button action triggering an extension command. */
442
+ export interface ButtonActionElement extends UiActionBase {
443
+ /**
444
+ * Discriminator type
445
+ *
446
+ * @defaultValue "button"
447
+ */
448
+ readonly type: "button";
449
+ /** Extension identifier owning the target command */
450
+ readonly extensionId?: string;
451
+ /** Command identifier to invoke */
452
+ readonly commandId: string;
453
+ /** Target entity or context identifier */
454
+ readonly target?: string;
455
+ /** Optional arbitrary parameters payload forwarded to the command handler */
456
+ readonly parameters?: Record<string, unknown>;
457
+ /**
458
+ * Whether the button is disabled / unavailable
459
+ *
460
+ * @defaultValue false
461
+ */
462
+ readonly disabled?: boolean;
463
+ /**
464
+ * Button visual style variant
465
+ *
466
+ * @defaultValue ButtonVariant.secondary
467
+ */
468
+ readonly variant?: ButtonVariant;
469
+ }
470
+ /** External link action distinct from inline URL text values. */
471
+ export interface ExternalLinkActionElement extends UiActionBase {
472
+ /**
473
+ * Discriminator type
474
+ *
475
+ * @defaultValue "external-link"
476
+ */
477
+ readonly type: "external-link";
478
+ /** Target URL destination */
479
+ readonly url: string;
480
+ }
481
+ /** Full Markdown fallback block rendered with core typographic hierarchy, spacing, and styling. */
482
+ export interface MarkdownBlockElement extends UiElementBase {
483
+ /**
484
+ * Discriminator type
485
+ *
486
+ * @defaultValue "markdown"
487
+ */
488
+ readonly type: "markdown";
489
+ /** Raw Markdown markup content */
490
+ readonly content: string;
491
+ /** Optional visual modifiers (copyable) */
492
+ readonly modifiers?: BaseModifiers;
493
+ }
494
+ /** Sandboxed HTML rendering escape hatch. */
495
+ export interface HtmlBlockElement extends UiElementBase {
496
+ /**
497
+ * Discriminator type
498
+ *
499
+ * @defaultValue "html"
500
+ */
501
+ readonly type: "html";
502
+ /** Raw HTML markup content */
503
+ readonly content: string;
504
+ /** Optional visual modifiers (copyable) */
505
+ readonly modifiers?: BaseModifiers;
506
+ }
507
+ /** Single slot within a multi-slot horizontal row layout. */
508
+ export interface Slot {
509
+ /** Optional slot label (e.g. "Slot A") */
510
+ readonly label?: string;
511
+ /** Relative or fractional width proportion (e.g. "1/3", "2/3", "100px", "auto") */
512
+ readonly width?: string;
513
+ /** Rendered content inside the slot */
514
+ readonly content: UiElement;
515
+ }
516
+ /**
517
+ * Multi-slot horizontal row with declared column width proportions.
518
+ * Examples: "1/3 + 2/3", "equal thirds", "1/4 + 3/4".
519
+ */
520
+ export interface MultiSlotRowElement extends UiElementBase {
521
+ /**
522
+ * Discriminator type
523
+ *
524
+ * @defaultValue "multi-slot"
525
+ */
526
+ readonly type: "multi-slot";
527
+ /** Proportions descriptor (e.g. "1/3 + 2/3", "equal", "1/4 + 3/4") */
528
+ readonly proportions?: string;
529
+ /** List of slots comprising the row */
530
+ readonly slots: Slot[];
531
+ }
532
+ /**
533
+ * Standard label and value row.
534
+ * Displays a muted label on the left and value representation on the right with a vertical dividing line.
535
+ */
536
+ export interface LabelValueRowElement extends UiElementBase {
537
+ /**
538
+ * Discriminator type
539
+ *
540
+ * @defaultValue "label-value"
541
+ */
542
+ readonly type: "label-value";
543
+ /** Key or descriptive label displayed muted on the left */
544
+ readonly label: string;
545
+ /** Rendered value element on the right */
546
+ readonly value: UiElement;
547
+ /**
548
+ * Whether to render a bottom border/hairline divider
549
+ *
550
+ * @defaultValue false
551
+ */
552
+ readonly withDivider?: boolean;
553
+ }
554
+ /** Column definition for structured tables. */
555
+ export interface TableColumn {
556
+ /** Display header text */
557
+ readonly header?: string;
558
+ /**
559
+ * Text horizontal alignment
560
+ *
561
+ * @defaultValue TableColumnAlign.left
562
+ */
563
+ readonly align?: TableColumnAlign;
564
+ /** Optional width constraint */
565
+ readonly width?: string;
566
+ }
567
+ /** Single table row containing an array of cell values. */
568
+ export interface TableRow {
569
+ /** Array of cell values corresponding to table columns */
570
+ readonly cells: UiElement[];
571
+ }
572
+ /**
573
+ * Structured tabular data representation.
574
+ * Supports header/borderless modes, 2-column key-value tables, and 3-column data tables.
575
+ */
576
+ export interface TableElement extends UiElementBase {
577
+ /**
578
+ * Discriminator type
579
+ *
580
+ * @defaultValue "table"
581
+ */
582
+ readonly type: "table";
583
+ /**
584
+ * Whether to render a column header row
585
+ *
586
+ * @defaultValue true
587
+ */
588
+ readonly hasHeader?: boolean;
589
+ /**
590
+ * Whether to render alternating row background colors
591
+ *
592
+ * @defaultValue false
593
+ */
594
+ readonly isStriped?: boolean;
595
+ /**
596
+ * Whether to render vertical column separators
597
+ *
598
+ * @defaultValue false
599
+ */
600
+ readonly withColumnSeparators?: boolean;
601
+ /**
602
+ * Whether to render horizontal row separators
603
+ *
604
+ * @defaultValue false
605
+ */
606
+ readonly withRowSeparators?: boolean;
607
+ /** Optional explicit column definitions */
608
+ readonly columns?: TableColumn[];
609
+ /** Tabular data rows */
610
+ readonly rows: TableRow[];
611
+ }
612
+ /** Single entry within a repeating group. */
613
+ export interface RepeatingGroupEntry {
614
+ /** Entry label */
615
+ readonly label: string;
616
+ /** Primary entry value or nested elements */
617
+ readonly value?: UiElement;
618
+ /** Nested elements for structured entries */
619
+ readonly elements?: UiElement[];
620
+ }
621
+ /** Repeating group container where entries share uniform structure and retain per-entry labels. */
622
+ export interface RepeatingGroupElement extends UiElementBase {
623
+ /**
624
+ * Discriminator type
625
+ *
626
+ * @defaultValue "repeating-group"
627
+ */
628
+ readonly type: "repeating-group";
629
+ /** Optional section header for the group */
630
+ readonly title?: string;
631
+ /** List of repeated entry records */
632
+ readonly entries: RepeatingGroupEntry[];
633
+ }
634
+ /** Collapsible disclosure container (accordion) with summary badge. */
635
+ export interface CollapsibleGroupElement extends UiElementBase {
636
+ /**
637
+ * Discriminator type
638
+ *
639
+ * @defaultValue "collapsible-group"
640
+ */
641
+ readonly type: "collapsible-group";
642
+ /** Group title (e.g. "Show specimen details") */
643
+ readonly title: string;
644
+ /** Secondary summary indicator (e.g. "2 neutral values") */
645
+ readonly summary?: string;
646
+ /**
647
+ * Whether the disclosure is open/expanded by default
648
+ *
649
+ * @defaultValue false
650
+ */
651
+ readonly defaultExpanded?: boolean;
652
+ /** Nested content elements revealed when expanded */
653
+ readonly elements: UiElement[];
654
+ }
655
+ /** Visual hairline separator separating sections or element groups. */
656
+ export interface DividerElement extends UiElementBase {
657
+ /**
658
+ * Discriminator type
659
+ *
660
+ * @defaultValue "divider"
661
+ */
662
+ readonly type: "divider";
663
+ /**
664
+ * Line styling
665
+ *
666
+ * @defaultValue DividerStyle.hairline
667
+ */
668
+ readonly style?: DividerStyle;
669
+ }
670
+ /** Base envelope container model holding the schema version attribute. */
671
+ export interface Envelop {
672
+ /**
673
+ * Schema specification version
674
+ *
675
+ * @defaultValue "1.0"
676
+ */
677
+ readonly schemaVersion: "1.0";
678
+ }
679
+ /** Container model representing an ordered list of visual elements. */
680
+ export interface UiContainer extends Envelop {
681
+ /** Ordered list of visual elements, structures, and content */
682
+ readonly elements: UiElement[];
683
+ }
684
+ /**
685
+ * Root Card container model.
686
+ * Represents a complete feature card rendered inside the 360px panel.
687
+ */
688
+ export interface UiCard extends UiContainer {
689
+ /** Human-readable feature title displayed in the card header */
690
+ readonly title: string;
691
+ /** Optional neutral subtitle / description for the feature */
692
+ readonly description?: string;
693
+ /** Optional card action buttons rendered at the base of the feature card */
694
+ readonly actions?: UiAction[];
695
+ }
696
+ /**
697
+ * Polymorphic root base model for all visual UI elements in Picteus feature views.
698
+ * Uses the @discriminator("type") decorator so all child models inheriting from UiElement
699
+ * are automatically recognized by schema emitters and SDK code generators.
700
+ */
701
+ export type UiElement = StringShortElement | StringLongElement | StringCodeElement | XmlElement | JsonElement | StringUrlElement | IdentifierElement | RatioElement | ColourElement | NumberUnboundedElement | NumberBoundedStarsElement | NumberBoundedMeterElement | BooleanPlainElement | BooleanBadgeElement | TimestampElement | ImageReferenceElement | DominantColourSetElement | MarkdownBlockElement | HtmlBlockElement | MultiSlotRowElement | LabelValueRowElement | TableElement | RepeatingGroupElement | CollapsibleGroupElement | DividerElement;
702
+ /** Polymorphic base model for interactive actions. */
703
+ export type UiAction = ButtonActionElement | ExternalLinkActionElement;
704
+ /**
705
+ * Class implementation of the `TruncateOptions` interface.
706
+ *
707
+ * @remarks
708
+ * Truncation configuration for long textual content with optional expand affordance.
709
+ */
710
+ export declare class TruncateOptionsClass extends GrammarNode<TruncateOptions> implements TruncateOptions {
711
+ /** Maximum number of characters to display before truncating */
712
+ readonly characterLimit: number;
713
+ /**
714
+ * Whether to render a "Show more" / "Show less" toggle affordance
715
+ *
716
+ * @defaultValue true
717
+ */
718
+ readonly showMore?: boolean;
719
+ /**
720
+ * Initializes a new `TruncateOptionsClass` instance.
721
+ *
722
+ * @param characterLimit - Maximum number of characters to display before truncating
723
+ * @param options - Optional property overrides (showMore (defaults to `true`)).
724
+ */
725
+ constructor(characterLimit: number, options?: {
726
+ showMore?: boolean;
727
+ });
728
+ }
729
+ /**
730
+ * Class implementation of the `BaseModifiers` interface.
731
+ *
732
+ * @remarks
733
+ * Base modifier traits for elements that support copy affordance.
734
+ */
735
+ export declare class BaseModifiersClass extends GrammarNode<BaseModifiers> implements BaseModifiers {
736
+ /** Adds an interactive copy button/action next to the rendered value */
737
+ readonly copyable?: boolean;
738
+ /**
739
+ * Initializes a new `BaseModifiersClass` instance.
740
+ *
741
+ * @param options - Optional property overrides (copyable).
742
+ */
743
+ constructor(options?: {
744
+ copyable?: boolean;
745
+ });
746
+ }
747
+ /**
748
+ * Class implementation of the `PrimitiveModifiers` interface.
749
+ *
750
+ * @remarks
751
+ * Common modifier traits that can be attached to primitive elements.
752
+ */
753
+ export declare class PrimitiveModifiersClass extends GrammarNode<PrimitiveModifiers> implements PrimitiveModifiers {
754
+ /** Configures character truncation threshold with show-more affordance */
755
+ readonly truncate?: TruncateOptions;
756
+ /**
757
+ * Typographic text weight
758
+ *
759
+ * @defaultValue TextWeight.normal
760
+ */
761
+ readonly weight?: TextWeight;
762
+ /**
763
+ * Visual text color intensity
764
+ *
765
+ * @defaultValue TextIntensity.medium
766
+ */
767
+ readonly intensity?: TextIntensity;
768
+ /**
769
+ * Whether to use monospace font rendering (for hashes, IDs, codes)
770
+ *
771
+ * @defaultValue false
772
+ */
773
+ readonly monospace?: boolean;
774
+ /** Adds an interactive copy button/action next to the rendered value */
775
+ readonly copyable?: boolean;
776
+ /**
777
+ * Initializes a new `PrimitiveModifiersClass` instance.
778
+ *
779
+ * @param options - Optional property overrides (truncate, weight (defaults to `normal`), intensity (defaults to `medium`), monospace (defaults to `false`), copyable).
780
+ */
781
+ constructor(options?: {
782
+ truncate?: TruncateOptions;
783
+ weight?: TextWeight;
784
+ intensity?: TextIntensity;
785
+ monospace?: boolean;
786
+ copyable?: boolean;
787
+ });
788
+ }
789
+ /**
790
+ * Class implementation of the `StringShortElement` interface.
791
+ *
792
+ * @remarks
793
+ * Short string primitive element.
794
+ * Supports plain text or compact chip pill presentation.
795
+ */
796
+ export declare class StringShortElementClass extends BaseUiElement<StringShortElement> implements StringShortElement {
797
+ /**
798
+ * The discriminator type tag.
799
+ *
800
+ * @defaultValue "string-short"
801
+ */
802
+ readonly type: "string-short";
803
+ /** Text value */
804
+ readonly value: string;
805
+ /**
806
+ * Display representation mode
807
+ *
808
+ * @defaultValue StringShortRepresentation.plain
809
+ */
810
+ readonly representation?: StringShortRepresentation;
811
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
812
+ readonly modifiers?: PrimitiveModifiers;
813
+ /**
814
+ * Initializes a new `StringShortElementClass` instance.
815
+ *
816
+ * @param value - Text value
817
+ * @param options - Optional property overrides (representation (defaults to `plain`), modifiers).
818
+ */
819
+ constructor(value: string, options?: {
820
+ representation?: StringShortRepresentation;
821
+ modifiers?: PrimitiveModifiers;
822
+ });
823
+ }
824
+ /**
825
+ * Class implementation of the `StringLongElement` interface.
826
+ *
827
+ * @remarks
828
+ * Multiline text block primitive element for descriptions, comments, or prose.
829
+ */
830
+ export declare class StringLongElementClass extends BaseUiElement<StringLongElement> implements StringLongElement {
831
+ /**
832
+ * The discriminator type tag.
833
+ *
834
+ * @defaultValue "string-long"
835
+ */
836
+ readonly type: "string-long";
837
+ /** Text value */
838
+ readonly value: string;
839
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
840
+ readonly modifiers?: PrimitiveModifiers;
841
+ /**
842
+ * Initializes a new `StringLongElementClass` instance.
843
+ *
844
+ * @param value - Text value
845
+ * @param options - Optional property overrides (modifiers).
846
+ */
847
+ constructor(value: string, options?: {
848
+ modifiers?: PrimitiveModifiers;
849
+ });
850
+ }
851
+ /**
852
+ * Class implementation of the `StringCodeElement` interface.
853
+ *
854
+ * @remarks
855
+ * Monospace code block or formatted code snippet representation.
856
+ */
857
+ export declare class StringCodeElementClass extends BaseUiElement<StringCodeElement> implements StringCodeElement {
858
+ /**
859
+ * The discriminator type tag.
860
+ *
861
+ * @defaultValue "string-code"
862
+ */
863
+ readonly type: "string-code";
864
+ /** Text value */
865
+ readonly value: string;
866
+ /** Optional syntax highlighting language identifier */
867
+ readonly language?: CodeLanguage;
868
+ /** Optional visual modifiers (copyable) */
869
+ readonly modifiers?: BaseModifiers;
870
+ /**
871
+ * Initializes a new `StringCodeElementClass` instance.
872
+ *
873
+ * @param value - Text value
874
+ * @param options - Optional property overrides (language, modifiers).
875
+ */
876
+ constructor(value: string, options?: {
877
+ language?: CodeLanguage;
878
+ modifiers?: BaseModifiers;
879
+ });
880
+ }
881
+ /**
882
+ * Class implementation of the `XmlElement` interface.
883
+ *
884
+ * @remarks
885
+ * XML markup code block element.
886
+ */
887
+ export declare class XmlElementClass extends BaseUiElement<XmlElement> implements XmlElement {
888
+ /**
889
+ * The discriminator type tag.
890
+ *
891
+ * @defaultValue "xml"
892
+ */
893
+ readonly type: "xml";
894
+ /** XML content value */
895
+ readonly value: string;
896
+ /** Optional visual modifiers (copyable) */
897
+ readonly modifiers?: BaseModifiers;
898
+ /**
899
+ * Initializes a new `XmlElementClass` instance.
900
+ *
901
+ * @param value - XML content value
902
+ * @param options - Optional property overrides (modifiers).
903
+ */
904
+ constructor(value: string, options?: {
905
+ modifiers?: BaseModifiers;
906
+ });
907
+ }
908
+ /**
909
+ * Class implementation of the `JsonElement` interface.
910
+ *
911
+ * @remarks
912
+ * JSON data or structure representation element.
913
+ */
914
+ export declare class JsonElementClass extends BaseUiElement<JsonElement> implements JsonElement {
915
+ /**
916
+ * The discriminator type tag.
917
+ *
918
+ * @defaultValue "json"
919
+ */
920
+ readonly type: "json";
921
+ /** JSON content value */
922
+ readonly value: string;
923
+ /** Optional visual modifiers (copyable) */
924
+ readonly modifiers?: BaseModifiers;
925
+ /**
926
+ * Initializes a new `JsonElementClass` instance.
927
+ *
928
+ * @param value - JSON content value
929
+ * @param options - Optional property overrides (modifiers).
930
+ */
931
+ constructor(value: string, options?: {
932
+ modifiers?: BaseModifiers;
933
+ });
934
+ }
935
+ /**
936
+ * Class implementation of the `StringUrlElement` interface.
937
+ *
938
+ * @remarks
939
+ * Hyperlink representation for external or internal URL navigation.
940
+ */
941
+ export declare class StringUrlElementClass extends BaseUiElement<StringUrlElement> implements StringUrlElement {
942
+ /**
943
+ * The discriminator type tag.
944
+ *
945
+ * @defaultValue "string-url"
946
+ */
947
+ readonly type: "string-url";
948
+ /** Target URL or navigation destination */
949
+ readonly value: string;
950
+ /** Optional custom anchor text label */
951
+ readonly label?: string;
952
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
953
+ readonly modifiers?: PrimitiveModifiers;
954
+ /**
955
+ * Initializes a new `StringUrlElementClass` instance.
956
+ *
957
+ * @param value - Target URL or navigation destination
958
+ * @param options - Optional property overrides (label, modifiers).
959
+ */
960
+ constructor(value: string, options?: {
961
+ label?: string;
962
+ modifiers?: PrimitiveModifiers;
963
+ });
964
+ }
965
+ /**
966
+ * Class implementation of the `IdentifierElement` interface.
967
+ *
968
+ * @remarks
969
+ * Monospace semantic identifier representation.
970
+ */
971
+ export declare class IdentifierElementClass extends BaseUiElement<IdentifierElement> implements IdentifierElement {
972
+ /**
973
+ * The discriminator type tag.
974
+ *
975
+ * @defaultValue "identifier"
976
+ */
977
+ readonly type: "identifier";
978
+ /** Identifier string value */
979
+ readonly value: string;
980
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
981
+ readonly modifiers?: PrimitiveModifiers;
982
+ /**
983
+ * Initializes a new `IdentifierElementClass` instance.
984
+ *
985
+ * @param value - Identifier string value
986
+ * @param options - Optional property overrides (modifiers).
987
+ */
988
+ constructor(value: string, options?: {
989
+ modifiers?: PrimitiveModifiers;
990
+ });
991
+ }
992
+ /**
993
+ * Class implementation of the `RatioElement` interface.
994
+ *
995
+ * @remarks
996
+ * Aspect ratio representation (e.g. "16:9", "4:3", "1:1").
997
+ */
998
+ export declare class RatioElementClass extends BaseUiElement<RatioElement> implements RatioElement {
999
+ /**
1000
+ * The discriminator type tag.
1001
+ *
1002
+ * @defaultValue "ratio"
1003
+ */
1004
+ readonly type: "ratio";
1005
+ /** Aspect ratio textual expression */
1006
+ readonly value: string;
1007
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
1008
+ readonly modifiers?: PrimitiveModifiers;
1009
+ /**
1010
+ * Initializes a new `RatioElementClass` instance.
1011
+ *
1012
+ * @param value - Aspect ratio textual expression
1013
+ * @param options - Optional property overrides (modifiers).
1014
+ */
1015
+ constructor(value: string, options?: {
1016
+ modifiers?: PrimitiveModifiers;
1017
+ });
1018
+ }
1019
+ /**
1020
+ * Class implementation of the `ColourElement` interface.
1021
+ *
1022
+ * @remarks
1023
+ * Single color swatch representation with hex value and copy affordance.
1024
+ */
1025
+ export declare class ColourElementClass extends BaseUiElement<ColourElement> implements ColourElement {
1026
+ /**
1027
+ * The discriminator type tag.
1028
+ *
1029
+ * @defaultValue "color-swatch"
1030
+ */
1031
+ readonly type: "color-swatch";
1032
+ /** Hexadecimal color code */
1033
+ readonly value: string;
1034
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
1035
+ readonly modifiers?: PrimitiveModifiers;
1036
+ /**
1037
+ * Initializes a new `ColourElementClass` instance.
1038
+ *
1039
+ * @param value - Hexadecimal color code
1040
+ * @param options - Optional property overrides (modifiers).
1041
+ */
1042
+ constructor(value: string, options?: {
1043
+ modifiers?: PrimitiveModifiers;
1044
+ });
1045
+ }
1046
+ /**
1047
+ * Class implementation of the `NumberUnboundedElement` interface.
1048
+ *
1049
+ * @remarks
1050
+ * Plain unbounded numeric value primitive element.
1051
+ */
1052
+ export declare class NumberUnboundedElementClass extends BaseUiElement<NumberUnboundedElement> implements NumberUnboundedElement {
1053
+ /**
1054
+ * The discriminator type tag.
1055
+ *
1056
+ * @defaultValue "number-unbounded"
1057
+ */
1058
+ readonly type: "number-unbounded";
1059
+ /** Numeric value */
1060
+ readonly value: number;
1061
+ /** Optional unit suffix (e.g. "px", "ms", "MB") */
1062
+ readonly unit?: string;
1063
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
1064
+ readonly modifiers?: PrimitiveModifiers;
1065
+ /**
1066
+ * Initializes a new `NumberUnboundedElementClass` instance.
1067
+ *
1068
+ * @param value - Numeric value
1069
+ * @param options - Optional property overrides (unit, modifiers).
1070
+ */
1071
+ constructor(value: number, options?: {
1072
+ unit?: string;
1073
+ modifiers?: PrimitiveModifiers;
1074
+ });
1075
+ }
1076
+ /**
1077
+ * Class implementation of the `NumberBoundedStarsElement` interface.
1078
+ *
1079
+ * @remarks
1080
+ * Bounded numeric rating represented as visual stars.
1081
+ */
1082
+ export declare class NumberBoundedStarsElementClass extends BaseUiElement<NumberBoundedStarsElement> implements NumberBoundedStarsElement {
1083
+ /**
1084
+ * The discriminator type tag.
1085
+ *
1086
+ * @defaultValue "number-stars"
1087
+ */
1088
+ readonly type: "number-stars";
1089
+ /** Numeric rating score */
1090
+ readonly value: number;
1091
+ /** Maximum rating scale (defaults to 5) */
1092
+ readonly maximum?: number;
1093
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
1094
+ readonly modifiers?: PrimitiveModifiers;
1095
+ /**
1096
+ * Initializes a new `NumberBoundedStarsElementClass` instance.
1097
+ *
1098
+ * @param value - Numeric rating score
1099
+ * @param options - Optional property overrides (maximum, modifiers).
1100
+ */
1101
+ constructor(value: number, options?: {
1102
+ maximum?: number;
1103
+ modifiers?: PrimitiveModifiers;
1104
+ });
1105
+ }
1106
+ /**
1107
+ * Class implementation of the `NumberBoundedMeterElement` interface.
1108
+ *
1109
+ * @remarks
1110
+ * Bounded numeric meter representation (read-only progress / score bar).
1111
+ */
1112
+ export declare class NumberBoundedMeterElementClass extends BaseUiElement<NumberBoundedMeterElement> implements NumberBoundedMeterElement {
1113
+ /**
1114
+ * The discriminator type tag.
1115
+ *
1116
+ * @defaultValue "number-meter"
1117
+ */
1118
+ readonly type: "number-meter";
1119
+ /** Numeric value */
1120
+ readonly value: number;
1121
+ /** Minimum scale bound (defaults to 0) */
1122
+ readonly minimum?: number;
1123
+ /** Maximum scale bound (e.g. 100) */
1124
+ readonly maximum?: number;
1125
+ /** Optional custom text label override (e.g. "68 / 100") */
1126
+ readonly label?: string;
1127
+ /** Optional unit suffix (e.g. "%") */
1128
+ readonly unit?: string;
1129
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
1130
+ readonly modifiers?: PrimitiveModifiers;
1131
+ /**
1132
+ * Initializes a new `NumberBoundedMeterElementClass` instance.
1133
+ *
1134
+ * @param value - Numeric value
1135
+ * @param options - Optional property overrides (minimum, maximum, label, unit, modifiers).
1136
+ */
1137
+ constructor(value: number, options?: {
1138
+ minimum?: number;
1139
+ maximum?: number;
1140
+ label?: string;
1141
+ unit?: string;
1142
+ modifiers?: PrimitiveModifiers;
1143
+ });
1144
+ }
1145
+ /**
1146
+ * Class implementation of the `BooleanPlainElement` interface.
1147
+ *
1148
+ * @remarks
1149
+ * Plain boolean value representation (textual "true" / "false").
1150
+ */
1151
+ export declare class BooleanPlainElementClass extends BaseUiElement<BooleanPlainElement> implements BooleanPlainElement {
1152
+ /**
1153
+ * The discriminator type tag.
1154
+ *
1155
+ * @defaultValue "boolean-plain"
1156
+ */
1157
+ readonly type: "boolean-plain";
1158
+ /** Boolean state value */
1159
+ readonly value: boolean;
1160
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
1161
+ readonly modifiers?: PrimitiveModifiers;
1162
+ /**
1163
+ * Initializes a new `BooleanPlainElementClass` instance.
1164
+ *
1165
+ * @param value - Boolean state value
1166
+ * @param options - Optional property overrides (modifiers).
1167
+ */
1168
+ constructor(value: boolean, options?: {
1169
+ modifiers?: PrimitiveModifiers;
1170
+ });
1171
+ }
1172
+ /**
1173
+ * Class implementation of the `BooleanBadgeElement` interface.
1174
+ *
1175
+ * @remarks
1176
+ * Visual badge pill representation of a boolean state.
1177
+ */
1178
+ export declare class BooleanBadgeElementClass extends BaseUiElement<BooleanBadgeElement> implements BooleanBadgeElement {
1179
+ /**
1180
+ * The discriminator type tag.
1181
+ *
1182
+ * @defaultValue "boolean-badge"
1183
+ */
1184
+ readonly type: "boolean-badge";
1185
+ /** Boolean state value */
1186
+ readonly value: boolean;
1187
+ /**
1188
+ * Custom display label when true (defaults to "true")
1189
+ *
1190
+ * @defaultValue "true"
1191
+ */
1192
+ readonly trueLabel?: string;
1193
+ /**
1194
+ * Custom display label when false (defaults to "false")
1195
+ *
1196
+ * @defaultValue "false"
1197
+ */
1198
+ readonly falseLabel?: string;
1199
+ /**
1200
+ * Badge color tone
1201
+ *
1202
+ * @defaultValue BadgeVariant.neutral
1203
+ */
1204
+ readonly variant?: BadgeVariant;
1205
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
1206
+ readonly modifiers?: PrimitiveModifiers;
1207
+ /**
1208
+ * Initializes a new `BooleanBadgeElementClass` instance.
1209
+ *
1210
+ * @param value - Boolean state value
1211
+ * @param options - Optional property overrides (trueLabel (defaults to `true`), falseLabel (defaults to `false`), variant (defaults to `neutral`), modifiers).
1212
+ */
1213
+ constructor(value: boolean, options?: {
1214
+ trueLabel?: string;
1215
+ falseLabel?: string;
1216
+ variant?: BadgeVariant;
1217
+ modifiers?: PrimitiveModifiers;
1218
+ });
1219
+ }
1220
+ /**
1221
+ * Class implementation of the `TimestampElement` interface.
1222
+ *
1223
+ * @remarks
1224
+ * Formatted date and time representation.
1225
+ */
1226
+ export declare class TimestampElementClass extends BaseUiElement<TimestampElement> implements TimestampElement {
1227
+ /**
1228
+ * The discriminator type tag.
1229
+ *
1230
+ * @defaultValue "timestamp"
1231
+ */
1232
+ readonly type: "timestamp";
1233
+ /** ISO 8601 date string or epoch timestamp in milliseconds */
1234
+ readonly value: string;
1235
+ /**
1236
+ * Presentation date/time format
1237
+ *
1238
+ * @defaultValue TimestampFormat.full
1239
+ */
1240
+ readonly format?: TimestampFormat;
1241
+ /** Optional visual modifiers (copyable, truncate, emphasis, monospace) */
1242
+ readonly modifiers?: PrimitiveModifiers;
1243
+ /**
1244
+ * Initializes a new `TimestampElementClass` instance.
1245
+ *
1246
+ * @param value - ISO 8601 date string or epoch timestamp in milliseconds
1247
+ * @param options - Optional property overrides (format (defaults to `full`), modifiers).
1248
+ */
1249
+ constructor(value: string, options?: {
1250
+ format?: TimestampFormat;
1251
+ modifiers?: PrimitiveModifiers;
1252
+ });
1253
+ }
1254
+ /**
1255
+ * Class implementation of the `ImageReferenceElement` interface.
1256
+ *
1257
+ * @remarks
1258
+ * Thumbnail image reference with placeholder fallback handling.
1259
+ */
1260
+ export declare class ImageReferenceElementClass extends BaseUiElement<ImageReferenceElement> implements ImageReferenceElement {
1261
+ /**
1262
+ * The discriminator type tag.
1263
+ *
1264
+ * @defaultValue "image-ref"
1265
+ */
1266
+ readonly type: "image-ref";
1267
+ /** Image source URI (HTTPS URL, base64 data URI, or asset path) */
1268
+ readonly src: string;
1269
+ /** Accessible alternative description */
1270
+ readonly alt?: string;
1271
+ /**
1272
+ * Aspect ratio of the thumbnail container
1273
+ *
1274
+ * @defaultValue "1:1"
1275
+ */
1276
+ readonly aspectRatio?: string;
1277
+ /** Fallback placeholder image URI */
1278
+ readonly placeholder?: string;
1279
+ /**
1280
+ * Initializes a new `ImageReferenceElementClass` instance.
1281
+ *
1282
+ * @param src - Image source URI (HTTPS URL, base64 data URI, or asset path)
1283
+ * @param options - Optional property overrides (alt, aspectRatio (defaults to `1:1`), placeholder).
1284
+ */
1285
+ constructor(src: string, options?: {
1286
+ alt?: string;
1287
+ aspectRatio?: string;
1288
+ placeholder?: string;
1289
+ });
1290
+ }
1291
+ /**
1292
+ * Class implementation of the `DominantColourSetElement` interface.
1293
+ *
1294
+ * @remarks
1295
+ * Dominant color set palette rendered in descending dominance order.
1296
+ */
1297
+ export declare class DominantColourSetElementClass extends BaseUiElement<DominantColourSetElement> implements DominantColourSetElement {
1298
+ /**
1299
+ * The discriminator type tag.
1300
+ *
1301
+ * @defaultValue "color-set"
1302
+ */
1303
+ readonly type: "color-set";
1304
+ /** List of hexadecimal color strings in descending priority */
1305
+ readonly colors: string[];
1306
+ /**
1307
+ * Initializes a new `DominantColourSetElementClass` instance.
1308
+ *
1309
+ * @param colors - List of hexadecimal color strings in descending priority
1310
+ */
1311
+ constructor(colors: string[]);
1312
+ }
1313
+ /**
1314
+ * Class implementation of the `ButtonActionElement` interface.
1315
+ *
1316
+ * @remarks
1317
+ * Interactive button action triggering an extension command.
1318
+ */
1319
+ export declare class ButtonActionElementClass extends BaseUiAction<ButtonActionElement> implements ButtonActionElement {
1320
+ /**
1321
+ * The discriminator type tag.
1322
+ *
1323
+ * @defaultValue "button"
1324
+ */
1325
+ readonly type: "button";
1326
+ /** Command identifier to invoke */
1327
+ readonly commandId: string;
1328
+ /** Display label for the action */
1329
+ readonly label: string;
1330
+ /** Extension identifier owning the target command */
1331
+ readonly extensionId?: string;
1332
+ /** Target entity or context identifier */
1333
+ readonly target?: string;
1334
+ /** Optional arbitrary parameters payload forwarded to the command handler */
1335
+ readonly parameters?: Record<string, unknown>;
1336
+ /**
1337
+ * Whether the button is disabled / unavailable
1338
+ *
1339
+ * @defaultValue false
1340
+ */
1341
+ readonly disabled?: boolean;
1342
+ /**
1343
+ * Button visual style variant
1344
+ *
1345
+ * @defaultValue ButtonVariant.secondary
1346
+ */
1347
+ readonly variant?: ButtonVariant;
1348
+ /**
1349
+ * Initializes a new `ButtonActionElementClass` instance.
1350
+ *
1351
+ * @param commandId - Command identifier to invoke
1352
+ * @param label - Display label for the action
1353
+ * @param options - Optional property overrides (extensionId, target, parameters, disabled (defaults to `false`), variant (defaults to `secondary`)).
1354
+ */
1355
+ constructor(commandId: string, label: string, options?: {
1356
+ extensionId?: string;
1357
+ target?: string;
1358
+ parameters?: Record<string, unknown>;
1359
+ disabled?: boolean;
1360
+ variant?: ButtonVariant;
1361
+ });
1362
+ }
1363
+ /**
1364
+ * Class implementation of the `ExternalLinkActionElement` interface.
1365
+ *
1366
+ * @remarks
1367
+ * External link action distinct from inline URL text values.
1368
+ */
1369
+ export declare class ExternalLinkActionElementClass extends BaseUiAction<ExternalLinkActionElement> implements ExternalLinkActionElement {
1370
+ /**
1371
+ * The discriminator type tag.
1372
+ *
1373
+ * @defaultValue "external-link"
1374
+ */
1375
+ readonly type: "external-link";
1376
+ /** Target URL destination */
1377
+ readonly url: string;
1378
+ /** Display label for the action */
1379
+ readonly label: string;
1380
+ /**
1381
+ * Initializes a new `ExternalLinkActionElementClass` instance.
1382
+ *
1383
+ * @param url - Target URL destination
1384
+ * @param label - Display label for the action
1385
+ */
1386
+ constructor(url: string, label: string);
1387
+ }
1388
+ /**
1389
+ * Class implementation of the `MarkdownBlockElement` interface.
1390
+ *
1391
+ * @remarks
1392
+ * Full Markdown fallback block rendered with core typographic hierarchy, spacing, and styling.
1393
+ */
1394
+ export declare class MarkdownBlockElementClass extends BaseUiElement<MarkdownBlockElement> implements MarkdownBlockElement {
1395
+ /**
1396
+ * The discriminator type tag.
1397
+ *
1398
+ * @defaultValue "markdown"
1399
+ */
1400
+ readonly type: "markdown";
1401
+ /** Raw Markdown markup content */
1402
+ readonly content: string;
1403
+ /** Optional visual modifiers (copyable) */
1404
+ readonly modifiers?: BaseModifiers;
1405
+ /**
1406
+ * Initializes a new `MarkdownBlockElementClass` instance.
1407
+ *
1408
+ * @param content - Raw Markdown markup content
1409
+ * @param options - Optional property overrides (modifiers).
1410
+ */
1411
+ constructor(content: string, options?: {
1412
+ modifiers?: BaseModifiers;
1413
+ });
1414
+ }
1415
+ /**
1416
+ * Class implementation of the `HtmlBlockElement` interface.
1417
+ *
1418
+ * @remarks
1419
+ * Sandboxed HTML rendering escape hatch.
1420
+ */
1421
+ export declare class HtmlBlockElementClass extends BaseUiElement<HtmlBlockElement> implements HtmlBlockElement {
1422
+ /**
1423
+ * The discriminator type tag.
1424
+ *
1425
+ * @defaultValue "html"
1426
+ */
1427
+ readonly type: "html";
1428
+ /** Raw HTML markup content */
1429
+ readonly content: string;
1430
+ /** Optional visual modifiers (copyable) */
1431
+ readonly modifiers?: BaseModifiers;
1432
+ /**
1433
+ * Initializes a new `HtmlBlockElementClass` instance.
1434
+ *
1435
+ * @param content - Raw HTML markup content
1436
+ * @param options - Optional property overrides (modifiers).
1437
+ */
1438
+ constructor(content: string, options?: {
1439
+ modifiers?: BaseModifiers;
1440
+ });
1441
+ }
1442
+ /**
1443
+ * Class implementation of the `Slot` interface.
1444
+ *
1445
+ * @remarks
1446
+ * Single slot within a multi-slot horizontal row layout.
1447
+ */
1448
+ export declare class SlotClass extends GrammarNode<Slot> implements Slot {
1449
+ /** Rendered content inside the slot */
1450
+ readonly content: UiElement;
1451
+ /** Optional slot label (e.g. "Slot A") */
1452
+ readonly label?: string;
1453
+ /** Relative or fractional width proportion (e.g. "1/3", "2/3", "100px", "auto") */
1454
+ readonly width?: string;
1455
+ /**
1456
+ * Initializes a new `SlotClass` instance.
1457
+ *
1458
+ * @param content - Rendered content inside the slot
1459
+ * @param options - Optional property overrides (label, width).
1460
+ */
1461
+ constructor(content: UiElement, options?: {
1462
+ label?: string;
1463
+ width?: string;
1464
+ });
1465
+ }
1466
+ /**
1467
+ * Class implementation of the `MultiSlotRowElement` interface.
1468
+ *
1469
+ * @remarks
1470
+ * Multi-slot horizontal row with declared column width proportions.
1471
+ * Examples: "1/3 + 2/3", "equal thirds", "1/4 + 3/4".
1472
+ */
1473
+ export declare class MultiSlotRowElementClass extends BaseUiElement<MultiSlotRowElement> implements MultiSlotRowElement {
1474
+ /**
1475
+ * The discriminator type tag.
1476
+ *
1477
+ * @defaultValue "multi-slot"
1478
+ */
1479
+ readonly type: "multi-slot";
1480
+ /** List of slots comprising the row */
1481
+ readonly slots: Slot[];
1482
+ /** Proportions descriptor (e.g. "1/3 + 2/3", "equal", "1/4 + 3/4") */
1483
+ readonly proportions?: string;
1484
+ /**
1485
+ * Initializes a new `MultiSlotRowElementClass` instance.
1486
+ *
1487
+ * @param slots - List of slots comprising the row
1488
+ * @param options - Optional property overrides (proportions).
1489
+ */
1490
+ constructor(slots: Slot[], options?: {
1491
+ proportions?: string;
1492
+ });
1493
+ }
1494
+ /**
1495
+ * Class implementation of the `LabelValueRowElement` interface.
1496
+ *
1497
+ * @remarks
1498
+ * Standard label and value row.
1499
+ * Displays a muted label on the left and value representation on the right with a vertical dividing line.
1500
+ */
1501
+ export declare class LabelValueRowElementClass extends BaseUiElement<LabelValueRowElement> implements LabelValueRowElement {
1502
+ /**
1503
+ * The discriminator type tag.
1504
+ *
1505
+ * @defaultValue "label-value"
1506
+ */
1507
+ readonly type: "label-value";
1508
+ /** Key or descriptive label displayed muted on the left */
1509
+ readonly label: string;
1510
+ /** Rendered value element on the right */
1511
+ readonly value: UiElement;
1512
+ /**
1513
+ * Whether to render a bottom border/hairline divider
1514
+ *
1515
+ * @defaultValue false
1516
+ */
1517
+ readonly withDivider?: boolean;
1518
+ /**
1519
+ * Initializes a new `LabelValueRowElementClass` instance.
1520
+ *
1521
+ * @param label - Key or descriptive label displayed muted on the left
1522
+ * @param value - Rendered value element on the right
1523
+ * @param options - Optional property overrides (withDivider (defaults to `false`)).
1524
+ */
1525
+ constructor(label: string, value: UiElement, options?: {
1526
+ withDivider?: boolean;
1527
+ });
1528
+ }
1529
+ /**
1530
+ * Class implementation of the `TableColumn` interface.
1531
+ *
1532
+ * @remarks
1533
+ * Column definition for structured tables.
1534
+ */
1535
+ export declare class TableColumnClass extends GrammarNode<TableColumn> implements TableColumn {
1536
+ /** Display header text */
1537
+ readonly header?: string;
1538
+ /**
1539
+ * Text horizontal alignment
1540
+ *
1541
+ * @defaultValue TableColumnAlign.left
1542
+ */
1543
+ readonly align?: TableColumnAlign;
1544
+ /** Optional width constraint */
1545
+ readonly width?: string;
1546
+ /**
1547
+ * Initializes a new `TableColumnClass` instance.
1548
+ *
1549
+ * @param options - Optional property overrides (header, align (defaults to `left`), width).
1550
+ */
1551
+ constructor(options?: {
1552
+ header?: string;
1553
+ align?: TableColumnAlign;
1554
+ width?: string;
1555
+ });
1556
+ }
1557
+ /**
1558
+ * Class implementation of the `TableRow` interface.
1559
+ *
1560
+ * @remarks
1561
+ * Single table row containing an array of cell values.
1562
+ */
1563
+ export declare class TableRowClass extends GrammarNode<TableRow> implements TableRow {
1564
+ /** Array of cell values corresponding to table columns */
1565
+ readonly cells: UiElement[];
1566
+ /**
1567
+ * Initializes a new `TableRowClass` instance.
1568
+ *
1569
+ * @param cells - Array of cell values corresponding to table columns
1570
+ */
1571
+ constructor(cells: UiElement[]);
1572
+ }
1573
+ /**
1574
+ * Class implementation of the `TableElement` interface.
1575
+ *
1576
+ * @remarks
1577
+ * Structured tabular data representation.
1578
+ * Supports header/borderless modes, 2-column key-value tables, and 3-column data tables.
1579
+ */
1580
+ export declare class TableElementClass extends BaseUiElement<TableElement> implements TableElement {
1581
+ /**
1582
+ * The discriminator type tag.
1583
+ *
1584
+ * @defaultValue "table"
1585
+ */
1586
+ readonly type: "table";
1587
+ /** Tabular data rows */
1588
+ readonly rows: TableRow[];
1589
+ /**
1590
+ * Whether to render a column header row
1591
+ *
1592
+ * @defaultValue true
1593
+ */
1594
+ readonly hasHeader?: boolean;
1595
+ /**
1596
+ * Whether to render alternating row background colors
1597
+ *
1598
+ * @defaultValue false
1599
+ */
1600
+ readonly isStriped?: boolean;
1601
+ /**
1602
+ * Whether to render vertical column separators
1603
+ *
1604
+ * @defaultValue false
1605
+ */
1606
+ readonly withColumnSeparators?: boolean;
1607
+ /**
1608
+ * Whether to render horizontal row separators
1609
+ *
1610
+ * @defaultValue false
1611
+ */
1612
+ readonly withRowSeparators?: boolean;
1613
+ /** Optional explicit column definitions */
1614
+ readonly columns?: TableColumn[];
1615
+ /**
1616
+ * Initializes a new `TableElementClass` instance.
1617
+ *
1618
+ * @param rows - Tabular data rows
1619
+ * @param options - Optional property overrides (hasHeader (defaults to `true`), isStriped (defaults to `false`), withColumnSeparators (defaults to `false`), withRowSeparators (defaults to `false`), columns).
1620
+ */
1621
+ constructor(rows: TableRow[], options?: {
1622
+ hasHeader?: boolean;
1623
+ isStriped?: boolean;
1624
+ withColumnSeparators?: boolean;
1625
+ withRowSeparators?: boolean;
1626
+ columns?: TableColumn[];
1627
+ });
1628
+ }
1629
+ /**
1630
+ * Class implementation of the `RepeatingGroupEntry` interface.
1631
+ *
1632
+ * @remarks
1633
+ * Single entry within a repeating group.
1634
+ */
1635
+ export declare class RepeatingGroupEntryClass extends GrammarNode<RepeatingGroupEntry> implements RepeatingGroupEntry {
1636
+ /** Entry label */
1637
+ readonly label: string;
1638
+ /** Primary entry value or nested elements */
1639
+ readonly value?: UiElement;
1640
+ /** Nested elements for structured entries */
1641
+ readonly elements?: UiElement[];
1642
+ /**
1643
+ * Initializes a new `RepeatingGroupEntryClass` instance.
1644
+ *
1645
+ * @param label - Entry label
1646
+ * @param options - Optional property overrides (value, elements).
1647
+ */
1648
+ constructor(label: string, options?: {
1649
+ value?: UiElement;
1650
+ elements?: UiElement[];
1651
+ });
1652
+ }
1653
+ /**
1654
+ * Class implementation of the `RepeatingGroupElement` interface.
1655
+ *
1656
+ * @remarks
1657
+ * Repeating group container where entries share uniform structure and retain per-entry labels.
1658
+ */
1659
+ export declare class RepeatingGroupElementClass extends BaseUiElement<RepeatingGroupElement> implements RepeatingGroupElement {
1660
+ /**
1661
+ * The discriminator type tag.
1662
+ *
1663
+ * @defaultValue "repeating-group"
1664
+ */
1665
+ readonly type: "repeating-group";
1666
+ /** List of repeated entry records */
1667
+ readonly entries: RepeatingGroupEntry[];
1668
+ /** Optional section header for the group */
1669
+ readonly title?: string;
1670
+ /**
1671
+ * Initializes a new `RepeatingGroupElementClass` instance.
1672
+ *
1673
+ * @param entries - List of repeated entry records
1674
+ * @param options - Optional property overrides (title).
1675
+ */
1676
+ constructor(entries: RepeatingGroupEntry[], options?: {
1677
+ title?: string;
1678
+ });
1679
+ }
1680
+ /**
1681
+ * Class implementation of the `CollapsibleGroupElement` interface.
1682
+ *
1683
+ * @remarks
1684
+ * Collapsible disclosure container (accordion) with summary badge.
1685
+ */
1686
+ export declare class CollapsibleGroupElementClass extends BaseUiElement<CollapsibleGroupElement> implements CollapsibleGroupElement {
1687
+ /**
1688
+ * The discriminator type tag.
1689
+ *
1690
+ * @defaultValue "collapsible-group"
1691
+ */
1692
+ readonly type: "collapsible-group";
1693
+ /** Group title (e.g. "Show specimen details") */
1694
+ readonly title: string;
1695
+ /** Nested content elements revealed when expanded */
1696
+ readonly elements: UiElement[];
1697
+ /** Secondary summary indicator (e.g. "2 neutral values") */
1698
+ readonly summary?: string;
1699
+ /**
1700
+ * Whether the disclosure is open/expanded by default
1701
+ *
1702
+ * @defaultValue false
1703
+ */
1704
+ readonly defaultExpanded?: boolean;
1705
+ /**
1706
+ * Initializes a new `CollapsibleGroupElementClass` instance.
1707
+ *
1708
+ * @param title - Group title (e.g. "Show specimen details")
1709
+ * @param elements - Nested content elements revealed when expanded
1710
+ * @param options - Optional property overrides (summary, defaultExpanded (defaults to `false`)).
1711
+ */
1712
+ constructor(title: string, elements: UiElement[], options?: {
1713
+ summary?: string;
1714
+ defaultExpanded?: boolean;
1715
+ });
1716
+ }
1717
+ /**
1718
+ * Class implementation of the `DividerElement` interface.
1719
+ *
1720
+ * @remarks
1721
+ * Visual hairline separator separating sections or element groups.
1722
+ */
1723
+ export declare class DividerElementClass extends BaseUiElement<DividerElement> implements DividerElement {
1724
+ /**
1725
+ * The discriminator type tag.
1726
+ *
1727
+ * @defaultValue "divider"
1728
+ */
1729
+ readonly type: "divider";
1730
+ /**
1731
+ * Line styling
1732
+ *
1733
+ * @defaultValue DividerStyle.hairline
1734
+ */
1735
+ readonly style?: DividerStyle;
1736
+ /**
1737
+ * Initializes a new `DividerElementClass` instance.
1738
+ *
1739
+ * @param options - Optional property overrides (style (defaults to `hairline`)).
1740
+ */
1741
+ constructor(options?: {
1742
+ style?: DividerStyle;
1743
+ });
1744
+ }
1745
+ /**
1746
+ * Class implementation of the `Envelop` interface.
1747
+ *
1748
+ * @remarks
1749
+ * Base envelope container model holding the schema version attribute.
1750
+ */
1751
+ export declare class EnvelopClass extends GrammarNode<Envelop> implements Envelop {
1752
+ /**
1753
+ * Schema specification version
1754
+ *
1755
+ * @defaultValue "1.0"
1756
+ */
1757
+ readonly schemaVersion: "1.0";
1758
+ /**
1759
+ * Initializes a new `EnvelopClass` instance.
1760
+ *
1761
+ * @param options - Optional property overrides (schemaVersion (defaults to `1.0`)).
1762
+ */
1763
+ constructor(options?: {
1764
+ schemaVersion?: "1.0";
1765
+ });
1766
+ }
1767
+ /**
1768
+ * Class implementation of the `UiContainer` interface.
1769
+ *
1770
+ * @remarks
1771
+ * Container model representing an ordered list of visual elements.
1772
+ */
1773
+ export declare class UiContainerClass extends GrammarNode<UiContainer> implements UiContainer {
1774
+ /** Ordered list of visual elements, structures, and content */
1775
+ readonly elements: UiElement[];
1776
+ /**
1777
+ * Schema specification version
1778
+ *
1779
+ * @defaultValue "1.0"
1780
+ */
1781
+ readonly schemaVersion: "1.0";
1782
+ /**
1783
+ * Initializes a new `UiContainerClass` instance.
1784
+ *
1785
+ * @param elements - Ordered list of visual elements, structures, and content
1786
+ * @param options - Optional property overrides (schemaVersion (defaults to `1.0`)).
1787
+ */
1788
+ constructor(elements: UiElement[], options?: {
1789
+ schemaVersion?: "1.0";
1790
+ });
1791
+ }
1792
+ /**
1793
+ * Class implementation of the `UiCard` interface.
1794
+ *
1795
+ * @remarks
1796
+ * Root Card container model.
1797
+ * Represents a complete feature card rendered inside the 360px panel.
1798
+ */
1799
+ export declare class UiCardClass extends GrammarNode<UiCard> implements UiCard {
1800
+ /** Human-readable feature title displayed in the card header */
1801
+ readonly title: string;
1802
+ /** Ordered list of visual elements, structures, and content */
1803
+ readonly elements: UiElement[];
1804
+ /** Optional neutral subtitle / description for the feature */
1805
+ readonly description?: string;
1806
+ /** Optional card action buttons rendered at the base of the feature card */
1807
+ readonly actions?: UiAction[];
1808
+ /**
1809
+ * Schema specification version
1810
+ *
1811
+ * @defaultValue "1.0"
1812
+ */
1813
+ readonly schemaVersion: "1.0";
1814
+ /**
1815
+ * Initializes a new `UiCardClass` instance.
1816
+ *
1817
+ * @param title - Human-readable feature title displayed in the card header
1818
+ * @param elements - Ordered list of visual elements, structures, and content
1819
+ * @param options - Optional property overrides (description, actions, schemaVersion (defaults to `1.0`)).
1820
+ */
1821
+ constructor(title: string, elements: UiElement[], options?: {
1822
+ description?: string;
1823
+ actions?: UiAction[];
1824
+ schemaVersion?: "1.0";
1825
+ });
1826
+ }
1827
+ /**
1828
+ * Fluent builder for constructing strongly-typed `UiContainer` instances.
1829
+ *
1830
+ * @remarks
1831
+ * Container model representing an ordered list of visual elements.
1832
+ */
1833
+ export declare class UiContainerBuilder {
1834
+ private readonly _elements;
1835
+ /** Initializes a new `UiContainerBuilder`. */
1836
+ constructor();
1837
+ /**
1838
+ * Appends a visual element.
1839
+ *
1840
+ * @param element - The visual UI element component to add.
1841
+ * @returns This builder instance for method chaining.
1842
+ */
1843
+ add(element: UiElement): this;
1844
+ /**
1845
+ * Appends multiple elements items.
1846
+ *
1847
+ * @param items - The `UiElement` items to add.
1848
+ * @returns This builder instance for method chaining.
1849
+ */
1850
+ addElements(...items: UiElement[]): this;
1851
+ /**
1852
+ * Appends a `StringShortElement` component.
1853
+ *
1854
+ * @remarks
1855
+ * Short string primitive element.
1856
+ * Supports plain text or compact chip pill presentation.
1857
+ *
1858
+ * @param value - Text value
1859
+ * @param options - Optional component settings (representation (defaults to `plain`), modifiers).
1860
+ * @returns This builder instance for method chaining.
1861
+ */
1862
+ addStringShort(value: string, options?: {
1863
+ representation?: StringShortRepresentation;
1864
+ modifiers?: PrimitiveModifiers;
1865
+ }): this;
1866
+ /**
1867
+ * Appends a `StringLongElement` component.
1868
+ *
1869
+ * @remarks
1870
+ * Multiline text block primitive element for descriptions, comments, or prose.
1871
+ *
1872
+ * @param value - Text value
1873
+ * @param options - Optional component settings (modifiers).
1874
+ * @returns This builder instance for method chaining.
1875
+ */
1876
+ addStringLong(value: string, options?: {
1877
+ modifiers?: PrimitiveModifiers;
1878
+ }): this;
1879
+ /**
1880
+ * Appends a `StringCodeElement` component.
1881
+ *
1882
+ * @remarks
1883
+ * Monospace code block or formatted code snippet representation.
1884
+ *
1885
+ * @param value - Text value
1886
+ * @param options - Optional component settings (language, modifiers).
1887
+ * @returns This builder instance for method chaining.
1888
+ */
1889
+ addStringCode(value: string, options?: {
1890
+ language?: CodeLanguage;
1891
+ modifiers?: BaseModifiers;
1892
+ }): this;
1893
+ /**
1894
+ * Appends a `XmlElement` component.
1895
+ *
1896
+ * @remarks
1897
+ * XML markup code block element.
1898
+ *
1899
+ * @param value - XML content value
1900
+ * @param options - Optional component settings (modifiers).
1901
+ * @returns This builder instance for method chaining.
1902
+ */
1903
+ addXml(value: string, options?: {
1904
+ modifiers?: BaseModifiers;
1905
+ }): this;
1906
+ /**
1907
+ * Appends a `JsonElement` component.
1908
+ *
1909
+ * @remarks
1910
+ * JSON data or structure representation element.
1911
+ *
1912
+ * @param value - JSON content value
1913
+ * @param options - Optional component settings (modifiers).
1914
+ * @returns This builder instance for method chaining.
1915
+ */
1916
+ addJson(value: string, options?: {
1917
+ modifiers?: BaseModifiers;
1918
+ }): this;
1919
+ /**
1920
+ * Appends a `StringUrlElement` component.
1921
+ *
1922
+ * @remarks
1923
+ * Hyperlink representation for external or internal URL navigation.
1924
+ *
1925
+ * @param value - Target URL or navigation destination
1926
+ * @param options - Optional component settings (label, modifiers).
1927
+ * @returns This builder instance for method chaining.
1928
+ */
1929
+ addStringUrl(value: string, options?: {
1930
+ label?: string;
1931
+ modifiers?: PrimitiveModifiers;
1932
+ }): this;
1933
+ /**
1934
+ * Appends a `IdentifierElement` component.
1935
+ *
1936
+ * @remarks
1937
+ * Monospace semantic identifier representation.
1938
+ *
1939
+ * @param value - Identifier string value
1940
+ * @param options - Optional component settings (modifiers).
1941
+ * @returns This builder instance for method chaining.
1942
+ */
1943
+ addIdentifier(value: string, options?: {
1944
+ modifiers?: PrimitiveModifiers;
1945
+ }): this;
1946
+ /**
1947
+ * Appends a `RatioElement` component.
1948
+ *
1949
+ * @remarks
1950
+ * Aspect ratio representation (e.g. "16:9", "4:3", "1:1").
1951
+ *
1952
+ * @param value - Aspect ratio textual expression
1953
+ * @param options - Optional component settings (modifiers).
1954
+ * @returns This builder instance for method chaining.
1955
+ */
1956
+ addRatio(value: string, options?: {
1957
+ modifiers?: PrimitiveModifiers;
1958
+ }): this;
1959
+ /**
1960
+ * Appends a `ColourElement` component.
1961
+ *
1962
+ * @remarks
1963
+ * Single color swatch representation with hex value and copy affordance.
1964
+ *
1965
+ * @param value - Hexadecimal color code
1966
+ * @param options - Optional component settings (modifiers).
1967
+ * @returns This builder instance for method chaining.
1968
+ */
1969
+ addColour(value: string, options?: {
1970
+ modifiers?: PrimitiveModifiers;
1971
+ }): this;
1972
+ /**
1973
+ * Appends a `ColourElement` component.
1974
+ *
1975
+ * @remarks
1976
+ * Single color swatch representation with hex value and copy affordance.
1977
+ *
1978
+ * @param value - Hexadecimal color code
1979
+ * @param options - Optional component settings (modifiers).
1980
+ * @returns This builder instance for method chaining.
1981
+ */
1982
+ addColorSwatch(value: string, options?: {
1983
+ modifiers?: PrimitiveModifiers;
1984
+ }): this;
1985
+ /**
1986
+ * Appends a `NumberUnboundedElement` component.
1987
+ *
1988
+ * @remarks
1989
+ * Plain unbounded numeric value primitive element.
1990
+ *
1991
+ * @param value - Numeric value
1992
+ * @param options - Optional component settings (unit, modifiers).
1993
+ * @returns This builder instance for method chaining.
1994
+ */
1995
+ addNumberUnbounded(value: number, options?: {
1996
+ unit?: string;
1997
+ modifiers?: PrimitiveModifiers;
1998
+ }): this;
1999
+ /**
2000
+ * Appends a `NumberBoundedStarsElement` component.
2001
+ *
2002
+ * @remarks
2003
+ * Bounded numeric rating represented as visual stars.
2004
+ *
2005
+ * @param value - Numeric rating score
2006
+ * @param options - Optional component settings (maximum, modifiers).
2007
+ * @returns This builder instance for method chaining.
2008
+ */
2009
+ addNumberBoundedStars(value: number, options?: {
2010
+ maximum?: number;
2011
+ modifiers?: PrimitiveModifiers;
2012
+ }): this;
2013
+ /**
2014
+ * Appends a `NumberBoundedStarsElement` component.
2015
+ *
2016
+ * @remarks
2017
+ * Bounded numeric rating represented as visual stars.
2018
+ *
2019
+ * @param value - Numeric rating score
2020
+ * @param options - Optional component settings (maximum, modifiers).
2021
+ * @returns This builder instance for method chaining.
2022
+ */
2023
+ addNumberStars(value: number, options?: {
2024
+ maximum?: number;
2025
+ modifiers?: PrimitiveModifiers;
2026
+ }): this;
2027
+ /**
2028
+ * Appends a `NumberBoundedMeterElement` component.
2029
+ *
2030
+ * @remarks
2031
+ * Bounded numeric meter representation (read-only progress / score bar).
2032
+ *
2033
+ * @param value - Numeric value
2034
+ * @param options - Optional component settings (minimum, maximum, label, unit, modifiers).
2035
+ * @returns This builder instance for method chaining.
2036
+ */
2037
+ addNumberBoundedMeter(value: number, options?: {
2038
+ minimum?: number;
2039
+ maximum?: number;
2040
+ label?: string;
2041
+ unit?: string;
2042
+ modifiers?: PrimitiveModifiers;
2043
+ }): this;
2044
+ /**
2045
+ * Appends a `NumberBoundedMeterElement` component.
2046
+ *
2047
+ * @remarks
2048
+ * Bounded numeric meter representation (read-only progress / score bar).
2049
+ *
2050
+ * @param value - Numeric value
2051
+ * @param options - Optional component settings (minimum, maximum, label, unit, modifiers).
2052
+ * @returns This builder instance for method chaining.
2053
+ */
2054
+ addNumberMeter(value: number, options?: {
2055
+ minimum?: number;
2056
+ maximum?: number;
2057
+ label?: string;
2058
+ unit?: string;
2059
+ modifiers?: PrimitiveModifiers;
2060
+ }): this;
2061
+ /**
2062
+ * Appends a `BooleanPlainElement` component.
2063
+ *
2064
+ * @remarks
2065
+ * Plain boolean value representation (textual "true" / "false").
2066
+ *
2067
+ * @param value - Boolean state value
2068
+ * @param options - Optional component settings (modifiers).
2069
+ * @returns This builder instance for method chaining.
2070
+ */
2071
+ addBooleanPlain(value: boolean, options?: {
2072
+ modifiers?: PrimitiveModifiers;
2073
+ }): this;
2074
+ /**
2075
+ * Appends a `BooleanBadgeElement` component.
2076
+ *
2077
+ * @remarks
2078
+ * Visual badge pill representation of a boolean state.
2079
+ *
2080
+ * @param value - Boolean state value
2081
+ * @param options - Optional component settings (trueLabel (defaults to `true`), falseLabel (defaults to `false`), variant (defaults to `neutral`), modifiers).
2082
+ * @returns This builder instance for method chaining.
2083
+ */
2084
+ addBooleanBadge(value: boolean, options?: {
2085
+ trueLabel?: string;
2086
+ falseLabel?: string;
2087
+ variant?: BadgeVariant;
2088
+ modifiers?: PrimitiveModifiers;
2089
+ }): this;
2090
+ /**
2091
+ * Appends a `TimestampElement` component.
2092
+ *
2093
+ * @remarks
2094
+ * Formatted date and time representation.
2095
+ *
2096
+ * @param value - ISO 8601 date string or epoch timestamp in milliseconds
2097
+ * @param options - Optional component settings (format (defaults to `full`), modifiers).
2098
+ * @returns This builder instance for method chaining.
2099
+ */
2100
+ addTimestamp(value: string, options?: {
2101
+ format?: TimestampFormat;
2102
+ modifiers?: PrimitiveModifiers;
2103
+ }): this;
2104
+ /**
2105
+ * Appends a `ImageReferenceElement` component.
2106
+ *
2107
+ * @remarks
2108
+ * Thumbnail image reference with placeholder fallback handling.
2109
+ *
2110
+ * @param src - Image source URI (HTTPS URL, base64 data URI, or asset path)
2111
+ * @param options - Optional component settings (alt, aspectRatio (defaults to `1:1`), placeholder).
2112
+ * @returns This builder instance for method chaining.
2113
+ */
2114
+ addImageReference(src: string, options?: {
2115
+ alt?: string;
2116
+ aspectRatio?: string;
2117
+ placeholder?: string;
2118
+ }): this;
2119
+ /**
2120
+ * Appends a `ImageReferenceElement` component.
2121
+ *
2122
+ * @remarks
2123
+ * Thumbnail image reference with placeholder fallback handling.
2124
+ *
2125
+ * @param src - Image source URI (HTTPS URL, base64 data URI, or asset path)
2126
+ * @param options - Optional component settings (alt, aspectRatio (defaults to `1:1`), placeholder).
2127
+ * @returns This builder instance for method chaining.
2128
+ */
2129
+ addImageRef(src: string, options?: {
2130
+ alt?: string;
2131
+ aspectRatio?: string;
2132
+ placeholder?: string;
2133
+ }): this;
2134
+ /**
2135
+ * Appends a `DominantColourSetElement` component.
2136
+ *
2137
+ * @remarks
2138
+ * Dominant color set palette rendered in descending dominance order.
2139
+ *
2140
+ * @param colors - List of hexadecimal color strings in descending priority
2141
+ * @returns This builder instance for method chaining.
2142
+ */
2143
+ addDominantColourSet(colors: string[]): this;
2144
+ /**
2145
+ * Appends a `DominantColourSetElement` component.
2146
+ *
2147
+ * @remarks
2148
+ * Dominant color set palette rendered in descending dominance order.
2149
+ *
2150
+ * @param colors - List of hexadecimal color strings in descending priority
2151
+ * @returns This builder instance for method chaining.
2152
+ */
2153
+ addDominantColors(colors: string[]): this;
2154
+ /**
2155
+ * Appends a `MarkdownBlockElement` component.
2156
+ *
2157
+ * @remarks
2158
+ * Full Markdown fallback block rendered with core typographic hierarchy, spacing, and styling.
2159
+ *
2160
+ * @param content - Raw Markdown markup content
2161
+ * @param options - Optional component settings (modifiers).
2162
+ * @returns This builder instance for method chaining.
2163
+ */
2164
+ addMarkdownBlock(content: string, options?: {
2165
+ modifiers?: BaseModifiers;
2166
+ }): this;
2167
+ /**
2168
+ * Appends a `MarkdownBlockElement` component.
2169
+ *
2170
+ * @remarks
2171
+ * Full Markdown fallback block rendered with core typographic hierarchy, spacing, and styling.
2172
+ *
2173
+ * @param content - Raw Markdown markup content
2174
+ * @param options - Optional component settings (modifiers).
2175
+ * @returns This builder instance for method chaining.
2176
+ */
2177
+ addMarkdown(content: string, options?: {
2178
+ modifiers?: BaseModifiers;
2179
+ }): this;
2180
+ /**
2181
+ * Appends a `HtmlBlockElement` component.
2182
+ *
2183
+ * @remarks
2184
+ * Sandboxed HTML rendering escape hatch.
2185
+ *
2186
+ * @param content - Raw HTML markup content
2187
+ * @param options - Optional component settings (modifiers).
2188
+ * @returns This builder instance for method chaining.
2189
+ */
2190
+ addHtmlBlock(content: string, options?: {
2191
+ modifiers?: BaseModifiers;
2192
+ }): this;
2193
+ /**
2194
+ * Appends a `HtmlBlockElement` component.
2195
+ *
2196
+ * @remarks
2197
+ * Sandboxed HTML rendering escape hatch.
2198
+ *
2199
+ * @param content - Raw HTML markup content
2200
+ * @param options - Optional component settings (modifiers).
2201
+ * @returns This builder instance for method chaining.
2202
+ */
2203
+ addHtml(content: string, options?: {
2204
+ modifiers?: BaseModifiers;
2205
+ }): this;
2206
+ /**
2207
+ * Appends a `MultiSlotRowElement` component.
2208
+ *
2209
+ * @remarks
2210
+ * Multi-slot horizontal row with declared column width proportions.
2211
+ * Examples: "1/3 + 2/3", "equal thirds", "1/4 + 3/4".
2212
+ *
2213
+ * @param slots - List of slots comprising the row
2214
+ * @param options - Optional component settings (proportions).
2215
+ * @returns This builder instance for method chaining.
2216
+ */
2217
+ addMultiSlotRow(slots: Slot[], options?: {
2218
+ proportions?: string;
2219
+ }): this;
2220
+ /**
2221
+ * Appends a `MultiSlotRowElement` component.
2222
+ *
2223
+ * @remarks
2224
+ * Multi-slot horizontal row with declared column width proportions.
2225
+ * Examples: "1/3 + 2/3", "equal thirds", "1/4 + 3/4".
2226
+ *
2227
+ * @param slots - List of slots comprising the row
2228
+ * @param options - Optional component settings (proportions).
2229
+ * @returns This builder instance for method chaining.
2230
+ */
2231
+ addMultiSlot(slots: Slot[], options?: {
2232
+ proportions?: string;
2233
+ }): this;
2234
+ /**
2235
+ * Appends a `LabelValueRowElement` component.
2236
+ *
2237
+ * @remarks
2238
+ * Standard label and value row.
2239
+ * Displays a muted label on the left and value representation on the right with a vertical dividing line.
2240
+ *
2241
+ * @param label - Key or descriptive label displayed muted on the left
2242
+ * @param value - Rendered value element on the right
2243
+ * @param options - Optional component settings (withDivider (defaults to `false`)).
2244
+ * @returns This builder instance for method chaining.
2245
+ */
2246
+ addLabelValueRow(label: string, value: UiElement, options?: {
2247
+ withDivider?: boolean;
2248
+ }): this;
2249
+ /**
2250
+ * Appends a `LabelValueRowElement` component.
2251
+ *
2252
+ * @remarks
2253
+ * Standard label and value row.
2254
+ * Displays a muted label on the left and value representation on the right with a vertical dividing line.
2255
+ *
2256
+ * @param label - Key or descriptive label displayed muted on the left
2257
+ * @param value - Rendered value element on the right
2258
+ * @param options - Optional component settings (withDivider (defaults to `false`)).
2259
+ * @returns This builder instance for method chaining.
2260
+ */
2261
+ addLabelValue(label: string, value: UiElement, options?: {
2262
+ withDivider?: boolean;
2263
+ }): this;
2264
+ /**
2265
+ * Appends a `TableElement` component.
2266
+ *
2267
+ * @remarks
2268
+ * Structured tabular data representation.
2269
+ * Supports header/borderless modes, 2-column key-value tables, and 3-column data tables.
2270
+ *
2271
+ * @param rows - Tabular data rows
2272
+ * @param options - Optional component settings (hasHeader (defaults to `true`), isStriped (defaults to `false`), withColumnSeparators (defaults to `false`), withRowSeparators (defaults to `false`), columns).
2273
+ * @returns This builder instance for method chaining.
2274
+ */
2275
+ addTable(rows: TableRow[], options?: {
2276
+ hasHeader?: boolean;
2277
+ isStriped?: boolean;
2278
+ withColumnSeparators?: boolean;
2279
+ withRowSeparators?: boolean;
2280
+ columns?: TableColumn[];
2281
+ }): this;
2282
+ /**
2283
+ * Appends a `RepeatingGroupElement` component.
2284
+ *
2285
+ * @remarks
2286
+ * Repeating group container where entries share uniform structure and retain per-entry labels.
2287
+ *
2288
+ * @param entries - List of repeated entry records
2289
+ * @param options - Optional component settings (title).
2290
+ * @returns This builder instance for method chaining.
2291
+ */
2292
+ addRepeatingGroup(entries: RepeatingGroupEntry[], options?: {
2293
+ title?: string;
2294
+ }): this;
2295
+ /**
2296
+ * Appends a `CollapsibleGroupElement` component.
2297
+ *
2298
+ * @remarks
2299
+ * Collapsible disclosure container (accordion) with summary badge.
2300
+ *
2301
+ * @param title - Group title (e.g. "Show specimen details")
2302
+ * @param elements - Nested content elements revealed when expanded
2303
+ * @param options - Optional component settings (summary, defaultExpanded (defaults to `false`)).
2304
+ * @returns This builder instance for method chaining.
2305
+ */
2306
+ addCollapsibleGroup(title: string, elements: UiElement[], options?: {
2307
+ summary?: string;
2308
+ defaultExpanded?: boolean;
2309
+ }): this;
2310
+ /**
2311
+ * Appends a `DividerElement` component.
2312
+ *
2313
+ * @remarks
2314
+ * Visual hairline separator separating sections or element groups.
2315
+ *
2316
+ * @param options - Optional component settings (style (defaults to `hairline`)).
2317
+ * @returns This builder instance for method chaining.
2318
+ */
2319
+ addDivider(options?: {
2320
+ style?: DividerStyle;
2321
+ }): this;
2322
+ /**
2323
+ * Finalizes and returns the complete strongly-typed `UiContainerClass` instance.
2324
+ *
2325
+ * @returns The constructed `UiContainerClass` instance.
2326
+ */
2327
+ build(): UiContainerClass;
2328
+ /**
2329
+ * Serializes this builder into a strongly-typed, JSON-compatible plain object conforming to interface `UiContainer`.
2330
+ *
2331
+ * @returns The plain object representation conforming to interface `UiContainer`.
2332
+ */
2333
+ toJSON(): UiContainer;
2334
+ /**
2335
+ * Returns the compact JSON string representation of the built `UiContainerClass` instance with no indentation.
2336
+ *
2337
+ * @returns Compact JSON string without indentation.
2338
+ */
2339
+ toString(): string;
2340
+ }
2341
+ /** Static helper factory object for `UiContainer`. */
2342
+ export declare const UiContainer: {
2343
+ /**
2344
+ * Creates a new fluent builder for constructing a `UiContainer`.
2345
+ *
2346
+ * @returns A new `UiContainerBuilder` instance.
2347
+ */
2348
+ builder(): UiContainerBuilder;
2349
+ /**
2350
+ * Creates a `UiContainerClass` directly from a properties object.
2351
+ *
2352
+ * @param params - Configuration properties.
2353
+ * @returns A completed `UiContainerClass` instance.
2354
+ */
2355
+ create(params: {
2356
+ elements: UiElement[];
2357
+ }): UiContainerClass;
2358
+ /**
2359
+ * Parses a JSON string or raw object into a validated `UiContainerClass` instance.
2360
+ *
2361
+ * @remarks
2362
+ * Throws an `Error` if the input does not conform to the `UiContainer` schema.
2363
+ *
2364
+ * @param json - JSON string or parsed JavaScript object to validate and hydrate.
2365
+ * @param withDeepValidation - Whether to recursively validate all nested child entities.
2366
+ * @returns A strongly-typed `UiContainerClass` instance.
2367
+ */
2368
+ parse(json: string | unknown, withDeepValidation?: boolean): UiContainerClass;
2369
+ };
2370
+ /**
2371
+ * Functional helper to create a `UiContainerClass` instance directly.
2372
+ *
2373
+ * @remarks
2374
+ * Container model representing an ordered list of visual elements.
2375
+ *
2376
+ * @param options - Optional configuration properties.
2377
+ * @returns A strongly-typed `UiContainerClass` instance.
2378
+ */
2379
+ export declare function createUiContainer(options?: {
2380
+ elements?: UiElement[];
2381
+ }): UiContainerClass;
2382
+ /**
2383
+ * Parses a JSON string or raw object into a validated `UiContainerClass` instance.
2384
+ *
2385
+ * @remarks
2386
+ * Container model representing an ordered list of visual elements.
2387
+ *
2388
+ * @param json - JSON string or parsed JavaScript object to validate and hydrate.
2389
+ * @param withDeepValidation - Whether to recursively validate all nested child entities.
2390
+ * @returns A strongly-typed `UiContainerClass` instance.
2391
+ */
2392
+ export declare function parseUiContainer(json: string | unknown, withDeepValidation?: boolean): UiContainerClass;
2393
+ /**
2394
+ * Fluent builder for constructing strongly-typed `UiCard` instances.
2395
+ *
2396
+ * @remarks
2397
+ * Root Card container model.
2398
+ * Represents a complete feature card rendered inside the 360px panel.
2399
+ */
2400
+ export declare class UiCardBuilder {
2401
+ private readonly _title;
2402
+ private _description?;
2403
+ private readonly _actions;
2404
+ private readonly _elements;
2405
+ /**
2406
+ * Initializes a new `UiCardBuilder`.
2407
+ *
2408
+ * @param title - Human-readable feature title displayed in the card header
2409
+ */
2410
+ constructor(title: string);
2411
+ /**
2412
+ * Sets the `description` property on this builder.
2413
+ *
2414
+ * @param description - Optional neutral subtitle / description for the feature
2415
+ * @returns This builder instance for method chaining.
2416
+ */
2417
+ description(description: string): this;
2418
+ /**
2419
+ * Appends multiple actions items.
2420
+ *
2421
+ * @param items - The `UiAction` items to add.
2422
+ * @returns This builder instance for method chaining.
2423
+ */
2424
+ addActions(...items: UiAction[]): this;
2425
+ /**
2426
+ * Appends a single action.
2427
+ *
2428
+ * @param item - The `UiAction` item to add.
2429
+ * @returns This builder instance for method chaining.
2430
+ */
2431
+ addAction(item: UiAction): this;
2432
+ /**
2433
+ * Appends a visual element.
2434
+ *
2435
+ * @param element - The visual UI element component to add.
2436
+ * @returns This builder instance for method chaining.
2437
+ */
2438
+ add(element: UiElement): this;
2439
+ /**
2440
+ * Appends multiple elements items.
2441
+ *
2442
+ * @param items - The `UiElement` items to add.
2443
+ * @returns This builder instance for method chaining.
2444
+ */
2445
+ addElements(...items: UiElement[]): this;
2446
+ /**
2447
+ * Appends a `StringShortElement` component.
2448
+ *
2449
+ * @remarks
2450
+ * Short string primitive element.
2451
+ * Supports plain text or compact chip pill presentation.
2452
+ *
2453
+ * @param value - Text value
2454
+ * @param options - Optional component settings (representation (defaults to `plain`), modifiers).
2455
+ * @returns This builder instance for method chaining.
2456
+ */
2457
+ addStringShort(value: string, options?: {
2458
+ representation?: StringShortRepresentation;
2459
+ modifiers?: PrimitiveModifiers;
2460
+ }): this;
2461
+ /**
2462
+ * Appends a `StringLongElement` component.
2463
+ *
2464
+ * @remarks
2465
+ * Multiline text block primitive element for descriptions, comments, or prose.
2466
+ *
2467
+ * @param value - Text value
2468
+ * @param options - Optional component settings (modifiers).
2469
+ * @returns This builder instance for method chaining.
2470
+ */
2471
+ addStringLong(value: string, options?: {
2472
+ modifiers?: PrimitiveModifiers;
2473
+ }): this;
2474
+ /**
2475
+ * Appends a `StringCodeElement` component.
2476
+ *
2477
+ * @remarks
2478
+ * Monospace code block or formatted code snippet representation.
2479
+ *
2480
+ * @param value - Text value
2481
+ * @param options - Optional component settings (language, modifiers).
2482
+ * @returns This builder instance for method chaining.
2483
+ */
2484
+ addStringCode(value: string, options?: {
2485
+ language?: CodeLanguage;
2486
+ modifiers?: BaseModifiers;
2487
+ }): this;
2488
+ /**
2489
+ * Appends a `XmlElement` component.
2490
+ *
2491
+ * @remarks
2492
+ * XML markup code block element.
2493
+ *
2494
+ * @param value - XML content value
2495
+ * @param options - Optional component settings (modifiers).
2496
+ * @returns This builder instance for method chaining.
2497
+ */
2498
+ addXml(value: string, options?: {
2499
+ modifiers?: BaseModifiers;
2500
+ }): this;
2501
+ /**
2502
+ * Appends a `JsonElement` component.
2503
+ *
2504
+ * @remarks
2505
+ * JSON data or structure representation element.
2506
+ *
2507
+ * @param value - JSON content value
2508
+ * @param options - Optional component settings (modifiers).
2509
+ * @returns This builder instance for method chaining.
2510
+ */
2511
+ addJson(value: string, options?: {
2512
+ modifiers?: BaseModifiers;
2513
+ }): this;
2514
+ /**
2515
+ * Appends a `StringUrlElement` component.
2516
+ *
2517
+ * @remarks
2518
+ * Hyperlink representation for external or internal URL navigation.
2519
+ *
2520
+ * @param value - Target URL or navigation destination
2521
+ * @param options - Optional component settings (label, modifiers).
2522
+ * @returns This builder instance for method chaining.
2523
+ */
2524
+ addStringUrl(value: string, options?: {
2525
+ label?: string;
2526
+ modifiers?: PrimitiveModifiers;
2527
+ }): this;
2528
+ /**
2529
+ * Appends a `IdentifierElement` component.
2530
+ *
2531
+ * @remarks
2532
+ * Monospace semantic identifier representation.
2533
+ *
2534
+ * @param value - Identifier string value
2535
+ * @param options - Optional component settings (modifiers).
2536
+ * @returns This builder instance for method chaining.
2537
+ */
2538
+ addIdentifier(value: string, options?: {
2539
+ modifiers?: PrimitiveModifiers;
2540
+ }): this;
2541
+ /**
2542
+ * Appends a `RatioElement` component.
2543
+ *
2544
+ * @remarks
2545
+ * Aspect ratio representation (e.g. "16:9", "4:3", "1:1").
2546
+ *
2547
+ * @param value - Aspect ratio textual expression
2548
+ * @param options - Optional component settings (modifiers).
2549
+ * @returns This builder instance for method chaining.
2550
+ */
2551
+ addRatio(value: string, options?: {
2552
+ modifiers?: PrimitiveModifiers;
2553
+ }): this;
2554
+ /**
2555
+ * Appends a `ColourElement` component.
2556
+ *
2557
+ * @remarks
2558
+ * Single color swatch representation with hex value and copy affordance.
2559
+ *
2560
+ * @param value - Hexadecimal color code
2561
+ * @param options - Optional component settings (modifiers).
2562
+ * @returns This builder instance for method chaining.
2563
+ */
2564
+ addColour(value: string, options?: {
2565
+ modifiers?: PrimitiveModifiers;
2566
+ }): this;
2567
+ /**
2568
+ * Appends a `ColourElement` component.
2569
+ *
2570
+ * @remarks
2571
+ * Single color swatch representation with hex value and copy affordance.
2572
+ *
2573
+ * @param value - Hexadecimal color code
2574
+ * @param options - Optional component settings (modifiers).
2575
+ * @returns This builder instance for method chaining.
2576
+ */
2577
+ addColorSwatch(value: string, options?: {
2578
+ modifiers?: PrimitiveModifiers;
2579
+ }): this;
2580
+ /**
2581
+ * Appends a `NumberUnboundedElement` component.
2582
+ *
2583
+ * @remarks
2584
+ * Plain unbounded numeric value primitive element.
2585
+ *
2586
+ * @param value - Numeric value
2587
+ * @param options - Optional component settings (unit, modifiers).
2588
+ * @returns This builder instance for method chaining.
2589
+ */
2590
+ addNumberUnbounded(value: number, options?: {
2591
+ unit?: string;
2592
+ modifiers?: PrimitiveModifiers;
2593
+ }): this;
2594
+ /**
2595
+ * Appends a `NumberBoundedStarsElement` component.
2596
+ *
2597
+ * @remarks
2598
+ * Bounded numeric rating represented as visual stars.
2599
+ *
2600
+ * @param value - Numeric rating score
2601
+ * @param options - Optional component settings (maximum, modifiers).
2602
+ * @returns This builder instance for method chaining.
2603
+ */
2604
+ addNumberBoundedStars(value: number, options?: {
2605
+ maximum?: number;
2606
+ modifiers?: PrimitiveModifiers;
2607
+ }): this;
2608
+ /**
2609
+ * Appends a `NumberBoundedStarsElement` component.
2610
+ *
2611
+ * @remarks
2612
+ * Bounded numeric rating represented as visual stars.
2613
+ *
2614
+ * @param value - Numeric rating score
2615
+ * @param options - Optional component settings (maximum, modifiers).
2616
+ * @returns This builder instance for method chaining.
2617
+ */
2618
+ addNumberStars(value: number, options?: {
2619
+ maximum?: number;
2620
+ modifiers?: PrimitiveModifiers;
2621
+ }): this;
2622
+ /**
2623
+ * Appends a `NumberBoundedMeterElement` component.
2624
+ *
2625
+ * @remarks
2626
+ * Bounded numeric meter representation (read-only progress / score bar).
2627
+ *
2628
+ * @param value - Numeric value
2629
+ * @param options - Optional component settings (minimum, maximum, label, unit, modifiers).
2630
+ * @returns This builder instance for method chaining.
2631
+ */
2632
+ addNumberBoundedMeter(value: number, options?: {
2633
+ minimum?: number;
2634
+ maximum?: number;
2635
+ label?: string;
2636
+ unit?: string;
2637
+ modifiers?: PrimitiveModifiers;
2638
+ }): this;
2639
+ /**
2640
+ * Appends a `NumberBoundedMeterElement` component.
2641
+ *
2642
+ * @remarks
2643
+ * Bounded numeric meter representation (read-only progress / score bar).
2644
+ *
2645
+ * @param value - Numeric value
2646
+ * @param options - Optional component settings (minimum, maximum, label, unit, modifiers).
2647
+ * @returns This builder instance for method chaining.
2648
+ */
2649
+ addNumberMeter(value: number, options?: {
2650
+ minimum?: number;
2651
+ maximum?: number;
2652
+ label?: string;
2653
+ unit?: string;
2654
+ modifiers?: PrimitiveModifiers;
2655
+ }): this;
2656
+ /**
2657
+ * Appends a `BooleanPlainElement` component.
2658
+ *
2659
+ * @remarks
2660
+ * Plain boolean value representation (textual "true" / "false").
2661
+ *
2662
+ * @param value - Boolean state value
2663
+ * @param options - Optional component settings (modifiers).
2664
+ * @returns This builder instance for method chaining.
2665
+ */
2666
+ addBooleanPlain(value: boolean, options?: {
2667
+ modifiers?: PrimitiveModifiers;
2668
+ }): this;
2669
+ /**
2670
+ * Appends a `BooleanBadgeElement` component.
2671
+ *
2672
+ * @remarks
2673
+ * Visual badge pill representation of a boolean state.
2674
+ *
2675
+ * @param value - Boolean state value
2676
+ * @param options - Optional component settings (trueLabel (defaults to `true`), falseLabel (defaults to `false`), variant (defaults to `neutral`), modifiers).
2677
+ * @returns This builder instance for method chaining.
2678
+ */
2679
+ addBooleanBadge(value: boolean, options?: {
2680
+ trueLabel?: string;
2681
+ falseLabel?: string;
2682
+ variant?: BadgeVariant;
2683
+ modifiers?: PrimitiveModifiers;
2684
+ }): this;
2685
+ /**
2686
+ * Appends a `TimestampElement` component.
2687
+ *
2688
+ * @remarks
2689
+ * Formatted date and time representation.
2690
+ *
2691
+ * @param value - ISO 8601 date string or epoch timestamp in milliseconds
2692
+ * @param options - Optional component settings (format (defaults to `full`), modifiers).
2693
+ * @returns This builder instance for method chaining.
2694
+ */
2695
+ addTimestamp(value: string, options?: {
2696
+ format?: TimestampFormat;
2697
+ modifiers?: PrimitiveModifiers;
2698
+ }): this;
2699
+ /**
2700
+ * Appends a `ImageReferenceElement` component.
2701
+ *
2702
+ * @remarks
2703
+ * Thumbnail image reference with placeholder fallback handling.
2704
+ *
2705
+ * @param src - Image source URI (HTTPS URL, base64 data URI, or asset path)
2706
+ * @param options - Optional component settings (alt, aspectRatio (defaults to `1:1`), placeholder).
2707
+ * @returns This builder instance for method chaining.
2708
+ */
2709
+ addImageReference(src: string, options?: {
2710
+ alt?: string;
2711
+ aspectRatio?: string;
2712
+ placeholder?: string;
2713
+ }): this;
2714
+ /**
2715
+ * Appends a `ImageReferenceElement` component.
2716
+ *
2717
+ * @remarks
2718
+ * Thumbnail image reference with placeholder fallback handling.
2719
+ *
2720
+ * @param src - Image source URI (HTTPS URL, base64 data URI, or asset path)
2721
+ * @param options - Optional component settings (alt, aspectRatio (defaults to `1:1`), placeholder).
2722
+ * @returns This builder instance for method chaining.
2723
+ */
2724
+ addImageRef(src: string, options?: {
2725
+ alt?: string;
2726
+ aspectRatio?: string;
2727
+ placeholder?: string;
2728
+ }): this;
2729
+ /**
2730
+ * Appends a `DominantColourSetElement` component.
2731
+ *
2732
+ * @remarks
2733
+ * Dominant color set palette rendered in descending dominance order.
2734
+ *
2735
+ * @param colors - List of hexadecimal color strings in descending priority
2736
+ * @returns This builder instance for method chaining.
2737
+ */
2738
+ addDominantColourSet(colors: string[]): this;
2739
+ /**
2740
+ * Appends a `DominantColourSetElement` component.
2741
+ *
2742
+ * @remarks
2743
+ * Dominant color set palette rendered in descending dominance order.
2744
+ *
2745
+ * @param colors - List of hexadecimal color strings in descending priority
2746
+ * @returns This builder instance for method chaining.
2747
+ */
2748
+ addDominantColors(colors: string[]): this;
2749
+ /**
2750
+ * Appends a `MarkdownBlockElement` component.
2751
+ *
2752
+ * @remarks
2753
+ * Full Markdown fallback block rendered with core typographic hierarchy, spacing, and styling.
2754
+ *
2755
+ * @param content - Raw Markdown markup content
2756
+ * @param options - Optional component settings (modifiers).
2757
+ * @returns This builder instance for method chaining.
2758
+ */
2759
+ addMarkdownBlock(content: string, options?: {
2760
+ modifiers?: BaseModifiers;
2761
+ }): this;
2762
+ /**
2763
+ * Appends a `MarkdownBlockElement` component.
2764
+ *
2765
+ * @remarks
2766
+ * Full Markdown fallback block rendered with core typographic hierarchy, spacing, and styling.
2767
+ *
2768
+ * @param content - Raw Markdown markup content
2769
+ * @param options - Optional component settings (modifiers).
2770
+ * @returns This builder instance for method chaining.
2771
+ */
2772
+ addMarkdown(content: string, options?: {
2773
+ modifiers?: BaseModifiers;
2774
+ }): this;
2775
+ /**
2776
+ * Appends a `HtmlBlockElement` component.
2777
+ *
2778
+ * @remarks
2779
+ * Sandboxed HTML rendering escape hatch.
2780
+ *
2781
+ * @param content - Raw HTML markup content
2782
+ * @param options - Optional component settings (modifiers).
2783
+ * @returns This builder instance for method chaining.
2784
+ */
2785
+ addHtmlBlock(content: string, options?: {
2786
+ modifiers?: BaseModifiers;
2787
+ }): this;
2788
+ /**
2789
+ * Appends a `HtmlBlockElement` component.
2790
+ *
2791
+ * @remarks
2792
+ * Sandboxed HTML rendering escape hatch.
2793
+ *
2794
+ * @param content - Raw HTML markup content
2795
+ * @param options - Optional component settings (modifiers).
2796
+ * @returns This builder instance for method chaining.
2797
+ */
2798
+ addHtml(content: string, options?: {
2799
+ modifiers?: BaseModifiers;
2800
+ }): this;
2801
+ /**
2802
+ * Appends a `MultiSlotRowElement` component.
2803
+ *
2804
+ * @remarks
2805
+ * Multi-slot horizontal row with declared column width proportions.
2806
+ * Examples: "1/3 + 2/3", "equal thirds", "1/4 + 3/4".
2807
+ *
2808
+ * @param slots - List of slots comprising the row
2809
+ * @param options - Optional component settings (proportions).
2810
+ * @returns This builder instance for method chaining.
2811
+ */
2812
+ addMultiSlotRow(slots: Slot[], options?: {
2813
+ proportions?: string;
2814
+ }): this;
2815
+ /**
2816
+ * Appends a `MultiSlotRowElement` component.
2817
+ *
2818
+ * @remarks
2819
+ * Multi-slot horizontal row with declared column width proportions.
2820
+ * Examples: "1/3 + 2/3", "equal thirds", "1/4 + 3/4".
2821
+ *
2822
+ * @param slots - List of slots comprising the row
2823
+ * @param options - Optional component settings (proportions).
2824
+ * @returns This builder instance for method chaining.
2825
+ */
2826
+ addMultiSlot(slots: Slot[], options?: {
2827
+ proportions?: string;
2828
+ }): this;
2829
+ /**
2830
+ * Appends a `LabelValueRowElement` component.
2831
+ *
2832
+ * @remarks
2833
+ * Standard label and value row.
2834
+ * Displays a muted label on the left and value representation on the right with a vertical dividing line.
2835
+ *
2836
+ * @param label - Key or descriptive label displayed muted on the left
2837
+ * @param value - Rendered value element on the right
2838
+ * @param options - Optional component settings (withDivider (defaults to `false`)).
2839
+ * @returns This builder instance for method chaining.
2840
+ */
2841
+ addLabelValueRow(label: string, value: UiElement, options?: {
2842
+ withDivider?: boolean;
2843
+ }): this;
2844
+ /**
2845
+ * Appends a `LabelValueRowElement` component.
2846
+ *
2847
+ * @remarks
2848
+ * Standard label and value row.
2849
+ * Displays a muted label on the left and value representation on the right with a vertical dividing line.
2850
+ *
2851
+ * @param label - Key or descriptive label displayed muted on the left
2852
+ * @param value - Rendered value element on the right
2853
+ * @param options - Optional component settings (withDivider (defaults to `false`)).
2854
+ * @returns This builder instance for method chaining.
2855
+ */
2856
+ addLabelValue(label: string, value: UiElement, options?: {
2857
+ withDivider?: boolean;
2858
+ }): this;
2859
+ /**
2860
+ * Appends a `TableElement` component.
2861
+ *
2862
+ * @remarks
2863
+ * Structured tabular data representation.
2864
+ * Supports header/borderless modes, 2-column key-value tables, and 3-column data tables.
2865
+ *
2866
+ * @param rows - Tabular data rows
2867
+ * @param options - Optional component settings (hasHeader (defaults to `true`), isStriped (defaults to `false`), withColumnSeparators (defaults to `false`), withRowSeparators (defaults to `false`), columns).
2868
+ * @returns This builder instance for method chaining.
2869
+ */
2870
+ addTable(rows: TableRow[], options?: {
2871
+ hasHeader?: boolean;
2872
+ isStriped?: boolean;
2873
+ withColumnSeparators?: boolean;
2874
+ withRowSeparators?: boolean;
2875
+ columns?: TableColumn[];
2876
+ }): this;
2877
+ /**
2878
+ * Appends a `RepeatingGroupElement` component.
2879
+ *
2880
+ * @remarks
2881
+ * Repeating group container where entries share uniform structure and retain per-entry labels.
2882
+ *
2883
+ * @param entries - List of repeated entry records
2884
+ * @param options - Optional component settings (title).
2885
+ * @returns This builder instance for method chaining.
2886
+ */
2887
+ addRepeatingGroup(entries: RepeatingGroupEntry[], options?: {
2888
+ title?: string;
2889
+ }): this;
2890
+ /**
2891
+ * Appends a `CollapsibleGroupElement` component.
2892
+ *
2893
+ * @remarks
2894
+ * Collapsible disclosure container (accordion) with summary badge.
2895
+ *
2896
+ * @param title - Group title (e.g. "Show specimen details")
2897
+ * @param elements - Nested content elements revealed when expanded
2898
+ * @param options - Optional component settings (summary, defaultExpanded (defaults to `false`)).
2899
+ * @returns This builder instance for method chaining.
2900
+ */
2901
+ addCollapsibleGroup(title: string, elements: UiElement[], options?: {
2902
+ summary?: string;
2903
+ defaultExpanded?: boolean;
2904
+ }): this;
2905
+ /**
2906
+ * Appends a `DividerElement` component.
2907
+ *
2908
+ * @remarks
2909
+ * Visual hairline separator separating sections or element groups.
2910
+ *
2911
+ * @param options - Optional component settings (style (defaults to `hairline`)).
2912
+ * @returns This builder instance for method chaining.
2913
+ */
2914
+ addDivider(options?: {
2915
+ style?: DividerStyle;
2916
+ }): this;
2917
+ /**
2918
+ * Finalizes and returns the complete strongly-typed `UiCardClass` instance.
2919
+ *
2920
+ * @returns The constructed `UiCardClass` instance.
2921
+ */
2922
+ build(): UiCardClass;
2923
+ /**
2924
+ * Serializes this builder into a strongly-typed, JSON-compatible plain object conforming to interface `UiCard`.
2925
+ *
2926
+ * @returns The plain object representation conforming to interface `UiCard`.
2927
+ */
2928
+ toJSON(): UiCard;
2929
+ /**
2930
+ * Returns the compact JSON string representation of the built `UiCardClass` instance with no indentation.
2931
+ *
2932
+ * @returns Compact JSON string without indentation.
2933
+ */
2934
+ toString(): string;
2935
+ }
2936
+ /** Static helper factory object for `UiCard`. */
2937
+ export declare const UiCard: {
2938
+ /**
2939
+ * Creates a new fluent builder for constructing a `UiCard`.
2940
+ *
2941
+ * @param title - Human-readable feature title displayed in the card header
2942
+ * @returns A new `UiCardBuilder` instance.
2943
+ */
2944
+ builder(title: string): UiCardBuilder;
2945
+ /**
2946
+ * Creates a `UiCardClass` directly from a properties object.
2947
+ *
2948
+ * @param params - Configuration properties.
2949
+ * @returns A completed `UiCardClass` instance.
2950
+ */
2951
+ create(params: {
2952
+ title: string;
2953
+ description?: string;
2954
+ actions?: UiAction[];
2955
+ elements: UiElement[];
2956
+ }): UiCardClass;
2957
+ /**
2958
+ * Parses a JSON string or raw object into a validated `UiCardClass` instance.
2959
+ *
2960
+ * @remarks
2961
+ * Throws an `Error` if the input does not conform to the `UiCard` schema.
2962
+ *
2963
+ * @param json - JSON string or parsed JavaScript object to validate and hydrate.
2964
+ * @param withDeepValidation - Whether to recursively validate all nested child entities.
2965
+ * @returns A strongly-typed `UiCardClass` instance.
2966
+ */
2967
+ parse(json: string | unknown, withDeepValidation?: boolean): UiCardClass;
2968
+ };
2969
+ /**
2970
+ * Functional helper to create a `UiCardClass` instance directly.
2971
+ *
2972
+ * @remarks
2973
+ * Root Card container model.
2974
+ * Represents a complete feature card rendered inside the 360px panel.
2975
+ *
2976
+ * @param title - Human-readable feature title displayed in the card header
2977
+ * @param options - Optional configuration properties.
2978
+ * @returns A strongly-typed `UiCardClass` instance.
2979
+ */
2980
+ export declare function createUiCard(title: string, options?: {
2981
+ description?: string;
2982
+ actions?: UiAction[];
2983
+ elements?: UiElement[];
2984
+ }): UiCardClass;
2985
+ /**
2986
+ * Parses a JSON string or raw object into a validated `UiCardClass` instance.
2987
+ *
2988
+ * @remarks
2989
+ * Root Card container model.
2990
+ * Represents a complete feature card rendered inside the 360px panel.
2991
+ *
2992
+ * @param json - JSON string or parsed JavaScript object to validate and hydrate.
2993
+ * @param withDeepValidation - Whether to recursively validate all nested child entities.
2994
+ * @returns A strongly-typed `UiCardClass` instance.
2995
+ */
2996
+ export declare function parseUiCard(json: string | unknown, withDeepValidation?: boolean): UiCardClass;
2997
+ /**
2998
+ * Creates a `TruncateOptions` component instance.
2999
+ *
3000
+ * @remarks
3001
+ * Truncation configuration for long textual content with optional expand affordance.
3002
+ *
3003
+ * @param characterLimit - Maximum number of characters to display before truncating
3004
+ * @param options - Optional settings (showMore (defaults to `true`)).
3005
+ * @returns A strongly-typed `TruncateOptions` object.
3006
+ */
3007
+ export declare function truncateOptions(characterLimit: number, options?: {
3008
+ showMore?: boolean;
3009
+ }): TruncateOptions;
3010
+ /**
3011
+ * Creates a `BaseModifiers` component instance.
3012
+ *
3013
+ * @remarks
3014
+ * Base modifier traits for elements that support copy affordance.
3015
+ *
3016
+ * @param options - Optional settings (copyable).
3017
+ * @returns A strongly-typed `BaseModifiers` object.
3018
+ */
3019
+ export declare function baseModifiers(options?: {
3020
+ copyable?: boolean;
3021
+ }): BaseModifiers;
3022
+ /**
3023
+ * Creates a `PrimitiveModifiers` component instance.
3024
+ *
3025
+ * @remarks
3026
+ * Common modifier traits that can be attached to primitive elements.
3027
+ *
3028
+ * @param options - Optional settings (truncate, weight (defaults to `normal`), intensity (defaults to `medium`), monospace (defaults to `false`), copyable).
3029
+ * @returns A strongly-typed `PrimitiveModifiers` object.
3030
+ */
3031
+ export declare function primitiveModifiers(options?: {
3032
+ truncate?: TruncateOptions;
3033
+ weight?: TextWeight;
3034
+ intensity?: TextIntensity;
3035
+ monospace?: boolean;
3036
+ copyable?: boolean;
3037
+ }): PrimitiveModifiers;
3038
+ /**
3039
+ * Creates a `StringShortElement` component instance.
3040
+ *
3041
+ * @remarks
3042
+ * Short string primitive element.
3043
+ * Supports plain text or compact chip pill presentation.
3044
+ *
3045
+ * @param value - Text value
3046
+ * @param options - Optional settings (representation (defaults to `plain`), modifiers).
3047
+ * @returns A strongly-typed `StringShortElement` object.
3048
+ */
3049
+ export declare function stringShort(value: string, options?: {
3050
+ representation?: StringShortRepresentation;
3051
+ modifiers?: PrimitiveModifiers;
3052
+ }): StringShortElement;
3053
+ /**
3054
+ * Creates a `StringLongElement` component instance.
3055
+ *
3056
+ * @remarks
3057
+ * Multiline text block primitive element for descriptions, comments, or prose.
3058
+ *
3059
+ * @param value - Text value
3060
+ * @param options - Optional settings (modifiers).
3061
+ * @returns A strongly-typed `StringLongElement` object.
3062
+ */
3063
+ export declare function stringLong(value: string, options?: {
3064
+ modifiers?: PrimitiveModifiers;
3065
+ }): StringLongElement;
3066
+ /**
3067
+ * Creates a `StringCodeElement` component instance.
3068
+ *
3069
+ * @remarks
3070
+ * Monospace code block or formatted code snippet representation.
3071
+ *
3072
+ * @param value - Text value
3073
+ * @param options - Optional settings (language, modifiers).
3074
+ * @returns A strongly-typed `StringCodeElement` object.
3075
+ */
3076
+ export declare function stringCode(value: string, options?: {
3077
+ language?: CodeLanguage;
3078
+ modifiers?: BaseModifiers;
3079
+ }): StringCodeElement;
3080
+ /**
3081
+ * Creates a `XmlElement` component instance.
3082
+ *
3083
+ * @remarks
3084
+ * XML markup code block element.
3085
+ *
3086
+ * @param value - XML content value
3087
+ * @param options - Optional settings (modifiers).
3088
+ * @returns A strongly-typed `XmlElement` object.
3089
+ */
3090
+ export declare function xml(value: string, options?: {
3091
+ modifiers?: BaseModifiers;
3092
+ }): XmlElement;
3093
+ /**
3094
+ * Creates a `JsonElement` component instance.
3095
+ *
3096
+ * @remarks
3097
+ * JSON data or structure representation element.
3098
+ *
3099
+ * @param value - JSON content value
3100
+ * @param options - Optional settings (modifiers).
3101
+ * @returns A strongly-typed `JsonElement` object.
3102
+ */
3103
+ export declare function json(value: string, options?: {
3104
+ modifiers?: BaseModifiers;
3105
+ }): JsonElement;
3106
+ /**
3107
+ * Creates a `StringUrlElement` component instance.
3108
+ *
3109
+ * @remarks
3110
+ * Hyperlink representation for external or internal URL navigation.
3111
+ *
3112
+ * @param value - Target URL or navigation destination
3113
+ * @param options - Optional settings (label, modifiers).
3114
+ * @returns A strongly-typed `StringUrlElement` object.
3115
+ */
3116
+ export declare function stringUrl(value: string, options?: {
3117
+ label?: string;
3118
+ modifiers?: PrimitiveModifiers;
3119
+ }): StringUrlElement;
3120
+ /**
3121
+ * Creates a `IdentifierElement` component instance.
3122
+ *
3123
+ * @remarks
3124
+ * Monospace semantic identifier representation.
3125
+ *
3126
+ * @param value - Identifier string value
3127
+ * @param options - Optional settings (modifiers).
3128
+ * @returns A strongly-typed `IdentifierElement` object.
3129
+ */
3130
+ export declare function identifier(value: string, options?: {
3131
+ modifiers?: PrimitiveModifiers;
3132
+ }): IdentifierElement;
3133
+ /**
3134
+ * Creates a `RatioElement` component instance.
3135
+ *
3136
+ * @remarks
3137
+ * Aspect ratio representation (e.g. "16:9", "4:3", "1:1").
3138
+ *
3139
+ * @param value - Aspect ratio textual expression
3140
+ * @param options - Optional settings (modifiers).
3141
+ * @returns A strongly-typed `RatioElement` object.
3142
+ */
3143
+ export declare function ratio(value: string, options?: {
3144
+ modifiers?: PrimitiveModifiers;
3145
+ }): RatioElement;
3146
+ /**
3147
+ * Creates a `ColourElement` component instance.
3148
+ *
3149
+ * @remarks
3150
+ * Single color swatch representation with hex value and copy affordance.
3151
+ *
3152
+ * @param value - Hexadecimal color code
3153
+ * @param options - Optional settings (modifiers).
3154
+ * @returns A strongly-typed `ColourElement` object.
3155
+ */
3156
+ export declare function colour(value: string, options?: {
3157
+ modifiers?: PrimitiveModifiers;
3158
+ }): ColourElement;
3159
+ /**
3160
+ * Creates a `ColourElement` component instance.
3161
+ *
3162
+ * @remarks
3163
+ * Single color swatch representation with hex value and copy affordance.
3164
+ *
3165
+ * @param value - Hexadecimal color code
3166
+ * @param options - Optional settings (modifiers).
3167
+ * @returns A strongly-typed `ColourElement` object.
3168
+ */
3169
+ export declare function colorSwatch(value: string, options?: {
3170
+ modifiers?: PrimitiveModifiers;
3171
+ }): ColourElement;
3172
+ /**
3173
+ * Creates a `NumberUnboundedElement` component instance.
3174
+ *
3175
+ * @remarks
3176
+ * Plain unbounded numeric value primitive element.
3177
+ *
3178
+ * @param value - Numeric value
3179
+ * @param options - Optional settings (unit, modifiers).
3180
+ * @returns A strongly-typed `NumberUnboundedElement` object.
3181
+ */
3182
+ export declare function numberUnbounded(value: number, options?: {
3183
+ unit?: string;
3184
+ modifiers?: PrimitiveModifiers;
3185
+ }): NumberUnboundedElement;
3186
+ /**
3187
+ * Creates a `NumberBoundedStarsElement` component instance.
3188
+ *
3189
+ * @remarks
3190
+ * Bounded numeric rating represented as visual stars.
3191
+ *
3192
+ * @param value - Numeric rating score
3193
+ * @param options - Optional settings (maximum, modifiers).
3194
+ * @returns A strongly-typed `NumberBoundedStarsElement` object.
3195
+ */
3196
+ export declare function numberBoundedStars(value: number, options?: {
3197
+ maximum?: number;
3198
+ modifiers?: PrimitiveModifiers;
3199
+ }): NumberBoundedStarsElement;
3200
+ /**
3201
+ * Creates a `NumberBoundedStarsElement` component instance.
3202
+ *
3203
+ * @remarks
3204
+ * Bounded numeric rating represented as visual stars.
3205
+ *
3206
+ * @param value - Numeric rating score
3207
+ * @param options - Optional settings (maximum, modifiers).
3208
+ * @returns A strongly-typed `NumberBoundedStarsElement` object.
3209
+ */
3210
+ export declare function numberStars(value: number, options?: {
3211
+ maximum?: number;
3212
+ modifiers?: PrimitiveModifiers;
3213
+ }): NumberBoundedStarsElement;
3214
+ /**
3215
+ * Creates a `NumberBoundedMeterElement` component instance.
3216
+ *
3217
+ * @remarks
3218
+ * Bounded numeric meter representation (read-only progress / score bar).
3219
+ *
3220
+ * @param value - Numeric value
3221
+ * @param options - Optional settings (minimum, maximum, label, unit, modifiers).
3222
+ * @returns A strongly-typed `NumberBoundedMeterElement` object.
3223
+ */
3224
+ export declare function numberBoundedMeter(value: number, options?: {
3225
+ minimum?: number;
3226
+ maximum?: number;
3227
+ label?: string;
3228
+ unit?: string;
3229
+ modifiers?: PrimitiveModifiers;
3230
+ }): NumberBoundedMeterElement;
3231
+ /**
3232
+ * Creates a `NumberBoundedMeterElement` component instance.
3233
+ *
3234
+ * @remarks
3235
+ * Bounded numeric meter representation (read-only progress / score bar).
3236
+ *
3237
+ * @param value - Numeric value
3238
+ * @param options - Optional settings (minimum, maximum, label, unit, modifiers).
3239
+ * @returns A strongly-typed `NumberBoundedMeterElement` object.
3240
+ */
3241
+ export declare function numberMeter(value: number, options?: {
3242
+ minimum?: number;
3243
+ maximum?: number;
3244
+ label?: string;
3245
+ unit?: string;
3246
+ modifiers?: PrimitiveModifiers;
3247
+ }): NumberBoundedMeterElement;
3248
+ /**
3249
+ * Creates a `BooleanPlainElement` component instance.
3250
+ *
3251
+ * @remarks
3252
+ * Plain boolean value representation (textual "true" / "false").
3253
+ *
3254
+ * @param value - Boolean state value
3255
+ * @param options - Optional settings (modifiers).
3256
+ * @returns A strongly-typed `BooleanPlainElement` object.
3257
+ */
3258
+ export declare function booleanPlain(value: boolean, options?: {
3259
+ modifiers?: PrimitiveModifiers;
3260
+ }): BooleanPlainElement;
3261
+ /**
3262
+ * Creates a `BooleanBadgeElement` component instance.
3263
+ *
3264
+ * @remarks
3265
+ * Visual badge pill representation of a boolean state.
3266
+ *
3267
+ * @param value - Boolean state value
3268
+ * @param options - Optional settings (trueLabel (defaults to `true`), falseLabel (defaults to `false`), variant (defaults to `neutral`), modifiers).
3269
+ * @returns A strongly-typed `BooleanBadgeElement` object.
3270
+ */
3271
+ export declare function booleanBadge(value: boolean, options?: {
3272
+ trueLabel?: string;
3273
+ falseLabel?: string;
3274
+ variant?: BadgeVariant;
3275
+ modifiers?: PrimitiveModifiers;
3276
+ }): BooleanBadgeElement;
3277
+ /**
3278
+ * Creates a `TimestampElement` component instance.
3279
+ *
3280
+ * @remarks
3281
+ * Formatted date and time representation.
3282
+ *
3283
+ * @param value - ISO 8601 date string or epoch timestamp in milliseconds
3284
+ * @param options - Optional settings (format (defaults to `full`), modifiers).
3285
+ * @returns A strongly-typed `TimestampElement` object.
3286
+ */
3287
+ export declare function timestamp(value: string, options?: {
3288
+ format?: TimestampFormat;
3289
+ modifiers?: PrimitiveModifiers;
3290
+ }): TimestampElement;
3291
+ /**
3292
+ * Creates a `ImageReferenceElement` component instance.
3293
+ *
3294
+ * @remarks
3295
+ * Thumbnail image reference with placeholder fallback handling.
3296
+ *
3297
+ * @param src - Image source URI (HTTPS URL, base64 data URI, or asset path)
3298
+ * @param options - Optional settings (alt, aspectRatio (defaults to `1:1`), placeholder).
3299
+ * @returns A strongly-typed `ImageReferenceElement` object.
3300
+ */
3301
+ export declare function imageReference(src: string, options?: {
3302
+ alt?: string;
3303
+ aspectRatio?: string;
3304
+ placeholder?: string;
3305
+ }): ImageReferenceElement;
3306
+ /**
3307
+ * Creates a `ImageReferenceElement` component instance.
3308
+ *
3309
+ * @remarks
3310
+ * Thumbnail image reference with placeholder fallback handling.
3311
+ *
3312
+ * @param src - Image source URI (HTTPS URL, base64 data URI, or asset path)
3313
+ * @param options - Optional settings (alt, aspectRatio (defaults to `1:1`), placeholder).
3314
+ * @returns A strongly-typed `ImageReferenceElement` object.
3315
+ */
3316
+ export declare function imageRef(src: string, options?: {
3317
+ alt?: string;
3318
+ aspectRatio?: string;
3319
+ placeholder?: string;
3320
+ }): ImageReferenceElement;
3321
+ /**
3322
+ * Creates a `DominantColourSetElement` component instance.
3323
+ *
3324
+ * @remarks
3325
+ * Dominant color set palette rendered in descending dominance order.
3326
+ *
3327
+ * @param colors - List of hexadecimal color strings in descending priority
3328
+ * @returns A strongly-typed `DominantColourSetElement` object.
3329
+ */
3330
+ export declare function dominantColourSet(colors: string[]): DominantColourSetElement;
3331
+ /**
3332
+ * Creates a `DominantColourSetElement` component instance.
3333
+ *
3334
+ * @remarks
3335
+ * Dominant color set palette rendered in descending dominance order.
3336
+ *
3337
+ * @param colors - List of hexadecimal color strings in descending priority
3338
+ * @returns A strongly-typed `DominantColourSetElement` object.
3339
+ */
3340
+ export declare function dominantColors(colors: string[]): DominantColourSetElement;
3341
+ /**
3342
+ * Creates a `ButtonActionElement` component instance.
3343
+ *
3344
+ * @remarks
3345
+ * Interactive button action triggering an extension command.
3346
+ *
3347
+ * @param commandId - Command identifier to invoke
3348
+ * @param label - Display label for the action
3349
+ * @param options - Optional settings (extensionId, target, parameters, disabled (defaults to `false`), variant (defaults to `secondary`)).
3350
+ * @returns A strongly-typed `ButtonActionElement` object.
3351
+ */
3352
+ export declare function buttonAction(commandId: string, label: string, options?: {
3353
+ extensionId?: string;
3354
+ target?: string;
3355
+ parameters?: Record<string, unknown>;
3356
+ disabled?: boolean;
3357
+ variant?: ButtonVariant;
3358
+ }): ButtonActionElement;
3359
+ /**
3360
+ * Creates a `ExternalLinkActionElement` component instance.
3361
+ *
3362
+ * @remarks
3363
+ * External link action distinct from inline URL text values.
3364
+ *
3365
+ * @param url - Target URL destination
3366
+ * @param label - Display label for the action
3367
+ * @returns A strongly-typed `ExternalLinkActionElement` object.
3368
+ */
3369
+ export declare function externalLinkAction(url: string, label: string): ExternalLinkActionElement;
3370
+ /**
3371
+ * Creates a `MarkdownBlockElement` component instance.
3372
+ *
3373
+ * @remarks
3374
+ * Full Markdown fallback block rendered with core typographic hierarchy, spacing, and styling.
3375
+ *
3376
+ * @param content - Raw Markdown markup content
3377
+ * @param options - Optional settings (modifiers).
3378
+ * @returns A strongly-typed `MarkdownBlockElement` object.
3379
+ */
3380
+ export declare function markdownBlock(content: string, options?: {
3381
+ modifiers?: BaseModifiers;
3382
+ }): MarkdownBlockElement;
3383
+ /**
3384
+ * Creates a `MarkdownBlockElement` component instance.
3385
+ *
3386
+ * @remarks
3387
+ * Full Markdown fallback block rendered with core typographic hierarchy, spacing, and styling.
3388
+ *
3389
+ * @param content - Raw Markdown markup content
3390
+ * @param options - Optional settings (modifiers).
3391
+ * @returns A strongly-typed `MarkdownBlockElement` object.
3392
+ */
3393
+ export declare function markdown(content: string, options?: {
3394
+ modifiers?: BaseModifiers;
3395
+ }): MarkdownBlockElement;
3396
+ /**
3397
+ * Creates a `HtmlBlockElement` component instance.
3398
+ *
3399
+ * @remarks
3400
+ * Sandboxed HTML rendering escape hatch.
3401
+ *
3402
+ * @param content - Raw HTML markup content
3403
+ * @param options - Optional settings (modifiers).
3404
+ * @returns A strongly-typed `HtmlBlockElement` object.
3405
+ */
3406
+ export declare function htmlBlock(content: string, options?: {
3407
+ modifiers?: BaseModifiers;
3408
+ }): HtmlBlockElement;
3409
+ /**
3410
+ * Creates a `HtmlBlockElement` component instance.
3411
+ *
3412
+ * @remarks
3413
+ * Sandboxed HTML rendering escape hatch.
3414
+ *
3415
+ * @param content - Raw HTML markup content
3416
+ * @param options - Optional settings (modifiers).
3417
+ * @returns A strongly-typed `HtmlBlockElement` object.
3418
+ */
3419
+ export declare function html(content: string, options?: {
3420
+ modifiers?: BaseModifiers;
3421
+ }): HtmlBlockElement;
3422
+ /**
3423
+ * Creates a `Slot` component instance.
3424
+ *
3425
+ * @remarks
3426
+ * Single slot within a multi-slot horizontal row layout.
3427
+ *
3428
+ * @param content - Rendered content inside the slot
3429
+ * @param options - Optional settings (label, width).
3430
+ * @returns A strongly-typed `Slot` object.
3431
+ */
3432
+ export declare function slot(content: UiElement, options?: {
3433
+ label?: string;
3434
+ width?: string;
3435
+ }): Slot;
3436
+ /**
3437
+ * Creates a `MultiSlotRowElement` component instance.
3438
+ *
3439
+ * @remarks
3440
+ * Multi-slot horizontal row with declared column width proportions.
3441
+ * Examples: "1/3 + 2/3", "equal thirds", "1/4 + 3/4".
3442
+ *
3443
+ * @param slots - List of slots comprising the row
3444
+ * @param options - Optional settings (proportions).
3445
+ * @returns A strongly-typed `MultiSlotRowElement` object.
3446
+ */
3447
+ export declare function multiSlotRow(slots: Slot[], options?: {
3448
+ proportions?: string;
3449
+ }): MultiSlotRowElement;
3450
+ /**
3451
+ * Creates a `MultiSlotRowElement` component instance.
3452
+ *
3453
+ * @remarks
3454
+ * Multi-slot horizontal row with declared column width proportions.
3455
+ * Examples: "1/3 + 2/3", "equal thirds", "1/4 + 3/4".
3456
+ *
3457
+ * @param slots - List of slots comprising the row
3458
+ * @param options - Optional settings (proportions).
3459
+ * @returns A strongly-typed `MultiSlotRowElement` object.
3460
+ */
3461
+ export declare function multiSlot(slots: Slot[], options?: {
3462
+ proportions?: string;
3463
+ }): MultiSlotRowElement;
3464
+ /**
3465
+ * Creates a `LabelValueRowElement` component instance.
3466
+ *
3467
+ * @remarks
3468
+ * Standard label and value row.
3469
+ * Displays a muted label on the left and value representation on the right with a vertical dividing line.
3470
+ *
3471
+ * @param label - Key or descriptive label displayed muted on the left
3472
+ * @param value - Rendered value element on the right
3473
+ * @param options - Optional settings (withDivider (defaults to `false`)).
3474
+ * @returns A strongly-typed `LabelValueRowElement` object.
3475
+ */
3476
+ export declare function labelValueRow(label: string, value: UiElement, options?: {
3477
+ withDivider?: boolean;
3478
+ }): LabelValueRowElement;
3479
+ /**
3480
+ * Creates a `LabelValueRowElement` component instance.
3481
+ *
3482
+ * @remarks
3483
+ * Standard label and value row.
3484
+ * Displays a muted label on the left and value representation on the right with a vertical dividing line.
3485
+ *
3486
+ * @param label - Key or descriptive label displayed muted on the left
3487
+ * @param value - Rendered value element on the right
3488
+ * @param options - Optional settings (withDivider (defaults to `false`)).
3489
+ * @returns A strongly-typed `LabelValueRowElement` object.
3490
+ */
3491
+ export declare function labelValue(label: string, value: UiElement, options?: {
3492
+ withDivider?: boolean;
3493
+ }): LabelValueRowElement;
3494
+ /**
3495
+ * Creates a `TableColumn` component instance.
3496
+ *
3497
+ * @remarks
3498
+ * Column definition for structured tables.
3499
+ *
3500
+ * @param options - Optional settings (header, align (defaults to `left`), width).
3501
+ * @returns A strongly-typed `TableColumn` object.
3502
+ */
3503
+ export declare function tableColumn(options?: {
3504
+ header?: string;
3505
+ align?: TableColumnAlign;
3506
+ width?: string;
3507
+ }): TableColumn;
3508
+ /**
3509
+ * Creates a `TableRow` component instance.
3510
+ *
3511
+ * @remarks
3512
+ * Single table row containing an array of cell values.
3513
+ *
3514
+ * @param cells - Array of cell values corresponding to table columns
3515
+ * @returns A strongly-typed `TableRow` object.
3516
+ */
3517
+ export declare function tableRow(cells: UiElement[]): TableRow;
3518
+ /**
3519
+ * Creates a `TableElement` component instance.
3520
+ *
3521
+ * @remarks
3522
+ * Structured tabular data representation.
3523
+ * Supports header/borderless modes, 2-column key-value tables, and 3-column data tables.
3524
+ *
3525
+ * @param rows - Tabular data rows
3526
+ * @param options - Optional settings (hasHeader (defaults to `true`), isStriped (defaults to `false`), withColumnSeparators (defaults to `false`), withRowSeparators (defaults to `false`), columns).
3527
+ * @returns A strongly-typed `TableElement` object.
3528
+ */
3529
+ export declare function table(rows: TableRow[], options?: {
3530
+ hasHeader?: boolean;
3531
+ isStriped?: boolean;
3532
+ withColumnSeparators?: boolean;
3533
+ withRowSeparators?: boolean;
3534
+ columns?: TableColumn[];
3535
+ }): TableElement;
3536
+ /**
3537
+ * Creates a `RepeatingGroupEntry` component instance.
3538
+ *
3539
+ * @remarks
3540
+ * Single entry within a repeating group.
3541
+ *
3542
+ * @param label - Entry label
3543
+ * @param options - Optional settings (value, elements).
3544
+ * @returns A strongly-typed `RepeatingGroupEntry` object.
3545
+ */
3546
+ export declare function repeatingGroupEntry(label: string, options?: {
3547
+ value?: UiElement;
3548
+ elements?: UiElement[];
3549
+ }): RepeatingGroupEntry;
3550
+ /**
3551
+ * Creates a `RepeatingGroupElement` component instance.
3552
+ *
3553
+ * @remarks
3554
+ * Repeating group container where entries share uniform structure and retain per-entry labels.
3555
+ *
3556
+ * @param entries - List of repeated entry records
3557
+ * @param options - Optional settings (title).
3558
+ * @returns A strongly-typed `RepeatingGroupElement` object.
3559
+ */
3560
+ export declare function repeatingGroup(entries: RepeatingGroupEntry[], options?: {
3561
+ title?: string;
3562
+ }): RepeatingGroupElement;
3563
+ /**
3564
+ * Creates a `CollapsibleGroupElement` component instance.
3565
+ *
3566
+ * @remarks
3567
+ * Collapsible disclosure container (accordion) with summary badge.
3568
+ *
3569
+ * @param title - Group title (e.g. "Show specimen details")
3570
+ * @param elements - Nested content elements revealed when expanded
3571
+ * @param options - Optional settings (summary, defaultExpanded (defaults to `false`)).
3572
+ * @returns A strongly-typed `CollapsibleGroupElement` object.
3573
+ */
3574
+ export declare function collapsibleGroup(title: string, elements: UiElement[], options?: {
3575
+ summary?: string;
3576
+ defaultExpanded?: boolean;
3577
+ }): CollapsibleGroupElement;
3578
+ /**
3579
+ * Creates a `DividerElement` component instance.
3580
+ *
3581
+ * @remarks
3582
+ * Visual hairline separator separating sections or element groups.
3583
+ *
3584
+ * @param options - Optional settings (style (defaults to `hairline`)).
3585
+ * @returns A strongly-typed `DividerElement` object.
3586
+ */
3587
+ export declare function divider(options?: {
3588
+ style?: DividerStyle;
3589
+ }): DividerElement;
3590
+ /**
3591
+ * Creates a `Envelop` component instance.
3592
+ *
3593
+ * @remarks
3594
+ * Base envelope container model holding the schema version attribute.
3595
+ *
3596
+ * @param options - Optional settings (schemaVersion (defaults to `1.0`)).
3597
+ * @returns A strongly-typed `Envelop` object.
3598
+ */
3599
+ export declare function envelop(options?: {
3600
+ schemaVersion?: "1.0";
3601
+ }): Envelop;
3602
+ /**
3603
+ * Type guard predicate verifying whether an unknown value conforms to `TruncateOptions`.
3604
+ *
3605
+ * @param value - The value to inspect.
3606
+ * @param withDeepValidation - Whether to recursively validate all properties.
3607
+ * @returns `true` if the value conforms to `TruncateOptions`, otherwise `false`.
3608
+ */
3609
+ export declare function isTruncateOptions(value: unknown, withDeepValidation?: boolean): value is TruncateOptions;
3610
+ /**
3611
+ * Type guard predicate verifying whether an unknown value conforms to `BaseModifiers`.
3612
+ *
3613
+ * @param value - The value to inspect.
3614
+ * @param withDeepValidation - Whether to recursively validate all properties.
3615
+ * @returns `true` if the value conforms to `BaseModifiers`, otherwise `false`.
3616
+ */
3617
+ export declare function isBaseModifiers(value: unknown, withDeepValidation?: boolean): value is BaseModifiers;
3618
+ /**
3619
+ * Type guard predicate verifying whether an unknown value conforms to `PrimitiveModifiers`.
3620
+ *
3621
+ * @param value - The value to inspect.
3622
+ * @param withDeepValidation - Whether to recursively validate all properties.
3623
+ * @returns `true` if the value conforms to `PrimitiveModifiers`, otherwise `false`.
3624
+ */
3625
+ export declare function isPrimitiveModifiers(value: unknown, withDeepValidation?: boolean): value is PrimitiveModifiers;
3626
+ /**
3627
+ * Type guard predicate verifying whether an unknown value conforms to `Slot`.
3628
+ *
3629
+ * @param value - The value to inspect.
3630
+ * @param withDeepValidation - Whether to recursively validate all properties.
3631
+ * @returns `true` if the value conforms to `Slot`, otherwise `false`.
3632
+ */
3633
+ export declare function isSlot(value: unknown, withDeepValidation?: boolean): value is Slot;
3634
+ /**
3635
+ * Type guard predicate verifying whether an unknown value conforms to `TableColumn`.
3636
+ *
3637
+ * @param value - The value to inspect.
3638
+ * @param withDeepValidation - Whether to recursively validate all properties.
3639
+ * @returns `true` if the value conforms to `TableColumn`, otherwise `false`.
3640
+ */
3641
+ export declare function isTableColumn(value: unknown, withDeepValidation?: boolean): value is TableColumn;
3642
+ /**
3643
+ * Type guard predicate verifying whether an unknown value conforms to `TableRow`.
3644
+ *
3645
+ * @param value - The value to inspect.
3646
+ * @param withDeepValidation - Whether to recursively validate all properties.
3647
+ * @returns `true` if the value conforms to `TableRow`, otherwise `false`.
3648
+ */
3649
+ export declare function isTableRow(value: unknown, withDeepValidation?: boolean): value is TableRow;
3650
+ /**
3651
+ * Type guard predicate verifying whether an unknown value conforms to `RepeatingGroupEntry`.
3652
+ *
3653
+ * @param value - The value to inspect.
3654
+ * @param withDeepValidation - Whether to recursively validate all properties.
3655
+ * @returns `true` if the value conforms to `RepeatingGroupEntry`, otherwise `false`.
3656
+ */
3657
+ export declare function isRepeatingGroupEntry(value: unknown, withDeepValidation?: boolean): value is RepeatingGroupEntry;
3658
+ /**
3659
+ * Type guard predicate verifying whether an unknown value conforms to `Envelop`.
3660
+ *
3661
+ * @param value - The value to inspect.
3662
+ * @param withDeepValidation - Whether to recursively validate all properties.
3663
+ * @returns `true` if the value conforms to `Envelop`, otherwise `false`.
3664
+ */
3665
+ export declare function isEnvelop(value: unknown, withDeepValidation?: boolean): value is Envelop;
3666
+ /**
3667
+ * Type guard predicate verifying whether an unknown value conforms to `UiElement`.
3668
+ *
3669
+ * @param value - The value to inspect.
3670
+ * @param withDeepValidation - Whether to recursively validate all properties.
3671
+ * @returns `true` if the value is a valid `UiElement`, otherwise `false`.
3672
+ */
3673
+ export declare function isUiElement(value: unknown, withDeepValidation?: boolean): value is UiElement;
3674
+ /**
3675
+ * Type guard predicate narrowing a value to `StringShortElement`.
3676
+ *
3677
+ * @param value - The value to inspect.
3678
+ * @param withDeepValidation - Whether to recursively validate all properties.
3679
+ * @returns `true` if the value is a `StringShortElement` (type = "string-short"), otherwise `false`.
3680
+ */
3681
+ export declare function isStringShortElement(value: unknown, withDeepValidation?: boolean): value is StringShortElement;
3682
+ /**
3683
+ * Type guard predicate narrowing a value to `StringLongElement`.
3684
+ *
3685
+ * @param value - The value to inspect.
3686
+ * @param withDeepValidation - Whether to recursively validate all properties.
3687
+ * @returns `true` if the value is a `StringLongElement` (type = "string-long"), otherwise `false`.
3688
+ */
3689
+ export declare function isStringLongElement(value: unknown, withDeepValidation?: boolean): value is StringLongElement;
3690
+ /**
3691
+ * Type guard predicate narrowing a value to `StringCodeElement`.
3692
+ *
3693
+ * @param value - The value to inspect.
3694
+ * @param withDeepValidation - Whether to recursively validate all properties.
3695
+ * @returns `true` if the value is a `StringCodeElement` (type = "string-code"), otherwise `false`.
3696
+ */
3697
+ export declare function isStringCodeElement(value: unknown, withDeepValidation?: boolean): value is StringCodeElement;
3698
+ /**
3699
+ * Type guard predicate narrowing a value to `XmlElement`.
3700
+ *
3701
+ * @param value - The value to inspect.
3702
+ * @param withDeepValidation - Whether to recursively validate all properties.
3703
+ * @returns `true` if the value is a `XmlElement` (type = "xml"), otherwise `false`.
3704
+ */
3705
+ export declare function isXmlElement(value: unknown, withDeepValidation?: boolean): value is XmlElement;
3706
+ /**
3707
+ * Type guard predicate narrowing a value to `JsonElement`.
3708
+ *
3709
+ * @param value - The value to inspect.
3710
+ * @param withDeepValidation - Whether to recursively validate all properties.
3711
+ * @returns `true` if the value is a `JsonElement` (type = "json"), otherwise `false`.
3712
+ */
3713
+ export declare function isJsonElement(value: unknown, withDeepValidation?: boolean): value is JsonElement;
3714
+ /**
3715
+ * Type guard predicate narrowing a value to `StringUrlElement`.
3716
+ *
3717
+ * @param value - The value to inspect.
3718
+ * @param withDeepValidation - Whether to recursively validate all properties.
3719
+ * @returns `true` if the value is a `StringUrlElement` (type = "string-url"), otherwise `false`.
3720
+ */
3721
+ export declare function isStringUrlElement(value: unknown, withDeepValidation?: boolean): value is StringUrlElement;
3722
+ /**
3723
+ * Type guard predicate narrowing a value to `IdentifierElement`.
3724
+ *
3725
+ * @param value - The value to inspect.
3726
+ * @param withDeepValidation - Whether to recursively validate all properties.
3727
+ * @returns `true` if the value is a `IdentifierElement` (type = "identifier"), otherwise `false`.
3728
+ */
3729
+ export declare function isIdentifierElement(value: unknown, withDeepValidation?: boolean): value is IdentifierElement;
3730
+ /**
3731
+ * Type guard predicate narrowing a value to `RatioElement`.
3732
+ *
3733
+ * @param value - The value to inspect.
3734
+ * @param withDeepValidation - Whether to recursively validate all properties.
3735
+ * @returns `true` if the value is a `RatioElement` (type = "ratio"), otherwise `false`.
3736
+ */
3737
+ export declare function isRatioElement(value: unknown, withDeepValidation?: boolean): value is RatioElement;
3738
+ /**
3739
+ * Type guard predicate narrowing a value to `ColourElement`.
3740
+ *
3741
+ * @param value - The value to inspect.
3742
+ * @param withDeepValidation - Whether to recursively validate all properties.
3743
+ * @returns `true` if the value is a `ColourElement` (type = "color-swatch"), otherwise `false`.
3744
+ */
3745
+ export declare function isColourElement(value: unknown, withDeepValidation?: boolean): value is ColourElement;
3746
+ /**
3747
+ * Type guard predicate narrowing a value to `NumberUnboundedElement`.
3748
+ *
3749
+ * @param value - The value to inspect.
3750
+ * @param withDeepValidation - Whether to recursively validate all properties.
3751
+ * @returns `true` if the value is a `NumberUnboundedElement` (type = "number-unbounded"), otherwise `false`.
3752
+ */
3753
+ export declare function isNumberUnboundedElement(value: unknown, withDeepValidation?: boolean): value is NumberUnboundedElement;
3754
+ /**
3755
+ * Type guard predicate narrowing a value to `NumberBoundedStarsElement`.
3756
+ *
3757
+ * @param value - The value to inspect.
3758
+ * @param withDeepValidation - Whether to recursively validate all properties.
3759
+ * @returns `true` if the value is a `NumberBoundedStarsElement` (type = "number-stars"), otherwise `false`.
3760
+ */
3761
+ export declare function isNumberBoundedStarsElement(value: unknown, withDeepValidation?: boolean): value is NumberBoundedStarsElement;
3762
+ /**
3763
+ * Type guard predicate narrowing a value to `NumberBoundedMeterElement`.
3764
+ *
3765
+ * @param value - The value to inspect.
3766
+ * @param withDeepValidation - Whether to recursively validate all properties.
3767
+ * @returns `true` if the value is a `NumberBoundedMeterElement` (type = "number-meter"), otherwise `false`.
3768
+ */
3769
+ export declare function isNumberBoundedMeterElement(value: unknown, withDeepValidation?: boolean): value is NumberBoundedMeterElement;
3770
+ /**
3771
+ * Type guard predicate narrowing a value to `BooleanPlainElement`.
3772
+ *
3773
+ * @param value - The value to inspect.
3774
+ * @param withDeepValidation - Whether to recursively validate all properties.
3775
+ * @returns `true` if the value is a `BooleanPlainElement` (type = "boolean-plain"), otherwise `false`.
3776
+ */
3777
+ export declare function isBooleanPlainElement(value: unknown, withDeepValidation?: boolean): value is BooleanPlainElement;
3778
+ /**
3779
+ * Type guard predicate narrowing a value to `BooleanBadgeElement`.
3780
+ *
3781
+ * @param value - The value to inspect.
3782
+ * @param withDeepValidation - Whether to recursively validate all properties.
3783
+ * @returns `true` if the value is a `BooleanBadgeElement` (type = "boolean-badge"), otherwise `false`.
3784
+ */
3785
+ export declare function isBooleanBadgeElement(value: unknown, withDeepValidation?: boolean): value is BooleanBadgeElement;
3786
+ /**
3787
+ * Type guard predicate narrowing a value to `TimestampElement`.
3788
+ *
3789
+ * @param value - The value to inspect.
3790
+ * @param withDeepValidation - Whether to recursively validate all properties.
3791
+ * @returns `true` if the value is a `TimestampElement` (type = "timestamp"), otherwise `false`.
3792
+ */
3793
+ export declare function isTimestampElement(value: unknown, withDeepValidation?: boolean): value is TimestampElement;
3794
+ /**
3795
+ * Type guard predicate narrowing a value to `ImageReferenceElement`.
3796
+ *
3797
+ * @param value - The value to inspect.
3798
+ * @param withDeepValidation - Whether to recursively validate all properties.
3799
+ * @returns `true` if the value is a `ImageReferenceElement` (type = "image-ref"), otherwise `false`.
3800
+ */
3801
+ export declare function isImageReferenceElement(value: unknown, withDeepValidation?: boolean): value is ImageReferenceElement;
3802
+ /**
3803
+ * Type guard predicate narrowing a value to `DominantColourSetElement`.
3804
+ *
3805
+ * @param value - The value to inspect.
3806
+ * @param withDeepValidation - Whether to recursively validate all properties.
3807
+ * @returns `true` if the value is a `DominantColourSetElement` (type = "color-set"), otherwise `false`.
3808
+ */
3809
+ export declare function isDominantColourSetElement(value: unknown, withDeepValidation?: boolean): value is DominantColourSetElement;
3810
+ /**
3811
+ * Type guard predicate narrowing a value to `MarkdownBlockElement`.
3812
+ *
3813
+ * @param value - The value to inspect.
3814
+ * @param withDeepValidation - Whether to recursively validate all properties.
3815
+ * @returns `true` if the value is a `MarkdownBlockElement` (type = "markdown"), otherwise `false`.
3816
+ */
3817
+ export declare function isMarkdownBlockElement(value: unknown, withDeepValidation?: boolean): value is MarkdownBlockElement;
3818
+ /**
3819
+ * Type guard predicate narrowing a value to `HtmlBlockElement`.
3820
+ *
3821
+ * @param value - The value to inspect.
3822
+ * @param withDeepValidation - Whether to recursively validate all properties.
3823
+ * @returns `true` if the value is a `HtmlBlockElement` (type = "html"), otherwise `false`.
3824
+ */
3825
+ export declare function isHtmlBlockElement(value: unknown, withDeepValidation?: boolean): value is HtmlBlockElement;
3826
+ /**
3827
+ * Type guard predicate narrowing a value to `MultiSlotRowElement`.
3828
+ *
3829
+ * @param value - The value to inspect.
3830
+ * @param withDeepValidation - Whether to recursively validate all properties.
3831
+ * @returns `true` if the value is a `MultiSlotRowElement` (type = "multi-slot"), otherwise `false`.
3832
+ */
3833
+ export declare function isMultiSlotRowElement(value: unknown, withDeepValidation?: boolean): value is MultiSlotRowElement;
3834
+ /**
3835
+ * Type guard predicate narrowing a value to `LabelValueRowElement`.
3836
+ *
3837
+ * @param value - The value to inspect.
3838
+ * @param withDeepValidation - Whether to recursively validate all properties.
3839
+ * @returns `true` if the value is a `LabelValueRowElement` (type = "label-value"), otherwise `false`.
3840
+ */
3841
+ export declare function isLabelValueRowElement(value: unknown, withDeepValidation?: boolean): value is LabelValueRowElement;
3842
+ /**
3843
+ * Type guard predicate narrowing a value to `TableElement`.
3844
+ *
3845
+ * @param value - The value to inspect.
3846
+ * @param withDeepValidation - Whether to recursively validate all properties.
3847
+ * @returns `true` if the value is a `TableElement` (type = "table"), otherwise `false`.
3848
+ */
3849
+ export declare function isTableElement(value: unknown, withDeepValidation?: boolean): value is TableElement;
3850
+ /**
3851
+ * Type guard predicate narrowing a value to `RepeatingGroupElement`.
3852
+ *
3853
+ * @param value - The value to inspect.
3854
+ * @param withDeepValidation - Whether to recursively validate all properties.
3855
+ * @returns `true` if the value is a `RepeatingGroupElement` (type = "repeating-group"), otherwise `false`.
3856
+ */
3857
+ export declare function isRepeatingGroupElement(value: unknown, withDeepValidation?: boolean): value is RepeatingGroupElement;
3858
+ /**
3859
+ * Type guard predicate narrowing a value to `CollapsibleGroupElement`.
3860
+ *
3861
+ * @param value - The value to inspect.
3862
+ * @param withDeepValidation - Whether to recursively validate all properties.
3863
+ * @returns `true` if the value is a `CollapsibleGroupElement` (type = "collapsible-group"), otherwise `false`.
3864
+ */
3865
+ export declare function isCollapsibleGroupElement(value: unknown, withDeepValidation?: boolean): value is CollapsibleGroupElement;
3866
+ /**
3867
+ * Type guard predicate narrowing a value to `DividerElement`.
3868
+ *
3869
+ * @param value - The value to inspect.
3870
+ * @param withDeepValidation - Whether to recursively validate all properties.
3871
+ * @returns `true` if the value is a `DividerElement` (type = "divider"), otherwise `false`.
3872
+ */
3873
+ export declare function isDividerElement(value: unknown, withDeepValidation?: boolean): value is DividerElement;
3874
+ /**
3875
+ * Type guard predicate verifying whether an unknown value conforms to `UiAction`.
3876
+ *
3877
+ * @param value - The value to inspect.
3878
+ * @param withDeepValidation - Whether to recursively validate all properties.
3879
+ * @returns `true` if the value is a valid `UiAction`, otherwise `false`.
3880
+ */
3881
+ export declare function isUiAction(value: unknown, withDeepValidation?: boolean): value is UiAction;
3882
+ /**
3883
+ * Type guard predicate narrowing a value to `ButtonActionElement`.
3884
+ *
3885
+ * @param value - The value to inspect.
3886
+ * @param withDeepValidation - Whether to recursively validate all properties.
3887
+ * @returns `true` if the value is a `ButtonActionElement` (type = "button"), otherwise `false`.
3888
+ */
3889
+ export declare function isButtonActionElement(value: unknown, withDeepValidation?: boolean): value is ButtonActionElement;
3890
+ /**
3891
+ * Type guard predicate narrowing a value to `ExternalLinkActionElement`.
3892
+ *
3893
+ * @param value - The value to inspect.
3894
+ * @param withDeepValidation - Whether to recursively validate all properties.
3895
+ * @returns `true` if the value is a `ExternalLinkActionElement` (type = "external-link"), otherwise `false`.
3896
+ */
3897
+ export declare function isExternalLinkActionElement(value: unknown, withDeepValidation?: boolean): value is ExternalLinkActionElement;
3898
+ /**
3899
+ * Type guard predicate verifying whether an unknown value conforms to `UiContainer`.
3900
+ *
3901
+ * @param value - The value to inspect.
3902
+ * @param withDeepValidation - Whether to recursively validate all properties.
3903
+ * @returns `true` if the value is a valid `UiContainer`, otherwise `false`.
3904
+ */
3905
+ export declare function isUiContainer(value: unknown, withDeepValidation?: boolean): value is UiContainer;
3906
+ /**
3907
+ * Type guard predicate verifying whether an unknown value conforms to `UiCard`.
3908
+ *
3909
+ * @param value - The value to inspect.
3910
+ * @param withDeepValidation - Whether to recursively validate all properties.
3911
+ * @returns `true` if the value is a valid `UiCard`, otherwise `false`.
3912
+ */
3913
+ export declare function isUiCard(value: unknown, withDeepValidation?: boolean): value is UiCard;