@elastic/eui 59.0.1 → 59.1.0-rc1

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 (265) hide show
  1. package/dist/eui_charts_theme.js +330 -330
  2. package/dist/eui_charts_theme.js.map +1 -1
  3. package/dist/eui_theme_dark.css +2 -136
  4. package/dist/eui_theme_dark.json +0 -6
  5. package/dist/eui_theme_dark.json.d.ts +0 -6
  6. package/dist/eui_theme_dark.min.css +1 -1
  7. package/dist/eui_theme_light.css +2 -136
  8. package/dist/eui_theme_light.json +0 -6
  9. package/dist/eui_theme_light.json.d.ts +0 -6
  10. package/dist/eui_theme_light.min.css +1 -1
  11. package/es/components/accessibility/skip_link/skip_link.js +9 -7
  12. package/es/components/avatar/avatar.js +9 -7
  13. package/es/components/bottom_bar/bottom_bar.js +8 -9
  14. package/es/components/breadcrumbs/breadcrumbs.js +2 -1
  15. package/es/components/button/{button_content.js → _button_content_deprecated.js} +4 -3
  16. package/es/components/button/button.js +16 -10
  17. package/es/components/button/button_display/_button_display.js +141 -0
  18. package/es/components/button/button_display/_button_display.styles.js +53 -0
  19. package/es/components/button/button_display/_button_display_content.js +100 -0
  20. package/es/components/button/button_display/_button_display_content.styles.js +61 -0
  21. package/es/components/button/button_empty/button_empty.js +3 -2
  22. package/es/components/button/button_group/button_group.js +2 -1
  23. package/es/components/button/button_group/button_group_button.js +3 -2
  24. package/es/components/call_out/call_out.js +9 -8
  25. package/es/components/card/card.js +2 -1
  26. package/es/components/card/card_select.js +2 -1
  27. package/es/components/date_picker/auto_refresh/auto_refresh.js +2 -1
  28. package/es/components/expression/expression.js +11 -10
  29. package/es/components/facet/facet_button.js +36 -19
  30. package/es/components/facet/facet_button.styles.js +64 -0
  31. package/es/components/facet/facet_group.js +17 -27
  32. package/es/components/facet/facet_group.styles.js +79 -0
  33. package/es/components/header/header_links/header_link.js +2 -1
  34. package/es/components/health/health.js +7 -6
  35. package/es/components/horizontal_rule/horizontal_rule.js +7 -6
  36. package/es/components/link/link.js +8 -7
  37. package/es/components/loading/loading_chart.js +7 -6
  38. package/es/components/loading/loading_content.js +7 -6
  39. package/es/components/loading/loading_logo.js +7 -6
  40. package/es/components/loading/loading_spinner.js +20 -8
  41. package/es/components/loading/loading_spinner.styles.js +4 -4
  42. package/es/components/mark/mark.js +9 -8
  43. package/es/components/markdown_editor/markdown_format.js +7 -6
  44. package/es/components/notification/notification_event.js +2 -1
  45. package/es/components/pagination/pagination_button.js +2 -1
  46. package/es/components/panel/panel.js +8 -7
  47. package/es/components/provider/cache/cache_context.js +12 -0
  48. package/es/components/provider/cache/cache_provider.js +17 -0
  49. package/es/components/provider/cache/index.js +9 -0
  50. package/es/components/provider/index.js +1 -1
  51. package/es/components/provider/provider.js +39 -5
  52. package/es/components/provider/system/index.js +8 -0
  53. package/es/components/provider/system/system.js +33 -0
  54. package/es/components/spacer/spacer.js +7 -6
  55. package/es/components/text/text.js +7 -6
  56. package/es/components/text/text_color.js +7 -6
  57. package/es/components/timeline/timeline_item.js +7 -6
  58. package/es/components/timeline/timeline_item_icon.js +7 -6
  59. package/es/components/title/title.js +7 -6
  60. package/es/global_styling/utility/utility.js +27 -0
  61. package/es/services/theme/hooks.js +2 -2
  62. package/es/services/theme/provider.js +1 -5
  63. package/eui.d.ts +1030 -357
  64. package/i18ntokens.json +12 -12
  65. package/lib/components/accessibility/skip_link/skip_link.js +13 -10
  66. package/lib/components/avatar/avatar.js +12 -8
  67. package/lib/components/bottom_bar/bottom_bar.js +9 -6
  68. package/lib/components/breadcrumbs/breadcrumbs.js +2 -1
  69. package/lib/components/button/{button_content.js → _button_content_deprecated.js} +6 -5
  70. package/lib/components/button/button.js +19 -13
  71. package/lib/components/button/button_display/_button_display.js +146 -0
  72. package/lib/components/button/button_display/_button_display.styles.js +59 -0
  73. package/lib/components/button/button_display/_button_display_content.js +111 -0
  74. package/lib/components/button/button_display/_button_display_content.styles.js +64 -0
  75. package/lib/components/button/button_empty/button_empty.js +4 -3
  76. package/lib/components/button/button_group/button_group.js +2 -1
  77. package/lib/components/button/button_group/button_group_button.js +3 -2
  78. package/lib/components/call_out/call_out.js +14 -10
  79. package/lib/components/card/card.js +2 -1
  80. package/lib/components/card/card_select.js +2 -1
  81. package/lib/components/date_picker/auto_refresh/auto_refresh.js +2 -1
  82. package/lib/components/expression/expression.js +14 -12
  83. package/lib/components/facet/facet_button.js +43 -21
  84. package/lib/components/facet/facet_button.styles.js +79 -0
  85. package/lib/components/facet/facet_group.js +20 -29
  86. package/lib/components/facet/facet_group.styles.js +82 -0
  87. package/lib/components/header/header_links/header_link.js +2 -1
  88. package/lib/components/health/health.js +10 -8
  89. package/lib/components/horizontal_rule/horizontal_rule.js +10 -8
  90. package/lib/components/link/link.js +13 -7
  91. package/lib/components/loading/loading_chart.js +10 -8
  92. package/lib/components/loading/loading_content.js +10 -8
  93. package/lib/components/loading/loading_logo.js +10 -8
  94. package/lib/components/loading/loading_spinner.js +23 -10
  95. package/lib/components/loading/loading_spinner.styles.js +4 -4
  96. package/lib/components/mark/mark.js +12 -10
  97. package/lib/components/markdown_editor/markdown_format.js +10 -8
  98. package/lib/components/notification/notification_event.js +2 -1
  99. package/lib/components/panel/panel.js +11 -9
  100. package/lib/components/provider/cache/cache_context.js +24 -0
  101. package/lib/components/provider/cache/cache_provider.js +29 -0
  102. package/lib/components/provider/cache/index.js +31 -0
  103. package/lib/components/provider/index.js +12 -7
  104. package/lib/components/provider/provider.js +40 -5
  105. package/lib/components/provider/system/index.js +18 -0
  106. package/lib/components/provider/system/system.js +45 -0
  107. package/lib/components/spacer/spacer.js +10 -8
  108. package/lib/components/text/text.js +10 -8
  109. package/lib/components/text/text_color.js +10 -8
  110. package/lib/components/timeline/timeline_item.js +10 -8
  111. package/lib/components/timeline/timeline_item_icon.js +10 -8
  112. package/lib/components/title/title.js +11 -9
  113. package/lib/global_styling/utility/utility.js +31 -0
  114. package/lib/services/theme/hooks.js +2 -2
  115. package/lib/services/theme/provider.js +3 -6
  116. package/optimize/es/components/accessibility/skip_link/skip_link.js +6 -5
  117. package/optimize/es/components/avatar/avatar.js +7 -5
  118. package/optimize/es/components/bottom_bar/bottom_bar.js +8 -9
  119. package/optimize/es/components/breadcrumbs/breadcrumbs.js +2 -1
  120. package/optimize/es/components/button/{button_content.js → _button_content_deprecated.js} +1 -1
  121. package/optimize/es/components/button/button.js +13 -8
  122. package/optimize/es/components/button/button_display/_button_display.js +73 -0
  123. package/optimize/es/components/button/button_display/_button_display.styles.js +53 -0
  124. package/optimize/es/components/button/button_display/_button_display_content.js +67 -0
  125. package/optimize/es/components/button/button_display/_button_display_content.styles.js +61 -0
  126. package/optimize/es/components/button/button_empty/button_empty.js +1 -1
  127. package/optimize/es/components/button/button_group/button_group_button.js +1 -1
  128. package/optimize/es/components/call_out/call_out.js +8 -7
  129. package/optimize/es/components/expression/expression.js +10 -9
  130. package/optimize/es/components/facet/facet_button.js +35 -18
  131. package/optimize/es/components/facet/facet_button.styles.js +64 -0
  132. package/optimize/es/components/facet/facet_group.js +14 -24
  133. package/optimize/es/components/facet/facet_group.styles.js +79 -0
  134. package/optimize/es/components/health/health.js +6 -5
  135. package/optimize/es/components/horizontal_rule/horizontal_rule.js +6 -5
  136. package/optimize/es/components/link/link.js +7 -6
  137. package/optimize/es/components/loading/loading_chart.js +6 -5
  138. package/optimize/es/components/loading/loading_content.js +6 -5
  139. package/optimize/es/components/loading/loading_logo.js +6 -5
  140. package/optimize/es/components/loading/loading_spinner.js +8 -6
  141. package/optimize/es/components/loading/loading_spinner.styles.js +4 -4
  142. package/optimize/es/components/mark/mark.js +8 -7
  143. package/optimize/es/components/markdown_editor/markdown_format.js +6 -5
  144. package/optimize/es/components/panel/panel.js +7 -6
  145. package/optimize/es/components/provider/cache/cache_context.js +12 -0
  146. package/optimize/es/components/provider/cache/cache_provider.js +17 -0
  147. package/optimize/es/components/provider/cache/index.js +9 -0
  148. package/optimize/es/components/provider/index.js +1 -1
  149. package/optimize/es/components/provider/provider.js +39 -5
  150. package/optimize/es/components/provider/system/index.js +8 -0
  151. package/optimize/es/components/provider/system/system.js +33 -0
  152. package/optimize/es/components/spacer/spacer.js +6 -5
  153. package/optimize/es/components/text/text.js +6 -5
  154. package/optimize/es/components/text/text_color.js +6 -5
  155. package/optimize/es/components/timeline/timeline_item.js +6 -5
  156. package/optimize/es/components/timeline/timeline_item_icon.js +6 -5
  157. package/optimize/es/components/title/title.js +6 -5
  158. package/optimize/es/global_styling/utility/utility.js +27 -0
  159. package/optimize/es/services/theme/hooks.js +2 -2
  160. package/optimize/es/services/theme/provider.js +1 -5
  161. package/optimize/lib/components/accessibility/skip_link/skip_link.js +8 -6
  162. package/optimize/lib/components/avatar/avatar.js +9 -5
  163. package/optimize/lib/components/bottom_bar/bottom_bar.js +9 -6
  164. package/optimize/lib/components/breadcrumbs/breadcrumbs.js +2 -1
  165. package/optimize/lib/components/button/{button_content.js → _button_content_deprecated.js} +3 -3
  166. package/optimize/lib/components/button/button.js +16 -11
  167. package/optimize/lib/components/button/button_display/_button_display.js +79 -0
  168. package/optimize/lib/components/button/button_display/_button_display.styles.js +59 -0
  169. package/optimize/lib/components/button/button_display/_button_display_content.js +78 -0
  170. package/optimize/lib/components/button/button_display/_button_display_content.styles.js +64 -0
  171. package/optimize/lib/components/button/button_empty/button_empty.js +2 -2
  172. package/optimize/lib/components/button/button_group/button_group_button.js +1 -1
  173. package/optimize/lib/components/call_out/call_out.js +13 -9
  174. package/optimize/lib/components/expression/expression.js +11 -9
  175. package/optimize/lib/components/facet/facet_button.js +40 -18
  176. package/optimize/lib/components/facet/facet_button.styles.js +79 -0
  177. package/optimize/lib/components/facet/facet_group.js +15 -24
  178. package/optimize/lib/components/facet/facet_group.styles.js +82 -0
  179. package/optimize/lib/components/health/health.js +7 -5
  180. package/optimize/lib/components/horizontal_rule/horizontal_rule.js +7 -5
  181. package/optimize/lib/components/link/link.js +12 -6
  182. package/optimize/lib/components/loading/loading_chart.js +7 -5
  183. package/optimize/lib/components/loading/loading_content.js +7 -5
  184. package/optimize/lib/components/loading/loading_logo.js +7 -5
  185. package/optimize/lib/components/loading/loading_spinner.js +9 -6
  186. package/optimize/lib/components/loading/loading_spinner.styles.js +4 -4
  187. package/optimize/lib/components/mark/mark.js +9 -7
  188. package/optimize/lib/components/markdown_editor/markdown_format.js +7 -5
  189. package/optimize/lib/components/panel/panel.js +8 -6
  190. package/optimize/lib/components/provider/cache/cache_context.js +24 -0
  191. package/optimize/lib/components/provider/cache/cache_provider.js +29 -0
  192. package/optimize/lib/components/provider/cache/index.js +31 -0
  193. package/optimize/lib/components/provider/index.js +12 -7
  194. package/optimize/lib/components/provider/provider.js +40 -5
  195. package/optimize/lib/components/provider/system/index.js +18 -0
  196. package/optimize/lib/components/provider/system/system.js +54 -0
  197. package/optimize/lib/components/spacer/spacer.js +7 -5
  198. package/optimize/lib/components/text/text.js +7 -5
  199. package/optimize/lib/components/text/text_color.js +7 -5
  200. package/optimize/lib/components/timeline/timeline_item.js +7 -5
  201. package/optimize/lib/components/timeline/timeline_item_icon.js +7 -5
  202. package/optimize/lib/components/title/title.js +8 -6
  203. package/optimize/lib/global_styling/utility/utility.js +31 -0
  204. package/optimize/lib/services/theme/hooks.js +2 -2
  205. package/optimize/lib/services/theme/provider.js +3 -6
  206. package/package.json +1 -1
  207. package/src/components/index.scss +0 -1
  208. package/src/components/selectable/selectable_message/_selectable_message.scss +1 -0
  209. package/src/themes/amsterdam/overrides/_index.scss +0 -1
  210. package/test-env/components/accessibility/skip_link/skip_link.js +13 -10
  211. package/test-env/components/avatar/avatar.js +12 -8
  212. package/test-env/components/bottom_bar/bottom_bar.js +9 -6
  213. package/test-env/components/breadcrumbs/breadcrumbs.js +2 -1
  214. package/test-env/components/button/{button_content.js → _button_content_deprecated.js} +6 -5
  215. package/test-env/components/button/button.js +19 -13
  216. package/test-env/components/button/button_display/_button_display.js +143 -0
  217. package/test-env/components/button/button_display/_button_display.styles.js +59 -0
  218. package/test-env/components/button/button_display/_button_display_content.js +108 -0
  219. package/test-env/components/button/button_display/_button_display_content.styles.js +64 -0
  220. package/test-env/components/button/button_empty/button_empty.js +4 -3
  221. package/test-env/components/button/button_group/button_group.js +2 -1
  222. package/test-env/components/button/button_group/button_group_button.js +3 -2
  223. package/test-env/components/call_out/call_out.js +14 -10
  224. package/test-env/components/card/card.js +2 -1
  225. package/test-env/components/card/card_select.js +2 -1
  226. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +2 -1
  227. package/test-env/components/expression/expression.js +14 -12
  228. package/test-env/components/facet/facet_button.js +43 -21
  229. package/test-env/components/facet/facet_button.styles.js +79 -0
  230. package/test-env/components/facet/facet_group.js +20 -29
  231. package/test-env/components/facet/facet_group.styles.js +82 -0
  232. package/test-env/components/header/header_links/header_link.js +2 -1
  233. package/test-env/components/health/health.js +10 -8
  234. package/test-env/components/horizontal_rule/horizontal_rule.js +10 -8
  235. package/test-env/components/link/link.js +13 -7
  236. package/test-env/components/loading/loading_chart.js +10 -8
  237. package/test-env/components/loading/loading_content.js +10 -8
  238. package/test-env/components/loading/loading_logo.js +10 -8
  239. package/test-env/components/loading/loading_spinner.js +23 -10
  240. package/test-env/components/loading/loading_spinner.styles.js +4 -4
  241. package/test-env/components/mark/mark.js +12 -10
  242. package/test-env/components/markdown_editor/markdown_format.js +10 -8
  243. package/test-env/components/notification/notification_event.js +2 -1
  244. package/test-env/components/panel/panel.js +11 -9
  245. package/test-env/components/provider/cache/cache_context.js +24 -0
  246. package/test-env/components/provider/cache/cache_provider.js +29 -0
  247. package/test-env/components/provider/cache/index.js +31 -0
  248. package/test-env/components/provider/index.js +12 -7
  249. package/test-env/components/provider/provider.js +40 -5
  250. package/test-env/components/provider/system/index.js +18 -0
  251. package/test-env/components/provider/system/system.js +54 -0
  252. package/test-env/components/spacer/spacer.js +10 -8
  253. package/test-env/components/text/text.js +10 -8
  254. package/test-env/components/text/text_color.js +10 -8
  255. package/test-env/components/timeline/timeline_item.js +10 -8
  256. package/test-env/components/timeline/timeline_item_icon.js +10 -8
  257. package/test-env/components/title/title.js +11 -9
  258. package/test-env/global_styling/utility/utility.js +31 -0
  259. package/test-env/services/theme/hooks.js +2 -2
  260. package/test-env/services/theme/provider.js +3 -6
  261. package/src/components/facet/_facet_button.scss +0 -69
  262. package/src/components/facet/_facet_group.scss +0 -24
  263. package/src/components/facet/_index.scss +0 -4
  264. package/src/components/facet/_variables.scss +0 -6
  265. package/src/themes/amsterdam/overrides/_facet.scss +0 -10
package/eui.d.ts CHANGED
@@ -52,6 +52,117 @@ declare module '@elastic/eui/src/components/accessibility/screen_reader_live' {
52
52
  export { EuiScreenReaderLive } from '@elastic/eui/src/components/accessibility/screen_reader_live/screen_reader_live';
53
53
  export type { EuiScreenReaderLiveProps } from '@elastic/eui/src/components/accessibility/screen_reader_live/screen_reader_live';
54
54
 
55
+ }
56
+ declare module '@elastic/eui/src/components/common' {
57
+ import { AnchorHTMLAttributes, ButtonHTMLAttributes, ComponentProps, Component, FunctionComponent, JSXElementConstructor, MouseEventHandler, SFC } from 'react';
58
+ export interface CommonProps {
59
+ className?: string;
60
+ 'aria-label'?: string;
61
+ 'data-test-subj'?: string;
62
+ }
63
+ export type NoArgCallback<T> = () => T;
64
+ export const assertNever: (x: never) => never;
65
+ /**
66
+ * XOR for some properties applied to a type
67
+ * (XOR is one of these but not both or neither)
68
+ *
69
+ * Usage: OneOf<typeToExtend, one | but | not | multiple | of | these | are | required>
70
+ *
71
+ * To require aria-label or aria-labelledby but not both
72
+ * Example: OneOf<Type, 'aria-label' | 'aria-labelledby'>
73
+ */
74
+ export type OneOf<T, K extends keyof T> = Omit<T, K> & {
75
+ [k in K]: Pick<Required<T>, k> & {
76
+ [k1 in Exclude<K, k>]?: never;
77
+ };
78
+ }[K];
79
+ /**
80
+ * Wraps Object.keys with proper typescript definition of the resulting array
81
+ */
82
+ export function keysOf<T, K extends keyof T>(obj: T): K[];
83
+ /**
84
+ * Like `keyof typeof`, but for getting values instead of keys
85
+ * ValueOf<typeof {key1: 'value1', key2: 'value2'}>
86
+ * Results in `'value1' | 'value2'`
87
+ */
88
+ export type ValueOf<T> = T[keyof T];
89
+ export type PropsOf<C> = C extends SFC<infer SFCProps> ? SFCProps : C extends FunctionComponent<infer FunctionProps> ? FunctionProps : C extends Component<infer ComponentProps> ? ComponentProps : never;
90
+ export type PropsOfElement<C extends keyof JSX.IntrinsicElements | JSXElementConstructor<any>> = JSX.LibraryManagedAttributes<C, ComponentProps<C>>; type ExtractDefaultProps<T> = T extends {
91
+ defaultProps: infer D;
92
+ } ? D : never; type ExtractProps<C extends new (...args: any) => any, IT = InstanceType<C>> = IT extends Component<infer P> ? P : never;
93
+ /**
94
+ * Because of how TypeScript's LibraryManagedAttributes is designed to handle defaultProps (https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-0.html#support-for-defaultprops-in-jsx)
95
+ * we can't directly export the props definition as the defaulted values are not made optional,
96
+ * because it isn't processed by LibraryManagedAttributes. To get around this, we:
97
+ * - remove the props which have default values applied
98
+ * - export (Props - Defaults) & Partial<Defaults>
99
+ */
100
+ export type ApplyClassComponentDefaults<C extends new (...args: any) => any, D = ExtractDefaultProps<C>, P = ExtractProps<C>> = Omit<P, keyof D> & {
101
+ [K in keyof D]?: K extends keyof P ? P[K] : never;
102
+ }; type UnionKeys<T> = T extends any ? keyof T : never;
103
+ export type DistributivePick<T, K extends UnionKeys<T>> = T extends any ? Pick<T, Extract<keyof T, K>> : never;
104
+ export type DistributiveOmit<T, K extends UnionKeys<T>> = T extends any ? Omit<T, Extract<keyof T, K>> : never; type RecursiveDistributiveOmit<T, K extends PropertyKey> = T extends any ? T extends object ? RecursiveOmit<T, K> : T : never;
105
+ export type RecursiveOmit<T, K extends PropertyKey> = Omit<{
106
+ [P in keyof T]: RecursiveDistributiveOmit<T[P], K>;
107
+ }, K>;
108
+ /**
109
+ * Returns member keys in U not present in T set to never
110
+ * T = { 'one', 'two', 'three' }
111
+ * U = { 'three', 'four', 'five' }
112
+ * returns { 'four': never, 'five': never }
113
+ */
114
+ export type DisambiguateSet<T, U> = {
115
+ [P in Exclude<keyof T, keyof U>]?: never;
116
+ };
117
+ /**
118
+ * Allow either T or U, preventing any additional keys of the other type from being present
119
+ */
120
+ export type ExclusiveUnion<T, U> = T | U extends object ? (DisambiguateSet<T, U> & U) | (DisambiguateSet<U, T> & T) : T | U;
121
+ /**
122
+ * For components that conditionally render <button> or <a>
123
+ * Convenience types for extending base props (T) and
124
+ * element-specific props (P) with standard clickable properties
125
+ *
126
+ * These will likely be used together, along with `ExclusiveUnion`:
127
+ *
128
+ * type AnchorLike = PropsForAnchor<BaseProps>
129
+ * type ButtonLike = PropsForButton<BaseProps>
130
+ * type ComponentProps = ExclusiveUnion<AnchorLike, ButtonLike>
131
+ * const Component: FunctionComponent<ComponentProps> ...
132
+ */
133
+ export type PropsForAnchor<T, P = {}> = T & {
134
+ href?: string;
135
+ onClick?: MouseEventHandler<HTMLAnchorElement>;
136
+ } & AnchorHTMLAttributes<HTMLAnchorElement> & P;
137
+ export type PropsForButton<T, P = {}> = T & {
138
+ onClick?: MouseEventHandler<HTMLButtonElement>;
139
+ } & ButtonHTMLAttributes<HTMLButtonElement> & P;
140
+ /**
141
+ * Replaces all properties on any type as optional, includes nested types
142
+ *
143
+ * @example
144
+ * ```ts
145
+ * interface Person {
146
+ * name: string;
147
+ * age?: number;
148
+ * spouse: Person;
149
+ * children: Person[];
150
+ * }
151
+ * type PartialPerson = RecursivePartial<Person>;
152
+ * // results in
153
+ * interface PartialPerson {
154
+ * name?: string;
155
+ * age?: number;
156
+ * spouse?: RecursivePartial<Person>;
157
+ * children?: RecursivePartial<Person>[]
158
+ * }
159
+ * ```
160
+ */
161
+ export type RecursivePartial<T> = {
162
+ [P in keyof T]?: T[P] extends NonAny[] ? T[P] : T[P] extends readonly NonAny[] ? T[P] : T[P] extends Array<infer U> ? Array<RecursivePartial<U>> : T[P] extends ReadonlyArray<infer U> ? ReadonlyArray<RecursivePartial<U>> : T[P] extends Set<infer V> ? Set<RecursivePartial<V>> : T[P] extends Map<infer K, infer V> ? Map<K, RecursivePartial<V>> : T[P] extends NonAny ? T[P] : RecursivePartial<T[P]>;
163
+ }; type NonAny = number | boolean | string | symbol | null;
164
+ export {};
165
+
55
166
  }
56
167
  declare module '@elastic/eui/src/services/keys' {
57
168
  export const ENTER = "Enter";
@@ -166,117 +277,6 @@ declare module '@elastic/eui/src/services/alignment' {
166
277
  export const CENTER_ALIGNMENT = "center";
167
278
  export type HorizontalAlignment = 'left' | 'right' | 'center';
168
279
 
169
- }
170
- declare module '@elastic/eui/src/components/common' {
171
- import { AnchorHTMLAttributes, ButtonHTMLAttributes, ComponentProps, Component, FunctionComponent, JSXElementConstructor, MouseEventHandler, SFC } from 'react';
172
- export interface CommonProps {
173
- className?: string;
174
- 'aria-label'?: string;
175
- 'data-test-subj'?: string;
176
- }
177
- export type NoArgCallback<T> = () => T;
178
- export const assertNever: (x: never) => never;
179
- /**
180
- * XOR for some properties applied to a type
181
- * (XOR is one of these but not both or neither)
182
- *
183
- * Usage: OneOf<typeToExtend, one | but | not | multiple | of | these | are | required>
184
- *
185
- * To require aria-label or aria-labelledby but not both
186
- * Example: OneOf<Type, 'aria-label' | 'aria-labelledby'>
187
- */
188
- export type OneOf<T, K extends keyof T> = Omit<T, K> & {
189
- [k in K]: Pick<Required<T>, k> & {
190
- [k1 in Exclude<K, k>]?: never;
191
- };
192
- }[K];
193
- /**
194
- * Wraps Object.keys with proper typescript definition of the resulting array
195
- */
196
- export function keysOf<T, K extends keyof T>(obj: T): K[];
197
- /**
198
- * Like `keyof typeof`, but for getting values instead of keys
199
- * ValueOf<typeof {key1: 'value1', key2: 'value2'}>
200
- * Results in `'value1' | 'value2'`
201
- */
202
- export type ValueOf<T> = T[keyof T];
203
- export type PropsOf<C> = C extends SFC<infer SFCProps> ? SFCProps : C extends FunctionComponent<infer FunctionProps> ? FunctionProps : C extends Component<infer ComponentProps> ? ComponentProps : never;
204
- export type PropsOfElement<C extends keyof JSX.IntrinsicElements | JSXElementConstructor<any>> = JSX.LibraryManagedAttributes<C, ComponentProps<C>>; type ExtractDefaultProps<T> = T extends {
205
- defaultProps: infer D;
206
- } ? D : never; type ExtractProps<C extends new (...args: any) => any, IT = InstanceType<C>> = IT extends Component<infer P> ? P : never;
207
- /**
208
- * Because of how TypeScript's LibraryManagedAttributes is designed to handle defaultProps (https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-0.html#support-for-defaultprops-in-jsx)
209
- * we can't directly export the props definition as the defaulted values are not made optional,
210
- * because it isn't processed by LibraryManagedAttributes. To get around this, we:
211
- * - remove the props which have default values applied
212
- * - export (Props - Defaults) & Partial<Defaults>
213
- */
214
- export type ApplyClassComponentDefaults<C extends new (...args: any) => any, D = ExtractDefaultProps<C>, P = ExtractProps<C>> = Omit<P, keyof D> & {
215
- [K in keyof D]?: K extends keyof P ? P[K] : never;
216
- }; type UnionKeys<T> = T extends any ? keyof T : never;
217
- export type DistributivePick<T, K extends UnionKeys<T>> = T extends any ? Pick<T, Extract<keyof T, K>> : never;
218
- export type DistributiveOmit<T, K extends UnionKeys<T>> = T extends any ? Omit<T, Extract<keyof T, K>> : never; type RecursiveDistributiveOmit<T, K extends PropertyKey> = T extends any ? T extends object ? RecursiveOmit<T, K> : T : never;
219
- export type RecursiveOmit<T, K extends PropertyKey> = Omit<{
220
- [P in keyof T]: RecursiveDistributiveOmit<T[P], K>;
221
- }, K>;
222
- /**
223
- * Returns member keys in U not present in T set to never
224
- * T = { 'one', 'two', 'three' }
225
- * U = { 'three', 'four', 'five' }
226
- * returns { 'four': never, 'five': never }
227
- */
228
- export type DisambiguateSet<T, U> = {
229
- [P in Exclude<keyof T, keyof U>]?: never;
230
- };
231
- /**
232
- * Allow either T or U, preventing any additional keys of the other type from being present
233
- */
234
- export type ExclusiveUnion<T, U> = T | U extends object ? (DisambiguateSet<T, U> & U) | (DisambiguateSet<U, T> & T) : T | U;
235
- /**
236
- * For components that conditionally render <button> or <a>
237
- * Convenience types for extending base props (T) and
238
- * element-specific props (P) with standard clickable properties
239
- *
240
- * These will likely be used together, along with `ExclusiveUnion`:
241
- *
242
- * type AnchorLike = PropsForAnchor<BaseProps>
243
- * type ButtonLike = PropsForButton<BaseProps>
244
- * type ComponentProps = ExclusiveUnion<AnchorLike, ButtonLike>
245
- * const Component: FunctionComponent<ComponentProps> ...
246
- */
247
- export type PropsForAnchor<T, P = {}> = T & {
248
- href?: string;
249
- onClick?: MouseEventHandler<HTMLAnchorElement>;
250
- } & AnchorHTMLAttributes<HTMLAnchorElement> & P;
251
- export type PropsForButton<T, P = {}> = T & {
252
- onClick?: MouseEventHandler<HTMLButtonElement>;
253
- } & ButtonHTMLAttributes<HTMLButtonElement> & P;
254
- /**
255
- * Replaces all properties on any type as optional, includes nested types
256
- *
257
- * @example
258
- * ```ts
259
- * interface Person {
260
- * name: string;
261
- * age?: number;
262
- * spouse: Person;
263
- * children: Person[];
264
- * }
265
- * type PartialPerson = RecursivePartial<Person>;
266
- * // results in
267
- * interface PartialPerson {
268
- * name?: string;
269
- * age?: number;
270
- * spouse?: RecursivePartial<Person>;
271
- * children?: RecursivePartial<Person>[]
272
- * }
273
- * ```
274
- */
275
- export type RecursivePartial<T> = {
276
- [P in keyof T]?: T[P] extends NonAny[] ? T[P] : T[P] extends readonly NonAny[] ? T[P] : T[P] extends Array<infer U> ? Array<RecursivePartial<U>> : T[P] extends ReadonlyArray<infer U> ? ReadonlyArray<RecursivePartial<U>> : T[P] extends Set<infer V> ? Set<RecursivePartial<V>> : T[P] extends Map<infer K, infer V> ? Map<K, RecursivePartial<V>> : T[P] extends NonAny ? T[P] : RecursivePartial<T[P]>;
277
- }; type NonAny = number | boolean | string | symbol | null;
278
- export {};
279
-
280
280
  }
281
281
  declare module '@elastic/eui/src/services/breakpoint' {
282
282
  export type EuiBreakpointSize = 'xs' | 's' | 'm' | 'l' | 'xl';
@@ -2114,16 +2114,14 @@ declare module '@elastic/eui/src/services/theme/context' {
2114
2114
  }
2115
2115
  declare module '@elastic/eui/src/services/theme/provider' {
2116
2116
  import React, { PropsWithChildren } from 'react';
2117
- import { EmotionCache } from '@emotion/react';
2118
2117
  import { EuiThemeColorMode, EuiThemeSystem, EuiThemeModifications } from '@elastic/eui/src/services/theme/types';
2119
2118
  export interface EuiThemeProviderProps<T> {
2120
2119
  theme?: EuiThemeSystem<T>;
2121
2120
  colorMode?: EuiThemeColorMode;
2122
2121
  modify?: EuiThemeModifications<T>;
2123
- cache?: EmotionCache;
2124
2122
  children: any;
2125
2123
  }
2126
- export const EuiThemeProvider: <T extends {} = {}>({ theme: _system, colorMode: _colorMode, modify: _modifications, cache, children, }: React.PropsWithChildren<EuiThemeProviderProps<T>>) => JSX.Element;
2124
+ export const EuiThemeProvider: <T extends {} = {}>({ theme: _system, colorMode: _colorMode, modify: _modifications, children, }: React.PropsWithChildren<EuiThemeProviderProps<T>>) => JSX.Element;
2127
2125
 
2128
2126
  }
2129
2127
  declare module '@elastic/eui/src/services/theme' {
@@ -2291,6 +2289,40 @@ declare module '@elastic/eui/src/components/loading/loading_elastic' {
2291
2289
  }
2292
2290
  export const EuiLoadingElastic: FunctionComponent<CommonProps & HTMLAttributes<HTMLDivElement> & EuiLoadingElasticProps>;
2293
2291
 
2292
+ }
2293
+ declare module '@elastic/eui/src/components/provider/cache/cache_context' {
2294
+
2295
+ import { EmotionCache } from '@emotion/cache';
2296
+ export const EuiCacheContext: import("react").Context<EmotionCache | undefined>;
2297
+ export const useEuiCacheContext: () => EmotionCache | undefined;
2298
+
2299
+ }
2300
+ declare module '@elastic/eui/src/components/provider/cache/cache_provider' {
2301
+ import { PropsWithChildren } from 'react';
2302
+ import { EmotionCache } from '@emotion/cache';
2303
+ export interface EuiCacheProviderProps {
2304
+ cache?: false | EmotionCache;
2305
+ }
2306
+ export const EuiCacheProvider: ({ cache, children, }: PropsWithChildren<EuiCacheProviderProps>) => JSX.Element;
2307
+
2308
+ }
2309
+ declare module '@elastic/eui/src/components/provider/cache' {
2310
+ export * from '@elastic/eui/src/components/provider/cache/cache_context';
2311
+ export * from '@elastic/eui/src/components/provider/cache/cache_provider';
2312
+
2313
+ }
2314
+ declare module '@elastic/eui/src/components/provider/system/system' {
2315
+ import React, { ComponentType, ForwardRefExoticComponent } from 'react';
2316
+ import { UseEuiTheme } from '@elastic/eui/src/services';
2317
+ export interface WithEuiSystemProps<P = {}> {
2318
+ euiTheme: UseEuiTheme<P>;
2319
+ }
2320
+ export const withEuiSystem: <T extends {} = {}, U extends {} = {}>(Component: React.ComponentType<T & WithEuiSystemProps<U>> | React.ForwardRefExoticComponent<T & WithEuiSystemProps<U>>) => React.ForwardRefExoticComponent<React.PropsWithoutRef<Omit<T, "euiTheme">> & React.RefAttributes<Omit<T, "euiTheme">>>;
2321
+
2322
+ }
2323
+ declare module '@elastic/eui/src/components/provider/system' {
2324
+ export * from '@elastic/eui/src/components/provider/system/system';
2325
+
2294
2326
  }
2295
2327
  declare module '@elastic/eui/src/components/loading/loading_chart.styles' {
2296
2328
  import { UseEuiTheme } from '@elastic/eui/src/services';
@@ -2310,15 +2342,23 @@ declare module '@elastic/eui/src/components/loading/loading_chart.styles' {
2310
2342
 
2311
2343
  }
2312
2344
  declare module '@elastic/eui/src/components/loading/loading_chart' {
2313
- import { FunctionComponent, HTMLAttributes } from 'react';
2345
+ import React, { FunctionComponent, HTMLAttributes } from 'react';
2314
2346
  import { CommonProps } from '@elastic/eui/src/components/common';
2347
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
2315
2348
  export const SIZES: readonly ["m", "l", "xl"];
2316
2349
  export type EuiLoadingChartSize = typeof SIZES[number];
2317
2350
  export type EuiLoadingChartProps = CommonProps & HTMLAttributes<HTMLDivElement> & {
2318
2351
  size?: EuiLoadingChartSize;
2319
2352
  mono?: boolean;
2320
2353
  };
2321
- export const EuiLoadingChart: FunctionComponent<EuiLoadingChartProps>;
2354
+ export const _EuiLoadingChart: FunctionComponent<EuiLoadingChartProps & WithEuiSystemProps>;
2355
+ export const EuiLoadingChart: React.ForwardRefExoticComponent<Omit<CommonProps & React.HTMLAttributes<HTMLDivElement> & {
2356
+ size?: "m" | "l" | "xl" | undefined;
2357
+ mono?: boolean | undefined;
2358
+ } & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<CommonProps & React.HTMLAttributes<HTMLDivElement> & {
2359
+ size?: "m" | "l" | "xl" | undefined;
2360
+ mono?: boolean | undefined;
2361
+ } & WithEuiSystemProps<{}>, "euiTheme">>>;
2322
2362
 
2323
2363
  }
2324
2364
  declare module '@elastic/eui/src/components/loading/loading_content.styles' {
@@ -2329,18 +2369,25 @@ declare module '@elastic/eui/src/components/loading/loading_content.styles' {
2329
2369
 
2330
2370
  }
2331
2371
  declare module '@elastic/eui/src/components/loading/loading_content' {
2332
- import { FunctionComponent, HTMLAttributes } from 'react';
2372
+ import React, { FunctionComponent, HTMLAttributes } from 'react';
2333
2373
  import { CommonProps } from '@elastic/eui/src/components/common';
2374
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
2334
2375
  export type LineRange = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10;
2335
2376
  export type EuiLoadingContentProps = CommonProps & HTMLAttributes<HTMLDivElement> & {
2336
2377
  lines?: LineRange;
2337
2378
  };
2338
- export const EuiLoadingContent: FunctionComponent<EuiLoadingContentProps>;
2379
+ export const _EuiLoadingContent: FunctionComponent<EuiLoadingContentProps & WithEuiSystemProps>;
2380
+ export const EuiLoadingContent: React.ForwardRefExoticComponent<Omit<CommonProps & React.HTMLAttributes<HTMLDivElement> & {
2381
+ lines?: LineRange | undefined;
2382
+ } & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<CommonProps & React.HTMLAttributes<HTMLDivElement> & {
2383
+ lines?: LineRange | undefined;
2384
+ } & WithEuiSystemProps<{}>, "euiTheme">>>;
2339
2385
 
2340
2386
  }
2341
2387
  declare module '@elastic/eui/src/components/loading/loading_spinner.styles' {
2342
2388
  import { UseEuiTheme } from '@elastic/eui/src/services';
2343
- export const euiLoadingSpinnerStyles: ({ euiTheme }: UseEuiTheme) => {
2389
+ import { EuiLoadingSpinnerProps } from '@elastic/eui/src/components/loading/loading_spinner';
2390
+ export const euiLoadingSpinnerStyles: ({ euiTheme }: UseEuiTheme, color?: EuiLoadingSpinnerProps['color']) => {
2344
2391
  euiLoadingSpinner: import("@emotion/utils").SerializedStyles;
2345
2392
  s: import("@emotion/utils").SerializedStyles;
2346
2393
  m: import("@emotion/utils").SerializedStyles;
@@ -2351,14 +2398,42 @@ declare module '@elastic/eui/src/components/loading/loading_spinner.styles' {
2351
2398
 
2352
2399
  }
2353
2400
  declare module '@elastic/eui/src/components/loading/loading_spinner' {
2354
- import { HTMLAttributes, FunctionComponent } from 'react';
2401
+ import React, { HTMLAttributes, FunctionComponent, CSSProperties } from 'react';
2355
2402
  import { CommonProps } from '@elastic/eui/src/components/common';
2403
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
2356
2404
  export const SIZES: readonly ["s", "m", "l", "xl", "xxl"];
2357
2405
  export type EuiLoadingSpinnerSize = typeof SIZES[number];
2358
- export type EuiLoadingSpinnerProps = CommonProps & HTMLAttributes<HTMLDivElement> & {
2406
+ export type EuiLoadingSpinnerColor = {
2407
+ border?: CSSProperties['color'];
2408
+ highlight?: CSSProperties['color'];
2409
+ };
2410
+ export type EuiLoadingSpinnerProps = CommonProps & Omit<HTMLAttributes<HTMLDivElement>, 'color'> & {
2359
2411
  size?: EuiLoadingSpinnerSize;
2412
+ /**
2413
+ * Sets the color of the border and highlight.
2414
+ * Each key accepts any valid CSS color value as a `string`
2415
+ * See #EuiLoadingSpinnerColor
2416
+ */
2417
+ color?: EuiLoadingSpinnerColor;
2360
2418
  };
2361
- export const EuiLoadingSpinner: FunctionComponent<EuiLoadingSpinnerProps>;
2419
+ export const _EuiLoadingSpinner: FunctionComponent<EuiLoadingSpinnerProps & WithEuiSystemProps>;
2420
+ export const EuiLoadingSpinner: React.ForwardRefExoticComponent<Omit<CommonProps & Omit<React.HTMLAttributes<HTMLDivElement>, "color"> & {
2421
+ size?: "s" | "m" | "l" | "xl" | "xxl" | undefined;
2422
+ /**
2423
+ * Sets the color of the border and highlight.
2424
+ * Each key accepts any valid CSS color value as a `string`
2425
+ * See #EuiLoadingSpinnerColor
2426
+ */
2427
+ color?: EuiLoadingSpinnerColor | undefined;
2428
+ } & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<CommonProps & Omit<React.HTMLAttributes<HTMLDivElement>, "color"> & {
2429
+ size?: "s" | "m" | "l" | "xl" | "xxl" | undefined;
2430
+ /**
2431
+ * Sets the color of the border and highlight.
2432
+ * Each key accepts any valid CSS color value as a `string`
2433
+ * See #EuiLoadingSpinnerColor
2434
+ */
2435
+ color?: EuiLoadingSpinnerColor | undefined;
2436
+ } & WithEuiSystemProps<{}>, "euiTheme">>>;
2362
2437
 
2363
2438
  }
2364
2439
  declare module '@elastic/eui/src/components/loading/loading_logo.styles' {
@@ -2379,9 +2454,10 @@ declare module '@elastic/eui/src/components/loading/loading_logo.styles' {
2379
2454
 
2380
2455
  }
2381
2456
  declare module '@elastic/eui/src/components/loading/loading_logo' {
2382
- import { HTMLAttributes, FunctionComponent } from 'react';
2457
+ import React, { HTMLAttributes, FunctionComponent } from 'react';
2383
2458
  import { CommonProps } from '@elastic/eui/src/components/common';
2384
2459
  import { IconType } from '@elastic/eui/src/components/icon';
2460
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
2385
2461
  export const SIZES: readonly ["m", "l", "xl"];
2386
2462
  export type EuiLoadingLogoSize = typeof SIZES[number];
2387
2463
  export type EuiLoadingLogoProps = CommonProps & HTMLAttributes<HTMLDivElement> & {
@@ -2391,7 +2467,20 @@ declare module '@elastic/eui/src/components/loading/loading_logo' {
2391
2467
  */
2392
2468
  logo?: IconType;
2393
2469
  };
2394
- export const EuiLoadingLogo: FunctionComponent<EuiLoadingLogoProps>;
2470
+ export const _EuiLoadingLogo: FunctionComponent<EuiLoadingLogoProps & WithEuiSystemProps>;
2471
+ export const EuiLoadingLogo: React.ForwardRefExoticComponent<Omit<CommonProps & React.HTMLAttributes<HTMLDivElement> & {
2472
+ size?: "m" | "l" | "xl" | undefined;
2473
+ /**
2474
+ * While this component should be restricted to using logo icons, it works with any IconType
2475
+ */
2476
+ logo?: IconType | undefined;
2477
+ } & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<CommonProps & React.HTMLAttributes<HTMLDivElement> & {
2478
+ size?: "m" | "l" | "xl" | undefined;
2479
+ /**
2480
+ * While this component should be restricted to using logo icons, it works with any IconType
2481
+ */
2482
+ logo?: IconType | undefined;
2483
+ } & WithEuiSystemProps<{}>, "euiTheme">>>;
2395
2484
 
2396
2485
  }
2397
2486
  declare module '@elastic/eui/src/components/loading' {
@@ -2407,7 +2496,7 @@ declare module '@elastic/eui/src/components/loading' {
2407
2496
  export { EuiLoadingLogo } from '@elastic/eui/src/components/loading/loading_logo';
2408
2497
 
2409
2498
  }
2410
- declare module '@elastic/eui/src/components/button/button_content' {
2499
+ declare module '@elastic/eui/src/components/button/_button_content_deprecated' {
2411
2500
  import { HTMLAttributes, FunctionComponent, Ref } from 'react';
2412
2501
  import { CommonProps } from '@elastic/eui/src/components/common';
2413
2502
  import { IconType } from '@elastic/eui/src/components/icon';
@@ -2415,8 +2504,10 @@ declare module '@elastic/eui/src/components/button/button_content' {
2415
2504
  export const ICON_SIDES: ButtonContentIconSide[];
2416
2505
  export type EuiButtonContentType = HTMLAttributes<HTMLSpanElement>;
2417
2506
  /**
2418
- * *INTERNAL ONLY*
2507
+ * *INTERNAL ONLY / DEPRECATED*
2419
2508
  * This component is simply a helper component for reuse within other button components
2509
+ * This component has been deprecated in favor of the new EuiButtonDisplayContent
2510
+ * that can be found in `src/components/button/button_display/_button_display_content.tsx`.
2420
2511
  */
2421
2512
  export interface EuiButtonContentProps extends CommonProps {
2422
2513
  /**
@@ -2429,7 +2520,8 @@ declare module '@elastic/eui/src/components/button/button_content' {
2429
2520
  iconSide?: ButtonContentIconSide;
2430
2521
  isLoading?: boolean;
2431
2522
  /**
2432
- * Object of props passed to the <span/> wrapping the content's text/children only (not icon)
2523
+ * Object of props passed to the <span/> wrapping the content's text (only if the children is a `string`)
2524
+ * It doesn't apply to the icon.
2433
2525
  */
2434
2526
  textProps?: HTMLAttributes<HTMLSpanElement> & CommonProps & {
2435
2527
  ref?: Ref<HTMLSpanElement>;
@@ -2437,117 +2529,17 @@ declare module '@elastic/eui/src/components/button/button_content' {
2437
2529
  };
2438
2530
  iconSize?: 's' | 'm';
2439
2531
  }
2440
- export const EuiButtonContent: FunctionComponent<EuiButtonContentType & EuiButtonContentProps>;
2532
+ export const EuiButtonContentDeprecated: FunctionComponent<EuiButtonContentType & EuiButtonContentProps>;
2441
2533
 
2442
2534
  }
2443
2535
  declare module '@elastic/eui/src/services/security/href_validator' {
2444
2536
  export function validateHref(href: string): boolean;
2445
2537
 
2446
- }
2447
- declare module '@elastic/eui/src/components/button/button' {
2448
- import React, { FunctionComponent, Ref, CSSProperties, HTMLAttributes, ReactNode } from 'react';
2449
- import { CommonProps, ExclusiveUnion, PropsForAnchor, PropsForButton } from '@elastic/eui/src/components/common';
2450
- import { EuiButtonContentProps, EuiButtonContentType } from '@elastic/eui/src/components/button/button_content';
2451
- export type ButtonColor = 'primary' | 'accent' | 'success' | 'warning' | 'danger' | 'ghost' | 'text';
2452
- export type ButtonSize = 's' | 'm';
2453
- export const colorToClassNameMap: {
2454
- [color in ButtonColor]: string;
2455
- };
2456
- export const COLORS: ButtonColor[];
2457
- export const sizeToClassNameMap: {
2458
- [size in ButtonSize]: string | null;
2459
- };
2460
- export const SIZES: ButtonSize[];
2461
- /**
2462
- * Extends EuiButtonContentProps which provides
2463
- * `iconType`, `iconSide`, and `textProps`
2464
- */
2465
- export interface EuiButtonProps extends EuiButtonContentProps, CommonProps {
2466
- children?: ReactNode;
2467
- /**
2468
- * Make button a solid color for prominence
2469
- */
2470
- fill?: boolean;
2471
- /**
2472
- * Any of our named colors.
2473
- */
2474
- color?: ButtonColor;
2475
- /**
2476
- * Use size `s` in confined spaces
2477
- */
2478
- size?: ButtonSize;
2479
- /**
2480
- * `disabled` is also allowed
2481
- */
2482
- isDisabled?: boolean;
2483
- /**
2484
- * Applies the boolean state as the `aria-pressed` property to create a toggle button.
2485
- * *Only use when the readable text does not change between states.*
2486
- */
2487
- isSelected?: boolean;
2488
- /**
2489
- * Extends the button to 100% width
2490
- */
2491
- fullWidth?: boolean;
2492
- /**
2493
- * Override the default minimum width
2494
- */
2495
- minWidth?: CSSProperties['minWidth'];
2496
- /**
2497
- * Force disables the button and changes the icon to a loading spinner
2498
- */
2499
- isLoading?: boolean;
2500
- /**
2501
- * Object of props passed to the <span/> wrapping the button's content
2502
- */
2503
- contentProps?: EuiButtonContentType;
2504
- style?: CSSProperties;
2505
- }
2506
- export type EuiButtonPropsForAnchor = PropsForAnchor<EuiButtonProps, {
2507
- buttonRef?: Ref<HTMLAnchorElement>;
2508
- }>;
2509
- export type EuiButtonPropsForButton = PropsForButton<EuiButtonProps, {
2510
- buttonRef?: Ref<HTMLButtonElement>;
2511
- }>;
2512
- export type Props = ExclusiveUnion<EuiButtonPropsForAnchor, EuiButtonPropsForButton>;
2513
- /**
2514
- * EuiButton is largely responsible for providing relevant props
2515
- * and the logic for element-specific attributes
2516
- */
2517
- export const EuiButton: FunctionComponent<Props>;
2518
- export type EuiButtonDisplayProps = EuiButtonProps & HTMLAttributes<HTMLElement> & {
2519
- /**
2520
- * Provide a valid element to render the element as
2521
- */
2522
- element: 'a' | 'button' | 'span' | 'label';
2523
- /**
2524
- * Provide the component's base class name to build the class list on
2525
- */
2526
- baseClassName: string;
2527
- };
2528
- /**
2529
- * EuiButtonDisplay is an internal-only component used for displaying
2530
- * any element as a button.
2531
- * NOTE: This component *must* be below EuiButton in the file and
2532
- * EuiButton must also set a displayName for react-docgen-typescript
2533
- * to correctly set EuiButton's docgenInfo and display a props table.
2534
- */
2535
- export const EuiButtonDisplay: React.ForwardRefExoticComponent<EuiButtonProps & React.HTMLAttributes<HTMLElement> & {
2536
- /**
2537
- * Provide a valid element to render the element as
2538
- */
2539
- element: 'a' | 'button' | 'span' | 'label';
2540
- /**
2541
- * Provide the component's base class name to build the class list on
2542
- */
2543
- baseClassName: string;
2544
- } & React.RefAttributes<HTMLElement>>;
2545
-
2546
2538
  }
2547
2539
  declare module '@elastic/eui/src/components/button/button_empty/button_empty' {
2548
2540
  import { FunctionComponent, Ref } from 'react';
2549
2541
  import { CommonProps, ExclusiveUnion, PropsForAnchor, PropsForButton } from '@elastic/eui/src/components/common';
2550
- import { EuiButtonContentProps, EuiButtonContentType } from '@elastic/eui/src/components/button/button_content';
2542
+ import { EuiButtonContentProps, EuiButtonContentType } from '@elastic/eui/src/components/button/_button_content_deprecated';
2551
2543
  export type EuiButtonEmptyColor = 'primary' | 'danger' | 'text' | 'ghost' | 'success' | 'warning';
2552
2544
  export const COLORS: EuiButtonEmptyColor[]; const sizeToClassNameMap: {
2553
2545
  xs: string;
@@ -2749,7 +2741,7 @@ declare module '@elastic/eui/src/components/button/button_group/button_group_but
2749
2741
  declare module '@elastic/eui/src/components/button/button_group/button_group' {
2750
2742
  import { FunctionComponent, HTMLAttributes, ReactNode } from 'react';
2751
2743
  import { ButtonColor } from '@elastic/eui/src/components/button/button';
2752
- import { EuiButtonContentProps } from '@elastic/eui/src/components/button/button_content';
2744
+ import { EuiButtonContentProps } from '@elastic/eui/src/components/button/_button_content_deprecated';
2753
2745
  import { CommonProps } from '@elastic/eui/src/components/common';
2754
2746
  export interface EuiButtonGroupOptionProps extends EuiButtonContentProps, CommonProps {
2755
2747
  /**
@@ -3023,6 +3015,7 @@ declare module '@elastic/eui/src/components/title/title.styles' {
3023
3015
  declare module '@elastic/eui/src/components/title/title' {
3024
3016
  import { FunctionComponent, ReactElement } from 'react';
3025
3017
  import { CommonProps } from '@elastic/eui/src/components/common';
3018
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
3026
3019
  export const TITLE_SIZES: readonly ["xxxs", "xxs", "xs", "s", "m", "l"];
3027
3020
  export type EuiTitleSize = typeof TITLE_SIZES[number];
3028
3021
  export const TEXT_TRANSFORM: readonly ["uppercase"];
@@ -3036,7 +3029,24 @@ declare module '@elastic/eui/src/components/title/title' {
3036
3029
  textTransform?: EuiTitleTextTransform;
3037
3030
  id?: string;
3038
3031
  };
3039
- export const EuiTitle: FunctionComponent<EuiTitleProps>;
3032
+ export const _EuiTitle: FunctionComponent<EuiTitleProps & WithEuiSystemProps>;
3033
+ export const EuiTitle: import("react").ForwardRefExoticComponent<Omit<CommonProps & {
3034
+ /**
3035
+ * ReactElement to render as this component's content
3036
+ */
3037
+ children: ReactElement<any>;
3038
+ size?: "s" | "xs" | "m" | "l" | "xxs" | "xxxs" | undefined;
3039
+ textTransform?: "uppercase" | undefined;
3040
+ id?: string | undefined;
3041
+ } & WithEuiSystemProps<{}>, "euiTheme"> & import("react").RefAttributes<Omit<CommonProps & {
3042
+ /**
3043
+ * ReactElement to render as this component's content
3044
+ */
3045
+ children: ReactElement<any>;
3046
+ size?: "s" | "xs" | "m" | "l" | "xxs" | "xxxs" | undefined;
3047
+ textTransform?: "uppercase" | undefined;
3048
+ id?: string | undefined;
3049
+ } & WithEuiSystemProps<{}>, "euiTheme">>>;
3040
3050
 
3041
3051
  }
3042
3052
  declare module '@elastic/eui/src/components/title' {
@@ -3108,8 +3118,9 @@ declare module '@elastic/eui/src/components/text/text_color.styles' {
3108
3118
 
3109
3119
  }
3110
3120
  declare module '@elastic/eui/src/components/text/text_color' {
3111
- import { FunctionComponent, HTMLAttributes, CSSProperties } from 'react';
3121
+ import React, { FunctionComponent, HTMLAttributes, CSSProperties } from 'react';
3112
3122
  import { CommonProps } from '@elastic/eui/src/components/common';
3123
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
3113
3124
  export const COLORS: readonly ["default", "subdued", "success", "accent", "danger", "warning", "ghost", "inherit"];
3114
3125
  export type TextColor = typeof COLORS[number];
3115
3126
  export type EuiTextColorProps = CommonProps & Omit<HTMLAttributes<HTMLDivElement> & HTMLAttributes<HTMLSpanElement>, 'color'> & {
@@ -3127,7 +3138,36 @@ declare module '@elastic/eui/src/components/text/text_color' {
3127
3138
  */
3128
3139
  cloneElement?: boolean;
3129
3140
  };
3130
- export const EuiTextColor: FunctionComponent<EuiTextColorProps>;
3141
+ export const _EuiTextColor: FunctionComponent<EuiTextColorProps & WithEuiSystemProps>;
3142
+ export const EuiTextColor: React.ForwardRefExoticComponent<Omit<CommonProps & Omit<React.HTMLAttributes<HTMLDivElement> & React.HTMLAttributes<HTMLSpanElement>, "color"> & {
3143
+ /**
3144
+ * Any of our named colors or a `hex`, `rgb` or `rgba` value.
3145
+ */
3146
+ color?: TextColor | CSSProperties['color'];
3147
+ /**
3148
+ * Determines the root element
3149
+ */
3150
+ component?: "div" | "span" | undefined;
3151
+ /**
3152
+ * Applies text styling to the child element instead of rendering a parent wrapper `span`/`div`.
3153
+ * Can only be used when wrapping a *single* child element/tag, and not raw text.
3154
+ */
3155
+ cloneElement?: boolean | undefined;
3156
+ } & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<CommonProps & Omit<React.HTMLAttributes<HTMLDivElement> & React.HTMLAttributes<HTMLSpanElement>, "color"> & {
3157
+ /**
3158
+ * Any of our named colors or a `hex`, `rgb` or `rgba` value.
3159
+ */
3160
+ color?: TextColor | CSSProperties['color'];
3161
+ /**
3162
+ * Determines the root element
3163
+ */
3164
+ component?: "div" | "span" | undefined;
3165
+ /**
3166
+ * Applies text styling to the child element instead of rendering a parent wrapper `span`/`div`.
3167
+ * Can only be used when wrapping a *single* child element/tag, and not raw text.
3168
+ */
3169
+ cloneElement?: boolean | undefined;
3170
+ } & WithEuiSystemProps<{}>, "euiTheme">>>;
3131
3171
 
3132
3172
  }
3133
3173
  declare module '@elastic/eui/src/components/text/text_align.styles' {
@@ -3156,8 +3196,9 @@ declare module '@elastic/eui/src/components/text/text_align' {
3156
3196
 
3157
3197
  }
3158
3198
  declare module '@elastic/eui/src/components/text/text' {
3159
- import { FunctionComponent, HTMLAttributes, CSSProperties } from 'react';
3199
+ import React, { FunctionComponent, HTMLAttributes, CSSProperties } from 'react';
3160
3200
  import { CommonProps } from '@elastic/eui/src/components/common';
3201
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
3161
3202
  import { TextColor } from '@elastic/eui/src/components/text/text_color';
3162
3203
  import { TextAlignment } from '@elastic/eui/src/components/text/text_align';
3163
3204
  export const TEXT_SIZES: readonly ["xs", "s", "m", "relative"];
@@ -3174,7 +3215,30 @@ declare module '@elastic/eui/src/components/text/text' {
3174
3215
  color?: TextColor | CSSProperties['color'];
3175
3216
  grow?: boolean;
3176
3217
  };
3177
- export const EuiText: FunctionComponent<EuiTextProps>;
3218
+ export const _EuiText: FunctionComponent<EuiTextProps & WithEuiSystemProps>;
3219
+ export const EuiText: React.ForwardRefExoticComponent<Omit<CommonProps & Omit<React.HTMLAttributes<HTMLDivElement>, "color"> & {
3220
+ textAlign?: "left" | "right" | "center" | undefined;
3221
+ /**
3222
+ * Determines the text size. Choose `relative` to control the `font-size` based on the value of a parent container.
3223
+ */
3224
+ size?: "s" | "xs" | "m" | "relative" | undefined;
3225
+ /**
3226
+ * Any of our named colors or a `hex`, `rgb` or `rgba` value.
3227
+ */
3228
+ color?: TextColor | CSSProperties['color'];
3229
+ grow?: boolean | undefined;
3230
+ } & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<CommonProps & Omit<React.HTMLAttributes<HTMLDivElement>, "color"> & {
3231
+ textAlign?: "left" | "right" | "center" | undefined;
3232
+ /**
3233
+ * Determines the text size. Choose `relative` to control the `font-size` based on the value of a parent container.
3234
+ */
3235
+ size?: "s" | "xs" | "m" | "relative" | undefined;
3236
+ /**
3237
+ * Any of our named colors or a `hex`, `rgb` or `rgba` value.
3238
+ */
3239
+ color?: TextColor | CSSProperties['color'];
3240
+ grow?: boolean | undefined;
3241
+ } & WithEuiSystemProps<{}>, "euiTheme">>>;
3178
3242
 
3179
3243
  }
3180
3244
  declare module '@elastic/eui/src/components/text' {
@@ -3993,7 +4057,8 @@ declare module '@elastic/eui/src/components/panel/panel.style' {
3993
4057
 
3994
4058
  }
3995
4059
  declare module '@elastic/eui/src/components/panel/panel' {
3996
- import { ButtonHTMLAttributes, FunctionComponent, HTMLAttributes, Ref } from 'react';
4060
+ import React, { ButtonHTMLAttributes, FunctionComponent, HTMLAttributes, Ref } from 'react';
4061
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
3997
4062
  import { _EuiBackgroundColor, EuiPaddingSize } from '@elastic/eui/src/global_styling';
3998
4063
  import { CommonProps, ExclusiveUnion } from '@elastic/eui/src/components/common';
3999
4064
  export const SIZES: readonly ["none", "xs", "s", "m", "l", "xl"]; const _SIZES: ("s" | "none" | "xs" | "m" | "l" | "xl")[];
@@ -4039,7 +4104,8 @@ declare module '@elastic/eui/src/components/panel/panel' {
4039
4104
  element?: 'button';
4040
4105
  }
4041
4106
  export type EuiPanelProps = ExclusiveUnion<_EuiPanelButtonlike, _EuiPanelDivlike>;
4042
- export const EuiPanel: FunctionComponent<EuiPanelProps>;
4107
+ export const _EuiPanel: FunctionComponent<EuiPanelProps & WithEuiSystemProps>;
4108
+ export const EuiPanel: React.ForwardRefExoticComponent<Omit<((import ("@elastic/eui/src/components/common").DisambiguateSet<_EuiPanelButtonlike, _EuiPanelDivlike> & _EuiPanelDivlike) | (import ("@elastic/eui/src/components/common").DisambiguateSet<_EuiPanelDivlike, _EuiPanelButtonlike> & _EuiPanelButtonlike)) & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<((import ("@elastic/eui/src/components/common").DisambiguateSet<_EuiPanelButtonlike, _EuiPanelDivlike> & _EuiPanelDivlike) | (import ("@elastic/eui/src/components/common").DisambiguateSet<_EuiPanelDivlike, _EuiPanelButtonlike> & _EuiPanelButtonlike)) & WithEuiSystemProps<{}>, "euiTheme">>>;
4043
4109
  export {};
4044
4110
 
4045
4111
  }
@@ -4167,6 +4233,7 @@ declare module '@elastic/eui/src/components/call_out/call_out' {
4167
4233
  import React, { HTMLAttributes, ReactNode } from 'react';
4168
4234
  import { CommonProps } from '@elastic/eui/src/components/common';
4169
4235
  import { IconType } from '@elastic/eui/src/components/icon';
4236
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
4170
4237
  export const COLORS: readonly ["primary", "success", "warning", "danger"];
4171
4238
  export type Color = typeof COLORS[number];
4172
4239
  export const HEADINGS: readonly ["h1", "h2", "h3", "h4", "h5", "h6", "p"]; type Heading = typeof HEADINGS[number]; type Size = 's' | 'm';
@@ -4177,13 +4244,14 @@ declare module '@elastic/eui/src/components/call_out/call_out' {
4177
4244
  size?: Size;
4178
4245
  heading?: Heading;
4179
4246
  };
4180
- export const EuiCallOut: React.ForwardRefExoticComponent<CommonProps & Omit<React.HTMLAttributes<HTMLDivElement>, "title" | "color"> & {
4247
+ export const _EuiCallOut: React.ForwardRefExoticComponent<CommonProps & Omit<React.HTMLAttributes<HTMLDivElement>, "title" | "color"> & {
4181
4248
  title?: ReactNode;
4182
4249
  iconType?: IconType | undefined;
4183
4250
  color?: "primary" | "success" | "warning" | "danger" | undefined;
4184
4251
  size?: Size | undefined;
4185
4252
  heading?: "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "p" | undefined;
4186
- } & React.RefAttributes<HTMLDivElement>>;
4253
+ } & WithEuiSystemProps<{}> & React.RefAttributes<HTMLDivElement>>;
4254
+ export const EuiCallOut: React.ForwardRefExoticComponent<Omit<EuiCallOutProps, "euiTheme"> & React.RefAttributes<Omit<EuiCallOutProps, "euiTheme">>>;
4187
4255
  export {};
4188
4256
 
4189
4257
  }
@@ -5907,8 +5975,9 @@ declare module '@elastic/eui/src/components/horizontal_rule/horizontal_rule.styl
5907
5975
 
5908
5976
  }
5909
5977
  declare module '@elastic/eui/src/components/horizontal_rule/horizontal_rule' {
5910
- import { FunctionComponent, HTMLAttributes } from 'react';
5978
+ import React, { FunctionComponent, HTMLAttributes } from 'react';
5911
5979
  import { CommonProps } from '@elastic/eui/src/components/common';
5980
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
5912
5981
  export const SIZES: readonly ["full", "half", "quarter"];
5913
5982
  export const MARGINS: readonly ["none", "xs", "s", "m", "l", "xl", "xxl"];
5914
5983
  export type EuiHorizontalRuleSize = typeof SIZES[number];
@@ -5920,7 +5989,8 @@ declare module '@elastic/eui/src/components/horizontal_rule/horizontal_rule' {
5920
5989
  size?: EuiHorizontalRuleSize;
5921
5990
  margin?: EuiHorizontalRuleMargin;
5922
5991
  }
5923
- export const EuiHorizontalRule: FunctionComponent<EuiHorizontalRuleProps>;
5992
+ export const _EuiHorizontalRule: FunctionComponent<EuiHorizontalRuleProps & WithEuiSystemProps>;
5993
+ export const EuiHorizontalRule: React.ForwardRefExoticComponent<Omit<EuiHorizontalRuleProps & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<EuiHorizontalRuleProps & WithEuiSystemProps<{}>, "euiTheme">>>;
5924
5994
 
5925
5995
  }
5926
5996
  declare module '@elastic/eui/src/components/horizontal_rule' {
@@ -6214,14 +6284,20 @@ declare module '@elastic/eui/src/components/spacer/spacer.styles' {
6214
6284
 
6215
6285
  }
6216
6286
  declare module '@elastic/eui/src/components/spacer/spacer' {
6217
- import { FunctionComponent, HTMLAttributes } from 'react';
6287
+ import React, { FunctionComponent, HTMLAttributes } from 'react';
6218
6288
  import { CommonProps } from '@elastic/eui/src/components/common';
6289
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
6219
6290
  export const SIZES: readonly ["xs", "s", "m", "l", "xl", "xxl"];
6220
6291
  export type SpacerSize = typeof SIZES[number];
6221
6292
  export type EuiSpacerProps = HTMLAttributes<HTMLDivElement> & CommonProps & {
6222
6293
  size?: SpacerSize;
6223
6294
  };
6224
- export const EuiSpacer: FunctionComponent<EuiSpacerProps>;
6295
+ export const _EuiSpacer: FunctionComponent<EuiSpacerProps & WithEuiSystemProps>;
6296
+ export const EuiSpacer: React.ForwardRefExoticComponent<Omit<React.HTMLAttributes<HTMLDivElement> & CommonProps & {
6297
+ size?: "s" | "xs" | "m" | "l" | "xl" | "xxl" | undefined;
6298
+ } & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<React.HTMLAttributes<HTMLDivElement> & CommonProps & {
6299
+ size?: "s" | "xs" | "m" | "l" | "xl" | "xxl" | undefined;
6300
+ } & WithEuiSystemProps<{}>, "euiTheme">>>;
6225
6301
 
6226
6302
  }
6227
6303
  declare module '@elastic/eui/src/components/spacer' {
@@ -6887,6 +6963,109 @@ declare module '@elastic/eui/src/services' {
6887
6963
  export { throttle } from '@elastic/eui/src/services/throttle';
6888
6964
  export * from '@elastic/eui/src/services/theme';
6889
6965
 
6966
+ }
6967
+ declare module '@elastic/eui/src/components/button/button' {
6968
+ import React, { FunctionComponent, Ref, CSSProperties, HTMLAttributes, ReactNode } from 'react';
6969
+ import { CommonProps, ExclusiveUnion, PropsForAnchor, PropsForButton } from '@elastic/eui/src/components/common';
6970
+ import { EuiButtonContentProps, EuiButtonContentType } from '@elastic/eui/src/components/button/_button_content_deprecated';
6971
+ export type ButtonColor = 'primary' | 'accent' | 'success' | 'warning' | 'danger' | 'ghost' | 'text';
6972
+ export type ButtonSize = 's' | 'm';
6973
+ export const colorToClassNameMap: {
6974
+ [color in ButtonColor]: string;
6975
+ };
6976
+ export const COLORS: ButtonColor[];
6977
+ export const sizeToClassNameMap: {
6978
+ [size in ButtonSize]: string | null;
6979
+ };
6980
+ export const SIZES: ButtonSize[];
6981
+ /**
6982
+ * Extends EuiButtonContentProps which provides
6983
+ * `iconType`, `iconSide`, and `textProps`
6984
+ */
6985
+ export interface EuiButtonProps extends EuiButtonContentProps, CommonProps {
6986
+ children?: ReactNode;
6987
+ /**
6988
+ * Make button a solid color for prominence
6989
+ */
6990
+ fill?: boolean;
6991
+ /**
6992
+ * Any of our named colors.
6993
+ */
6994
+ color?: ButtonColor;
6995
+ /**
6996
+ * Use size `s` in confined spaces
6997
+ */
6998
+ size?: ButtonSize;
6999
+ /**
7000
+ * `disabled` is also allowed
7001
+ */
7002
+ isDisabled?: boolean;
7003
+ /**
7004
+ * Applies the boolean state as the `aria-pressed` property to create a toggle button.
7005
+ * *Only use when the readable text does not change between states.*
7006
+ */
7007
+ isSelected?: boolean;
7008
+ /**
7009
+ * Extends the button to 100% width
7010
+ */
7011
+ fullWidth?: boolean;
7012
+ /**
7013
+ * Override the default minimum width
7014
+ */
7015
+ minWidth?: CSSProperties['minWidth'];
7016
+ /**
7017
+ * Force disables the button and changes the icon to a loading spinner
7018
+ */
7019
+ isLoading?: boolean;
7020
+ /**
7021
+ * Object of props passed to the <span/> wrapping the button's content
7022
+ */
7023
+ contentProps?: EuiButtonContentType;
7024
+ style?: CSSProperties;
7025
+ }
7026
+ export type EuiButtonPropsForAnchor = PropsForAnchor<EuiButtonProps, {
7027
+ buttonRef?: Ref<HTMLAnchorElement>;
7028
+ }>;
7029
+ export type EuiButtonPropsForButton = PropsForButton<EuiButtonProps, {
7030
+ buttonRef?: Ref<HTMLButtonElement>;
7031
+ }>;
7032
+ export type Props = ExclusiveUnion<EuiButtonPropsForAnchor, EuiButtonPropsForButton>;
7033
+ /**
7034
+ * EuiButton is largely responsible for providing relevant props
7035
+ * and the logic for element-specific attributes
7036
+ */
7037
+ export const EuiButton: FunctionComponent<Props>;
7038
+ export type EuiButtonDisplayProps = EuiButtonProps & HTMLAttributes<HTMLElement> & {
7039
+ /**
7040
+ * Provide a valid element to render the element as
7041
+ */
7042
+ element: 'a' | 'button' | 'span' | 'label';
7043
+ /**
7044
+ * Provide the component's base class name to build the class list on
7045
+ */
7046
+ baseClassName: string;
7047
+ };
7048
+ /**
7049
+ * *DEPRECATED*
7050
+ * EuiButtonDisplay is an internal-only component used for displaying
7051
+ * any element as a button.
7052
+ * NOTE: This component *must* be below EuiButton in the file and
7053
+ * EuiButton must also set a displayName for react-docgen-typescript
7054
+ * to correctly set EuiButton's docgenInfo and display a props table.
7055
+ * This component has been deprecated in favor of the new EuiButtonDisplay
7056
+ * that can be found in `src/components/button/button_display/_button_display.tsx`
7057
+ */
7058
+ export const EuiButtonDisplayDeprecated: React.ForwardRefExoticComponent<EuiButtonProps & React.HTMLAttributes<HTMLElement> & {
7059
+ /**
7060
+ * Provide a valid element to render the element as
7061
+ */
7062
+ element: 'a' | 'button' | 'span' | 'label';
7063
+ /**
7064
+ * Provide the component's base class name to build the class list on
7065
+ */
7066
+ baseClassName: string;
7067
+ } & React.RefAttributes<HTMLElement>>;
7068
+
6890
7069
  }
6891
7070
  declare module '@elastic/eui/src/components/accessibility/skip_link/skip_link.styles' {
6892
7071
  import { UseEuiTheme } from '@elastic/eui/src/services';
@@ -6898,9 +7077,10 @@ declare module '@elastic/eui/src/components/accessibility/skip_link/skip_link.st
6898
7077
 
6899
7078
  }
6900
7079
  declare module '@elastic/eui/src/components/accessibility/skip_link/skip_link' {
6901
- import { FunctionComponent, Ref } from 'react';
7080
+ import React, { FunctionComponent, Ref } from 'react';
6902
7081
  import { EuiButtonProps } from '@elastic/eui/src/components/button/button';
6903
7082
  import { PropsForAnchor, PropsForButton, ExclusiveUnion } from '@elastic/eui/src/components/common';
7083
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
6904
7084
  export const POSITIONS: readonly ["static", "fixed", "absolute"]; type Positions = typeof POSITIONS[number];
6905
7085
  interface EuiSkipLinkInterface extends EuiButtonProps {
6906
7086
  /**
@@ -6923,7 +7103,26 @@ declare module '@elastic/eui/src/components/accessibility/skip_link/skip_link' {
6923
7103
  buttonRef?: Ref<HTMLButtonElement>;
6924
7104
  }>;
6925
7105
  export type EuiSkipLinkProps = ExclusiveUnion<propsForAnchor, propsForButton>;
6926
- export const EuiSkipLink: FunctionComponent<EuiSkipLinkProps>;
7106
+ export const _EuiSkipLink: FunctionComponent<EuiSkipLinkProps & WithEuiSystemProps>;
7107
+ export const EuiSkipLink: React.ForwardRefExoticComponent<Omit<((import ("@elastic/eui/src/components/common").DisambiguateSet<propsForAnchor, propsForButton> & EuiSkipLinkInterface & {
7108
+ onClick?: React.MouseEventHandler<HTMLButtonElement> | undefined;
7109
+ } & React.ButtonHTMLAttributes<HTMLButtonElement> & {
7110
+ buttonRef?: React.Ref<HTMLButtonElement> | undefined;
7111
+ }) | (import ("@elastic/eui/src/components/common").DisambiguateSet<propsForButton, propsForAnchor> & EuiSkipLinkInterface & {
7112
+ href?: string | undefined;
7113
+ onClick?: React.MouseEventHandler<HTMLAnchorElement> | undefined;
7114
+ } & React.AnchorHTMLAttributes<HTMLAnchorElement> & {
7115
+ buttonRef?: React.Ref<HTMLAnchorElement> | undefined;
7116
+ })) & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<((import ("@elastic/eui/src/components/common").DisambiguateSet<propsForAnchor, propsForButton> & EuiSkipLinkInterface & {
7117
+ onClick?: React.MouseEventHandler<HTMLButtonElement> | undefined;
7118
+ } & React.ButtonHTMLAttributes<HTMLButtonElement> & {
7119
+ buttonRef?: React.Ref<HTMLButtonElement> | undefined;
7120
+ }) | (import ("@elastic/eui/src/components/common").DisambiguateSet<propsForButton, propsForAnchor> & EuiSkipLinkInterface & {
7121
+ href?: string | undefined;
7122
+ onClick?: React.MouseEventHandler<HTMLAnchorElement> | undefined;
7123
+ } & React.AnchorHTMLAttributes<HTMLAnchorElement> & {
7124
+ buttonRef?: React.Ref<HTMLAnchorElement> | undefined;
7125
+ })) & WithEuiSystemProps<{}>, "euiTheme">>>;
6927
7126
  export {};
6928
7127
 
6929
7128
  }
@@ -7272,8 +7471,9 @@ declare module '@elastic/eui/src/components/avatar/avatar.styles' {
7272
7471
 
7273
7472
  }
7274
7473
  declare module '@elastic/eui/src/components/avatar/avatar' {
7275
- import { HTMLAttributes, FunctionComponent } from 'react';
7474
+ import React, { HTMLAttributes, FunctionComponent } from 'react';
7276
7475
  import { CommonProps, ExclusiveUnion } from '@elastic/eui/src/components/common';
7476
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
7277
7477
  import { IconType, IconSize, IconColor } from '@elastic/eui/src/components/icon';
7278
7478
  export const SIZES: readonly ["s", "m", "l", "xl"];
7279
7479
  export type EuiAvatarSize = typeof SIZES[number];
@@ -7330,7 +7530,8 @@ declare module '@elastic/eui/src/components/avatar/avatar' {
7330
7530
  */
7331
7531
  isDisabled?: boolean;
7332
7532
  };
7333
- export const EuiAvatar: FunctionComponent<EuiAvatarProps>;
7533
+ export const _EuiAvatar: FunctionComponent<EuiAvatarProps & WithEuiSystemProps>;
7534
+ export const EuiAvatar: React.ForwardRefExoticComponent<Omit<EuiAvatarProps & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<EuiAvatarProps & WithEuiSystemProps<{}>, "euiTheme">>>;
7334
7535
  export const checkValidColor: (color: EuiAvatarProps['color']) => void;
7335
7536
  export {};
7336
7537
 
@@ -7582,7 +7783,8 @@ declare module '@elastic/eui/src/components/bottom_bar/bottom_bar.styles' {
7582
7783
  }
7583
7784
  declare module '@elastic/eui/src/components/bottom_bar/bottom_bar' {
7584
7785
  import React, { CSSProperties, HTMLAttributes } from 'react';
7585
- import { CommonProps, ExclusiveUnion } from '@elastic/eui/src/components/common'; type BottomBarPaddingSize = 'none' | 's' | 'm' | 'l';
7786
+ import { CommonProps, ExclusiveUnion } from '@elastic/eui/src/components/common';
7787
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system'; type BottomBarPaddingSize = 'none' | 's' | 'm' | 'l';
7586
7788
  export const paddingSizeToClassNameMap: {
7587
7789
  [value in BottomBarPaddingSize]: string | null;
7588
7790
  };
@@ -7641,6 +7843,7 @@ declare module '@elastic/eui/src/components/bottom_bar/bottom_bar' {
7641
7843
  */
7642
7844
  left?: CSSProperties['left'];
7643
7845
  };
7846
+ export const _EuiBottomBar: React.ForwardRefExoticComponent<(EuiBottomBarProps & WithEuiSystemProps<{}>) & React.RefAttributes<HTMLElement>>;
7644
7847
  export const EuiBottomBar: React.ForwardRefExoticComponent<EuiBottomBarProps & React.RefAttributes<HTMLElement>>;
7645
7848
  export {};
7646
7849
 
@@ -7652,6 +7855,7 @@ declare module '@elastic/eui/src/components/bottom_bar' {
7652
7855
  }
7653
7856
  declare module '@elastic/eui/src/components/link/link' {
7654
7857
  import React, { AnchorHTMLAttributes, ButtonHTMLAttributes, MouseEventHandler } from 'react';
7858
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
7655
7859
  import { CommonProps, ExclusiveUnion } from '@elastic/eui/src/components/common';
7656
7860
  export type EuiLinkType = 'button' | 'reset' | 'submit';
7657
7861
  export const COLORS: readonly ["primary", "subdued", "success", "accent", "danger", "warning", "text", "ghost"];
@@ -7681,8 +7885,9 @@ declare module '@elastic/eui/src/components/link/link' {
7681
7885
  export interface EuiLinkAnchorProps extends CommonProps, Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'type' | 'color' | 'onClick'>, LinkAnchorProps {
7682
7886
  onClick?: MouseEventHandler<HTMLAnchorElement>;
7683
7887
  }
7684
- export type EuiLinkProps = ExclusiveUnion<EuiLinkButtonProps, EuiLinkAnchorProps>; const EuiLink: React.ForwardRefExoticComponent<((import ("@elastic/eui/src/components/common").DisambiguateSet<EuiLinkButtonProps, EuiLinkAnchorProps> & EuiLinkAnchorProps) | (import ("@elastic/eui/src/components/common").DisambiguateSet<EuiLinkAnchorProps, EuiLinkButtonProps> & EuiLinkButtonProps)) & React.RefAttributes<HTMLAnchorElement | HTMLButtonElement>>;
7685
- export { EuiLink };
7888
+ export type EuiLinkProps = ExclusiveUnion<EuiLinkButtonProps, EuiLinkAnchorProps>;
7889
+ export const _EuiLink: React.ForwardRefExoticComponent<(((import ("@elastic/eui/src/components/common").DisambiguateSet<EuiLinkButtonProps, EuiLinkAnchorProps> & EuiLinkAnchorProps) | (import ("@elastic/eui/src/components/common").DisambiguateSet<EuiLinkAnchorProps, EuiLinkButtonProps> & EuiLinkButtonProps)) & WithEuiSystemProps<{}>) & React.RefAttributes<HTMLAnchorElement | HTMLButtonElement>>;
7890
+ export const EuiLink: React.ForwardRefExoticComponent<Omit<(import ("@elastic/eui/src/components/common").DisambiguateSet<EuiLinkButtonProps, EuiLinkAnchorProps> & EuiLinkAnchorProps) | (import ("@elastic/eui/src/components/common").DisambiguateSet<EuiLinkAnchorProps, EuiLinkButtonProps> & EuiLinkButtonProps), "euiTheme"> & React.RefAttributes<Omit<(import ("@elastic/eui/src/components/common").DisambiguateSet<EuiLinkButtonProps, EuiLinkAnchorProps> & EuiLinkAnchorProps) | (import ("@elastic/eui/src/components/common").DisambiguateSet<EuiLinkAnchorProps, EuiLinkButtonProps> & EuiLinkButtonProps), "euiTheme">>>;
7686
7891
 
7687
7892
  }
7688
7893
  declare module '@elastic/eui/src/components/link' {
@@ -8505,8 +8710,9 @@ declare module '@elastic/eui/src/components/mark/mark.styles' {
8505
8710
 
8506
8711
  }
8507
8712
  declare module '@elastic/eui/src/components/mark/mark' {
8508
- import { HTMLAttributes, FunctionComponent, ReactNode } from 'react';
8713
+ import React, { HTMLAttributes, FunctionComponent, ReactNode } from 'react';
8509
8714
  import { CommonProps } from '@elastic/eui/src/components/common';
8715
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
8510
8716
  export type EuiMarkProps = HTMLAttributes<HTMLElement> & CommonProps & {
8511
8717
  /**
8512
8718
  * Set to `false` to remove the CSS :before and :after
@@ -8518,7 +8724,28 @@ declare module '@elastic/eui/src/components/mark/mark' {
8518
8724
  */
8519
8725
  children: ReactNode;
8520
8726
  };
8521
- export const EuiMark: FunctionComponent<EuiMarkProps>;
8727
+ export const _EuiMark: FunctionComponent<EuiMarkProps & WithEuiSystemProps>;
8728
+ export const EuiMark: React.ForwardRefExoticComponent<Omit<React.HTMLAttributes<HTMLElement> & CommonProps & {
8729
+ /**
8730
+ * Set to `false` to remove the CSS :before and :after
8731
+ * screen reader helper text
8732
+ */
8733
+ hasScreenReaderHelpText?: boolean | undefined;
8734
+ /**
8735
+ * ReactNode to render as this component's content
8736
+ */
8737
+ children: ReactNode;
8738
+ } & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<React.HTMLAttributes<HTMLElement> & CommonProps & {
8739
+ /**
8740
+ * Set to `false` to remove the CSS :before and :after
8741
+ * screen reader helper text
8742
+ */
8743
+ hasScreenReaderHelpText?: boolean | undefined;
8744
+ /**
8745
+ * ReactNode to render as this component's content
8746
+ */
8747
+ children: ReactNode;
8748
+ } & WithEuiSystemProps<{}>, "euiTheme">>>;
8522
8749
 
8523
8750
  }
8524
8751
  declare module '@elastic/eui/src/components/mark' {
@@ -12619,124 +12846,314 @@ declare module '@elastic/eui/src/components/error_boundary/error_boundary' {
12619
12846
  }
12620
12847
  export type EuiErrorBoundaryProps = CommonProps & HTMLAttributes<HTMLDivElement> & {
12621
12848
  /**
12622
- * ReactNode to render as this component's content
12849
+ * ReactNode to render as this component's content
12850
+ */
12851
+ children: ReactNode;
12852
+ };
12853
+ export class EuiErrorBoundary extends Component<EuiErrorBoundaryProps, EuiErrorBoundaryState> {
12854
+ constructor(props: EuiErrorBoundaryProps);
12855
+ componentDidCatch({ message, stack }: Error): void;
12856
+ render(): React.ReactNode;
12857
+ }
12858
+ export {};
12859
+
12860
+ }
12861
+ declare module '@elastic/eui/src/components/error_boundary' {
12862
+ export type { EuiErrorBoundaryProps } from '@elastic/eui/src/components/error_boundary/error_boundary';
12863
+ export { EuiErrorBoundary } from '@elastic/eui/src/components/error_boundary/error_boundary';
12864
+
12865
+ }
12866
+ declare module '@elastic/eui/src/components/expression/expression.styles' {
12867
+ import { UseEuiTheme } from '@elastic/eui/src/services';
12868
+ export const euiExpressionStyles: (euiThemeContext: UseEuiTheme) => {
12869
+ euiExpression: import("@emotion/utils").SerializedStyles;
12870
+ columns: import("@emotion/utils").SerializedStyles;
12871
+ truncate: import("@emotion/utils").SerializedStyles;
12872
+ isClickable: import("@emotion/utils").SerializedStyles;
12873
+ isActive: {
12874
+ base: import("@emotion/utils").SerializedStyles;
12875
+ subdued: import("@emotion/utils").SerializedStyles;
12876
+ primary: import("@emotion/utils").SerializedStyles;
12877
+ success: import("@emotion/utils").SerializedStyles;
12878
+ warning: import("@emotion/utils").SerializedStyles;
12879
+ danger: import("@emotion/utils").SerializedStyles;
12880
+ accent: import("@emotion/utils").SerializedStyles;
12881
+ };
12882
+ subdued: import("@emotion/utils").SerializedStyles;
12883
+ primary: import("@emotion/utils").SerializedStyles;
12884
+ success: import("@emotion/utils").SerializedStyles;
12885
+ warning: import("@emotion/utils").SerializedStyles;
12886
+ danger: import("@emotion/utils").SerializedStyles;
12887
+ accent: import("@emotion/utils").SerializedStyles;
12888
+ };
12889
+ export const euiExpressionDescriptionStyles: ({ euiTheme }: UseEuiTheme) => {
12890
+ euiExpression__description: import("@emotion/utils").SerializedStyles;
12891
+ truncate: import("@emotion/utils").SerializedStyles;
12892
+ subdued: import("@emotion/utils").SerializedStyles;
12893
+ primary: import("@emotion/utils").SerializedStyles;
12894
+ success: import("@emotion/utils").SerializedStyles;
12895
+ warning: import("@emotion/utils").SerializedStyles;
12896
+ danger: import("@emotion/utils").SerializedStyles;
12897
+ accent: import("@emotion/utils").SerializedStyles;
12898
+ isUppercase: import("@emotion/utils").SerializedStyles;
12899
+ columns: import("@emotion/utils").SerializedStyles;
12900
+ };
12901
+ export const euiExpressionValueStyles: ({}: UseEuiTheme) => {
12902
+ euiExpression__value: import("@emotion/utils").SerializedStyles;
12903
+ truncate: import("@emotion/utils").SerializedStyles;
12904
+ columns: import("@emotion/utils").SerializedStyles;
12905
+ };
12906
+ export const euiExpressionIconStyles: ({ euiTheme }: UseEuiTheme) => {
12907
+ euiExpression__icon: import("@emotion/utils").SerializedStyles;
12908
+ columns: import("@emotion/utils").SerializedStyles;
12909
+ };
12910
+
12911
+ }
12912
+ declare module '@elastic/eui/src/components/expression/expression' {
12913
+ import React, { ButtonHTMLAttributes, HTMLAttributes, MouseEventHandler, ReactNode, FunctionComponent } from 'react';
12914
+ import { CommonProps, ExclusiveUnion } from '@elastic/eui/src/components/common';
12915
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
12916
+ export const COLORS: readonly ["subdued", "primary", "success", "accent", "warning", "danger"];
12917
+ export type ExpressionColor = typeof COLORS[number];
12918
+ export type EuiExpressionProps = CommonProps & {
12919
+ /**
12920
+ * First part of the expression
12921
+ */
12922
+ description: ReactNode;
12923
+ descriptionProps?: HTMLAttributes<HTMLSpanElement>;
12924
+ /**
12925
+ * Second part of the expression
12926
+ */
12927
+ value?: ReactNode;
12928
+ valueProps?: HTMLAttributes<HTMLSpanElement>;
12929
+ /**
12930
+ * Color of the `description`
12931
+ */
12932
+ color?: ExpressionColor;
12933
+ /**
12934
+ * Should the `description` auto-uppercase?
12935
+ */
12936
+ uppercase?: boolean;
12937
+ /**
12938
+ * Adds an solid border at the bottom
12939
+ */
12940
+ isActive?: boolean;
12941
+ /**
12942
+ * Turns the component into a button and adds an editable style border at the bottom
12943
+ */
12944
+ onClick?: MouseEventHandler<HTMLButtonElement>;
12945
+ /**
12946
+ * Sets the display style for the expression. Defaults to `inline`
12947
+ */
12948
+ display?: 'inline' | 'columns';
12949
+ /**
12950
+ * Forces color to display as `danger` and shows an `alert` icon
12951
+ */
12952
+ isInvalid?: boolean;
12953
+ /**
12954
+ * Sets a custom width for the description when using the columns layout.
12955
+ * Set to a number for a custom width in `px`.
12956
+ * Set to a string for a custom width in custom measurement.
12957
+ * Defaults to `20%`
12958
+ */
12959
+ descriptionWidth?: number | string;
12960
+ /**
12961
+ * Sets how to handle the wrapping of long text.
12962
+ */
12963
+ textWrap?: 'break-word' | 'truncate';
12964
+ }; type Buttonlike = EuiExpressionProps & Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'value'> & {
12965
+ onClick: MouseEventHandler<HTMLButtonElement>;
12966
+ }; type Spanlike = EuiExpressionProps & Omit<HTMLAttributes<HTMLSpanElement>, 'value'>;
12967
+ export const _EuiExpression: FunctionComponent<ExclusiveUnion<Buttonlike, Spanlike> & WithEuiSystemProps>;
12968
+ export const EuiExpression: React.ForwardRefExoticComponent<Omit<((import ("@elastic/eui/src/components/common").DisambiguateSet<Buttonlike, Spanlike> & CommonProps & {
12969
+ /**
12970
+ * First part of the expression
12971
+ */
12972
+ description: ReactNode;
12973
+ descriptionProps?: React.HTMLAttributes<HTMLSpanElement> | undefined;
12974
+ /**
12975
+ * Second part of the expression
12976
+ */
12977
+ value?: ReactNode;
12978
+ valueProps?: React.HTMLAttributes<HTMLSpanElement> | undefined;
12979
+ /**
12980
+ * Color of the `description`
12981
+ */
12982
+ color?: "primary" | "success" | "accent" | "warning" | "danger" | "subdued" | undefined;
12983
+ /**
12984
+ * Should the `description` auto-uppercase?
12985
+ */
12986
+ uppercase?: boolean | undefined;
12987
+ /**
12988
+ * Adds an solid border at the bottom
12989
+ */
12990
+ isActive?: boolean | undefined;
12991
+ /**
12992
+ * Turns the component into a button and adds an editable style border at the bottom
12993
+ */
12994
+ onClick?: React.MouseEventHandler<HTMLButtonElement> | undefined;
12995
+ /**
12996
+ * Sets the display style for the expression. Defaults to `inline`
12997
+ */
12998
+ display?: "inline" | "columns" | undefined;
12999
+ /**
13000
+ * Forces color to display as `danger` and shows an `alert` icon
13001
+ */
13002
+ isInvalid?: boolean | undefined;
13003
+ /**
13004
+ * Sets a custom width for the description when using the columns layout.
13005
+ * Set to a number for a custom width in `px`.
13006
+ * Set to a string for a custom width in custom measurement.
13007
+ * Defaults to `20%`
13008
+ */
13009
+ descriptionWidth?: string | number | undefined;
13010
+ /**
13011
+ * Sets how to handle the wrapping of long text.
13012
+ */
13013
+ textWrap?: "break-word" | "truncate" | undefined;
13014
+ } & Omit<React.HTMLAttributes<HTMLSpanElement>, "value">) | (import ("@elastic/eui/src/components/common").DisambiguateSet<Spanlike, Buttonlike> & CommonProps & {
13015
+ /**
13016
+ * First part of the expression
13017
+ */
13018
+ description: ReactNode;
13019
+ descriptionProps?: React.HTMLAttributes<HTMLSpanElement> | undefined;
13020
+ /**
13021
+ * Second part of the expression
13022
+ */
13023
+ value?: ReactNode;
13024
+ valueProps?: React.HTMLAttributes<HTMLSpanElement> | undefined;
13025
+ /**
13026
+ * Color of the `description`
13027
+ */
13028
+ color?: "primary" | "success" | "accent" | "warning" | "danger" | "subdued" | undefined;
13029
+ /**
13030
+ * Should the `description` auto-uppercase?
13031
+ */
13032
+ uppercase?: boolean | undefined;
13033
+ /**
13034
+ * Adds an solid border at the bottom
13035
+ */
13036
+ isActive?: boolean | undefined;
13037
+ /**
13038
+ * Turns the component into a button and adds an editable style border at the bottom
13039
+ */
13040
+ onClick?: React.MouseEventHandler<HTMLButtonElement> | undefined;
13041
+ /**
13042
+ * Sets the display style for the expression. Defaults to `inline`
13043
+ */
13044
+ display?: "inline" | "columns" | undefined;
13045
+ /**
13046
+ * Forces color to display as `danger` and shows an `alert` icon
13047
+ */
13048
+ isInvalid?: boolean | undefined;
13049
+ /**
13050
+ * Sets a custom width for the description when using the columns layout.
13051
+ * Set to a number for a custom width in `px`.
13052
+ * Set to a string for a custom width in custom measurement.
13053
+ * Defaults to `20%`
13054
+ */
13055
+ descriptionWidth?: string | number | undefined;
13056
+ /**
13057
+ * Sets how to handle the wrapping of long text.
13058
+ */
13059
+ textWrap?: "break-word" | "truncate" | undefined;
13060
+ } & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "value"> & {
13061
+ onClick: MouseEventHandler<HTMLButtonElement>;
13062
+ })) & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<((import ("@elastic/eui/src/components/common").DisambiguateSet<Buttonlike, Spanlike> & CommonProps & {
13063
+ /**
13064
+ * First part of the expression
13065
+ */
13066
+ description: ReactNode;
13067
+ descriptionProps?: React.HTMLAttributes<HTMLSpanElement> | undefined;
13068
+ /**
13069
+ * Second part of the expression
13070
+ */
13071
+ value?: ReactNode;
13072
+ valueProps?: React.HTMLAttributes<HTMLSpanElement> | undefined;
13073
+ /**
13074
+ * Color of the `description`
13075
+ */
13076
+ color?: "primary" | "success" | "accent" | "warning" | "danger" | "subdued" | undefined;
13077
+ /**
13078
+ * Should the `description` auto-uppercase?
13079
+ */
13080
+ uppercase?: boolean | undefined;
13081
+ /**
13082
+ * Adds an solid border at the bottom
13083
+ */
13084
+ isActive?: boolean | undefined;
13085
+ /**
13086
+ * Turns the component into a button and adds an editable style border at the bottom
13087
+ */
13088
+ onClick?: React.MouseEventHandler<HTMLButtonElement> | undefined;
13089
+ /**
13090
+ * Sets the display style for the expression. Defaults to `inline`
13091
+ */
13092
+ display?: "inline" | "columns" | undefined;
13093
+ /**
13094
+ * Forces color to display as `danger` and shows an `alert` icon
13095
+ */
13096
+ isInvalid?: boolean | undefined;
13097
+ /**
13098
+ * Sets a custom width for the description when using the columns layout.
13099
+ * Set to a number for a custom width in `px`.
13100
+ * Set to a string for a custom width in custom measurement.
13101
+ * Defaults to `20%`
13102
+ */
13103
+ descriptionWidth?: string | number | undefined;
13104
+ /**
13105
+ * Sets how to handle the wrapping of long text.
12623
13106
  */
12624
- children: ReactNode;
12625
- };
12626
- export class EuiErrorBoundary extends Component<EuiErrorBoundaryProps, EuiErrorBoundaryState> {
12627
- constructor(props: EuiErrorBoundaryProps);
12628
- componentDidCatch({ message, stack }: Error): void;
12629
- render(): React.ReactNode;
12630
- }
12631
- export {};
12632
-
12633
- }
12634
- declare module '@elastic/eui/src/components/error_boundary' {
12635
- export type { EuiErrorBoundaryProps } from '@elastic/eui/src/components/error_boundary/error_boundary';
12636
- export { EuiErrorBoundary } from '@elastic/eui/src/components/error_boundary/error_boundary';
12637
-
12638
- }
12639
- declare module '@elastic/eui/src/components/expression/expression.styles' {
12640
- import { UseEuiTheme } from '@elastic/eui/src/services';
12641
- export const euiExpressionStyles: (euiThemeContext: UseEuiTheme) => {
12642
- euiExpression: import("@emotion/utils").SerializedStyles;
12643
- columns: import("@emotion/utils").SerializedStyles;
12644
- truncate: import("@emotion/utils").SerializedStyles;
12645
- isClickable: import("@emotion/utils").SerializedStyles;
12646
- isActive: {
12647
- base: import("@emotion/utils").SerializedStyles;
12648
- subdued: import("@emotion/utils").SerializedStyles;
12649
- primary: import("@emotion/utils").SerializedStyles;
12650
- success: import("@emotion/utils").SerializedStyles;
12651
- warning: import("@emotion/utils").SerializedStyles;
12652
- danger: import("@emotion/utils").SerializedStyles;
12653
- accent: import("@emotion/utils").SerializedStyles;
12654
- };
12655
- subdued: import("@emotion/utils").SerializedStyles;
12656
- primary: import("@emotion/utils").SerializedStyles;
12657
- success: import("@emotion/utils").SerializedStyles;
12658
- warning: import("@emotion/utils").SerializedStyles;
12659
- danger: import("@emotion/utils").SerializedStyles;
12660
- accent: import("@emotion/utils").SerializedStyles;
12661
- };
12662
- export const euiExpressionDescriptionStyles: ({ euiTheme }: UseEuiTheme) => {
12663
- euiExpression__description: import("@emotion/utils").SerializedStyles;
12664
- truncate: import("@emotion/utils").SerializedStyles;
12665
- subdued: import("@emotion/utils").SerializedStyles;
12666
- primary: import("@emotion/utils").SerializedStyles;
12667
- success: import("@emotion/utils").SerializedStyles;
12668
- warning: import("@emotion/utils").SerializedStyles;
12669
- danger: import("@emotion/utils").SerializedStyles;
12670
- accent: import("@emotion/utils").SerializedStyles;
12671
- isUppercase: import("@emotion/utils").SerializedStyles;
12672
- columns: import("@emotion/utils").SerializedStyles;
12673
- };
12674
- export const euiExpressionValueStyles: ({}: UseEuiTheme) => {
12675
- euiExpression__value: import("@emotion/utils").SerializedStyles;
12676
- truncate: import("@emotion/utils").SerializedStyles;
12677
- columns: import("@emotion/utils").SerializedStyles;
12678
- };
12679
- export const euiExpressionIconStyles: ({ euiTheme }: UseEuiTheme) => {
12680
- euiExpression__icon: import("@emotion/utils").SerializedStyles;
12681
- columns: import("@emotion/utils").SerializedStyles;
12682
- };
12683
-
12684
- }
12685
- declare module '@elastic/eui/src/components/expression/expression' {
12686
- import { ButtonHTMLAttributes, HTMLAttributes, MouseEventHandler, ReactNode, FunctionComponent } from 'react';
12687
- import { CommonProps, ExclusiveUnion } from '@elastic/eui/src/components/common';
12688
- export const COLORS: readonly ["subdued", "primary", "success", "accent", "warning", "danger"];
12689
- export type ExpressionColor = typeof COLORS[number];
12690
- export type EuiExpressionProps = CommonProps & {
13107
+ textWrap?: "break-word" | "truncate" | undefined;
13108
+ } & Omit<React.HTMLAttributes<HTMLSpanElement>, "value">) | (import ("@elastic/eui/src/components/common").DisambiguateSet<Spanlike, Buttonlike> & CommonProps & {
12691
13109
  /**
12692
13110
  * First part of the expression
12693
13111
  */
12694
13112
  description: ReactNode;
12695
- descriptionProps?: HTMLAttributes<HTMLSpanElement>;
13113
+ descriptionProps?: React.HTMLAttributes<HTMLSpanElement> | undefined;
12696
13114
  /**
12697
13115
  * Second part of the expression
12698
13116
  */
12699
13117
  value?: ReactNode;
12700
- valueProps?: HTMLAttributes<HTMLSpanElement>;
13118
+ valueProps?: React.HTMLAttributes<HTMLSpanElement> | undefined;
12701
13119
  /**
12702
13120
  * Color of the `description`
12703
13121
  */
12704
- color?: ExpressionColor;
13122
+ color?: "primary" | "success" | "accent" | "warning" | "danger" | "subdued" | undefined;
12705
13123
  /**
12706
13124
  * Should the `description` auto-uppercase?
12707
13125
  */
12708
- uppercase?: boolean;
13126
+ uppercase?: boolean | undefined;
12709
13127
  /**
12710
13128
  * Adds an solid border at the bottom
12711
13129
  */
12712
- isActive?: boolean;
13130
+ isActive?: boolean | undefined;
12713
13131
  /**
12714
13132
  * Turns the component into a button and adds an editable style border at the bottom
12715
13133
  */
12716
- onClick?: MouseEventHandler<HTMLButtonElement>;
13134
+ onClick?: React.MouseEventHandler<HTMLButtonElement> | undefined;
12717
13135
  /**
12718
13136
  * Sets the display style for the expression. Defaults to `inline`
12719
13137
  */
12720
- display?: 'inline' | 'columns';
13138
+ display?: "inline" | "columns" | undefined;
12721
13139
  /**
12722
13140
  * Forces color to display as `danger` and shows an `alert` icon
12723
13141
  */
12724
- isInvalid?: boolean;
13142
+ isInvalid?: boolean | undefined;
12725
13143
  /**
12726
13144
  * Sets a custom width for the description when using the columns layout.
12727
13145
  * Set to a number for a custom width in `px`.
12728
13146
  * Set to a string for a custom width in custom measurement.
12729
13147
  * Defaults to `20%`
12730
13148
  */
12731
- descriptionWidth?: number | string;
13149
+ descriptionWidth?: string | number | undefined;
12732
13150
  /**
12733
13151
  * Sets how to handle the wrapping of long text.
12734
13152
  */
12735
- textWrap?: 'break-word' | 'truncate';
12736
- }; type Buttonlike = EuiExpressionProps & Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'value'> & {
13153
+ textWrap?: "break-word" | "truncate" | undefined;
13154
+ } & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "value"> & {
12737
13155
  onClick: MouseEventHandler<HTMLButtonElement>;
12738
- }; type Spanlike = EuiExpressionProps & Omit<HTMLAttributes<HTMLSpanElement>, 'value'>;
12739
- export const EuiExpression: FunctionComponent<ExclusiveUnion<Buttonlike, Spanlike>>;
13156
+ })) & WithEuiSystemProps<{}>, "euiTheme">>>;
12740
13157
  export {};
12741
13158
 
12742
13159
  }
@@ -12744,10 +13161,151 @@ declare module '@elastic/eui/src/components/expression' {
12744
13161
  export type { EuiExpressionProps } from '@elastic/eui/src/components/expression/expression';
12745
13162
  export { EuiExpression } from '@elastic/eui/src/components/expression/expression';
12746
13163
 
13164
+ }
13165
+ declare module '@elastic/eui/src/components/facet/facet_button.styles' {
13166
+ import { UseEuiTheme } from '@elastic/eui/src/services';
13167
+ export const euiFacetButtonStyles: ({ euiTheme }: UseEuiTheme) => {
13168
+ euiFacetButton: import("@emotion/utils").SerializedStyles;
13169
+ };
13170
+ export const euiFacetButtonTextStyles: ({ euiTheme }: UseEuiTheme) => {
13171
+ euiFacetButton__text: import("@emotion/utils").SerializedStyles;
13172
+ isSelected: import("@emotion/utils").SerializedStyles;
13173
+ unSelected: import("@emotion/utils").SerializedStyles;
13174
+ };
13175
+ export const euiFacetButtonIconStyles: () => {
13176
+ euiFacetButton__icon: import("@emotion/utils").SerializedStyles;
13177
+ isDisabled: import("@emotion/utils").SerializedStyles;
13178
+ };
13179
+ export const euiFacetButtonLoadingSpinnerStyles: () => {
13180
+ euiFacetButton__loadingSpinner: import("@emotion/utils").SerializedStyles;
13181
+ };
13182
+ export const euiFacetButtonQuantityStyles: () => {
13183
+ euiFacetButton__quantity: import("@emotion/utils").SerializedStyles;
13184
+ isDisabled: import("@emotion/utils").SerializedStyles;
13185
+ };
13186
+
13187
+ }
13188
+ declare module '@elastic/eui/src/components/button/button_display/_button_display.styles' {
13189
+ import { UseEuiTheme } from '@elastic/eui/src/services';
13190
+ export const euiButtonBaseCSS: () => string;
13191
+ export const euiButtonDisplayStyles: (euiThemeContext: UseEuiTheme, minWidth: string) => {
13192
+ euiButtonDisplay: import("@emotion/utils").SerializedStyles;
13193
+ isDisabled: import("@emotion/utils").SerializedStyles;
13194
+ fullWidth: import("@emotion/utils").SerializedStyles;
13195
+ xs: import("@emotion/utils").SerializedStyles;
13196
+ s: import("@emotion/utils").SerializedStyles;
13197
+ m: import("@emotion/utils").SerializedStyles;
13198
+ };
13199
+
13200
+ }
13201
+ declare module '@elastic/eui/src/components/button/button_display/_button_display_content.styles' {
13202
+ import { UseEuiTheme } from '@elastic/eui/src/services';
13203
+ export const euiButtonDisplayContentStyles: ({ euiTheme }: UseEuiTheme) => {
13204
+ euiButtonDisplayContent: import("@emotion/utils").SerializedStyles;
13205
+ left: import("@emotion/utils").SerializedStyles;
13206
+ right: import("@emotion/utils").SerializedStyles;
13207
+ euiButtonDisplayContent__spinner: import("@emotion/utils").SerializedStyles;
13208
+ euiButtonDisplayContent__icon: import("@emotion/utils").SerializedStyles;
13209
+ isDisabled: import("@emotion/utils").SerializedStyles;
13210
+ };
13211
+
13212
+ }
13213
+ declare module '@elastic/eui/src/components/button/button_display/_button_display_content' {
13214
+ import { HTMLAttributes, FunctionComponent, Ref } from 'react';
13215
+ import { CommonProps } from '@elastic/eui/src/components/common';
13216
+ import { IconType } from '@elastic/eui/src/components/icon';
13217
+ export type ButtonContentIconSide = 'left' | 'right' | undefined;
13218
+ export type EuiButtonDisplayContentType = HTMLAttributes<HTMLSpanElement>;
13219
+ /**
13220
+ * *INTERNAL ONLY*
13221
+ * This component is simply a helper component for reuse within other button components.
13222
+ */
13223
+ export interface EuiButtonDisplayContentProps extends CommonProps {
13224
+ /**
13225
+ * Any `type` accepted by EuiIcon
13226
+ */
13227
+ iconType?: IconType;
13228
+ /**
13229
+ * Can only be one side `left` or `right`
13230
+ */
13231
+ iconSide?: ButtonContentIconSide;
13232
+ isLoading?: boolean;
13233
+ /**
13234
+ * Object of props passed to the <span/> wrapping the content's text/children only (not icon)
13235
+ */
13236
+ textProps?: HTMLAttributes<HTMLSpanElement> & CommonProps & {
13237
+ ref?: Ref<HTMLSpanElement>;
13238
+ 'data-text'?: string;
13239
+ };
13240
+ iconSize?: 's' | 'm';
13241
+ isDisabled: boolean;
13242
+ }
13243
+ export const EuiButtonDisplayContent: FunctionComponent<EuiButtonDisplayContentType & EuiButtonDisplayContentProps>;
13244
+
13245
+ }
13246
+ declare module '@elastic/eui/src/components/button/button_display/_button_display' {
13247
+ import React, { CSSProperties, HTMLAttributes, ReactNode, Ref } from 'react';
13248
+ import { CommonProps, ExclusiveUnion, PropsForAnchor, PropsForButton } from '@elastic/eui/src/components/common';
13249
+ import { EuiButtonDisplayContentProps, EuiButtonDisplayContentType } from '@elastic/eui/src/components/button/button_display/_button_display_content';
13250
+ /**
13251
+ * Extends EuiButtonDisplayContentProps which provides
13252
+ * `iconType`, `iconSide`, and `textProps`
13253
+ */
13254
+ export interface EuiButtonDisplayCommonProps extends EuiButtonDisplayContentProps, CommonProps {
13255
+ children?: ReactNode;
13256
+ size?: 'xs' | 's' | 'm';
13257
+ /**
13258
+ * Applies the boolean state as the `aria-pressed` property to create a toggle button.
13259
+ * *Only use when the readable text does not change between states.*
13260
+ */
13261
+ isSelected?: boolean;
13262
+ /**
13263
+ * Extends the button to 100% width
13264
+ */
13265
+ fullWidth?: boolean;
13266
+ /**
13267
+ * Override the default minimum width
13268
+ */
13269
+ minWidth?: CSSProperties['minWidth'];
13270
+ /**
13271
+ * Force disables the button and changes the icon to a loading spinner
13272
+ */
13273
+ isLoading?: boolean;
13274
+ /**
13275
+ * Object of props passed to the <span/> wrapping the button's content
13276
+ */
13277
+ contentProps?: EuiButtonDisplayContentType;
13278
+ style?: CSSProperties;
13279
+ }
13280
+ export type EuiButtonDisplayPropsForAnchor = PropsForAnchor<EuiButtonDisplayCommonProps, {
13281
+ buttonRef?: Ref<HTMLAnchorElement>;
13282
+ }>;
13283
+ export type EuiButtonDisplayPropsForButton = PropsForButton<EuiButtonDisplayCommonProps, {
13284
+ buttonRef?: Ref<HTMLButtonElement>;
13285
+ }>;
13286
+ export type Props = ExclusiveUnion<EuiButtonDisplayPropsForAnchor, EuiButtonDisplayPropsForButton>;
13287
+ export type EuiButtonDisplayProps = EuiButtonDisplayCommonProps & HTMLAttributes<HTMLElement> & {
13288
+ /**
13289
+ * Provide a valid element to render the element as
13290
+ */
13291
+ element?: 'a' | 'button' | 'span' | 'label';
13292
+ };
13293
+ /**
13294
+ * EuiButtonDisplay is an internal-only component used for displaying
13295
+ * any element as a button.
13296
+ */
13297
+ export const EuiButtonDisplay: React.ForwardRefExoticComponent<EuiButtonDisplayCommonProps & React.HTMLAttributes<HTMLElement> & {
13298
+ /**
13299
+ * Provide a valid element to render the element as
13300
+ */
13301
+ element?: "a" | "button" | "label" | "span" | undefined;
13302
+ } & React.RefAttributes<HTMLElement>>;
13303
+
12747
13304
  }
12748
13305
  declare module '@elastic/eui/src/components/facet/facet_button' {
12749
- import { FunctionComponent, HTMLAttributes, MouseEventHandler, ReactNode, RefCallback } from 'react';
13306
+ import React, { FunctionComponent, HTMLAttributes, MouseEventHandler, ReactNode, RefCallback } from 'react';
12750
13307
  import { CommonProps } from '@elastic/eui/src/components/common';
13308
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
12751
13309
  export interface EuiFacetButtonProps extends CommonProps, Omit<HTMLAttributes<HTMLButtonElement>, 'onClick'> {
12752
13310
  buttonRef?: RefCallback<HTMLButtonElement>;
12753
13311
  /**
@@ -12773,27 +13331,65 @@ declare module '@elastic/eui/src/components/facet/facet_button' {
12773
13331
  */
12774
13332
  quantity?: number;
12775
13333
  }
12776
- export const EuiFacetButton: FunctionComponent<EuiFacetButtonProps>;
13334
+ export const _EuiFacetButton: FunctionComponent<EuiFacetButtonProps & WithEuiSystemProps>;
13335
+ export const EuiFacetButton: React.ForwardRefExoticComponent<Omit<EuiFacetButtonProps & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<EuiFacetButtonProps & WithEuiSystemProps<{}>, "euiTheme">>>;
13336
+
13337
+ }
13338
+ declare module '@elastic/eui/src/components/facet/facet_group.styles' {
13339
+ import { UseEuiTheme } from '@elastic/eui/src/services';
13340
+ import { EuiFacetGroupLayout } from '@elastic/eui/src/components/facet/facet_group';
13341
+ export const euiFacetGroupStyles: ({ euiTheme }: UseEuiTheme, layout: EuiFacetGroupLayout) => {
13342
+ euiFacetGroup: import("@emotion/utils").SerializedStyles;
13343
+ none: import("@emotion/utils").SerializedStyles;
13344
+ s: import("@emotion/utils").SerializedStyles;
13345
+ m: import("@emotion/utils").SerializedStyles;
13346
+ l: import("@emotion/utils").SerializedStyles;
13347
+ horizontal: import("@emotion/utils").SerializedStyles;
13348
+ vertical: import("@emotion/utils").SerializedStyles;
13349
+ };
12777
13350
 
12778
13351
  }
12779
13352
  declare module '@elastic/eui/src/components/facet/facet_group' {
12780
- import { FunctionComponent, HTMLAttributes } from 'react';
12781
- import { CommonProps } from '@elastic/eui/src/components/common'; type FacetGroupLayout = 'vertical' | 'horizontal';
12782
- export const LAYOUTS: FacetGroupLayout[]; type FacetGroupGutterSize = 'none' | 's' | 'm' | 'l';
12783
- export const GUTTER_SIZES: FacetGroupGutterSize[];
13353
+ import React, { FunctionComponent, HTMLAttributes } from 'react';
13354
+ import { CommonProps } from '@elastic/eui/src/components/common';
13355
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
13356
+ export const LAYOUTS: readonly ["vertical", "horizontal"];
13357
+ export type EuiFacetGroupLayout = typeof LAYOUTS[number];
13358
+ export const GUTTER_SIZES: readonly ["none", "s", "m", "l"];
13359
+ export type EuiFacetGroupGutterSizes = typeof GUTTER_SIZES[number];
12784
13360
  export type EuiFacetGroupProps = CommonProps & HTMLAttributes<HTMLDivElement> & {
12785
13361
  /**
12786
13362
  * Vertically in a column, or horizontally in one wrapping line
12787
13363
  */
12788
- layout?: FacetGroupLayout;
13364
+ layout?: EuiFacetGroupLayout;
12789
13365
  /**
12790
13366
  * Distance between facet buttons.
12791
13367
  * Horizontal layout always adds more distance horizontally between buttons.
12792
13368
  */
12793
- gutterSize?: FacetGroupGutterSize;
13369
+ gutterSize?: EuiFacetGroupGutterSizes;
12794
13370
  };
12795
- export const EuiFacetGroup: FunctionComponent<EuiFacetGroupProps>;
12796
- export {};
13371
+ export const _EuiFacetGroup: FunctionComponent<EuiFacetGroupProps & WithEuiSystemProps>;
13372
+ export const EuiFacetGroup: React.ForwardRefExoticComponent<Omit<CommonProps & React.HTMLAttributes<HTMLDivElement> & {
13373
+ /**
13374
+ * Vertically in a column, or horizontally in one wrapping line
13375
+ */
13376
+ layout?: "horizontal" | "vertical" | undefined;
13377
+ /**
13378
+ * Distance between facet buttons.
13379
+ * Horizontal layout always adds more distance horizontally between buttons.
13380
+ */
13381
+ gutterSize?: "s" | "none" | "m" | "l" | undefined;
13382
+ } & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<CommonProps & React.HTMLAttributes<HTMLDivElement> & {
13383
+ /**
13384
+ * Vertically in a column, or horizontally in one wrapping line
13385
+ */
13386
+ layout?: "horizontal" | "vertical" | undefined;
13387
+ /**
13388
+ * Distance between facet buttons.
13389
+ * Horizontal layout always adds more distance horizontally between buttons.
13390
+ */
13391
+ gutterSize?: "s" | "none" | "m" | "l" | undefined;
13392
+ } & WithEuiSystemProps<{}>, "euiTheme">>>;
12797
13393
 
12798
13394
  }
12799
13395
  declare module '@elastic/eui/src/components/facet' {
@@ -13040,7 +13636,8 @@ declare module '@elastic/eui/src/components/health/health.styles' {
13040
13636
 
13041
13637
  }
13042
13638
  declare module '@elastic/eui/src/components/health/health' {
13043
- import { FunctionComponent, HTMLAttributes } from 'react';
13639
+ import React, { FunctionComponent, HTMLAttributes } from 'react';
13640
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
13044
13641
  import { CommonProps } from '@elastic/eui/src/components/common';
13045
13642
  import { IconColor } from '@elastic/eui/src/components/icon';
13046
13643
  export const TEXT_SIZES: readonly ["xs", "s", "m", "inherit"];
@@ -13057,7 +13654,32 @@ declare module '@elastic/eui/src/components/health/health' {
13057
13654
  */
13058
13655
  textSize?: typeof TEXT_SIZES[number];
13059
13656
  };
13060
- export const EuiHealth: FunctionComponent<EuiHealthProps>;
13657
+ export const _EuiHealth: FunctionComponent<EuiHealthProps & WithEuiSystemProps>;
13658
+ export const EuiHealth: React.ForwardRefExoticComponent<Omit<CommonProps & Omit<React.HTMLAttributes<HTMLDivElement>, "color"> & {
13659
+ /**
13660
+ * Sets the color of the dot icon.
13661
+ * It accepts any `IconColor`: `default`, `primary`, `success`, `accent`, `warning`, `danger`, `text`,
13662
+ * `subdued` or `ghost`; or any valid CSS color value as a `string`
13663
+ */
13664
+ color?: string | undefined;
13665
+ /**
13666
+ * Matches the text scales of EuiText.
13667
+ * The `inherit` style will get its font size from the parent element
13668
+ */
13669
+ textSize?: "s" | "xs" | "m" | "inherit" | undefined;
13670
+ } & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<CommonProps & Omit<React.HTMLAttributes<HTMLDivElement>, "color"> & {
13671
+ /**
13672
+ * Sets the color of the dot icon.
13673
+ * It accepts any `IconColor`: `default`, `primary`, `success`, `accent`, `warning`, `danger`, `text`,
13674
+ * `subdued` or `ghost`; or any valid CSS color value as a `string`
13675
+ */
13676
+ color?: string | undefined;
13677
+ /**
13678
+ * Matches the text scales of EuiText.
13679
+ * The `inherit` style will get its font size from the parent element
13680
+ */
13681
+ textSize?: "s" | "xs" | "m" | "inherit" | undefined;
13682
+ } & WithEuiSystemProps<{}>, "euiTheme">>>;
13061
13683
 
13062
13684
  }
13063
13685
  declare module '@elastic/eui/src/components/health' {
@@ -13635,10 +14257,11 @@ declare module '@elastic/eui/src/components/markdown_editor/plugins/markdown_def
13635
14257
 
13636
14258
  }
13637
14259
  declare module '@elastic/eui/src/components/markdown_editor/markdown_format' {
13638
- import { FunctionComponent } from 'react';
13639
- import { PluggableList } from 'unified';
14260
+ import React, { FunctionComponent } from 'react';
14261
+ import unified, { PluggableList } from 'unified';
13640
14262
  import { CommonProps } from '@elastic/eui/src/components/common';
13641
14263
  import { EuiTextProps } from '@elastic/eui/src/components/text/text';
14264
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
13642
14265
  export type EuiMarkdownFormatProps = CommonProps & Omit<EuiTextProps, 'size'> & {
13643
14266
  children: string;
13644
14267
  /** array of unified plugins to parse content into an AST */
@@ -13650,7 +14273,28 @@ declare module '@elastic/eui/src/components/markdown_editor/markdown_format' {
13650
14273
  */
13651
14274
  textSize?: EuiTextProps['size'];
13652
14275
  };
13653
- export const EuiMarkdownFormat: FunctionComponent<EuiMarkdownFormatProps>;
14276
+ export const _EuiMarkdownFormat: FunctionComponent<EuiMarkdownFormatProps & WithEuiSystemProps>;
14277
+ export const EuiMarkdownFormat: React.ForwardRefExoticComponent<Omit<CommonProps & Omit<EuiTextProps, "size"> & {
14278
+ children: string;
14279
+ /** array of unified plugins to parse content into an AST */
14280
+ parsingPluginList?: unified.PluggableList<unified.Settings> | undefined;
14281
+ /** array of unified plugins to convert the AST into a ReactNode */
14282
+ processingPluginList?: unified.PluggableList<unified.Settings> | undefined;
14283
+ /**
14284
+ * Determines the text size. Choose `relative` to control the `font-size` based on the value of a parent container.
14285
+ */
14286
+ textSize?: EuiTextProps['size'];
14287
+ } & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<CommonProps & Omit<EuiTextProps, "size"> & {
14288
+ children: string;
14289
+ /** array of unified plugins to parse content into an AST */
14290
+ parsingPluginList?: unified.PluggableList<unified.Settings> | undefined;
14291
+ /** array of unified plugins to convert the AST into a ReactNode */
14292
+ processingPluginList?: unified.PluggableList<unified.Settings> | undefined;
14293
+ /**
14294
+ * Determines the text size. Choose `relative` to control the `font-size` based on the value of a parent container.
14295
+ */
14296
+ textSize?: EuiTextProps['size'];
14297
+ } & WithEuiSystemProps<{}>, "euiTheme">>>;
13654
14298
 
13655
14299
  }
13656
14300
  declare module '@elastic/eui/src/components/modal/modal' {
@@ -14439,6 +15083,11 @@ declare module '@elastic/eui/src/components/page' {
14439
15083
  export type { EuiPageTemplateProps } from '@elastic/eui/src/components/page/page_template';
14440
15084
  export { EuiPageTemplate } from '@elastic/eui/src/components/page/page_template';
14441
15085
 
15086
+ }
15087
+ declare module '@elastic/eui/src/global_styling/utility/utility' {
15088
+
15089
+ export const EuiUtilityClasses: () => JSX.Element;
15090
+
14442
15091
  }
14443
15092
  declare module '@elastic/eui/src/themes/themes' {
14444
15093
  import { EuiThemeSystem } from '@elastic/eui/src/services';
@@ -14474,16 +15123,32 @@ declare module '@elastic/eui/src/components/provider/provider' {
14474
15123
  */
14475
15124
  globalStyles?: false | ((params: any) => JSX.Element | null);
14476
15125
  /**
14477
- * Provide a cache configuration from `@emotion/cache`
15126
+ * Provide utility classes.
15127
+ * Pass `false` to remove the default EUI utility classes.
15128
+ */
15129
+ utilityClasses?: false | ((params: any) => JSX.Element | null);
15130
+ /**
15131
+ * Provide a cache configuration(s) from `@emotion/cache`.
15132
+ *
15133
+ * - `default` will encompass all Emotion styles, including consumer defined appliction styles, not handled by nested cache instances.
15134
+ * - `eui` will scope all EUI component styles.
15135
+ * - `global` will scope all EUI global and reset styles. Will use `eui` if not specified.
15136
+ * - `utility` will scope all EUI utility class styles.
15137
+ *
15138
+ * A cache instance provided as the sole value will function the same as the `default` cache.
14478
15139
  */
14479
- cache?: EmotionCache;
15140
+ cache?: EmotionCache | {
15141
+ default?: EmotionCache;
15142
+ eui?: EmotionCache;
15143
+ global?: EmotionCache;
15144
+ utility?: EmotionCache;
15145
+ };
14480
15146
  }
14481
- export const EuiProvider: <T extends {} = {}>({ cache, theme, globalStyles: GlobalStyles, colorMode, modify, children, }: React.PropsWithChildren<EuiProviderProps<T>>) => JSX.Element;
15147
+ export const EuiProvider: <T extends {} = {}>({ cache, theme, globalStyles: Globals, utilityClasses: Utilities, colorMode, modify, children, }: React.PropsWithChildren<EuiProviderProps<T>>) => JSX.Element;
14482
15148
 
14483
15149
  }
14484
15150
  declare module '@elastic/eui/src/components/provider' {
14485
- export type { EuiProviderProps } from '@elastic/eui/src/components/provider/provider';
14486
- export { EuiProvider } from '@elastic/eui/src/components/provider/provider';
15151
+ export * from '@elastic/eui/src/components/provider/provider';
14487
15152
 
14488
15153
  }
14489
15154
  declare module '@elastic/eui/src/components/tree_view/tree_view' {
@@ -17673,8 +18338,9 @@ declare module '@elastic/eui/src/components/timeline/timeline_item_icon.styles'
17673
18338
 
17674
18339
  }
17675
18340
  declare module '@elastic/eui/src/components/timeline/timeline_item_icon' {
17676
- import { FunctionComponent, ReactNode } from 'react';
18341
+ import React, { FunctionComponent, ReactNode } from 'react';
17677
18342
  import { IconType } from '@elastic/eui/src/components/icon';
18343
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
17678
18344
  import { EuiTimelineItemVerticalAlign } from '@elastic/eui/src/components/timeline/timeline_item';
17679
18345
  export interface EuiTimelineItemIconProps {
17680
18346
  /**
@@ -17688,7 +18354,12 @@ declare module '@elastic/eui/src/components/timeline/timeline_item_icon' {
17688
18354
  */
17689
18355
  iconAriaLabel?: string;
17690
18356
  }
17691
- export const EuiTimelineItemIcon: FunctionComponent<EuiTimelineItemIconProps>;
18357
+ export const _EuiTimelineItemIcon: FunctionComponent<EuiTimelineItemIconProps & WithEuiSystemProps>;
18358
+ export const EuiTimelineItemIcon: React.ForwardRefExoticComponent<Omit<EuiTimelineItemIconProps & WithEuiSystemProps<{}> & {
18359
+ children?: React.ReactNode;
18360
+ }, "euiTheme"> & React.RefAttributes<Omit<EuiTimelineItemIconProps & WithEuiSystemProps<{}> & {
18361
+ children?: React.ReactNode;
18362
+ }, "euiTheme">>>;
17692
18363
 
17693
18364
  }
17694
18365
  declare module '@elastic/eui/src/components/timeline/timeline_item.styles' {
@@ -17699,8 +18370,9 @@ declare module '@elastic/eui/src/components/timeline/timeline_item.styles' {
17699
18370
 
17700
18371
  }
17701
18372
  declare module '@elastic/eui/src/components/timeline/timeline_item' {
17702
- import { FunctionComponent, HTMLAttributes, ElementType } from 'react';
18373
+ import React, { FunctionComponent, HTMLAttributes, ElementType } from 'react';
17703
18374
  import { CommonProps } from '@elastic/eui/src/components/common';
18375
+ import { WithEuiSystemProps } from '@elastic/eui/src/components/provider/system';
17704
18376
  import { EuiTimelineItemEventProps } from '@elastic/eui/src/components/timeline/timeline_item_event';
17705
18377
  import { EuiTimelineItemIconProps } from '@elastic/eui/src/components/timeline/timeline_item_icon';
17706
18378
  export const VERTICAL_ALIGN: readonly ["top", "center"];
@@ -17717,7 +18389,8 @@ declare module '@elastic/eui/src/components/timeline/timeline_item' {
17717
18389
  */
17718
18390
  component?: ElementType;
17719
18391
  }
17720
- export const EuiTimelineItem: FunctionComponent<EuiTimelineItemProps>;
18392
+ export const _EuiTimelineItem: FunctionComponent<EuiTimelineItemProps & WithEuiSystemProps>;
18393
+ export const EuiTimelineItem: React.ForwardRefExoticComponent<Omit<EuiTimelineItemProps & WithEuiSystemProps<{}>, "euiTheme"> & React.RefAttributes<Omit<EuiTimelineItemProps & WithEuiSystemProps<{}>, "euiTheme">>>;
17721
18394
 
17722
18395
  }
17723
18396
  declare module '@elastic/eui/src/components/timeline/timeline' {