@elastic/eui 110.0.0-snapshot.1764684698664 → 110.0.0-snapshot.1764783610243

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 (247) hide show
  1. package/es/components/basic_table/in_memory_table.js +176 -3
  2. package/es/components/collapsible_nav/collapsible_nav.js +20 -101
  3. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  4. package/es/components/flyout/_flyout_overlay.js +52 -0
  5. package/es/components/flyout/_flyout_resize_button.js +32 -0
  6. package/es/components/flyout/{flyout_resizable.styles.js → _flyout_resize_button.styles.js} +11 -11
  7. package/es/components/flyout/const.js +42 -0
  8. package/es/components/flyout/flyout.component.js +481 -0
  9. package/es/components/flyout/flyout.js +77 -379
  10. package/es/components/flyout/flyout.styles.js +105 -7
  11. package/es/components/flyout/flyout_menu.js +241 -0
  12. package/es/components/flyout/flyout_menu.styles.js +19 -0
  13. package/{optimize/es/components/flyout/flyout_context.js → es/components/flyout/flyout_menu_context.js} +1 -7
  14. package/es/components/flyout/flyout_parent_context.js +36 -0
  15. package/es/components/flyout/flyout_resizable.js +33 -144
  16. package/es/components/flyout/hooks.js +25 -0
  17. package/es/components/flyout/index.js +5 -2
  18. package/es/components/flyout/manager/actions.js +153 -0
  19. package/es/components/flyout/manager/activity_stage.js +95 -0
  20. package/es/components/flyout/manager/const.js +56 -0
  21. package/es/components/flyout/manager/context.js +33 -0
  22. package/es/components/flyout/manager/flyout_child.js +75 -0
  23. package/es/components/flyout/manager/flyout_main.js +65 -0
  24. package/es/components/flyout/manager/flyout_main.styles.js +25 -0
  25. package/es/components/flyout/manager/flyout_managed.js +227 -0
  26. package/es/components/flyout/manager/flyout_managed.styles.js +69 -0
  27. package/es/components/flyout/manager/hooks.js +55 -0
  28. package/es/components/flyout/manager/index.js +31 -0
  29. package/es/components/flyout/manager/layout_mode.js +167 -0
  30. package/es/components/flyout/manager/provider.js +57 -0
  31. package/es/components/flyout/manager/reducer.js +320 -0
  32. package/es/components/flyout/manager/selectors.js +116 -0
  33. package/es/components/flyout/manager/store.js +113 -0
  34. package/es/components/flyout/manager/validation.js +85 -0
  35. package/es/components/flyout/use_flyout_resizable.js +149 -0
  36. package/es/components/flyout/use_flyout_z_index.js +46 -0
  37. package/es/components/overlay_mask/overlay_mask.js +13 -3
  38. package/es/components/overlay_mask/overlay_mask.styles.js +11 -2
  39. package/es/components/provider/provider.js +2 -1
  40. package/es/components/search_bar/search_bar.js +6 -0
  41. package/eui.d.ts +1488 -919
  42. package/i18ntokens.json +577 -523
  43. package/lib/components/basic_table/in_memory_table.js +177 -2
  44. package/lib/components/collapsible_nav/collapsible_nav.js +20 -101
  45. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  46. package/lib/components/flyout/_flyout_overlay.js +59 -0
  47. package/lib/components/flyout/_flyout_resize_button.js +38 -0
  48. package/{test-env/components/flyout/flyout_resizable.styles.js → lib/components/flyout/_flyout_resize_button.styles.js} +12 -12
  49. package/lib/components/flyout/const.js +49 -0
  50. package/lib/components/flyout/flyout.component.js +488 -0
  51. package/lib/components/flyout/flyout.js +102 -379
  52. package/lib/components/flyout/flyout.styles.js +105 -7
  53. package/lib/components/flyout/flyout_menu.js +243 -0
  54. package/lib/components/flyout/flyout_menu.styles.js +25 -0
  55. package/{optimize/lib/components/flyout/flyout_context.js → lib/components/flyout/flyout_menu_context.js} +2 -7
  56. package/lib/components/flyout/flyout_parent_context.js +43 -0
  57. package/lib/components/flyout/flyout_resizable.js +36 -147
  58. package/lib/components/flyout/hooks.js +30 -0
  59. package/lib/components/flyout/index.js +21 -14
  60. package/lib/components/flyout/manager/actions.js +159 -0
  61. package/lib/components/flyout/manager/activity_stage.js +101 -0
  62. package/lib/components/flyout/manager/const.js +62 -0
  63. package/lib/components/flyout/manager/context.js +41 -0
  64. package/lib/components/flyout/manager/flyout_child.js +80 -0
  65. package/lib/components/flyout/manager/flyout_main.js +70 -0
  66. package/lib/components/flyout/manager/flyout_main.styles.js +31 -0
  67. package/lib/components/flyout/manager/flyout_managed.js +233 -0
  68. package/lib/components/flyout/manager/flyout_managed.styles.js +73 -0
  69. package/lib/components/flyout/manager/hooks.js +131 -0
  70. package/lib/components/flyout/manager/index.js +168 -0
  71. package/lib/components/flyout/manager/layout_mode.js +171 -0
  72. package/lib/components/flyout/manager/provider.js +63 -0
  73. package/lib/components/flyout/manager/reducer.js +325 -0
  74. package/lib/components/flyout/manager/selectors.js +122 -0
  75. package/lib/components/flyout/manager/store.js +120 -0
  76. package/lib/components/flyout/manager/validation.js +94 -0
  77. package/lib/components/flyout/use_flyout_resizable.js +153 -0
  78. package/lib/components/flyout/use_flyout_z_index.js +51 -0
  79. package/lib/components/overlay_mask/overlay_mask.js +12 -2
  80. package/lib/components/overlay_mask/overlay_mask.styles.js +11 -4
  81. package/lib/components/provider/provider.js +2 -1
  82. package/lib/components/search_bar/search_bar.js +5 -0
  83. package/optimize/es/components/basic_table/in_memory_table.js +0 -2
  84. package/optimize/es/components/collapsible_nav/collapsible_nav.js +1 -0
  85. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  86. package/optimize/es/components/flyout/_flyout_overlay.js +52 -0
  87. package/optimize/es/components/flyout/_flyout_resize_button.js +31 -0
  88. package/optimize/es/components/flyout/{flyout_resizable.styles.js → _flyout_resize_button.styles.js} +11 -11
  89. package/optimize/es/components/flyout/const.js +42 -0
  90. package/optimize/es/components/flyout/flyout.component.js +469 -0
  91. package/optimize/es/components/flyout/flyout.js +53 -349
  92. package/optimize/es/components/flyout/flyout.styles.js +102 -7
  93. package/optimize/es/components/flyout/flyout_menu.js +162 -0
  94. package/optimize/es/components/flyout/flyout_menu.styles.js +19 -0
  95. package/{es/components/flyout/flyout_context.js → optimize/es/components/flyout/flyout_menu_context.js} +1 -7
  96. package/optimize/es/components/flyout/flyout_parent_context.js +36 -0
  97. package/optimize/es/components/flyout/flyout_resizable.js +7 -138
  98. package/optimize/es/components/flyout/hooks.js +25 -0
  99. package/optimize/es/components/flyout/index.js +5 -2
  100. package/optimize/es/components/flyout/manager/actions.js +153 -0
  101. package/optimize/es/components/flyout/manager/activity_stage.js +95 -0
  102. package/optimize/es/components/flyout/manager/const.js +56 -0
  103. package/optimize/es/components/flyout/manager/context.js +33 -0
  104. package/optimize/es/components/flyout/manager/flyout_child.js +71 -0
  105. package/optimize/es/components/flyout/manager/flyout_main.js +61 -0
  106. package/optimize/es/components/flyout/manager/flyout_main.styles.js +25 -0
  107. package/optimize/es/components/flyout/manager/flyout_managed.js +223 -0
  108. package/optimize/es/components/flyout/manager/flyout_managed.styles.js +69 -0
  109. package/optimize/es/components/flyout/manager/hooks.js +55 -0
  110. package/optimize/es/components/flyout/manager/index.js +31 -0
  111. package/optimize/es/components/flyout/manager/layout_mode.js +162 -0
  112. package/optimize/es/components/flyout/manager/provider.js +53 -0
  113. package/optimize/es/components/flyout/manager/reducer.js +312 -0
  114. package/optimize/es/components/flyout/manager/selectors.js +116 -0
  115. package/optimize/es/components/flyout/manager/store.js +113 -0
  116. package/optimize/es/components/flyout/manager/types.js +1 -0
  117. package/optimize/es/components/flyout/manager/validation.js +85 -0
  118. package/optimize/es/components/flyout/types.js +1 -0
  119. package/optimize/es/components/flyout/use_flyout_resizable.js +144 -0
  120. package/optimize/es/components/flyout/use_flyout_z_index.js +46 -0
  121. package/optimize/es/components/overlay_mask/overlay_mask.js +13 -3
  122. package/optimize/es/components/overlay_mask/overlay_mask.styles.js +11 -2
  123. package/optimize/es/components/provider/provider.js +2 -1
  124. package/optimize/es/components/search_bar/search_bar.js +6 -0
  125. package/optimize/lib/components/basic_table/in_memory_table.js +1 -1
  126. package/optimize/lib/components/collapsible_nav/collapsible_nav.js +1 -0
  127. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  128. package/optimize/lib/components/flyout/_flyout_overlay.js +62 -0
  129. package/optimize/lib/components/flyout/_flyout_resize_button.js +37 -0
  130. package/{lib/components/flyout/flyout_resizable.styles.js → optimize/lib/components/flyout/_flyout_resize_button.styles.js} +12 -12
  131. package/optimize/lib/components/flyout/const.js +49 -0
  132. package/optimize/lib/components/flyout/flyout.component.js +477 -0
  133. package/optimize/lib/components/flyout/flyout.js +77 -349
  134. package/optimize/lib/components/flyout/flyout.styles.js +102 -7
  135. package/optimize/lib/components/flyout/flyout_menu.js +168 -0
  136. package/optimize/lib/components/flyout/flyout_menu.styles.js +25 -0
  137. package/{lib/components/flyout/flyout_context.js → optimize/lib/components/flyout/flyout_menu_context.js} +2 -7
  138. package/optimize/lib/components/flyout/flyout_parent_context.js +43 -0
  139. package/optimize/lib/components/flyout/flyout_resizable.js +9 -139
  140. package/optimize/lib/components/flyout/hooks.js +30 -0
  141. package/optimize/lib/components/flyout/index.js +21 -14
  142. package/optimize/lib/components/flyout/manager/actions.js +159 -0
  143. package/optimize/lib/components/flyout/manager/activity_stage.js +101 -0
  144. package/optimize/lib/components/flyout/manager/const.js +62 -0
  145. package/optimize/lib/components/flyout/manager/context.js +41 -0
  146. package/optimize/lib/components/flyout/manager/flyout_child.js +76 -0
  147. package/optimize/lib/components/flyout/manager/flyout_main.js +66 -0
  148. package/optimize/lib/components/flyout/manager/flyout_main.styles.js +31 -0
  149. package/optimize/lib/components/flyout/manager/flyout_managed.js +231 -0
  150. package/optimize/lib/components/flyout/manager/flyout_managed.styles.js +74 -0
  151. package/optimize/lib/components/flyout/manager/hooks.js +131 -0
  152. package/optimize/lib/components/flyout/manager/index.js +168 -0
  153. package/optimize/lib/components/flyout/manager/layout_mode.js +169 -0
  154. package/optimize/lib/components/flyout/manager/provider.js +61 -0
  155. package/optimize/lib/components/flyout/manager/reducer.js +318 -0
  156. package/optimize/lib/components/flyout/manager/selectors.js +122 -0
  157. package/optimize/lib/components/flyout/manager/store.js +120 -0
  158. package/optimize/lib/components/flyout/manager/validation.js +94 -0
  159. package/optimize/lib/components/flyout/types.js +5 -0
  160. package/optimize/lib/components/flyout/use_flyout_resizable.js +151 -0
  161. package/optimize/lib/components/flyout/use_flyout_z_index.js +51 -0
  162. package/optimize/lib/components/overlay_mask/overlay_mask.js +12 -2
  163. package/optimize/lib/components/overlay_mask/overlay_mask.styles.js +11 -4
  164. package/optimize/lib/components/provider/provider.js +2 -1
  165. package/optimize/lib/components/search_bar/search_bar.js +5 -0
  166. package/package.json +5 -4
  167. package/test-env/components/basic_table/in_memory_table.js +177 -2
  168. package/test-env/components/collapsible_nav/collapsible_nav.js +20 -101
  169. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  170. package/test-env/components/flyout/_flyout_overlay.js +62 -0
  171. package/test-env/components/flyout/_flyout_resize_button.js +37 -0
  172. package/{optimize/lib/components/flyout/flyout_resizable.styles.js → test-env/components/flyout/_flyout_resize_button.styles.js} +12 -12
  173. package/test-env/components/flyout/const.js +49 -0
  174. package/test-env/components/flyout/flyout.component.js +477 -0
  175. package/test-env/components/flyout/flyout.styles.js +102 -7
  176. package/test-env/components/flyout/flyout_menu.js +241 -0
  177. package/test-env/components/flyout/flyout_menu.styles.js +25 -0
  178. package/test-env/components/flyout/{flyout_context.js → flyout_menu_context.js} +2 -7
  179. package/test-env/components/flyout/flyout_parent_context.js +43 -0
  180. package/test-env/components/flyout/flyout_resizable.js +35 -139
  181. package/test-env/components/flyout/hooks.js +30 -0
  182. package/test-env/components/flyout/index.js +21 -14
  183. package/test-env/components/flyout/manager/actions.js +159 -0
  184. package/test-env/components/flyout/manager/activity_stage.js +101 -0
  185. package/test-env/components/flyout/manager/const.js +62 -0
  186. package/test-env/components/flyout/manager/context.js +41 -0
  187. package/test-env/components/flyout/manager/flyout_child.js +76 -0
  188. package/test-env/components/flyout/manager/flyout_main.js +66 -0
  189. package/test-env/components/flyout/manager/flyout_main.styles.js +31 -0
  190. package/test-env/components/flyout/manager/flyout_managed.js +231 -0
  191. package/test-env/components/flyout/manager/flyout_managed.styles.js +74 -0
  192. package/test-env/components/flyout/manager/hooks.js +131 -0
  193. package/test-env/components/flyout/manager/index.js +168 -0
  194. package/test-env/components/flyout/manager/layout_mode.js +169 -0
  195. package/test-env/components/flyout/manager/provider.js +61 -0
  196. package/test-env/components/flyout/manager/reducer.js +318 -0
  197. package/test-env/components/flyout/manager/selectors.js +122 -0
  198. package/test-env/components/flyout/manager/store.js +120 -0
  199. package/test-env/components/flyout/manager/types.js +5 -0
  200. package/test-env/components/flyout/manager/validation.js +94 -0
  201. package/test-env/components/flyout/types.js +5 -0
  202. package/test-env/components/flyout/use_flyout_resizable.js +151 -0
  203. package/test-env/components/flyout/use_flyout_z_index.js +51 -0
  204. package/test-env/components/overlay_mask/overlay_mask.js +12 -2
  205. package/test-env/components/overlay_mask/overlay_mask.styles.js +11 -4
  206. package/test-env/components/provider/provider.js +2 -1
  207. package/test-env/components/search_bar/search_bar.js +5 -0
  208. package/es/components/flyout/flyout_child.js +0 -223
  209. package/es/components/flyout/flyout_child.styles.js +0 -32
  210. package/es/components/flyout/flyout_child_manager.js +0 -114
  211. package/es/components/flyout/sessions/flyout_provider.js +0 -95
  212. package/es/components/flyout/sessions/flyout_reducer.js +0 -195
  213. package/es/components/flyout/sessions/index.js +0 -10
  214. package/es/components/flyout/sessions/use_eui_flyout.js +0 -82
  215. package/lib/components/flyout/flyout_child.js +0 -231
  216. package/lib/components/flyout/flyout_child.styles.js +0 -38
  217. package/lib/components/flyout/flyout_child_manager.js +0 -122
  218. package/lib/components/flyout/sessions/flyout_provider.js +0 -102
  219. package/lib/components/flyout/sessions/flyout_reducer.js +0 -202
  220. package/lib/components/flyout/sessions/index.js +0 -25
  221. package/lib/components/flyout/sessions/use_eui_flyout.js +0 -88
  222. package/optimize/es/components/flyout/flyout_child.js +0 -178
  223. package/optimize/es/components/flyout/flyout_child.styles.js +0 -32
  224. package/optimize/es/components/flyout/flyout_child_manager.js +0 -100
  225. package/optimize/es/components/flyout/sessions/flyout_provider.js +0 -90
  226. package/optimize/es/components/flyout/sessions/flyout_reducer.js +0 -187
  227. package/optimize/es/components/flyout/sessions/index.js +0 -10
  228. package/optimize/es/components/flyout/sessions/use_eui_flyout.js +0 -82
  229. package/optimize/lib/components/flyout/flyout_child.js +0 -186
  230. package/optimize/lib/components/flyout/flyout_child.styles.js +0 -38
  231. package/optimize/lib/components/flyout/flyout_child_manager.js +0 -110
  232. package/optimize/lib/components/flyout/sessions/flyout_provider.js +0 -100
  233. package/optimize/lib/components/flyout/sessions/flyout_reducer.js +0 -195
  234. package/optimize/lib/components/flyout/sessions/index.js +0 -25
  235. package/optimize/lib/components/flyout/sessions/use_eui_flyout.js +0 -88
  236. package/test-env/components/flyout/flyout_child.js +0 -230
  237. package/test-env/components/flyout/flyout_child.styles.js +0 -38
  238. package/test-env/components/flyout/flyout_child_manager.js +0 -119
  239. package/test-env/components/flyout/sessions/flyout_provider.js +0 -100
  240. package/test-env/components/flyout/sessions/flyout_reducer.js +0 -195
  241. package/test-env/components/flyout/sessions/index.js +0 -25
  242. package/test-env/components/flyout/sessions/use_eui_flyout.js +0 -88
  243. /package/es/components/flyout/{sessions → manager}/types.js +0 -0
  244. /package/{optimize/es/components/flyout/sessions → es/components/flyout}/types.js +0 -0
  245. /package/lib/components/flyout/{sessions → manager}/types.js +0 -0
  246. /package/{optimize/lib/components/flyout/sessions → lib/components/flyout}/types.js +0 -0
  247. /package/{test-env/components/flyout/sessions → optimize/lib/components/flyout/manager}/types.js +0 -0
package/eui.d.ts CHANGED
@@ -5827,395 +5827,1142 @@ declare module '@elastic/eui/src/components/table' {
5827
5827
  export { EuiTableRowCellCheckbox } from '@elastic/eui/src/components/table/table_row_cell_checkbox';
5828
5828
 
5829
5829
  }
5830
- declare module '@elastic/eui/src/components/overlay_mask/overlay_mask.styles' {
5831
- import { UseEuiTheme } from '@elastic/eui/src/services';
5832
- export const euiOverlayMaskStyles: ({ euiTheme, highContrastMode, }: UseEuiTheme) => {
5833
- euiOverlayMask: string;
5834
- aboveHeader: string;
5835
- belowHeader: string;
5836
- };
5830
+ declare module '@elastic/eui/src/components/flyout/manager/const' {
5831
+ /**
5832
+ * Allowed values for `session` prop to control the way the session is managed for a flyout.
5833
+ */
5834
+ export const SESSION_START = "start";
5835
+ export const SESSION_INHERIT = "inherit";
5836
+ export const SESSION_NEVER = "never";
5837
+ /**
5838
+ * Data attribute applied to a managed flyout element to help identify it as a managed flyout.
5839
+ */
5840
+ export const PROPERTY_FLYOUT = "data-managed-flyout";
5841
+ /**
5842
+ * Data attribute indicating whether the flyout is the `main` or `child` flyout.
5843
+ */
5844
+ export const PROPERTY_LEVEL = "data-managed-flyout-level";
5845
+ /**
5846
+ * Data attribute representing how multiple flyouts are laid out
5847
+ * (`side-by-side` or `stacked`).
5848
+ */
5849
+ export const PROPERTY_LAYOUT_MODE = "data-managed-flyout-layout-mode";
5850
+ /** Stacked layout mode where child flyouts overlay on top of the main flyout. */
5851
+ export const LAYOUT_MODE_STACKED = "stacked";
5852
+ /** Side-by-side layout mode where child flyouts render adjacent to the main flyout. */
5853
+ export const LAYOUT_MODE_SIDE_BY_SIDE = "side-by-side";
5854
+ /** The primary (parent) flyout in a session. */
5855
+ export const LEVEL_MAIN = "main";
5856
+ /** The secondary (child) flyout spawned by the main flyout. */
5857
+ export const LEVEL_CHILD = "child";
5858
+ /** Flyout is mounting and playing its opening animation. */
5859
+ export const STAGE_OPENING = "opening";
5860
+ /** Flyout is fully visible and interactive. */
5861
+ export const STAGE_ACTIVE = "active";
5862
+ /** Flyout is unmounted or not currently visible/interactable. */
5863
+ export const STAGE_INACTIVE = "inactive";
5864
+ /** Main flyout is transitioning behind an active session flyout. */
5865
+ export const STAGE_BACKGROUNDING = "backgrounding";
5866
+ /** Main flyout is backgrounded behind an active session flyout. */
5867
+ export const STAGE_BACKGROUNDED = "backgrounded";
5868
+ /** Flyout is returning to the foreground from a backgrounded state. */
5869
+ export const STAGE_RETURNING = "returning";
5870
+ /** Flyout is playing its closing animation. */
5871
+ export const STAGE_CLOSING = "closing";
5872
+
5873
+ }
5874
+ declare module '@elastic/eui/src/components/flyout/manager/types' {
5875
+ import type { Action } from '@elastic/eui/src/components/flyout/manager/actions';
5876
+ import { STAGE_CLOSING, STAGE_OPENING, STAGE_ACTIVE, STAGE_INACTIVE, STAGE_BACKGROUNDING, STAGE_BACKGROUNDED, STAGE_RETURNING, LAYOUT_MODE_SIDE_BY_SIDE, LAYOUT_MODE_STACKED, LEVEL_CHILD, LEVEL_MAIN } from '@elastic/eui/src/components/flyout/manager/const';
5877
+ export type EuiFlyoutLayoutMode = typeof LAYOUT_MODE_STACKED | typeof LAYOUT_MODE_SIDE_BY_SIDE;
5878
+ export type EuiFlyoutLevel = typeof LEVEL_MAIN | typeof LEVEL_CHILD;
5879
+ export type EuiFlyoutActivityStage = typeof STAGE_OPENING | typeof STAGE_ACTIVE | typeof STAGE_INACTIVE | typeof STAGE_BACKGROUNDING | typeof STAGE_BACKGROUNDED | typeof STAGE_RETURNING | typeof STAGE_CLOSING;
5880
+ export interface EuiManagedFlyoutState {
5881
+ flyoutId: string;
5882
+ level: EuiFlyoutLevel;
5883
+ width?: number;
5884
+ size?: string;
5885
+ activityStage?: EuiFlyoutActivityStage;
5886
+ }
5887
+ export interface FlyoutSession {
5888
+ /** ID of the main flyout for this session */
5889
+ mainFlyoutId: string;
5890
+ /** ID of the child flyout for this session */
5891
+ childFlyoutId: string | null;
5892
+ /** Title of the main flyout in this session */
5893
+ title: string;
5894
+ /** z-index value to be used by the flyout session */
5895
+ zIndex: number;
5896
+ }
5897
+ export interface PushPaddingOffsets {
5898
+ /** Push padding applied to the left side (in pixels) */
5899
+ left: number;
5900
+ /** Push padding applied to the right side (in pixels) */
5901
+ right: number;
5902
+ }
5903
+ export interface EuiFlyoutManagerState {
5904
+ sessions: FlyoutSession[];
5905
+ flyouts: EuiManagedFlyoutState[];
5906
+ layoutMode: EuiFlyoutLayoutMode;
5907
+ /** Active push padding offsets (updated by active push flyouts) */
5908
+ pushPadding?: PushPaddingOffsets;
5909
+ currentZIndex: number;
5910
+ unmanagedFlyouts: string[];
5911
+ }
5912
+ /**
5913
+ * Public API surface provided through React context.
5914
+ * Kept intentionally decoupled from action types to avoid module cycles.
5915
+ */
5916
+ export interface FlyoutManagerApi {
5917
+ state: EuiFlyoutManagerState;
5918
+ dispatch: (action: Action) => void;
5919
+ addFlyout: (flyoutId: string, title: string, level?: EuiFlyoutLevel, size?: string) => void;
5920
+ closeFlyout: (flyoutId: string) => void;
5921
+ setActiveFlyout: (flyoutId: string | null) => void;
5922
+ setFlyoutWidth: (flyoutId: string, width: number) => void;
5923
+ setPushPadding: (side: 'left' | 'right', width: number) => void;
5924
+ goBack: () => void;
5925
+ goToFlyout: (flyoutId: string) => void;
5926
+ addUnmanagedFlyout: (flyoutId: string) => void;
5927
+ closeUnmanagedFlyout: (flyoutId: string) => void;
5928
+ historyItems: Array<{
5929
+ title: string;
5930
+ onClick: () => void;
5931
+ }>;
5932
+ }
5837
5933
 
5838
5934
  }
5839
- declare module '@elastic/eui/src/components/overlay_mask/overlay_mask_body.styles' {
5840
- export const euiOverlayMaskBodyStyles: import("@emotion/react").SerializedStyles;
5935
+ declare module '@elastic/eui/src/components/flyout/manager/actions' {
5936
+ import { EuiFlyoutActivityStage, EuiFlyoutLevel, EuiFlyoutLayoutMode } from '@elastic/eui/src/components/flyout/manager/types'; const PREFIX: "eui/flyoutManager";
5937
+ interface BaseAction {
5938
+ type: `${typeof PREFIX}/${string}`;
5939
+ }
5940
+ /** Dispatched when a flyout registers itself with the manager. */
5941
+ export const ACTION_ADD: "eui/flyoutManager/add";
5942
+ /** Dispatched to remove a flyout from the manager (usually on close/unmount). */
5943
+ export const ACTION_CLOSE: "eui/flyoutManager/close";
5944
+ /** Dispatched to set which flyout is currently active within the session. */
5945
+ export const ACTION_SET_ACTIVE: "eui/flyoutManager/setActive";
5946
+ /** Dispatched when an active flyout's pixel width changes (for responsive layout). */
5947
+ export const ACTION_SET_WIDTH: "eui/flyoutManager/setWidth";
5948
+ /** Dispatched to switch layout mode between `side-by-side` and `stacked`. */
5949
+ export const ACTION_SET_LAYOUT_MODE: "eui/flyoutManager/setLayoutMode";
5950
+ /** Dispatched to update a flyout's activity stage (e.g., opening -> active). */
5951
+ export const ACTION_SET_ACTIVITY_STAGE: "eui/flyoutManager/setActivityStage";
5952
+ /** Dispatched to go back one session (remove current session). */
5953
+ export const ACTION_GO_BACK: "eui/flyoutManager/goBack";
5954
+ /** Dispatched to navigate to a specific flyout (remove all sessions after it). */
5955
+ export const ACTION_GO_TO_FLYOUT: "eui/flyoutManager/goToFlyout";
5956
+ /** Dispatched to set push padding offset for a side. */
5957
+ export const ACTION_SET_PUSH_PADDING: "eui/flyoutManager/setPushPadding";
5958
+ export const ACTION_ADD_UNMANAGED_FLYOUT: "eui/flyoutManager/addUnmanagedFlyout";
5959
+ export const ACTION_CLOSE_UNMANAGED_FLYOUT: "eui/flyoutManager/closeUnmanagedFlyout";
5960
+ /**
5961
+ * Add a flyout to manager state. The manager will create or update
5962
+ * the current session depending on the `level` provided.
5963
+ */
5964
+ export interface AddFlyoutAction extends BaseAction {
5965
+ type: typeof ACTION_ADD;
5966
+ flyoutId: string;
5967
+ title: string;
5968
+ level: EuiFlyoutLevel;
5969
+ size?: string;
5970
+ }
5971
+ /** Remove a flyout from manager state. Also updates the active session. */
5972
+ export interface CloseFlyoutAction extends BaseAction {
5973
+ type: typeof ACTION_CLOSE;
5974
+ flyoutId: string;
5975
+ }
5976
+ /** Set the active flyout within the current session (or clear with `null`). */
5977
+ export interface SetActiveFlyoutAction extends BaseAction {
5978
+ type: typeof ACTION_SET_ACTIVE;
5979
+ flyoutId: string | null;
5980
+ }
5981
+ /** Update a flyout's measured width in pixels. */
5982
+ export interface SetWidthAction extends BaseAction {
5983
+ type: typeof ACTION_SET_WIDTH;
5984
+ flyoutId: string;
5985
+ width: number;
5986
+ }
5987
+ /** Change how flyouts are arranged: `side-by-side` or `stacked`. */
5988
+ export interface SetLayoutModeAction extends BaseAction {
5989
+ type: typeof ACTION_SET_LAYOUT_MODE;
5990
+ layoutMode: EuiFlyoutLayoutMode;
5991
+ }
5992
+ /** Set a specific flyout's activity stage. */
5993
+ export interface SetActivityStageAction extends BaseAction {
5994
+ type: typeof ACTION_SET_ACTIVITY_STAGE;
5995
+ flyoutId: string;
5996
+ activityStage: EuiFlyoutActivityStage;
5997
+ }
5998
+ /** Go back one session (remove current session from stack). */
5999
+ export interface GoBackAction extends BaseAction {
6000
+ type: typeof ACTION_GO_BACK;
6001
+ }
6002
+ /** Navigate to a specific flyout (remove all sessions after it). */
6003
+ export interface GoToFlyoutAction extends BaseAction {
6004
+ type: typeof ACTION_GO_TO_FLYOUT;
6005
+ flyoutId: string;
6006
+ }
6007
+ /** Set push padding offset for a specific side. */
6008
+ export interface SetPushPaddingAction extends BaseAction {
6009
+ type: typeof ACTION_SET_PUSH_PADDING;
6010
+ side: 'left' | 'right';
6011
+ width: number;
6012
+ }
6013
+ export interface AddUnmanagedFlyoutAction extends BaseAction {
6014
+ type: typeof ACTION_ADD_UNMANAGED_FLYOUT;
6015
+ flyoutId: string;
6016
+ }
6017
+ export interface CloseUnmanagedFlyoutAction extends BaseAction {
6018
+ type: typeof ACTION_CLOSE_UNMANAGED_FLYOUT;
6019
+ flyoutId: string;
6020
+ }
6021
+ /** Union of all flyout manager actions. */
6022
+ export type Action = AddFlyoutAction | CloseFlyoutAction | SetActiveFlyoutAction | SetWidthAction | SetLayoutModeAction | SetActivityStageAction | GoBackAction | GoToFlyoutAction | SetPushPaddingAction | AddUnmanagedFlyoutAction | CloseUnmanagedFlyoutAction;
6023
+ /**
6024
+ * Register a flyout with the manager.
6025
+ * - `title` is used for the flyout menu.
6026
+ * - `level` determines whether the flyout is `main` or `child`.
6027
+ * - Optional `size` is the named EUI size (e.g. `s`, `m`, `l`).
6028
+ */
6029
+ export const addFlyout: (flyoutId: string, title: string, level?: EuiFlyoutLevel, size?: string) => AddFlyoutAction;
6030
+ /** Unregister a flyout and update the session accordingly. */
6031
+ export const closeFlyout: (flyoutId: string) => CloseFlyoutAction;
6032
+ /** Set or clear the active flyout for the current session. */
6033
+ export const setActiveFlyout: (flyoutId: string | null) => SetActiveFlyoutAction;
6034
+ /** Record a flyout's current width in pixels. */
6035
+ export const setFlyoutWidth: (flyoutId: string, width: number) => SetWidthAction;
6036
+ /** Switch layout mode between `side-by-side` and `stacked`. */
6037
+ export const setLayoutMode: (layoutMode: EuiFlyoutLayoutMode) => SetLayoutModeAction;
6038
+ /** Update a flyout's activity stage. */
6039
+ export const setActivityStage: (flyoutId: string, activityStage: EuiFlyoutActivityStage) => SetActivityStageAction;
6040
+ /** Go back one session (remove current session from stack). */
6041
+ export const goBack: () => GoBackAction;
6042
+ /** Navigate to a specific flyout (remove all sessions after it). */
6043
+ export const goToFlyout: (flyoutId: string) => GoToFlyoutAction;
6044
+ /** Set push padding offset for a specific side. */
6045
+ export const setPushPadding: (side: "left" | "right", width: number) => SetPushPaddingAction;
6046
+ /** Register an unmanaged flyout for z-index positioning purposes */
6047
+ export const addUnmanagedFlyout: (flyoutId: string) => AddUnmanagedFlyoutAction;
6048
+ /** Unregister an unmanaged flyout */
6049
+ export const closeUnmanagedFlyout: (flyoutId: string) => CloseUnmanagedFlyoutAction;
6050
+ export {};
6051
+
6052
+ }
6053
+ declare module '@elastic/eui/src/components/flyout/manager/reducer' {
6054
+ import { Action } from '@elastic/eui/src/components/flyout/manager/actions';
6055
+ import { EuiFlyoutManagerState } from '@elastic/eui/src/components/flyout/manager/types';
6056
+ /**
6057
+ * Default flyout manager state used to initialize the reducer.
6058
+ */
6059
+ export const initialState: EuiFlyoutManagerState;
6060
+ /**
6061
+ * Reducer handling all flyout manager actions and state transitions.
6062
+ */
6063
+ export function flyoutManagerReducer(state: EuiFlyoutManagerState | undefined, action: Action): EuiFlyoutManagerState;
6064
+
6065
+ }
6066
+ declare module '@elastic/eui/src/components/flyout/manager/selectors' {
6067
+ export const useSession: (flyoutId?: string | null) => import ("@elastic/eui/src/components/flyout/manager/types").FlyoutSession | null;
6068
+ /** True when any managed flyout session is currently active. */
6069
+ export const useHasActiveSession: () => boolean;
6070
+ /** True if the given `flyoutId` is the main or child flyout in the latest session. */
6071
+ export const useIsFlyoutActive: (flyoutId: string) => boolean;
6072
+ export const useFlyout: (flyoutId?: string | null) => import ("@elastic/eui/src/components/flyout/manager/types").EuiManagedFlyoutState | null;
6073
+ export const useIsFlyoutRegistered: (flyoutId?: string | null) => boolean;
6074
+ /** The most recent flyout session or `null` if none. */
6075
+ export const useCurrentSession: () => import ("@elastic/eui/src/components/flyout/manager/types").FlyoutSession | null;
6076
+ /** The registered state of the current session's main flyout, if present. */
6077
+ export const useCurrentMainFlyout: () => import ("@elastic/eui/src/components/flyout/manager/types").EuiManagedFlyoutState | null;
6078
+ /** The registered state of the current session's child flyout, if present. */
6079
+ export const useCurrentChildFlyout: () => import ("@elastic/eui/src/components/flyout/manager/types").EuiManagedFlyoutState | null;
6080
+ /** The measured width (px) of the specified flyout, or `null` if unknown. */
6081
+ export const useFlyoutWidth: (flyoutId?: string | null) => number | undefined;
6082
+ /** The configured size of the parent (main) flyout for a given child flyout ID. */
6083
+ export const useParentFlyoutSize: (childFlyoutId: string) => string | undefined;
6084
+ /** True if the provided `flyoutId` is the main flyout and it currently has a child. */
6085
+ export const useHasChildFlyout: (flyoutId: string) => boolean;
6086
+ /** Get the current push padding offsets from manager state. */
6087
+ export const usePushPaddingOffsets: () => import ("@elastic/eui/src/components/flyout/manager/types").PushPaddingOffsets;
6088
+ /** True if there's any active push padding (left or right side). */
6089
+ export const useHasPushPadding: () => boolean;
6090
+ /** Get the ref for the current flyout z-index to be used */
6091
+ export const useCurrentFlyoutZIndexRef: () => import("react").MutableRefObject<number>;
6092
+
6093
+ }
6094
+ declare module '@elastic/eui/src/components/flyout/manager/context' {
6095
+ import React from 'react';
6096
+ /**
6097
+ * React provider that marks descendants as being rendered inside
6098
+ * an EUI managed flyout. Used by hooks/components to alter behavior
6099
+ * (e.g., focus handling) when inside a managed flyout tree.
6100
+ */
6101
+ export const EuiFlyoutIsManagedProvider: ({ isManaged, children, }: {
6102
+ isManaged: boolean;
6103
+ children: React.ReactNode;
6104
+ }) => React.JSX.Element;
6105
+ /**
6106
+ * Hook that returns `true` when called within an EUI managed flyout subtree.
6107
+ */
6108
+ export const useIsInManagedFlyout: () => boolean;
5841
6109
 
5842
6110
  }
5843
- declare module '@elastic/eui/src/components/overlay_mask/overlay_mask' {
5844
- import { FunctionComponent, HTMLAttributes, MutableRefObject, ReactNode, Ref } from 'react';
5845
- import { CommonProps } from '@elastic/eui/src/components/common';
5846
- export interface EuiOverlayMaskInterface {
5847
- /**
5848
- * ReactNode to render as this component's content
5849
- */
5850
- children?: ReactNode;
5851
- /**
5852
- * Should the mask visually sit above or below the EuiHeader (controlled by z-index)
5853
- */
5854
- headerZindexLocation?: 'above' | 'below';
5855
- /**
5856
- * React ref to be passed to the wrapping container
5857
- */
5858
- maskRef?: Ref<HTMLDivElement> | MutableRefObject<HTMLDivElement>;
6111
+ declare module '@elastic/eui/src/components/flyout/manager/hooks' {
6112
+ export { useIsFlyoutActive, useHasActiveSession, useCurrentSession, useCurrentMainFlyout, useCurrentChildFlyout, useFlyoutWidth, useParentFlyoutSize, useHasChildFlyout, usePushPaddingOffsets, useHasPushPadding, } from '@elastic/eui/src/components/flyout/manager/selectors';
6113
+ export { useFlyoutLayoutMode } from '@elastic/eui/src/components/flyout/manager/layout_mode';
6114
+ export { useIsInManagedFlyout } from '@elastic/eui/src/components/flyout/manager/context';
6115
+ export type { EuiFlyoutActivityStage } from '@elastic/eui/src/components/flyout/manager/types';
6116
+ /** Access the flyout manager context (state and actions). */
6117
+ export const useFlyoutManager: () => import ("@elastic/eui/src/components/flyout/manager/types").FlyoutManagerApi | null;
6118
+ /**
6119
+ * Stable flyout ID utility. Uses the passed `id` if provided and not already registered,
6120
+ * otherwise generates a deterministic ID for the component's lifetime.
6121
+ * The ID remains stable across re-renders to maintain consistency in effects and other hooks.
6122
+ */
6123
+ export const useFlyoutId: (flyoutId?: string) => string;
6124
+
6125
+ }
6126
+ declare module '@elastic/eui/src/components/flyout/manager/layout_mode' {
6127
+ import { EuiFlyoutLayoutMode } from '@elastic/eui/src/components/flyout/manager/types';
6128
+ /**
6129
+ * Hook to handle responsive layout mode for managed flyouts.
6130
+ * Decides whether to place flyouts side-by-side or stacked based on
6131
+ * viewport width and flyout widths/sizes.
6132
+ */
6133
+ export const useApplyFlyoutLayoutMode: () => void;
6134
+ /** Convert a flyout `size` value to a pixel width using theme breakpoints. */
6135
+ export const getWidthFromSize: (size: string | number) => number;
6136
+ /** Current layout mode for managed flyouts (`side-by-side` or `stacked`). */
6137
+ export const useFlyoutLayoutMode: () => EuiFlyoutLayoutMode;
6138
+
6139
+ }
6140
+ declare module '@elastic/eui/src/components/flyout/manager/store' {
6141
+ import type { EuiFlyoutLevel, EuiFlyoutManagerState } from '@elastic/eui/src/components/flyout/manager/types';
6142
+ import type { Action } from '@elastic/eui/src/components/flyout/manager/actions';
6143
+ type Listener = () => void;
6144
+ export interface FlyoutManagerStore {
6145
+ getState: () => EuiFlyoutManagerState;
6146
+ subscribe: (listener: Listener) => () => void;
6147
+ dispatch: (action: Action) => void;
6148
+ addFlyout: (flyoutId: string, title: string, level?: EuiFlyoutLevel, size?: string) => void;
6149
+ closeFlyout: (flyoutId: string) => void;
6150
+ setActiveFlyout: (flyoutId: string | null) => void;
6151
+ setFlyoutWidth: (flyoutId: string, width: number) => void;
6152
+ setPushPadding: (side: 'left' | 'right', width: number) => void;
6153
+ goBack: () => void;
6154
+ goToFlyout: (flyoutId: string) => void;
6155
+ addUnmanagedFlyout: (flyoutId: string) => void;
6156
+ closeUnmanagedFlyout: (flyoutId: string) => void;
6157
+ historyItems: Array<{
6158
+ title: string;
6159
+ onClick: () => void;
6160
+ }>;
5859
6161
  }
5860
- export type EuiOverlayMaskProps = Omit<CommonProps, 'css'> & Omit<Partial<Record<keyof HTMLAttributes<HTMLDivElement>, string>>, keyof EuiOverlayMaskInterface> & EuiOverlayMaskInterface;
5861
- export const EuiOverlayMask: FunctionComponent<EuiOverlayMaskProps>;
6162
+ /**
6163
+ * Returns a singleton store instance shared across all React roots within the same JS context.
6164
+ * Uses module-level singleton to ensure deduplication even if modules are loaded twice.
6165
+ */
6166
+ export function getFlyoutManagerStore(): FlyoutManagerStore;
6167
+ /**
6168
+ * For testing purposes - allows resetting the store
6169
+ */
6170
+ export function _resetFlyoutManagerStore(): void;
6171
+ export {};
5862
6172
 
5863
6173
  }
5864
- declare module '@elastic/eui/src/components/overlay_mask' {
5865
- export type { EuiOverlayMaskProps } from '@elastic/eui/src/components/overlay_mask/overlay_mask';
5866
- export { EuiOverlayMask } from '@elastic/eui/src/components/overlay_mask/overlay_mask';
6174
+ declare module '@elastic/eui/src/components/flyout/manager/provider' {
6175
+ import React from 'react';
6176
+ import { FlyoutManagerApi } from '@elastic/eui/src/components/flyout/manager/types';
6177
+ /**
6178
+ * React context that exposes the Flyout Manager API (state + actions).
6179
+ */
6180
+ export const EuiFlyoutManagerContext: React.Context<FlyoutManagerApi | null>;
6181
+ /**
6182
+ * Provides the Flyout Manager API via context and runs layout-mode logic.
6183
+ */
6184
+ export const EuiFlyoutManager: React.FC<{
6185
+ children: React.ReactNode;
6186
+ }>;
6187
+ /** Hook to access the Flyout Manager API from context. */
6188
+ export const useFlyoutManager: () => FlyoutManagerApi | null;
5867
6189
 
5868
6190
  }
5869
- declare module '@elastic/eui/src/components/flyout/flyout.styles' {
5870
- import { EuiFlyoutSize } from '@elastic/eui/src/components/flyout/flyout';
5871
- import { UseEuiTheme } from '@elastic/eui/src/services';
5872
- export const FLYOUT_BREAKPOINT: "m";
5873
- export const euiFlyoutSlideInRight: import("@emotion/serialize").Keyframes;
5874
- export const euiFlyoutSlideInLeft: import("@emotion/serialize").Keyframes;
5875
- export const euiFlyoutStyles: (euiThemeContext: UseEuiTheme) => {
5876
- euiFlyout: import("@emotion/react").SerializedStyles;
5877
- s: import("@emotion/react").SerializedStyles;
5878
- m: import("@emotion/react").SerializedStyles;
5879
- l: import("@emotion/react").SerializedStyles;
5880
- noMaxWidth: import("@emotion/react").SerializedStyles;
5881
- right: import("@emotion/react").SerializedStyles;
5882
- left: import("@emotion/react").SerializedStyles;
5883
- overlay: {
5884
- overlay: import("@emotion/react").SerializedStyles;
5885
- left: import("@emotion/react").SerializedStyles;
5886
- right: import("@emotion/react").SerializedStyles;
5887
- };
5888
- push: {
5889
- push: import("@emotion/react").SerializedStyles;
5890
- right: import("@emotion/react").SerializedStyles;
5891
- left: import("@emotion/react").SerializedStyles;
5892
- noAnimation: import("@emotion/react").SerializedStyles;
5893
- };
5894
- paddingSizes: {
5895
- none: import("@emotion/react").SerializedStyles;
5896
- s: import("@emotion/react").SerializedStyles;
5897
- m: import("@emotion/react").SerializedStyles;
5898
- l: import("@emotion/react").SerializedStyles;
5899
- };
6191
+ declare module '@elastic/eui/src/components/link/external_link_icon' {
6192
+ import { FunctionComponent, AnchorHTMLAttributes } from 'react';
6193
+ import { EuiIconProps } from '@elastic/eui/src/components/icon';
6194
+ /**
6195
+ * DRY util for indicating external links both via icon and to
6196
+ * screen readers. Used internally by at EuiLink and EuiListGroupItem
6197
+ */
6198
+ export type EuiExternalLinkIconProps = {
6199
+ target?: AnchorHTMLAttributes<HTMLAnchorElement>['target'];
6200
+ /**
6201
+ * Set to true to show an icon indicating that it is an external link;
6202
+ * Defaults to true if `target="_blank"`
6203
+ */
6204
+ external?: boolean;
5900
6205
  };
5901
- export const maxedFlyoutWidth: (euiThemeContext: UseEuiTheme) => string;
5902
- export const composeFlyoutSizing: (euiThemeContext: UseEuiTheme, size: EuiFlyoutSize) => string;
6206
+ export const EuiExternalLinkIcon: FunctionComponent<EuiExternalLinkIconProps & Partial<EuiIconProps>>;
5903
6207
 
5904
6208
  }
5905
- declare module '@elastic/eui/src/components/flyout/_flyout_close_button.styles' {
6209
+ declare module '@elastic/eui/src/components/list_group/list_group_item_extra_action.styles' {
5906
6210
  import { UseEuiTheme } from '@elastic/eui/src/services';
5907
- export const euiFlyoutCloseButtonStyles: (euiThemeContext: UseEuiTheme) => {
5908
- euiFlyout__closeButton: import("@emotion/react").SerializedStyles;
5909
- inside: import("@emotion/react").SerializedStyles;
5910
- outside: import("@emotion/react").SerializedStyles;
5911
- outsideSide: {
5912
- right: import("@emotion/react").SerializedStyles;
5913
- left: import("@emotion/react").SerializedStyles;
5914
- };
6211
+ export const euiListGroupItemExtraActionStyles: ({ euiTheme, }: UseEuiTheme) => {
6212
+ euiListGroupItemExtraAction: import("@emotion/react").SerializedStyles;
6213
+ hoverStyles: import("@emotion/react").SerializedStyles;
6214
+ alwaysShow: import("@emotion/react").SerializedStyles;
5915
6215
  };
5916
6216
 
5917
6217
  }
5918
- declare module '@elastic/eui/src/components/flyout/_flyout_close_button' {
6218
+ declare module '@elastic/eui/src/components/list_group/list_group_item_extra_action' {
5919
6219
  import { FunctionComponent } from 'react';
5920
- import type { EuiFlyoutProps } from '@elastic/eui/src/components/flyout/flyout';
5921
- type EuiFlyoutCloseButtonProps = EuiFlyoutProps['closeButtonProps'] & Required<Pick<EuiFlyoutProps, 'closeButtonPosition' | 'onClose' | 'side'>>;
5922
- export const EuiFlyoutCloseButton: FunctionComponent<EuiFlyoutCloseButtonProps>;
6220
+ import { EuiButtonIconPropsForButton } from '@elastic/eui/src/components/button';
6221
+ export type EuiListGroupItemExtraActionProps = {
6222
+ alwaysShow?: boolean;
6223
+ } & EuiButtonIconPropsForButton;
6224
+ type _FromEuiListGroupItem = {
6225
+ parentIsDisabled?: boolean;
6226
+ };
6227
+ export const EuiListGroupItemExtraAction: FunctionComponent<EuiListGroupItemExtraActionProps & _FromEuiListGroupItem>;
5923
6228
  export {};
5924
6229
 
5925
6230
  }
5926
- declare module '@elastic/eui/src/components/flyout/flyout_child.styles' {
6231
+ declare module '@elastic/eui/src/components/list_group/list_group_item.styles' {
5927
6232
  import { UseEuiTheme } from '@elastic/eui/src/services';
5928
- export const euiFlyoutChildStyles: (euiThemeContext: UseEuiTheme) => {
5929
- euiFlyoutChild: import("@emotion/react").SerializedStyles;
5930
- backgroundDefault: import("@emotion/react").SerializedStyles;
5931
- backgroundShaded: import("@emotion/react").SerializedStyles;
5932
- sidePosition: import("@emotion/react").SerializedStyles;
5933
- stackedPosition: import("@emotion/react").SerializedStyles;
6233
+ export const euiListGroupItemStyles: (euiThemeContext: UseEuiTheme) => {
6234
+ euiListGroupItem: import("@emotion/react").SerializedStyles;
6235
+ xs: import("@emotion/react").SerializedStyles;
5934
6236
  s: import("@emotion/react").SerializedStyles;
5935
6237
  m: import("@emotion/react").SerializedStyles;
5936
- overflow: {
5937
- overflow: import("@emotion/react").SerializedStyles;
5938
- wrapper: import("@emotion/react").SerializedStyles;
6238
+ l: import("@emotion/react").SerializedStyles;
6239
+ colors: {
6240
+ isActive: {
6241
+ primary: import("@emotion/react").SerializedStyles;
6242
+ text: import("@emotion/react").SerializedStyles;
6243
+ subdued: import("@emotion/react").SerializedStyles;
6244
+ };
6245
+ isClickable: {
6246
+ primary: import("@emotion/react").SerializedStyles;
6247
+ text: import("@emotion/react").SerializedStyles;
6248
+ subdued: import("@emotion/react").SerializedStyles;
6249
+ };
5939
6250
  };
5940
- banner: import("@emotion/react").SerializedStyles;
5941
6251
  };
5942
-
5943
- }
5944
- declare module '@elastic/eui/src/components/flyout/flyout_context' {
5945
- import { RefObject } from 'react';
5946
- import { EuiFlyoutSize } from '@elastic/eui/src/components/flyout/flyout';
5947
- /**
5948
- * Context shared between the main and child flyouts
5949
- * @internal
5950
- */
5951
- export interface EuiFlyoutContextValue {
5952
- parentSize?: EuiFlyoutSize | string | number;
5953
- parentFlyoutRef?: RefObject<HTMLDivElement>;
5954
- isChildFlyoutOpen?: boolean;
5955
- setIsChildFlyoutOpen?: (isOpen: boolean) => void;
5956
- childLayoutMode?: 'side-by-side' | 'stacked';
5957
- }
5958
- export const EuiFlyoutContext: import("react").Context<EuiFlyoutContextValue | null>;
5959
-
5960
- }
5961
- declare module '@elastic/eui/src/components/flyout/flyout_body.styles' {
5962
- import { UseEuiTheme } from '@elastic/eui/src/services';
5963
- export const euiFlyoutBodyStyles: (euiThemeContext: UseEuiTheme) => {
5964
- euiFlyoutBody: import("@emotion/react").SerializedStyles;
5965
- overflow: {
5966
- euiFlyoutBody__overflow: import("@emotion/react").SerializedStyles;
5967
- noBanner: import("@emotion/react").SerializedStyles;
5968
- hasBanner: import("@emotion/react").SerializedStyles;
5969
- };
5970
- euiFlyoutBody__banner: import("@emotion/react").SerializedStyles;
6252
+ export const euiListGroupItemInnerStyles: (euiThemeContext: UseEuiTheme) => {
6253
+ euiListGroupItem__inner: import("@emotion/react").SerializedStyles;
6254
+ xs: import("@emotion/react").SerializedStyles;
6255
+ s: import("@emotion/react").SerializedStyles;
6256
+ m: import("@emotion/react").SerializedStyles;
6257
+ l: import("@emotion/react").SerializedStyles;
6258
+ primary: import("@emotion/react").SerializedStyles;
6259
+ text: import("@emotion/react").SerializedStyles;
6260
+ subdued: import("@emotion/react").SerializedStyles;
6261
+ ghost: import("@emotion/react").SerializedStyles;
6262
+ isDisabled: import("@emotion/react").SerializedStyles;
6263
+ isActive: import("@emotion/react").SerializedStyles;
6264
+ isClickable: import("@emotion/react").SerializedStyles;
6265
+ externalIcon: import("@emotion/react").SerializedStyles;
6266
+ };
6267
+ export const euiListGroupItemLabelStyles: {
6268
+ euiListGroupItem__label: import("@emotion/react").SerializedStyles;
6269
+ truncate: import("@emotion/react").SerializedStyles;
6270
+ wrapText: import("@emotion/react").SerializedStyles;
6271
+ };
6272
+ export const euiListGroupItemIconStyles: ({ euiTheme }: UseEuiTheme) => {
6273
+ euiListGroupItem__icon: import("@emotion/react").SerializedStyles;
6274
+ };
6275
+ export const euiListGroupItemTooltipStyles: {
6276
+ euiListGroupItem__tooltip: import("@emotion/react").SerializedStyles;
5971
6277
  };
5972
6278
 
5973
6279
  }
5974
- declare module '@elastic/eui/src/components/flyout/flyout_body' {
5975
- import { FunctionComponent, HTMLAttributes, ReactNode } from 'react';
5976
- import { CommonProps } from '@elastic/eui/src/components/common';
5977
- export type EuiFlyoutBodyProps = FunctionComponent<HTMLAttributes<HTMLDivElement> & CommonProps & {
6280
+ declare module '@elastic/eui/src/components/list_group/list_group_item' {
6281
+ import React, { HTMLAttributes, AnchorHTMLAttributes, ButtonHTMLAttributes, ReactNode, ReactElement, MouseEventHandler, FunctionComponent } from 'react';
6282
+ import { ExclusiveUnion, CommonProps } from '@elastic/eui/src/components/common';
6283
+ import { IconType, EuiIconProps } from '@elastic/eui/src/components/icon';
6284
+ import { EuiToolTipProps } from '@elastic/eui/src/components/tool_tip';
6285
+ import { EuiListGroupItemExtraActionProps } from '@elastic/eui/src/components/list_group/list_group_item_extra_action';
6286
+ export const SIZES: readonly ["xs", "s", "m", "l"];
6287
+ export type EuiListGroupItemSize = (typeof SIZES)[number];
6288
+ export const COLORS: readonly ["primary", "text", "subdued"];
6289
+ export type EuiListGroupItemColor = (typeof COLORS)[number];
6290
+ export type EuiListGroupItemProps = CommonProps & Omit<ExclusiveUnion<ExclusiveUnion<ButtonHTMLAttributes<HTMLButtonElement>, Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'href'>>, HTMLAttributes<HTMLSpanElement>>, 'onClick' | 'color' | 'target' | 'rel'> & {
5978
6291
  /**
5979
- * Use to display a banner at the top of the body. It is suggested to use `EuiCallOut` for it.
6292
+ * Size of the label text
5980
6293
  */
5981
- banner?: ReactNode;
6294
+ size?: EuiListGroupItemSize;
5982
6295
  /**
5983
- * [Scrollable regions (or their children) should be focusable](https://dequeuniversity.com/rules/axe/4.0/scrollable-region-focusable)
5984
- * to allow keyboard users to scroll the region via arrow keys.
5985
- *
5986
- * By default, EuiFlyoutBody's scroll overflow wrapper sets a `tabIndex` of `0`.
5987
- * If you know your flyout body content already contains focusable children
5988
- * that satisfy keyboard accessibility requirements, you can use this prop
5989
- * to override this default.
6296
+ * By default the item will get the color `text`.
6297
+ * You can customize the color of the item by passing a color name.
5990
6298
  */
5991
- scrollableTabIndex?: number;
5992
- }>;
5993
- export const EuiFlyoutBody: EuiFlyoutBodyProps;
5994
-
5995
- }
5996
- declare module '@elastic/eui/src/components/flyout/flyout_child' {
5997
- import { FunctionComponent, HTMLAttributes, ReactNode } from 'react';
5998
- import { CommonProps } from '@elastic/eui/src/components/common';
5999
- /**
6000
- * Props used to render and configure the child flyout panel
6001
- */
6002
- export interface EuiFlyoutChildProps extends HTMLAttributes<HTMLDivElement>, CommonProps {
6299
+ color?: EuiListGroupItemColor;
6003
6300
  /**
6004
- * Called when the child panel's close button is clicked
6301
+ * Content to be displayed in the list item
6005
6302
  */
6006
- onClose: (event: MouseEvent | TouchEvent | KeyboardEvent) => void;
6303
+ label: ReactNode;
6007
6304
  /**
6008
- * Use to display a banner at the top of the child. It is suggested to use `EuiCallOut` for it.
6305
+ * Apply styles indicating an item is active
6009
6306
  */
6010
- banner?: ReactNode;
6307
+ isActive?: boolean;
6011
6308
  /**
6012
- * Hides the default close button. You must provide another close button somewhere within the child flyout.
6013
- * @default false
6309
+ * Apply styles indicating an item is disabled
6014
6310
  */
6015
- hideCloseButton?: boolean;
6311
+ isDisabled?: boolean;
6016
6312
  /**
6017
- * [Scrollable regions (or their children) should be focusable](https://dequeuniversity.com/rules/axe/4.0/scrollable-region-focusable)
6018
- * to allow keyboard users to scroll the region via arrow keys.
6019
- *
6020
- * By default, EuiFlyoutChild's scroll overflow wrapper sets a `tabIndex` of `0`.
6021
- * If you know your flyout child content already contains focusable children
6022
- * that satisfy keyboard accessibility requirements, you can use this prop
6023
- * to override this default.
6313
+ * Make the list item label a link.
6314
+ * While permitted, `href` and `onClick` should not be used together in most cases and may create problems.
6024
6315
  */
6025
- scrollableTabIndex?: number;
6316
+ href?: string;
6317
+ rel?: string;
6318
+ target?: string;
6026
6319
  /**
6027
- * Size of the child flyout panel.
6028
- * When the parent flyout is 'm', child is limited to 's'.
6029
- * @default 's'
6320
+ * Set to true to show an icon indicating that it is an external link;
6321
+ * Defaults to true if `target="_blank"`
6030
6322
  */
6031
- size?: 's' | 'm';
6032
- backgroundStyle?: 'shaded' | 'default';
6323
+ external?: boolean;
6033
6324
  /**
6034
- * Children are implicitly part of FunctionComponent, but good to have if props type is standalone.
6325
+ * Adds `EuiIcon` of `EuiIcon.type`
6035
6326
  */
6036
- children?: ReactNode;
6037
- }
6038
- /**
6039
- * The child flyout is a panel that appears to the left of the parent flyout.
6040
- * It is only visible when the parent flyout is open.
6041
- */
6042
- export const EuiFlyoutChild: FunctionComponent<EuiFlyoutChildProps>;
6043
-
6044
- }
6045
- declare module '@elastic/eui/src/components/flyout/flyout_child_manager' {
6046
- import React, { ComponentProps, FunctionComponent, ReactNode } from 'react';
6047
- import { EuiFlyoutChild } from '@elastic/eui/src/components/flyout/flyout_child';
6048
- interface EuiFlyoutChildProviderProps {
6049
- parentSize: 's' | 'm';
6050
- parentFlyoutRef: React.RefObject<HTMLDivElement>;
6051
- childElement: React.ReactElement<ComponentProps<typeof EuiFlyoutChild>>;
6052
- childrenToRender: ReactNode;
6053
- reportIsChildOpen: (isOpen: boolean) => void;
6054
- reportChildLayoutMode: (mode: 'side-by-side' | 'stacked') => void;
6055
- }
6056
- /**
6057
- * An intermediate component between EuiFlyout and EuiFlyoutChild.
6058
- * It is responsible for managing the state of the child flyout, and passing it to EuiFlyoutContext.
6059
- * It removes the responsibility of managing child flyout state from EuiFlyout, which is especially important there might not be a child flyout.
6060
- */
6061
- export const EuiFlyoutChildProvider: FunctionComponent<EuiFlyoutChildProviderProps>;
6062
- export {};
6063
-
6064
- }
6065
- declare module '@elastic/eui/src/components/flyout/flyout' {
6066
- import { ComponentPropsWithRef, CSSProperties, ElementType, JSX } from 'react';
6067
- import { EuiBreakpointSize } from '@elastic/eui/src/services';
6068
- import { CommonProps, PropsOfElement } from '@elastic/eui/src/components/common';
6069
- import { EuiFocusTrapProps } from '@elastic/eui/src/components/focus_trap';
6070
- import { EuiOverlayMaskProps } from '@elastic/eui/src/components/overlay_mask';
6071
- import type { EuiButtonIconPropsForButton } from '@elastic/eui/src/components/button';
6072
- export const TYPES: readonly ["push", "overlay"];
6073
- type _EuiFlyoutType = (typeof TYPES)[number];
6074
- export const SIDES: readonly ["left", "right"];
6075
- export type _EuiFlyoutSide = (typeof SIDES)[number];
6076
- export const SIZES: readonly ["s", "m", "l"];
6077
- export type EuiFlyoutSize = (typeof SIZES)[number];
6078
- export const PADDING_SIZES: readonly ["none", "s", "m", "l"];
6079
- export type _EuiFlyoutPaddingSize = (typeof PADDING_SIZES)[number];
6080
- interface _EuiFlyoutProps {
6081
- onClose: (event: MouseEvent | TouchEvent | KeyboardEvent) => void;
6327
+ iconType?: IconType;
6082
6328
  /**
6083
- * Defines the width of the panel.
6084
- * Pass a predefined size of `s | m | l`, or pass any number/string compatible with the CSS `width` attribute
6085
- * @default m
6329
+ * Further extend the props applied to EuiIcon
6086
6330
  */
6087
- size?: EuiFlyoutSize | CSSProperties['width'];
6331
+ iconProps?: Omit<EuiIconProps, 'type'>;
6088
6332
  /**
6089
- * Sets the max-width of the panel,
6090
- * set to `true` to use the default size,
6091
- * set to `false` to not restrict the width,
6092
- * set to a number for a custom width in px,
6093
- * set to a string for a custom width in custom measurement.
6094
- * @default false
6333
+ * Custom node to pass as the icon. Cannot be used in conjunction
6334
+ * with `iconType` and `iconProps`.
6095
6335
  */
6096
- maxWidth?: boolean | number | string;
6336
+ icon?: ReactElement;
6097
6337
  /**
6098
- * Customize the padding around the content of the flyout header, body and footer
6099
- * @default l
6338
+ * Display tooltip on list item
6100
6339
  */
6101
- paddingSize?: _EuiFlyoutPaddingSize;
6340
+ showToolTip?: boolean;
6102
6341
  /**
6103
- * Adds an EuiOverlayMask and wraps in an EuiPortal
6104
- * @default true
6342
+ * An object of {@link EuiListGroupItemExtraAction} props.
6343
+ * Adds an `EuiButtonIcon` to the right side of the item; `iconType` is required;
6344
+ * pass `alwaysShow` if you don't want the default behavior of only showing on hover
6105
6345
  */
6106
- ownFocus?: boolean;
6346
+ extraAction?: EuiListGroupItemExtraActionProps;
6107
6347
  /**
6108
- * Hides the default close button. You must provide another close button somewhere within the flyout.
6109
- * @default false
6348
+ * Make the list item label a button.
6349
+ * While permitted, `href` and `onClick` should not be used together in most cases and may create problems.
6110
6350
  */
6111
- hideCloseButton?: boolean;
6351
+ onClick?: MouseEventHandler<HTMLButtonElement>;
6112
6352
  /**
6113
- * Extends EuiButtonIconProps onto the close button
6353
+ * Allow link text to wrap
6114
6354
  */
6115
- closeButtonProps?: Partial<EuiButtonIconPropsForButton>;
6355
+ wrapText?: boolean;
6116
6356
  /**
6117
- * Position of close button.
6118
- * `inside`: Floating to just inside the flyout, always top right;
6119
- * `outside`: Floating just outside the flyout near the top (side dependent on `side`). Helpful when the close button may cover other interactable content.
6120
- * @default inside
6357
+ * Pass-through ref reference specifically for targeting
6358
+ * instances where the item content is rendered as a `button`
6121
6359
  */
6122
- closeButtonPosition?: 'inside' | 'outside';
6360
+ buttonRef?: React.Ref<HTMLButtonElement>;
6123
6361
  /**
6124
- * Adjustments to the EuiOverlayMask that is added when `ownFocus = true`
6362
+ * Text to be displayed in the tooltip when `showToolTip` is true.
6363
+ * By default the text will be same as the label text.
6125
6364
  */
6126
- maskProps?: EuiOverlayMaskProps;
6365
+ toolTipText?: string;
6127
6366
  /**
6128
- * How to display the the flyout in relation to the body content;
6129
- * `push` keeps it visible, pushing the `<body>` content via padding
6130
- * @default overlay
6367
+ * Allows customizing the tooltip shown when `showToolTip` is true.
6368
+ * Accepts any props that [EuiToolTip](/#/display/tooltip) accepts.
6131
6369
  */
6132
- type?: _EuiFlyoutType;
6370
+ toolTipProps?: Partial<EuiToolTipProps>;
6371
+ };
6372
+ export const EuiListGroupItem: FunctionComponent<EuiListGroupItemProps>;
6373
+
6374
+ }
6375
+ declare module '@elastic/eui/src/components/list_group/list_group.styles' {
6376
+ import { UseEuiTheme } from '@elastic/eui/src/services';
6377
+ export const euiListGroupStyles: (euiThemeContext: UseEuiTheme) => {
6378
+ euiListGroup: import("@emotion/react").SerializedStyles;
6379
+ flush: import("@emotion/react").SerializedStyles;
6380
+ bordered: import("@emotion/react").SerializedStyles;
6381
+ maxWidthDefault: import("@emotion/react").SerializedStyles;
6382
+ none: import("@emotion/react").SerializedStyles;
6383
+ s: import("@emotion/react").SerializedStyles;
6384
+ m: import("@emotion/react").SerializedStyles;
6385
+ };
6386
+
6387
+ }
6388
+ declare module '@elastic/eui/src/components/list_group/list_group' {
6389
+ import { FunctionComponent, HTMLAttributes, CSSProperties } from 'react';
6390
+ import { CommonProps } from '@elastic/eui/src/components/common';
6391
+ import { EuiListGroupItemProps } from '@elastic/eui/src/components/list_group/list_group_item';
6392
+ export const GUTTER_SIZES: readonly ["none", "s", "m"];
6393
+ export type EuiListGroupGutterSize = (typeof GUTTER_SIZES)[number];
6394
+ export type EuiListGroupProps = CommonProps & Omit<HTMLAttributes<HTMLUListElement>, 'color'> & {
6133
6395
  /**
6134
- * Forces this interaction on the mask overlay or body content.
6135
- * Defaults depend on `ownFocus` and `type` values
6396
+ * Add a border to the list container
6136
6397
  */
6137
- outsideClickCloses?: boolean;
6398
+ bordered?: boolean;
6138
6399
  /**
6139
- * Which side of the window to attach to.
6140
- * The `left` option should only be used for navigation.
6141
- * @default right
6400
+ * Remove container padding, stretching list items to the edges
6142
6401
  */
6143
- side?: _EuiFlyoutSide;
6402
+ flush?: boolean;
6144
6403
  /**
6145
- * Named breakpoint (`xs` through `xl`) for customizing the minimum window width to enable the `push` type
6146
- * @default l
6404
+ * Spacing between list items
6147
6405
  */
6148
- pushMinBreakpoint?: EuiBreakpointSize;
6406
+ gutterSize?: EuiListGroupGutterSize;
6149
6407
  /**
6150
- * Enables a slide in animation on push flyouts
6151
- * @default false
6408
+ * Items to display in this group. See {@link EuiListGroupItem}
6152
6409
  */
6153
- pushAnimation?: boolean;
6154
- style?: CSSProperties;
6410
+ listItems?: EuiListGroupItemProps[];
6155
6411
  /**
6156
- * Object of props passed to EuiFocusTrap.
6157
- * `shards` specifies an array of elements that will be considered part of the flyout, preventing the flyout from being closed when clicked.
6158
- * `closeOnMouseup` will delay the close callback, allowing time for external toggle buttons to handle close behavior.
6159
- * `returnFocus` defines the return focus behavior and provides the possibility to check the available target element or opt out of the behavior in favor of manually returning focus
6412
+ * Change the colors of all `listItems` at once
6413
+ * @default text
6160
6414
  */
6161
- focusTrapProps?: Pick<EuiFocusTrapProps, 'closeOnMouseup' | 'shards' | 'returnFocus'>;
6415
+ color?: EuiListGroupItemProps['color'];
6162
6416
  /**
6163
- * By default, EuiFlyout will consider any fixed `EuiHeader`s that sit alongside or above the EuiFlyout
6164
- * as part of the flyout's focus trap. This prevents focus fighting with interactive elements
6165
- * within fixed headers.
6166
- *
6167
- * Set this to `false` if you need to disable this behavior for a specific reason.
6417
+ * Change the size of all `listItems` at once
6418
+ * @default m
6168
6419
  */
6169
- includeFixedHeadersInFocusTrap?: boolean;
6420
+ size?: EuiListGroupItemProps['size'];
6170
6421
  /**
6171
- * Specify additional css selectors to include in the focus trap.
6422
+ * Sets the max-width of the page.
6423
+ * Set to `true` to use the default size,
6424
+ * set to `false` to not restrict the width,
6425
+ * or set to a number/string for a custom CSS width/measurement.
6172
6426
  */
6173
- includeSelectorInFocusTrap?: string[] | string;
6174
- } const defaultElement = "div";
6175
- type Props<T extends ElementType> = CommonProps & {
6427
+ maxWidth?: boolean | CSSProperties['maxWidth'];
6176
6428
  /**
6177
- * Sets the HTML element for `EuiFlyout`
6429
+ * Display tooltips on all list items
6178
6430
  */
6179
- as?: T;
6180
- } & _EuiFlyoutProps & Omit<PropsOfElement<T>, keyof _EuiFlyoutProps>;
6181
- export type EuiFlyoutProps<T extends ElementType = typeof defaultElement> = Props<T> & Omit<ComponentPropsWithRef<T>, keyof Props<T>>;
6182
- export const EuiFlyout: <T extends ElementType = typeof defaultElement>(props: EuiFlyoutProps<T>) => JSX.Element;
6183
- export {};
6431
+ showToolTips?: boolean;
6432
+ /**
6433
+ * Allow link text to wrap vs truncated
6434
+ */
6435
+ wrapText?: boolean;
6436
+ ariaLabelledby?: string;
6437
+ };
6438
+ export const EuiListGroup: FunctionComponent<EuiListGroupProps>;
6184
6439
 
6185
6440
  }
6186
- declare module '@elastic/eui/src/components/flyout/flyout_footer.styles' {
6441
+ declare module '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group.styles' {
6187
6442
  import { UseEuiTheme } from '@elastic/eui/src/services';
6188
- export const euiFlyoutFooterStyles: (euiThemeContext: UseEuiTheme) => {
6189
- euiFlyoutFooter: import("@emotion/react").SerializedStyles;
6443
+ export const euiPinnableListGroupItemExtraActionStyles: ({ euiTheme, }: UseEuiTheme) => {
6444
+ euiPinnableListGroup__itemExtraAction: import("@emotion/react").SerializedStyles;
6445
+ pinned: import("@emotion/react").SerializedStyles;
6190
6446
  };
6191
6447
 
6192
6448
  }
6193
- declare module '@elastic/eui/src/components/flyout/flyout_footer' {
6194
- import { FunctionComponent, HTMLAttributes } from 'react';
6449
+ declare module '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group' {
6450
+ import { FunctionComponent } from 'react';
6195
6451
  import { CommonProps } from '@elastic/eui/src/components/common';
6196
- export type EuiFlyoutFooterProps = FunctionComponent<HTMLAttributes<HTMLDivElement> & CommonProps>;
6197
- export const EuiFlyoutFooter: EuiFlyoutFooterProps;
6452
+ import { EuiListGroupProps } from '@elastic/eui/src/components/list_group/list_group';
6453
+ import { EuiListGroupItemProps } from '@elastic/eui/src/components/list_group/list_group_item';
6454
+ export type EuiPinnableListGroupItemProps = EuiListGroupItemProps & {
6455
+ /**
6456
+ * Saves the pinned status and changes the visibility of the pin icon
6457
+ */
6458
+ pinned?: boolean;
6459
+ /**
6460
+ * Passing `onPinClick` to the full EuiPinnableListGroup, will make every item pinnable.
6461
+ * Set this property to `false` to turn off individual item pinnability
6462
+ */
6463
+ pinnable?: boolean;
6464
+ };
6465
+ export interface EuiPinnableListGroupProps extends CommonProps, EuiListGroupProps {
6466
+ /**
6467
+ * Extends `EuiListGroupItemProps`, at the very least, expecting a `label`.
6468
+ * See {@link EuiPinnableListGroupItemProps}
6469
+ */
6470
+ listItems: EuiPinnableListGroupItemProps[];
6471
+ /**
6472
+ * Shows the pin icon and calls this function on click.
6473
+ * Returns `item: EuiPinnableListGroupItemProps`
6474
+ */
6475
+ onPinClick: (item: EuiPinnableListGroupItemProps) => void;
6476
+ /**
6477
+ * The pin icon needs a title/aria-label for accessibility.
6478
+ * It is a function that passes the item back and must return a string `(item) => string`.
6479
+ * Default is `"Pin item"`
6480
+ */
6481
+ pinTitle?: (item: EuiPinnableListGroupItemProps) => string;
6482
+ /**
6483
+ * The unpin icon needs a title/aria-label for accessibility.
6484
+ * It is a function that passes the item back and must return a string `(item) => string`.
6485
+ * Default is `"Unpin item"`
6486
+ */
6487
+ unpinTitle?: (item: EuiPinnableListGroupItemProps) => string;
6488
+ }
6489
+ export const EuiPinnableListGroup: FunctionComponent<EuiPinnableListGroupProps>;
6198
6490
 
6199
6491
  }
6200
- declare module '@elastic/eui/src/components/flyout/flyout_header.styles' {
6201
- import { UseEuiTheme } from '@elastic/eui/src/services';
6202
- export const euiFlyoutHeaderStyles: (euiThemeContext: UseEuiTheme) => {
6203
- euiFlyoutHeader: import("@emotion/react").SerializedStyles;
6204
- hasBorder: import("@emotion/react").SerializedStyles;
6205
- };
6492
+ declare module '@elastic/eui/src/components/list_group/pinnable_list_group' {
6493
+ export type { EuiPinnableListGroupProps, EuiPinnableListGroupItemProps, } from '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group';
6494
+ export { EuiPinnableListGroup } from '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group';
6206
6495
 
6207
6496
  }
6208
- declare module '@elastic/eui/src/components/flyout/flyout_header' {
6209
- import { FunctionComponent, HTMLAttributes } from 'react';
6210
- import { CommonProps } from '@elastic/eui/src/components/common';
6211
- export type EuiFlyoutHeaderProps = FunctionComponent<HTMLAttributes<HTMLDivElement> & CommonProps & {
6212
- hasBorder?: boolean;
6213
- }>;
6214
- export const EuiFlyoutHeader: EuiFlyoutHeaderProps;
6497
+ declare module '@elastic/eui/src/components/list_group' {
6498
+ export type { EuiListGroupProps } from '@elastic/eui/src/components/list_group/list_group';
6499
+ export { EuiListGroup } from '@elastic/eui/src/components/list_group/list_group';
6500
+ export type { EuiListGroupItemProps } from '@elastic/eui/src/components/list_group/list_group_item';
6501
+ export type { EuiListGroupItemExtraActionProps } from '@elastic/eui/src/components/list_group/list_group_item_extra_action';
6502
+ export { EuiListGroupItem } from '@elastic/eui/src/components/list_group/list_group_item';
6503
+ export type { EuiPinnableListGroupProps, EuiPinnableListGroupItemProps, } from '@elastic/eui/src/components/list_group/pinnable_list_group';
6504
+ export { EuiPinnableListGroup } from '@elastic/eui/src/components/list_group/pinnable_list_group';
6215
6505
 
6216
6506
  }
6217
- declare module '@elastic/eui/src/components/resizable_container/types' {
6218
- import { KeyboardEvent, MouseEvent, TouchEvent } from 'react';
6507
+ declare module '@elastic/eui/src/components/title' {
6508
+ export type { EuiTitleProps, EuiTitleSize } from '@elastic/eui/src/components/title/title';
6509
+ export { EuiTitle } from '@elastic/eui/src/components/title/title';
6510
+
6511
+ }
6512
+ declare module '@elastic/eui/src/components/flyout/const' {
6513
+ import { EuiBreakpointSize } from '@elastic/eui/src/services';
6514
+ /** Allowed flyout render types. */
6515
+ export const FLYOUT_TYPES: readonly ["push", "overlay"];
6516
+ /** Type representing a supported flyout render type. */
6517
+ export type _EuiFlyoutType = (typeof FLYOUT_TYPES)[number];
6518
+ /** Allowed flyout attachment sides. */
6519
+ export const FLYOUT_SIDES: readonly ["left", "right"];
6520
+ /** Type representing a supported flyout side. */
6521
+ export type _EuiFlyoutSide = (typeof FLYOUT_SIDES)[number];
6522
+ /** Allowed named flyout sizes used by the manager. */
6523
+ export const FLYOUT_SIZES: readonly ["s", "m", "l", "fill"];
6524
+ /** Type representing a supported named flyout size. */
6525
+ export type EuiFlyoutSize = (typeof FLYOUT_SIZES)[number];
6526
+ /** Allowed padding sizes for flyout content. */
6527
+ export const FLYOUT_PADDING_SIZES: readonly ["none", "s", "m", "l"];
6528
+ /** Type representing a supported flyout padding size. */
6529
+ export type _EuiFlyoutPaddingSize = (typeof FLYOUT_PADDING_SIZES)[number];
6530
+ /** Default minimum breakpoint at which push-type flyouts begin to push content. */
6531
+ export const DEFAULT_PUSH_MIN_BREAKPOINT: EuiBreakpointSize;
6532
+ /** Default flyout type when none is provided. */
6533
+ export const DEFAULT_TYPE: _EuiFlyoutType;
6534
+ /** Default side where flyouts anchor when none is provided. */
6535
+ export const DEFAULT_SIDE: _EuiFlyoutSide;
6536
+ /** Default named flyout size. */
6537
+ export const DEFAULT_SIZE: EuiFlyoutSize;
6538
+ /** Default padding size inside flyouts. */
6539
+ export const DEFAULT_PADDING_SIZE: _EuiFlyoutPaddingSize;
6540
+ /**
6541
+ * Custom type checker for named flyout sizes since the prop
6542
+ * `size` can also be CSSProperties['width'] (string | number)
6543
+ */
6544
+ export function isEuiFlyoutSizeNamed(value: unknown): value is EuiFlyoutSize;
6545
+
6546
+ }
6547
+ declare module '@elastic/eui/src/components/flyout/flyout.styles' {
6548
+ import { EuiFlyoutSize } from '@elastic/eui/src/components/flyout/const';
6549
+ import { UseEuiTheme } from '@elastic/eui/src/services';
6550
+ export const FLYOUT_BREAKPOINT: "m";
6551
+ export const euiFlyoutSlideInRight: import("@emotion/serialize").Keyframes;
6552
+ export const euiFlyoutSlideOutRight: import("@emotion/serialize").Keyframes;
6553
+ export const euiFlyoutSlideInLeft: import("@emotion/serialize").Keyframes;
6554
+ export const euiFlyoutSlideOutLeft: import("@emotion/serialize").Keyframes;
6555
+ export const euiFlyoutStyles: (euiThemeContext: UseEuiTheme) => {
6556
+ euiFlyout: import("@emotion/react").SerializedStyles;
6557
+ s: import("@emotion/react").SerializedStyles;
6558
+ m: import("@emotion/react").SerializedStyles;
6559
+ l: import("@emotion/react").SerializedStyles;
6560
+ fill: import("@emotion/react").SerializedStyles;
6561
+ noMaxWidth: import("@emotion/react").SerializedStyles;
6562
+ right: import("@emotion/react").SerializedStyles;
6563
+ left: import("@emotion/react").SerializedStyles;
6564
+ overlay: {
6565
+ overlay: import("@emotion/react").SerializedStyles;
6566
+ left: import("@emotion/react").SerializedStyles;
6567
+ right: import("@emotion/react").SerializedStyles;
6568
+ };
6569
+ push: {
6570
+ push: import("@emotion/react").SerializedStyles;
6571
+ right: import("@emotion/react").SerializedStyles;
6572
+ left: import("@emotion/react").SerializedStyles;
6573
+ noAnimation: import("@emotion/react").SerializedStyles;
6574
+ };
6575
+ paddingSizes: {
6576
+ none: import("@emotion/react").SerializedStyles;
6577
+ s: import("@emotion/react").SerializedStyles;
6578
+ m: import("@emotion/react").SerializedStyles;
6579
+ l: import("@emotion/react").SerializedStyles;
6580
+ };
6581
+ };
6582
+ export const maxedFlyoutWidth: (euiThemeContext: UseEuiTheme) => string;
6583
+ export const composeFlyoutSizing: (euiThemeContext: UseEuiTheme, size: EuiFlyoutSize) => string;
6584
+ /**
6585
+ * Composes all inline styles for a flyout based on its configuration
6586
+ */
6587
+ export const composeFlyoutInlineStyles: (size: EuiFlyoutSize | string | number, layoutMode: "side-by-side" | "stacked", siblingFlyoutId: string | null, siblingFlyoutWidth: number | null, maxWidth: boolean | number | string | undefined, zIndex?: number) => React.CSSProperties;
6588
+
6589
+ }
6590
+ declare module '@elastic/eui/src/components/flyout/_flyout_close_button.styles' {
6591
+ import { UseEuiTheme } from '@elastic/eui/src/services';
6592
+ export const euiFlyoutCloseButtonStyles: (euiThemeContext: UseEuiTheme) => {
6593
+ euiFlyout__closeButton: import("@emotion/react").SerializedStyles;
6594
+ inside: import("@emotion/react").SerializedStyles;
6595
+ outside: import("@emotion/react").SerializedStyles;
6596
+ outsideSide: {
6597
+ right: import("@emotion/react").SerializedStyles;
6598
+ left: import("@emotion/react").SerializedStyles;
6599
+ };
6600
+ };
6601
+
6602
+ }
6603
+ declare module '@elastic/eui/src/components/flyout/_flyout_close_button' {
6604
+ import { FunctionComponent } from 'react';
6605
+ import type { EuiFlyoutProps } from '@elastic/eui/src/components/flyout/flyout';
6606
+ type EuiFlyoutCloseButtonProps = EuiFlyoutProps['closeButtonProps'] & Required<Pick<EuiFlyoutProps, 'closeButtonPosition' | 'onClose' | 'side'>>;
6607
+ export const EuiFlyoutCloseButton: FunctionComponent<EuiFlyoutCloseButtonProps>;
6608
+ export {};
6609
+
6610
+ }
6611
+ declare module '@elastic/eui/src/components/flyout/flyout_menu.styles' {
6612
+ import { UseEuiTheme } from '@elastic/eui/src/services';
6613
+ export const euiFlyoutMenuStyles: (euiThemeContext: UseEuiTheme) => {
6614
+ euiFlyoutMenu__container: import("@emotion/react").SerializedStyles;
6615
+ euiFlyoutMenu__spacer: import("@emotion/react").SerializedStyles;
6616
+ euiFlyoutMenu__actions: import("@emotion/react").SerializedStyles;
6617
+ euiFlyoutMenu__hiddenTitle: import("@emotion/react").SerializedStyles;
6618
+ };
6619
+
6620
+ }
6621
+ declare module '@elastic/eui/src/components/flyout/flyout_menu_context' {
6622
+ import { EuiFlyoutProps } from '@elastic/eui/src/components/flyout/flyout';
6623
+ interface EuiFlyoutMenuContextProps {
6624
+ onClose?: EuiFlyoutProps['onClose'];
6625
+ }
6626
+ export const EuiFlyoutMenuContext: import("react").Context<EuiFlyoutMenuContextProps>;
6627
+ export {};
6628
+
6629
+ }
6630
+ declare module '@elastic/eui/src/components/flyout/types' {
6631
+ export type EuiFlyoutCloseEvent = MouseEvent | TouchEvent | KeyboardEvent;
6632
+
6633
+ }
6634
+ declare module '@elastic/eui/src/components/flyout/flyout_menu' {
6635
+ import React, { FunctionComponent, HTMLAttributes } from 'react';
6636
+ import { EuiButtonProps } from '@elastic/eui/src/components/button';
6637
+ import { CommonProps, PropsForAnchor } from '@elastic/eui/src/components/common';
6638
+ type EuiFlyoutMenuBackButtonProps = Pick<PropsForAnchor<EuiButtonProps>, 'aria-label' | 'data-test-subj' | 'onClick'>;
6639
+ /**
6640
+ * History item for the flyout menu history popover
6641
+ */
6642
+ export interface EuiFlyoutHistoryItem {
6643
+ /**
6644
+ * Title for the history item
6645
+ */
6646
+ title: string;
6647
+ /**
6648
+ * onClick handler for the history item
6649
+ */
6650
+ onClick: () => void;
6651
+ }
6652
+ /**
6653
+ * Custom action item for the flyout menu component
6654
+ */
6655
+ export interface EuiFlyoutMenuCustomAction {
6656
+ /**
6657
+ * Icon type for the action button
6658
+ */
6659
+ iconType: string;
6660
+ /**
6661
+ * onClick handler for the action button
6662
+ */
6663
+ onClick: () => void;
6664
+ /**
6665
+ * Aria label for the action button
6666
+ */
6667
+ 'aria-label': string;
6668
+ }
6669
+ /**
6670
+ * Props for EuiFlyoutMenu
6671
+ */
6672
+ export type EuiFlyoutMenuProps = CommonProps & HTMLAttributes<HTMLDivElement> & {
6673
+ /**
6674
+ * An id to use for the title element. Useful for setting aria-labelledby on the flyout.
6675
+ * Example:
6676
+ * ```jsx
6677
+ * <EuiFlyout
6678
+ * aria-labelledby="myMenuTitleId"
6679
+ * flyoutMenuProps={{ title: 'Menu title', titleId: 'myMenuTitleId' }
6680
+ * >
6681
+ * ...
6682
+ * </EuiFlyout>
6683
+ * ```
6684
+ */
6685
+ titleId?: string;
6686
+ /**
6687
+ * Title for the menu component. In a managed flyout context, the title is used to indicate the flyout session for history navigation.
6688
+ */
6689
+ title?: React.ReactNode;
6690
+ /**
6691
+ * Hides the title in the `EuiFlyoutMenu`. This is useful when the title is already shown in an `EuiFlyoutHeader`.
6692
+ * @default true for main flyout in a managed flyout session; false otherwise
6693
+ */
6694
+ hideTitle?: boolean;
6695
+ /**
6696
+ * Hides the close button in the menu component
6697
+ * @default false
6698
+ */
6699
+ hideCloseButton?: boolean;
6700
+ /**
6701
+ * Shows a back button in the menu component
6702
+ * @default false
6703
+ */
6704
+ showBackButton?: boolean;
6705
+ /**
6706
+ * Props to pass to the back button, such as `onClick` handler
6707
+ */
6708
+ backButtonProps?: EuiFlyoutMenuBackButtonProps;
6709
+ /**
6710
+ * List of history items for the history popover
6711
+ */
6712
+ historyItems?: EuiFlyoutHistoryItem[];
6713
+ /**
6714
+ * List of custom action items for the menu component
6715
+ */
6716
+ customActions?: EuiFlyoutMenuCustomAction[];
6717
+ };
6718
+ /**
6719
+ * The component for the top menu bar inside a flyout. Since this is a private
6720
+ * component, rendering is controlled using the `flyoutMenuProps` prop on
6721
+ * `EuiFlyout`. In managed session flyouts, the Flyout Manager controls a back
6722
+ * button and history popover for navigating to different flyout sessions
6723
+ * within the managed context.
6724
+ *
6725
+ * @private
6726
+ */
6727
+ export const EuiFlyoutMenu: FunctionComponent<EuiFlyoutMenuProps>;
6728
+ export {};
6729
+
6730
+ }
6731
+ declare module '@elastic/eui/src/components/flyout/manager/activity_stage' {
6732
+ import type { EuiFlyoutActivityStage, EuiFlyoutLevel } from '@elastic/eui/src/components/flyout/manager/types';
6733
+ export interface UseFlyoutActivityStageParams {
6734
+ flyoutId: string;
6735
+ level: EuiFlyoutLevel;
6736
+ }
6737
+ export interface UseFlyoutActivityStageReturn {
6738
+ activityStage: EuiFlyoutActivityStage;
6739
+ onAnimationEnd: () => void;
6740
+ }
6741
+ /**
6742
+ * Encapsulates all activity-stage transitions and animation-driven updates
6743
+ * for managed flyouts.
6744
+ */
6745
+ export const useFlyoutActivityStage: ({ flyoutId, level, }: UseFlyoutActivityStageParams) => {
6746
+ activityStage: EuiFlyoutActivityStage;
6747
+ onAnimationEnd: () => void;
6748
+ };
6749
+
6750
+ }
6751
+ declare module '@elastic/eui/src/components/flyout/manager/flyout_managed.styles' {
6752
+ import { UseEuiTheme } from '@elastic/eui/src/services';
6753
+ import { _EuiFlyoutSide } from '@elastic/eui/src/components/flyout/const';
6754
+ import type { EuiFlyoutActivityStage, EuiFlyoutLevel } from '@elastic/eui/src/components/flyout/manager/types';
6755
+ /**
6756
+ * Emotion styles for managed flyouts.
6757
+ * Provides base 3D context and animations tied to managed flyout stages
6758
+ * via data attributes.
6759
+ */
6760
+ export const euiManagedFlyoutStyles: (euiThemeContext: UseEuiTheme) => {
6761
+ stage: (activeStage: EuiFlyoutActivityStage, side: _EuiFlyoutSide | undefined, level: EuiFlyoutLevel) => (false | import("@emotion/react").SerializedStyles)[];
6762
+ managedFlyout: import("@emotion/react").SerializedStyles;
6763
+ };
6764
+
6765
+ }
6766
+ declare module '@elastic/eui/src/components/flyout/manager/validation' {
6767
+ import { EuiFlyoutSize } from '@elastic/eui/src/components/flyout/const';
6768
+ import { EuiFlyoutComponentProps } from '@elastic/eui/src/components/flyout/flyout.component';
6769
+ import { EuiFlyoutLevel } from '@elastic/eui/src/components/flyout/manager/types';
6770
+ type FlyoutValidationErrorType = 'INVALID_SIZE_TYPE' | 'INVALID_SIZE_COMBINATION' | 'INVALID_FLYOUT_MENU_TITLE';
6771
+ export interface FlyoutValidationError {
6772
+ type: FlyoutValidationErrorType;
6773
+ message: string;
6774
+ flyoutId?: string;
6775
+ parentFlyoutId?: string;
6776
+ level?: EuiFlyoutLevel;
6777
+ size?: string | number;
6778
+ parentSize?: string | number;
6779
+ }
6780
+ /**
6781
+ * Checks if a size is a named size (s, m, l)
6782
+ */
6783
+ export function isNamedSize(size: unknown): size is EuiFlyoutSize;
6784
+ /**
6785
+ * Validates that a managed flyout only uses named sizes
6786
+ */
6787
+ export function validateManagedFlyoutSize(size: EuiFlyoutComponentProps['size'], flyoutId: string, level: EuiFlyoutLevel): FlyoutValidationError | null;
6788
+ /**
6789
+ * Validates size combinations for parent-child flyouts
6790
+ */
6791
+ export function validateSizeCombination(parentSize: EuiFlyoutSize, childSize: EuiFlyoutSize): FlyoutValidationError | null;
6792
+ /**
6793
+ * Creates a user-friendly error message for validation errors
6794
+ */
6795
+ export function createValidationErrorMessage(error: FlyoutValidationError): string;
6796
+ export {};
6797
+
6798
+ }
6799
+ declare module '@elastic/eui/src/components/flyout/manager/flyout_managed' {
6800
+ import React from 'react';
6801
+ import { EuiFlyoutComponentProps } from '@elastic/eui/src/components/flyout/flyout.component';
6802
+ import { EuiFlyoutMenuProps } from '@elastic/eui/src/components/flyout/flyout_menu';
6803
+ import type { EuiFlyoutLevel } from '@elastic/eui/src/components/flyout/manager/types';
6804
+ /**
6805
+ * Props for `EuiManagedFlyout`, the internal persistent flyout used by
6806
+ * the manager. Extends base flyout props and requires a `level` to
6807
+ * distinguish `main` vs `child` behavior.
6808
+ */
6809
+ export interface EuiManagedFlyoutProps extends EuiFlyoutComponentProps {
6810
+ level: EuiFlyoutLevel;
6811
+ flyoutMenuProps?: Omit<EuiFlyoutMenuProps, 'historyItems' | 'showBackButton'>;
6812
+ onActive?: () => void;
6813
+ }
6814
+ /**
6815
+ * Persistent managed flyout rendered inside the provider. Handles:
6816
+ * - registration/unregistration with the manager
6817
+ * - size validation and parent/child size compatibility
6818
+ * - width tracking for responsive layouts
6819
+ * - lifecycle stage transitions and data attributes for styling
6820
+ */
6821
+ export const EuiManagedFlyout: ({ id, onClose: onCloseProp, onActive: onActiveProp, level, size: sizeProp, css: customCss, flyoutMenuProps: _flyoutMenuProps, ...props }: EuiManagedFlyoutProps) => React.JSX.Element;
6822
+
6823
+ }
6824
+ declare module '@elastic/eui/src/components/flyout/manager/flyout_child' {
6825
+ import React from 'react';
6826
+ import { type EuiManagedFlyoutProps } from '@elastic/eui/src/components/flyout/manager/flyout_managed';
6827
+ /**
6828
+ * Props for `EuiFlyoutChild`, a managed child flyout that pairs with a main flyout.
6829
+ *
6830
+ * Notes:
6831
+ * - `type`, `side`, and `level` are fixed by the component and thus omitted.
6832
+ */
6833
+ export type EuiFlyoutChildProps = Omit<EuiManagedFlyoutProps, 'closeButtonPosition' | 'hideCloseButton' | 'type' | 'level' | 'hasChildBackground'>;
6834
+ /**
6835
+ * Managed child flyout that renders alongside or stacked over the main flyout,
6836
+ * depending on the current layout mode. Handles required managed flyout props.
6837
+ */
6838
+ export function EuiFlyoutChild({ css: customCss, side, ...props }: EuiFlyoutChildProps): React.JSX.Element | null;
6839
+
6840
+ }
6841
+ declare module '@elastic/eui/src/components/flyout/manager/flyout_main.styles' {
6842
+ import { UseEuiTheme } from '@elastic/eui/src/services';
6843
+ /**
6844
+ * Emotion styles for the main (parent) managed flyout.
6845
+ * Adds subtle borders when a child flyout is present, depending on side.
6846
+ *
6847
+ * Returns an object with:
6848
+ * - `hasChildFlyout.left` and `.right`: border styles to separate from child.
6849
+ */
6850
+ export const euiMainFlyoutStyles: (euiThemeContext: UseEuiTheme) => {
6851
+ hasChildFlyout: {
6852
+ left: import("@emotion/react").SerializedStyles;
6853
+ right: import("@emotion/react").SerializedStyles;
6854
+ };
6855
+ };
6856
+
6857
+ }
6858
+ declare module '@elastic/eui/src/components/flyout/hooks' {
6859
+ import { EuiFlyoutProps } from '@elastic/eui/src/components/flyout/flyout';
6860
+ /**
6861
+ * Determines if a flyout should be rendered in a "pushed" state based on its
6862
+ * configuration and the current window size.
6863
+ */
6864
+ export const useIsPushed: (props: Pick<EuiFlyoutProps, "type" | "pushMinBreakpoint">) => boolean;
6865
+
6866
+ }
6867
+ declare module '@elastic/eui/src/components/flyout/manager/flyout_main' {
6868
+ import React from 'react';
6869
+ import { type EuiManagedFlyoutProps } from '@elastic/eui/src/components/flyout/manager/flyout_managed';
6870
+ /**
6871
+ * Props for `EuiFlyoutMain`, the primary managed flyout component.
6872
+ * The `level` prop is fixed internally to `main` and is therefore omitted.
6873
+ */
6874
+ export type EuiFlyoutMainProps = Omit<EuiManagedFlyoutProps, 'level'>;
6875
+ /**
6876
+ * Managed main flyout. Handles ID management, child-flyout styling,
6877
+ * and push/overlay behavior based on provided props.
6878
+ */
6879
+ export function EuiFlyoutMain({ id, pushMinBreakpoint, type, side, ...props }: EuiFlyoutMainProps): React.JSX.Element;
6880
+
6881
+ }
6882
+ declare module '@elastic/eui/src/components/flyout/manager' {
6883
+ /**
6884
+ * Convenience re-exports of bound action creators for external usage.
6885
+ */
6886
+ export { addFlyout as addFlyoutAction, closeFlyout as closeFlyoutAction, setActiveFlyout as setActiveFlyoutAction, setFlyoutWidth as setFlyoutWidthAction, setPushPadding as setPushPaddingAction, setActivityStage as setActivityStageAction, } from '@elastic/eui/src/components/flyout/manager/actions';
6887
+ /** Reducer and default state for the flyout manager. */
6888
+ export { flyoutManagerReducer, initialState } from '@elastic/eui/src/components/flyout/manager/reducer';
6889
+ /** Provider component exposing the Flyout Manager API via context. */
6890
+ export { EuiFlyoutManager } from '@elastic/eui/src/components/flyout/manager/provider';
6891
+ /**
6892
+ * Hooks for reading manager state and derived information.
6893
+ */
6894
+ /**
6895
+ * Selectors and derived state hooks for managed flyouts.
6896
+ */
6897
+ export { useCurrentChildFlyout, useCurrentMainFlyout, useCurrentSession, useFlyoutId, useFlyoutLayoutMode, useFlyoutManager, useFlyoutWidth, useHasChildFlyout, useIsFlyoutActive, useIsInManagedFlyout, useHasActiveSession, useParentFlyoutSize, usePushPaddingOffsets, useHasPushPadding, } from '@elastic/eui/src/components/flyout/manager/hooks';
6898
+ export { EuiFlyoutChild, type EuiFlyoutChildProps } from '@elastic/eui/src/components/flyout/manager/flyout_child';
6899
+ export { EuiFlyoutMain, type EuiFlyoutMainProps } from '@elastic/eui/src/components/flyout/manager/flyout_main';
6900
+ /** Utility functions for flyout sizing and layout. */
6901
+ export { getWidthFromSize } from '@elastic/eui/src/components/flyout/manager/layout_mode';
6902
+
6903
+ }
6904
+ declare module '@elastic/eui/src/components/overlay_mask/overlay_mask.styles' {
6905
+ import { UseEuiTheme } from '@elastic/eui/src/services';
6906
+ export const euiOverlayMaskStyles: ({ euiTheme, highContrastMode, }: UseEuiTheme) => {
6907
+ euiOverlayMask: string;
6908
+ aboveHeader: string;
6909
+ belowHeader: string;
6910
+ noAnimation: string;
6911
+ };
6912
+
6913
+ }
6914
+ declare module '@elastic/eui/src/components/overlay_mask/overlay_mask_body.styles' {
6915
+ export const euiOverlayMaskBodyStyles: import("@emotion/react").SerializedStyles;
6916
+
6917
+ }
6918
+ declare module '@elastic/eui/src/components/overlay_mask/overlay_mask' {
6919
+ import { FunctionComponent, HTMLAttributes, MutableRefObject, ReactNode, Ref } from 'react';
6920
+ import { CommonProps } from '@elastic/eui/src/components/common';
6921
+ export interface EuiOverlayMaskInterface {
6922
+ /**
6923
+ * ReactNode to render as this component's content
6924
+ */
6925
+ children?: ReactNode;
6926
+ /**
6927
+ * Should the mask visually sit above or below the EuiHeader (controlled by z-index)
6928
+ */
6929
+ headerZindexLocation?: 'above' | 'below';
6930
+ /**
6931
+ * React ref to be passed to the wrapping container
6932
+ */
6933
+ maskRef?: Ref<HTMLDivElement> | MutableRefObject<HTMLDivElement>;
6934
+ }
6935
+ export type EuiOverlayMaskProps = Omit<CommonProps, 'css'> & Omit<Partial<Record<keyof HTMLAttributes<HTMLDivElement>, string>>, keyof EuiOverlayMaskInterface> & EuiOverlayMaskInterface;
6936
+ export const EuiOverlayMask: FunctionComponent<EuiOverlayMaskProps>;
6937
+
6938
+ }
6939
+ declare module '@elastic/eui/src/components/overlay_mask' {
6940
+ export type { EuiOverlayMaskProps } from '@elastic/eui/src/components/overlay_mask/overlay_mask';
6941
+ export { EuiOverlayMask } from '@elastic/eui/src/components/overlay_mask/overlay_mask';
6942
+
6943
+ }
6944
+ declare module '@elastic/eui/src/components/flyout/_flyout_overlay' {
6945
+ import React, { PropsWithChildren } from 'react';
6946
+ import type { EuiFlyoutComponentProps } from '@elastic/eui/src/components/flyout/flyout.component';
6947
+ export interface EuiFlyoutOverlayProps extends PropsWithChildren {
6948
+ hasOverlayMask: boolean;
6949
+ maskProps: EuiFlyoutComponentProps['maskProps'];
6950
+ isPushed: boolean;
6951
+ maskZIndex: number;
6952
+ }
6953
+ /**
6954
+ * Light wrapper for conditionally rendering portals or overlay masks:
6955
+ * - If ownFocus is set, wrap with an overlay and allow the user to click it to close it.
6956
+ * - Otherwise still wrap within an EuiPortal so it appends to the bottom of the window.
6957
+ * Push flyouts have no overlay OR portal behavior.
6958
+ *
6959
+ * @internal
6960
+ */
6961
+ export const EuiFlyoutOverlay: ({ children, isPushed, maskProps, hasOverlayMask, maskZIndex, }: EuiFlyoutOverlayProps) => React.JSX.Element;
6962
+
6963
+ }
6964
+ declare module '@elastic/eui/src/components/resizable_container/types' {
6965
+ import { KeyboardEvent, MouseEvent, TouchEvent } from 'react';
6219
6966
  export type PanelModeType = 'collapsible' | 'main' | 'custom';
6220
6967
  export type PanelPosition = 'first' | 'middle' | 'last';
6221
6968
  export type PanelDirection = 'left' | 'right';
@@ -6874,10 +7621,10 @@ declare module '@elastic/eui/src/components/resizable_container' {
6874
7621
  export { EuiResizableButton } from '@elastic/eui/src/components/resizable_container/resizable_button';
6875
7622
 
6876
7623
  }
6877
- declare module '@elastic/eui/src/components/flyout/flyout_resizable.styles' {
7624
+ declare module '@elastic/eui/src/components/flyout/_flyout_resize_button.styles' {
6878
7625
  import { UseEuiTheme } from '@elastic/eui/src/services';
6879
- export const euiFlyoutResizableButtonStyles: ({ euiTheme }: UseEuiTheme) => {
6880
- euiFlyoutResizableButton: import("@emotion/react").SerializedStyles;
7626
+ export const euiFlyoutResizeButtonStyles: ({ euiTheme }: UseEuiTheme) => {
7627
+ root: import("@emotion/react").SerializedStyles;
6881
7628
  overlay: {
6882
7629
  left: import("@emotion/react").SerializedStyles;
6883
7630
  right: import("@emotion/react").SerializedStyles;
@@ -6887,200 +7634,334 @@ declare module '@elastic/eui/src/components/flyout/flyout_resizable.styles' {
6887
7634
  right: import("@emotion/react").SerializedStyles;
6888
7635
  };
6889
7636
  noOverlay: {
6890
- noOverlay: import("@emotion/react").SerializedStyles;
7637
+ root: import("@emotion/react").SerializedStyles;
6891
7638
  left: import("@emotion/react").SerializedStyles;
6892
7639
  right: import("@emotion/react").SerializedStyles;
6893
7640
  };
6894
7641
  };
6895
7642
 
7643
+ }
7644
+ declare module '@elastic/eui/src/components/flyout/_flyout_resize_button' {
7645
+ import React from 'react';
7646
+ import { EuiResizableButtonProps } from '@elastic/eui/src/components/resizable_container';
7647
+ import type { _EuiFlyoutType, _EuiFlyoutSide } from '@elastic/eui/src/components/flyout/const';
7648
+ import type { EuiFlyoutComponentProps } from '@elastic/eui/src/components/flyout/flyout.component';
7649
+ type EuiFlyoutResizeButtonProps = Pick<EuiResizableButtonProps, 'onMouseDown' | 'onKeyDown' | 'onTouchStart'> & {
7650
+ type: _EuiFlyoutType;
7651
+ side: _EuiFlyoutSide;
7652
+ ownFocus: EuiFlyoutComponentProps['ownFocus'];
7653
+ isPushed: boolean;
7654
+ };
7655
+ export const EuiFlyoutResizeButton: ({ type, side, ownFocus, isPushed, ...resizableButtonProps }: EuiFlyoutResizeButtonProps) => React.JSX.Element;
7656
+ export {};
7657
+
6896
7658
  }
6897
7659
  declare module '@elastic/eui/src/components/flyout/flyout_resizable' {
6898
7660
  import React from 'react';
6899
7661
  import { EuiFlyoutProps } from '@elastic/eui/src/components/flyout/flyout';
6900
7662
  export type EuiFlyoutResizableProps = {
6901
7663
  maxWidth?: number;
6902
- minWidth?: number;
6903
- /**
6904
- * Optional callback that fires on user resize with the new flyout width
6905
- */
6906
- onResize?: (width: number) => void;
6907
- } & Omit<EuiFlyoutProps, 'maxWidth' | 'onResize'>;
6908
- export const EuiFlyoutResizable: React.ForwardRefExoticComponent<Omit<EuiFlyoutResizableProps, "ref"> & React.RefAttributes<unknown>>;
7664
+ } & Omit<EuiFlyoutProps, 'maxWidth' | 'resizable'>;
7665
+ export const EuiFlyoutResizable: React.ForwardRefExoticComponent<Omit<EuiFlyoutResizableProps, "ref"> & React.RefAttributes<HTMLElement | HTMLDivElement>>;
6909
7666
 
6910
7667
  }
6911
- declare module '@elastic/eui/src/components/flyout/sessions/types' {
6912
- import { EuiFlyoutProps, EuiFlyoutSize } from '@elastic/eui/src/components/flyout/flyout';
6913
- import { EuiFlyoutChildProps } from '@elastic/eui/src/components/flyout/flyout_child';
7668
+ declare module '@elastic/eui/src/components/flyout/use_flyout_resizable' {
7669
+ import React from 'react';
7670
+ import type { EuiFlyoutResizableProps } from '@elastic/eui/src/components/flyout/flyout_resizable';
7671
+ type UseEuiFlyoutResizable = Pick<EuiFlyoutResizableProps, 'onResize' | 'side'> & {
7672
+ enabled: boolean;
7673
+ minWidth?: number;
7674
+ maxWidth: number | undefined;
7675
+ size: string | number;
7676
+ };
6914
7677
  /**
6915
- * Configuration used for setting display options for main and child flyouts in a session.
7678
+ * @internal
6916
7679
  */
6917
- export interface EuiFlyoutSessionConfig {
6918
- mainSize: EuiFlyoutSize;
6919
- childSize?: 's' | 'm';
6920
- mainFlyoutProps?: Partial<Omit<EuiFlyoutProps, 'children'>>;
6921
- childFlyoutProps?: Partial<Omit<EuiFlyoutChildProps, 'children'>>;
6922
- }
7680
+ export const useEuiFlyoutResizable: ({ enabled, minWidth, maxWidth, onResize, side, size: _size, }: UseEuiFlyoutResizable) => {
7681
+ onKeyDown: (e: React.KeyboardEvent) => void;
7682
+ onMouseDown: (e: React.MouseEvent | React.TouchEvent) => void;
7683
+ setFlyoutRef: React.Dispatch<React.SetStateAction<HTMLElement | null>>;
7684
+ size: string | number;
7685
+ };
7686
+ export {};
7687
+
7688
+ }
7689
+ declare module '@elastic/eui/src/components/flyout/use_flyout_z_index' {
7690
+ import type { EuiOverlayMaskProps } from '@elastic/eui/src/components/overlay_mask';
6923
7691
  /**
6924
- * Options that control a main flyout in a session
7692
+ * @internal
6925
7693
  */
6926
- export interface EuiFlyoutSessionOpenMainOptions<Meta = unknown> {
6927
- size: EuiFlyoutSize;
6928
- flyoutProps?: EuiFlyoutSessionConfig['mainFlyoutProps'];
6929
- /**
6930
- * Caller-defined data
6931
- */
6932
- meta?: Meta;
7694
+ export interface UseEuiFlyoutZIndex {
7695
+ maskProps?: EuiOverlayMaskProps;
7696
+ isPushed: boolean;
7697
+ managedFlyoutIndex: number;
7698
+ isChildFlyout: boolean;
6933
7699
  }
6934
7700
  /**
6935
- * Options that control a child flyout in a session
7701
+ * @internal
6936
7702
  */
6937
- export interface EuiFlyoutSessionOpenChildOptions<Meta = unknown> {
6938
- size: 's' | 'm';
6939
- flyoutProps?: EuiFlyoutSessionConfig['childFlyoutProps'];
6940
- /**
6941
- * Caller-defined data
6942
- */
6943
- meta?: Meta;
6944
- }
7703
+ export const useEuiFlyoutZIndex: ({ maskProps, isPushed, managedFlyoutIndex, isChildFlyout, }: UseEuiFlyoutZIndex) => {
7704
+ flyoutZIndex: number;
7705
+ maskZIndex: number;
7706
+ };
7707
+
7708
+ }
7709
+ declare module '@elastic/eui/src/components/flyout/flyout_parent_context' {
7710
+ import React from 'react';
6945
7711
  /**
6946
- * Options for opening both a main flyout and child flyout simultaneously
7712
+ * Provider that wraps a flyout's children to indicate they're inside a parent flyout.
7713
+ * Nested flyouts can use this to automatically default to session inheritance.
6947
7714
  */
6948
- export interface EuiFlyoutSessionOpenGroupOptions<Meta = unknown> {
6949
- main: EuiFlyoutSessionOpenMainOptions;
6950
- child: EuiFlyoutSessionOpenChildOptions;
6951
- /**
6952
- * Caller-defined data
6953
- */
6954
- meta?: Meta;
6955
- }
7715
+ export const EuiFlyoutParentProvider: ({ children, }: {
7716
+ children: React.ReactNode;
7717
+ }) => React.JSX.Element;
6956
7718
  /**
6957
- * A configuration user state for past and current main and child flyouts in a session
6958
- * @internal
7719
+ * Hook that returns `true` when called within a parent flyout's children.
7720
+ * Used to automatically determine if a nested flyout should inherit the session.
6959
7721
  */
6960
- export interface EuiFlyoutSessionGroup<FlyoutMeta> {
6961
- isMainOpen: boolean;
6962
- isChildOpen: boolean;
6963
- config: EuiFlyoutSessionConfig;
7722
+ export const useIsInsideParentFlyout: () => boolean;
7723
+
7724
+ }
7725
+ declare module '@elastic/eui/src/components/flyout/flyout.component' {
7726
+ import { ComponentPropsWithRef, CSSProperties, ElementType, JSX } from 'react';
7727
+ import { EuiBreakpointSize } from '@elastic/eui/src/services';
7728
+ import { CommonProps, PropsOfElement } from '@elastic/eui/src/components/common';
7729
+ import { EuiFocusTrapProps } from '@elastic/eui/src/components/focus_trap';
7730
+ import type { EuiOverlayMaskProps } from '@elastic/eui/src/components/overlay_mask';
7731
+ import type { EuiButtonIconPropsForButton } from '@elastic/eui/src/components/button';
7732
+ import { _EuiFlyoutPaddingSize, _EuiFlyoutSide, _EuiFlyoutType, EuiFlyoutSize } from '@elastic/eui/src/components/flyout/const';
7733
+ import { EuiFlyoutMenuProps } from '@elastic/eui/src/components/flyout/flyout_menu';
7734
+ import type { EuiFlyoutCloseEvent } from '@elastic/eui/src/components/flyout/types';
7735
+ interface _EuiFlyoutComponentProps {
6964
7736
  /**
6965
- * Caller-defined data
7737
+ * A required callback function fired when the flyout is closed.
6966
7738
  */
6967
- meta?: FlyoutMeta;
6968
- }
6969
- /**
6970
- * State used for tracking various EuiFlyoutSessionGroups
6971
- * @internal
6972
- */
6973
- export interface EuiFlyoutSessionHistoryState<FlyoutMeta = unknown> {
6974
- activeFlyoutGroup: EuiFlyoutSessionGroup<FlyoutMeta> | null;
6975
- history: Array<EuiFlyoutSessionGroup<FlyoutMeta>>;
7739
+ onClose: (event: EuiFlyoutCloseEvent) => void;
7740
+ /**
7741
+ * Defines the width of the panel.
7742
+ * Pass a predefined size of `s | m | l`, or pass any number/string compatible with the CSS `width` attribute
7743
+ * @default m
7744
+ */
7745
+ size?: EuiFlyoutSize | CSSProperties['width'];
7746
+ /**
7747
+ * Sets the minimum width of the panel.
7748
+ * Especially useful when set with `resizable = true`.
7749
+ */
7750
+ minWidth?: number;
7751
+ /**
7752
+ * Sets the max-width of the panel,
7753
+ * set to `true` to use the default size,
7754
+ * set to `false` to not restrict the width,
7755
+ * set to a number for a custom width in px,
7756
+ * set to a string for a custom width in custom measurement.
7757
+ * @default false
7758
+ */
7759
+ maxWidth?: boolean | number | string;
7760
+ /**
7761
+ * Customize the padding around the content of the flyout header, body and footer
7762
+ * @default l
7763
+ */
7764
+ paddingSize?: _EuiFlyoutPaddingSize;
7765
+ /**
7766
+ * Adds an EuiOverlayMask and wraps in an EuiPortal
7767
+ * @default true
7768
+ */
7769
+ ownFocus?: boolean;
7770
+ /**
7771
+ * Hides the default close button. You must provide another close button somewhere within the flyout.
7772
+ * @default false
7773
+ */
7774
+ hideCloseButton?: boolean;
7775
+ /**
7776
+ * Extends EuiButtonIconProps onto the close button
7777
+ */
7778
+ closeButtonProps?: Partial<EuiButtonIconPropsForButton>;
7779
+ /**
7780
+ * Position of close button.
7781
+ * `inside`: Floating to just inside the flyout, always top right;
7782
+ * `outside`: Floating just outside the flyout near the top (side dependent on `side`). Helpful when the close button may cover other interactable content.
7783
+ * @default inside
7784
+ */
7785
+ closeButtonPosition?: 'inside' | 'outside';
7786
+ /**
7787
+ * Adjustments to the EuiOverlayMask that is added when `ownFocus = true`
7788
+ */
7789
+ maskProps?: EuiOverlayMaskProps;
7790
+ /**
7791
+ * How to display the the flyout in relation to the body content;
7792
+ * `push` keeps it visible, pushing the `<body>` content via padding
7793
+ * @default overlay
7794
+ */
7795
+ type?: _EuiFlyoutType;
7796
+ /**
7797
+ * Forces this interaction on the mask overlay or body content.
7798
+ * Defaults depend on `ownFocus` and `type` values
7799
+ */
7800
+ outsideClickCloses?: boolean;
7801
+ /**
7802
+ * Which side of the window to attach to.
7803
+ * The `left` option should only be used for navigation.
7804
+ * @default right
7805
+ */
7806
+ side?: _EuiFlyoutSide;
7807
+ /**
7808
+ * Named breakpoint (`xs` through `xl`) for customizing the minimum window width to enable the `push` type
7809
+ * @default l
7810
+ */
7811
+ pushMinBreakpoint?: EuiBreakpointSize;
7812
+ /**
7813
+ * Enables a slide in animation on push flyouts
7814
+ * @default false
7815
+ */
7816
+ pushAnimation?: boolean;
7817
+ style?: CSSProperties;
7818
+ /**
7819
+ * When the flyout is used as a child in a managed flyout session, setting `true` gives the shaded background style.
7820
+ * @default false
7821
+ */
7822
+ hasChildBackground?: boolean;
7823
+ /**
7824
+ * Object of props passed to EuiFocusTrap.
7825
+ * `shards` specifies an array of elements that will be considered part of the flyout, preventing the flyout from being closed when clicked.
7826
+ * `closeOnMouseup` will delay the close callback, allowing time for external toggle buttons to handle close behavior.
7827
+ * `returnFocus` defines the return focus behavior and provides the possibility to check the available target element or opt out of the behavior in favor of manually returning focus
7828
+ */
7829
+ focusTrapProps?: Pick<EuiFocusTrapProps, 'closeOnMouseup' | 'shards' | 'returnFocus'>;
7830
+ /**
7831
+ * By default, EuiFlyout will consider any fixed `EuiHeader`s that sit alongside or above the EuiFlyout
7832
+ * as part of the flyout's focus trap. This prevents focus fighting with interactive elements
7833
+ * within fixed headers.
7834
+ *
7835
+ * Set this to `false` if you need to disable this behavior for a specific reason.
7836
+ */
7837
+ includeFixedHeadersInFocusTrap?: boolean;
7838
+ /**
7839
+ * Specify additional css selectors to include in the focus trap.
7840
+ */
7841
+ includeSelectorInFocusTrap?: string[] | string;
7842
+ /**
7843
+ * Props for the flyout menu to have one rendered in the flyout.
7844
+ * If used, the close button will be automatically hidden, as the flyout menu has its own close button.
7845
+ */
7846
+ flyoutMenuProps?: EuiFlyoutMenuProps;
7847
+ /**
7848
+ * Whether the flyout should be resizable.
7849
+ * @default false
7850
+ */
7851
+ resizable?: boolean;
7852
+ /**
7853
+ * Optional callback that fires when the flyout is resized.
7854
+ */
7855
+ onResize?: (width: number) => void;
6976
7856
  }
6977
- export type EuiFlyoutSessionAction<FlyoutMeta = unknown> = {
6978
- type: 'UPDATE_ACTIVE_FLYOUT_CONFIG';
6979
- payload: {
6980
- configChanges: Partial<EuiFlyoutSessionConfig>;
7857
+ type Props<T extends ElementType> = CommonProps & {
7858
+ /**
7859
+ * Sets the HTML element for `EuiFlyout`
7860
+ */
7861
+ as?: T;
7862
+ } & _EuiFlyoutComponentProps & Omit<PropsOfElement<T>, keyof _EuiFlyoutComponentProps>;
7863
+ export type EuiFlyoutComponentProps<T extends ElementType = 'div' | 'nav'> = Props<T> & Omit<ComponentPropsWithRef<T>, keyof Props<T>>;
7864
+ export const EuiFlyoutComponent: <T extends ElementType = "div" | "nav">(props: EuiFlyoutComponentProps<T>) => JSX.Element;
7865
+ export {};
7866
+
7867
+ }
7868
+ declare module '@elastic/eui/src/components/flyout/flyout' {
7869
+ import React, { ElementType } from 'react';
7870
+ import { type EuiFlyoutComponentProps } from '@elastic/eui/src/components/flyout/flyout.component';
7871
+ import { SESSION_INHERIT, SESSION_NEVER, SESSION_START } from '@elastic/eui/src/components/flyout/manager/const';
7872
+ export type { EuiFlyoutSize, _EuiFlyoutPaddingSize, _EuiFlyoutSide, } from '@elastic/eui/src/components/flyout/const';
7873
+ export { FLYOUT_SIDES, FLYOUT_PADDING_SIZES, FLYOUT_SIZES, FLYOUT_TYPES, } from '@elastic/eui/src/components/flyout/const';
7874
+ export type EuiFlyoutProps<T extends ElementType = 'div' | 'nav'> = Omit<EuiFlyoutComponentProps<T>, 'as'> & {
7875
+ /**
7876
+ * Controls the way the session is managed for this flyout.
7877
+ * - `start`: Creates a new flyout session. Use this for the main flyout.
7878
+ * - `inherit`: Inherits an existing session if one is active, otherwise functions as a standard flyout.
7879
+ * - `never`: Disregards session management and always functions as a standard flyout.
7880
+ *
7881
+ * When the `session` prop is undefined (not set), the flyout will automatically inherit from
7882
+ * a parent flyout if it's nested inside one. Otherwise, it defaults to `never`.
7883
+ *
7884
+ * Check out [EuiFlyout session management](https://eui.elastic.co/docs/components/containers/flyout/session-management)
7885
+ * documentation to learn more.
7886
+ * @default undefined (auto-inherit when nested, otherwise 'never')
7887
+ */
7888
+ session?: typeof SESSION_START | typeof SESSION_INHERIT | typeof SESSION_NEVER;
7889
+ /**
7890
+ * Callback fired when the flyout becomes active/visible, which may happen programmatically from history navigation.
7891
+ */
7892
+ onActive?: () => void;
7893
+ /**
7894
+ * The HTML element to render as the flyout container.
7895
+ */
7896
+ as?: T;
7897
+ };
7898
+ export const EuiFlyout: React.ForwardRefExoticComponent<Omit<EuiFlyoutProps<"div" | "nav">, "ref"> & React.RefAttributes<HTMLElement | HTMLDivElement>>;
7899
+
7900
+ }
7901
+ declare module '@elastic/eui/src/components/flyout/flyout_body.styles' {
7902
+ import { UseEuiTheme } from '@elastic/eui/src/services';
7903
+ export const euiFlyoutBodyStyles: (euiThemeContext: UseEuiTheme) => {
7904
+ euiFlyoutBody: import("@emotion/react").SerializedStyles;
7905
+ overflow: {
7906
+ euiFlyoutBody__overflow: import("@emotion/react").SerializedStyles;
7907
+ noBanner: import("@emotion/react").SerializedStyles;
7908
+ hasBanner: import("@emotion/react").SerializedStyles;
6981
7909
  };
6982
- } | {
6983
- type: 'OPEN_MAIN_FLYOUT';
6984
- payload: EuiFlyoutSessionOpenMainOptions<FlyoutMeta>;
6985
- } | {
6986
- type: 'OPEN_CHILD_FLYOUT';
6987
- payload: EuiFlyoutSessionOpenChildOptions<FlyoutMeta>;
6988
- } | {
6989
- type: 'OPEN_FLYOUT_GROUP';
6990
- payload: EuiFlyoutSessionOpenGroupOptions<FlyoutMeta>;
6991
- } | {
6992
- type: 'GO_BACK';
6993
- } | {
6994
- type: 'CLOSE_CHILD_FLYOUT';
6995
- } | {
6996
- type: 'CLOSE_SESSION';
7910
+ euiFlyoutBody__banner: import("@emotion/react").SerializedStyles;
6997
7911
  };
6998
- /**
6999
- * Flyout session context managed by `EuiFlyoutSessionProvider`, and passed to the `renderMainFlyoutContent` and `renderChildFlyoutContent` functions.
7000
- */
7001
- export interface EuiFlyoutSessionRenderContext<FlyoutMeta = unknown> {
7002
- activeFlyoutGroup: EuiFlyoutSessionGroup<FlyoutMeta> | null;
7912
+
7913
+ }
7914
+ declare module '@elastic/eui/src/components/flyout/flyout_body' {
7915
+ import { FunctionComponent, HTMLAttributes, ReactNode } from 'react';
7916
+ import { CommonProps } from '@elastic/eui/src/components/common';
7917
+ export type EuiFlyoutBodyProps = FunctionComponent<HTMLAttributes<HTMLDivElement> & CommonProps & {
7003
7918
  /**
7004
- * Caller-defined data
7919
+ * Use to display a banner at the top of the body. It is suggested to use `EuiCallOut` for it.
7005
7920
  */
7006
- meta?: FlyoutMeta;
7007
- }
7008
- /**
7009
- * Props that can be passed to `EuiFlyoutSessionProvider` to render the main and child flyouts in a session.
7010
- */
7011
- export interface EuiFlyoutSessionProviderComponentProps<FlyoutMeta = any> {
7012
- children: React.ReactNode;
7013
- onUnmount?: () => void;
7014
- renderMainFlyoutContent: (context: EuiFlyoutSessionRenderContext<FlyoutMeta>) => React.ReactNode;
7015
- renderChildFlyoutContent?: (context: EuiFlyoutSessionRenderContext<FlyoutMeta>) => React.ReactNode;
7016
- }
7017
- export interface EuiFlyoutSessionApi {
7018
- openFlyout: (options: EuiFlyoutSessionOpenMainOptions) => void;
7019
- openChildFlyout: (options: EuiFlyoutSessionOpenChildOptions) => void;
7020
- openFlyoutGroup: (options: EuiFlyoutSessionOpenGroupOptions) => void;
7021
- closeChildFlyout: () => void;
7022
- goBack: () => void;
7023
- closeSession: () => void;
7024
- isFlyoutOpen: boolean;
7025
- isChildFlyoutOpen: boolean;
7026
- canGoBack: boolean;
7027
- }
7921
+ banner?: ReactNode;
7922
+ /**
7923
+ * [Scrollable regions (or their children) should be focusable](https://dequeuniversity.com/rules/axe/4.0/scrollable-region-focusable)
7924
+ * to allow keyboard users to scroll the region via arrow keys.
7925
+ *
7926
+ * By default, EuiFlyoutBody's scroll overflow wrapper sets a `tabIndex` of `0`.
7927
+ * If you know your flyout body content already contains focusable children
7928
+ * that satisfy keyboard accessibility requirements, you can use this prop
7929
+ * to override this default.
7930
+ */
7931
+ scrollableTabIndex?: number;
7932
+ }>;
7933
+ export const EuiFlyoutBody: EuiFlyoutBodyProps;
7028
7934
 
7029
7935
  }
7030
- declare module '@elastic/eui/src/components/flyout/sessions/flyout_reducer' {
7031
- import { EuiFlyoutSessionAction, EuiFlyoutSessionHistoryState } from '@elastic/eui/src/components/flyout/sessions/types';
7032
- /**
7033
- * Initial state for the flyout session
7034
- * @internal
7035
- */
7036
- export const initialFlyoutState: EuiFlyoutSessionHistoryState<unknown>;
7037
- /**
7038
- * Flyout reducer
7039
- * Controls state changes for flyout groups
7040
- */
7041
- export function flyoutReducer<FlyoutMeta>(state: EuiFlyoutSessionHistoryState<FlyoutMeta>, action: EuiFlyoutSessionAction<FlyoutMeta>): EuiFlyoutSessionHistoryState<FlyoutMeta>;
7936
+ declare module '@elastic/eui/src/components/flyout/flyout_footer.styles' {
7937
+ import { UseEuiTheme } from '@elastic/eui/src/services';
7938
+ export const euiFlyoutFooterStyles: (euiThemeContext: UseEuiTheme) => {
7939
+ euiFlyoutFooter: import("@emotion/react").SerializedStyles;
7940
+ };
7042
7941
 
7043
7942
  }
7044
- declare module '@elastic/eui/src/components/flyout/sessions/flyout_provider' {
7045
- import React from 'react';
7046
- import { EuiFlyoutSessionAction, EuiFlyoutSessionHistoryState, EuiFlyoutSessionProviderComponentProps } from '@elastic/eui/src/components/flyout/sessions/types';
7047
- interface FlyoutSessionContextProps {
7048
- state: EuiFlyoutSessionHistoryState;
7049
- dispatch: React.Dispatch<EuiFlyoutSessionAction>;
7050
- onUnmount?: EuiFlyoutSessionProviderComponentProps['onUnmount'];
7051
- }
7052
- /**
7053
- * Accesses the state data and dispatch function from the context of EuiFlyoutSessionProvider
7054
- * Use this if you need to debug the state or need direct access to the dispatch function, otherwise use useEuiFlyoutSession hook.
7055
- */
7056
- export const useEuiFlyoutSessionContext: () => FlyoutSessionContextProps;
7057
- /**
7058
- * FlyoutProvider is a component that provides a context for Flyout components.
7059
- * It is used to manage the state of the Flyout and its child.
7060
- * It also renders the Flyout and FlyoutChild components.
7061
- *
7062
- * @param children - The children of the FlyoutProvider component.
7063
- * @param renderMainFlyoutContent - A function that renders the content of the main Flyout.
7064
- * @param renderChildFlyoutContent - A function that renders the content of the child Flyout.
7065
- * @returns The FlyoutProvider component.
7066
- */
7067
- export const EuiFlyoutSessionProvider: React.FC<EuiFlyoutSessionProviderComponentProps>;
7068
- export {};
7943
+ declare module '@elastic/eui/src/components/flyout/flyout_footer' {
7944
+ import { FunctionComponent, HTMLAttributes } from 'react';
7945
+ import { CommonProps } from '@elastic/eui/src/components/common';
7946
+ export type EuiFlyoutFooterProps = FunctionComponent<HTMLAttributes<HTMLDivElement> & CommonProps>;
7947
+ export const EuiFlyoutFooter: EuiFlyoutFooterProps;
7069
7948
 
7070
7949
  }
7071
- declare module '@elastic/eui/src/components/flyout/sessions/use_eui_flyout' {
7072
- import type { EuiFlyoutSessionApi } from '@elastic/eui/src/components/flyout/sessions/types';
7073
- /**
7074
- * Hook for accessing the flyout API
7075
- * @public
7076
- */
7077
- export function useEuiFlyoutSession(): EuiFlyoutSessionApi;
7950
+ declare module '@elastic/eui/src/components/flyout/flyout_header.styles' {
7951
+ import { UseEuiTheme } from '@elastic/eui/src/services';
7952
+ export const euiFlyoutHeaderStyles: (euiThemeContext: UseEuiTheme) => {
7953
+ euiFlyoutHeader: import("@emotion/react").SerializedStyles;
7954
+ hasBorder: import("@emotion/react").SerializedStyles;
7955
+ };
7078
7956
 
7079
7957
  }
7080
- declare module '@elastic/eui/src/components/flyout/sessions' {
7081
- export { EuiFlyoutSessionProvider, useEuiFlyoutSessionContext, } from '@elastic/eui/src/components/flyout/sessions/flyout_provider';
7082
- export type { EuiFlyoutSessionApi, EuiFlyoutSessionConfig, EuiFlyoutSessionOpenChildOptions, EuiFlyoutSessionOpenGroupOptions, EuiFlyoutSessionOpenMainOptions, EuiFlyoutSessionProviderComponentProps, EuiFlyoutSessionRenderContext, } from '@elastic/eui/src/components/flyout/sessions/types';
7083
- export { useEuiFlyoutSession } from '@elastic/eui/src/components/flyout/sessions/use_eui_flyout';
7958
+ declare module '@elastic/eui/src/components/flyout/flyout_header' {
7959
+ import { FunctionComponent, HTMLAttributes } from 'react';
7960
+ import { CommonProps } from '@elastic/eui/src/components/common';
7961
+ export type EuiFlyoutHeaderProps = FunctionComponent<HTMLAttributes<HTMLDivElement> & CommonProps & {
7962
+ hasBorder?: boolean;
7963
+ }>;
7964
+ export const EuiFlyoutHeader: EuiFlyoutHeaderProps;
7084
7965
 
7085
7966
  }
7086
7967
  declare module '@elastic/eui/src/components/flyout' {
@@ -7095,10 +7976,10 @@ declare module '@elastic/eui/src/components/flyout' {
7095
7976
  export { euiFlyoutSlideInRight, euiFlyoutSlideInLeft } from '@elastic/eui/src/components/flyout/flyout.styles';
7096
7977
  export type { EuiFlyoutResizableProps } from '@elastic/eui/src/components/flyout/flyout_resizable';
7097
7978
  export { EuiFlyoutResizable } from '@elastic/eui/src/components/flyout/flyout_resizable';
7098
- export { EuiFlyoutChild } from '@elastic/eui/src/components/flyout/flyout_child';
7099
- export type { EuiFlyoutChildProps } from '@elastic/eui/src/components/flyout/flyout_child';
7100
- export type { EuiFlyoutSessionApi, EuiFlyoutSessionConfig, EuiFlyoutSessionOpenChildOptions, EuiFlyoutSessionOpenMainOptions, EuiFlyoutSessionOpenGroupOptions, EuiFlyoutSessionProviderComponentProps, EuiFlyoutSessionRenderContext, } from '@elastic/eui/src/components/flyout/sessions';
7101
- export { EuiFlyoutSessionProvider, useEuiFlyoutSession } from '@elastic/eui/src/components/flyout/sessions';
7979
+ export type { EuiFlyoutMenuProps, EuiFlyoutHistoryItem, EuiFlyoutMenuCustomAction, } from '@elastic/eui/src/components/flyout/flyout_menu';
7980
+ export { EuiFlyoutMenu } from '@elastic/eui/src/components/flyout/flyout_menu';
7981
+ export { useIsInManagedFlyout, useHasActiveSession } from '@elastic/eui/src/components/flyout/manager';
7982
+ export { useIsInsideParentFlyout } from '@elastic/eui/src/components/flyout/flyout_parent_context';
7102
7983
 
7103
7984
  }
7104
7985
  declare module '@elastic/eui/src/components/provider/component_defaults/component_defaults' {
@@ -10081,24 +10962,6 @@ declare module '@elastic/eui/src/components/bottom_bar' {
10081
10962
  export type { EuiBottomBarProps } from '@elastic/eui/src/components/bottom_bar/bottom_bar';
10082
10963
  export { EuiBottomBar } from '@elastic/eui/src/components/bottom_bar/bottom_bar';
10083
10964
 
10084
- }
10085
- declare module '@elastic/eui/src/components/link/external_link_icon' {
10086
- import { FunctionComponent, AnchorHTMLAttributes } from 'react';
10087
- import { EuiIconProps } from '@elastic/eui/src/components/icon';
10088
- /**
10089
- * DRY util for indicating external links both via icon and to
10090
- * screen readers. Used internally by at EuiLink and EuiListGroupItem
10091
- */
10092
- export type EuiExternalLinkIconProps = {
10093
- target?: AnchorHTMLAttributes<HTMLAnchorElement>['target'];
10094
- /**
10095
- * Set to true to show an icon indicating that it is an external link;
10096
- * Defaults to true if `target="_blank"`
10097
- */
10098
- external?: boolean;
10099
- };
10100
- export const EuiExternalLinkIcon: FunctionComponent<EuiExternalLinkIconProps & Partial<EuiIconProps>>;
10101
-
10102
10965
  }
10103
10966
  declare module '@elastic/eui/src/components/link/link' {
10104
10967
  import React, { AnchorHTMLAttributes, ButtonHTMLAttributes, MouseEventHandler } from 'react';
@@ -10322,11 +11185,6 @@ declare module '@elastic/eui/src/components/breadcrumbs' {
10322
11185
  export type { EuiBreadcrumbProps as EuiBreadcrumb, EuiBreadcrumbsProps, EuiBreadcrumbResponsiveMaxCount, } from '@elastic/eui/src/components/breadcrumbs/types';
10323
11186
  export { EuiBreadcrumbs } from '@elastic/eui/src/components/breadcrumbs/breadcrumbs';
10324
11187
 
10325
- }
10326
- declare module '@elastic/eui/src/components/title' {
10327
- export type { EuiTitleProps, EuiTitleSize } from '@elastic/eui/src/components/title/title';
10328
- export { EuiTitle } from '@elastic/eui/src/components/title/title';
10329
-
10330
11188
  }
10331
11189
  declare module '@elastic/eui/src/components/call_out/call_out.styles' {
10332
11190
  import { UseEuiTheme } from '@elastic/eui/src/services';
@@ -13171,7 +14029,7 @@ declare module '@elastic/eui/src/components/header/header.styles' {
13171
14029
  }
13172
14030
  declare module '@elastic/eui/src/components/collapsible_nav_beta/context' {
13173
14031
  import { MouseEventHandler } from 'react';
13174
- import { _EuiFlyoutSide } from '@elastic/eui/src/components/flyout/flyout';
14032
+ import { _EuiFlyoutSide } from '@elastic/eui/src/components/flyout/const';
13175
14033
  type _EuiCollapsibleNavContext = {
13176
14034
  isCollapsed: boolean;
13177
14035
  isPush: boolean;
@@ -13410,430 +14268,132 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
13410
14268
  };
13411
14269
  /**
13412
14270
  * Internal nav group. Should look the same as an open accordion,
13413
- * but not be toggle-able to close.
13414
- *
13415
- * Yes, I know this is the 3rd component in EUI named EuiCollapsibleNavGroup :|
13416
- * I'm waiting for serverless's design architecture to settle before untangling
13417
- * this pasghetti
13418
- */
13419
- export const EuiCollapsibleNavGroup: FunctionComponent<EuiCollapsibleNavGroupProps>;
13420
- export {};
13421
-
13422
- }
13423
- declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item' {
13424
- import { FunctionComponent, HTMLAttributes, MouseEventHandler, ReactNode } from 'react';
13425
- import { CommonProps, ExclusiveUnion } from '@elastic/eui/src/components/common';
13426
- import { IconType, EuiIconProps } from '@elastic/eui/src/components/icon';
13427
- import { EuiLinkProps } from '@elastic/eui/src/components/link';
13428
- import { EuiAccordionProps } from '@elastic/eui/src/components/accordion';
13429
- export type _SharedEuiCollapsibleNavItemProps = HTMLAttributes<HTMLElement> & CommonProps & {
13430
- /**
13431
- * Highlights whether an item is currently selected, e.g.
13432
- * if the user is on the same page as the nav link
13433
- */
13434
- isSelected?: boolean;
13435
- };
13436
- export type EuiCollapsibleNavItemProps = _SharedEuiCollapsibleNavItemProps & ExclusiveUnion<{
13437
- /**
13438
- * Required text to render as the nav item title
13439
- */
13440
- title: string;
13441
- /**
13442
- * Allows customizing the title element.
13443
- * Consider using a heading element for better accessibility.
13444
- * Defaults to an unsemantic `span` or `div`, depending on context.
13445
- */
13446
- titleElement?: 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'span' | 'div';
13447
- /**
13448
- * Optional icon to render to the left of title content
13449
- */
13450
- icon?: IconType;
13451
- /**
13452
- * Optional props to pass to the title icon
13453
- */
13454
- iconProps?: Partial<EuiIconProps>;
13455
- }, {}> & ExclusiveUnion<{
13456
- /**
13457
- * The nav item link.
13458
- *
13459
- * If not included, and no `onClick` is specified, the nav item
13460
- * will render as an non-interactive `<span>`.
13461
- *
13462
- * Should not be used together with `items`, as the title will
13463
- * trigger the accordion collapse/expand action instead of a link.
13464
- */
13465
- href?: string;
13466
- /**
13467
- * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
13468
- */
13469
- linkProps?: Partial<EuiLinkProps>;
13470
- }, {
13471
- /**
13472
- * Will render either an accordion or group of nested child item links.
13473
- *
13474
- * Accepts any {@link EuiCollapsibleNavItemProps}. Or, to render completely custom
13475
- * subitem content, pass an object with a `renderItem` callback.
13476
- */
13477
- items: EuiCollapsibleNavSubItemProps[];
13478
- /**
13479
- * If set to false, will (visually) render an always-open accordion that cannot
13480
- * be toggled closed. Ignored if `items` is not passed.
13481
- *
13482
- * @default true
13483
- */
13484
- isCollapsible?: boolean;
13485
- /**
13486
- * If `items` is specified, and `isCollapsible` is not set to false, you may
13487
- * use this prop to pass any prop that `EuiAccordion` accepts, including props
13488
- * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
13489
- */
13490
- accordionProps?: Partial<EuiAccordionProps>;
13491
- }>;
13492
- export type EuiCollapsibleNavCustomSubItem = {
13493
- renderItem: (options: {
13494
- /**
13495
- * When the side nav is collapsed on larger screens, the menu appears in an EuiPopover.
13496
- * When the sidenav is collapsed on smaller screens, the menu appears in an EuiFlyout.
13497
- *
13498
- * Use this handler to close either the portalled flyout or popover, depending on which is present.
13499
- * If the handler is not defined, it means there is no portal onscreen to close.
13500
- */
13501
- closePortals?: MouseEventHandler;
13502
- }) => ReactNode;
13503
- };
13504
- export type EuiCollapsibleNavSubItemProps = ExclusiveUnion<EuiCollapsibleNavItemProps, EuiCollapsibleNavCustomSubItem>;
13505
- export type _EuiCollapsibleNavItemDisplayProps = {
13506
- /**
13507
- * Determines whether the item should render as a top-level nav item
13508
- * or a nested nav subitem. Set internally by EUI
13509
- */
13510
- isSubItem?: boolean;
13511
- };
13512
- /**
13513
- * Internal subcomponent for title display
13514
- */
13515
- export const EuiCollapsibleNavItemTitle: FunctionComponent<Pick<EuiCollapsibleNavItemProps, 'title' | 'titleElement' | 'icon' | 'iconProps'>>;
13516
- /**
13517
- * Sub-items can either be a totally custom rendered item,
13518
- * or they can simply be more links or accordions
13519
- */
13520
- export const EuiCollapsibleNavSubItem: FunctionComponent<EuiCollapsibleNavSubItemProps>;
13521
- /**
13522
- * Reuseable component for rendering a group of sub items
13523
- * Used by both `EuiCollapsibleNavGroup` and `EuiCollapsibleNavAccordion`
13524
- */
13525
- type EuiCollapsibleNavSubItemsProps = HTMLAttributes<HTMLDivElement> & _EuiCollapsibleNavItemDisplayProps & {
13526
- items: EuiCollapsibleNavSubItemProps[];
13527
- };
13528
- export const EuiCollapsibleNavSubItems: FunctionComponent<EuiCollapsibleNavSubItemsProps>;
13529
- /**
13530
- * The actual exported component
13531
- */
13532
- export const EuiCollapsibleNavItem: FunctionComponent<EuiCollapsibleNavItemProps>;
13533
- export {};
13534
-
13535
- }
13536
- declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item' {
13537
- export type { EuiCollapsibleNavItemProps, EuiCollapsibleNavSubItemProps, } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item';
13538
- export { EuiCollapsibleNavItem, EuiCollapsibleNavSubItem, } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item';
13539
-
13540
- }
13541
- declare module '@elastic/eui/src/components/list_group/list_group_item_extra_action.styles' {
13542
- import { UseEuiTheme } from '@elastic/eui/src/services';
13543
- export const euiListGroupItemExtraActionStyles: ({ euiTheme, }: UseEuiTheme) => {
13544
- euiListGroupItemExtraAction: import("@emotion/react").SerializedStyles;
13545
- hoverStyles: import("@emotion/react").SerializedStyles;
13546
- alwaysShow: import("@emotion/react").SerializedStyles;
13547
- };
13548
-
13549
- }
13550
- declare module '@elastic/eui/src/components/list_group/list_group_item_extra_action' {
13551
- import { FunctionComponent } from 'react';
13552
- import { EuiButtonIconPropsForButton } from '@elastic/eui/src/components/button';
13553
- export type EuiListGroupItemExtraActionProps = {
13554
- alwaysShow?: boolean;
13555
- } & EuiButtonIconPropsForButton;
13556
- type _FromEuiListGroupItem = {
13557
- parentIsDisabled?: boolean;
13558
- };
13559
- export const EuiListGroupItemExtraAction: FunctionComponent<EuiListGroupItemExtraActionProps & _FromEuiListGroupItem>;
13560
- export {};
13561
-
13562
- }
13563
- declare module '@elastic/eui/src/components/list_group/list_group_item.styles' {
13564
- import { UseEuiTheme } from '@elastic/eui/src/services';
13565
- export const euiListGroupItemStyles: (euiThemeContext: UseEuiTheme) => {
13566
- euiListGroupItem: import("@emotion/react").SerializedStyles;
13567
- xs: import("@emotion/react").SerializedStyles;
13568
- s: import("@emotion/react").SerializedStyles;
13569
- m: import("@emotion/react").SerializedStyles;
13570
- l: import("@emotion/react").SerializedStyles;
13571
- colors: {
13572
- isActive: {
13573
- primary: import("@emotion/react").SerializedStyles;
13574
- text: import("@emotion/react").SerializedStyles;
13575
- subdued: import("@emotion/react").SerializedStyles;
13576
- };
13577
- isClickable: {
13578
- primary: import("@emotion/react").SerializedStyles;
13579
- text: import("@emotion/react").SerializedStyles;
13580
- subdued: import("@emotion/react").SerializedStyles;
13581
- };
13582
- };
13583
- };
13584
- export const euiListGroupItemInnerStyles: (euiThemeContext: UseEuiTheme) => {
13585
- euiListGroupItem__inner: import("@emotion/react").SerializedStyles;
13586
- xs: import("@emotion/react").SerializedStyles;
13587
- s: import("@emotion/react").SerializedStyles;
13588
- m: import("@emotion/react").SerializedStyles;
13589
- l: import("@emotion/react").SerializedStyles;
13590
- primary: import("@emotion/react").SerializedStyles;
13591
- text: import("@emotion/react").SerializedStyles;
13592
- subdued: import("@emotion/react").SerializedStyles;
13593
- ghost: import("@emotion/react").SerializedStyles;
13594
- isDisabled: import("@emotion/react").SerializedStyles;
13595
- isActive: import("@emotion/react").SerializedStyles;
13596
- isClickable: import("@emotion/react").SerializedStyles;
13597
- externalIcon: import("@emotion/react").SerializedStyles;
13598
- };
13599
- export const euiListGroupItemLabelStyles: {
13600
- euiListGroupItem__label: import("@emotion/react").SerializedStyles;
13601
- truncate: import("@emotion/react").SerializedStyles;
13602
- wrapText: import("@emotion/react").SerializedStyles;
13603
- };
13604
- export const euiListGroupItemIconStyles: ({ euiTheme }: UseEuiTheme) => {
13605
- euiListGroupItem__icon: import("@emotion/react").SerializedStyles;
13606
- };
13607
- export const euiListGroupItemTooltipStyles: {
13608
- euiListGroupItem__tooltip: import("@emotion/react").SerializedStyles;
13609
- };
13610
-
13611
- }
13612
- declare module '@elastic/eui/src/components/list_group/list_group_item' {
13613
- import React, { HTMLAttributes, AnchorHTMLAttributes, ButtonHTMLAttributes, ReactNode, ReactElement, MouseEventHandler, FunctionComponent } from 'react';
13614
- import { ExclusiveUnion, CommonProps } from '@elastic/eui/src/components/common';
13615
- import { IconType, EuiIconProps } from '@elastic/eui/src/components/icon';
13616
- import { EuiToolTipProps } from '@elastic/eui/src/components/tool_tip';
13617
- import { EuiListGroupItemExtraActionProps } from '@elastic/eui/src/components/list_group/list_group_item_extra_action';
13618
- export const SIZES: readonly ["xs", "s", "m", "l"];
13619
- export type EuiListGroupItemSize = (typeof SIZES)[number];
13620
- export const COLORS: readonly ["primary", "text", "subdued"];
13621
- export type EuiListGroupItemColor = (typeof COLORS)[number];
13622
- export type EuiListGroupItemProps = CommonProps & Omit<ExclusiveUnion<ExclusiveUnion<ButtonHTMLAttributes<HTMLButtonElement>, Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'href'>>, HTMLAttributes<HTMLSpanElement>>, 'onClick' | 'color' | 'target' | 'rel'> & {
13623
- /**
13624
- * Size of the label text
13625
- */
13626
- size?: EuiListGroupItemSize;
13627
- /**
13628
- * By default the item will get the color `text`.
13629
- * You can customize the color of the item by passing a color name.
13630
- */
13631
- color?: EuiListGroupItemColor;
13632
- /**
13633
- * Content to be displayed in the list item
13634
- */
13635
- label: ReactNode;
13636
- /**
13637
- * Apply styles indicating an item is active
13638
- */
13639
- isActive?: boolean;
13640
- /**
13641
- * Apply styles indicating an item is disabled
13642
- */
13643
- isDisabled?: boolean;
13644
- /**
13645
- * Make the list item label a link.
13646
- * While permitted, `href` and `onClick` should not be used together in most cases and may create problems.
13647
- */
13648
- href?: string;
13649
- rel?: string;
13650
- target?: string;
13651
- /**
13652
- * Set to true to show an icon indicating that it is an external link;
13653
- * Defaults to true if `target="_blank"`
13654
- */
13655
- external?: boolean;
13656
- /**
13657
- * Adds `EuiIcon` of `EuiIcon.type`
13658
- */
13659
- iconType?: IconType;
13660
- /**
13661
- * Further extend the props applied to EuiIcon
13662
- */
13663
- iconProps?: Omit<EuiIconProps, 'type'>;
13664
- /**
13665
- * Custom node to pass as the icon. Cannot be used in conjunction
13666
- * with `iconType` and `iconProps`.
13667
- */
13668
- icon?: ReactElement;
13669
- /**
13670
- * Display tooltip on list item
13671
- */
13672
- showToolTip?: boolean;
13673
- /**
13674
- * An object of {@link EuiListGroupItemExtraAction} props.
13675
- * Adds an `EuiButtonIcon` to the right side of the item; `iconType` is required;
13676
- * pass `alwaysShow` if you don't want the default behavior of only showing on hover
13677
- */
13678
- extraAction?: EuiListGroupItemExtraActionProps;
13679
- /**
13680
- * Make the list item label a button.
13681
- * While permitted, `href` and `onClick` should not be used together in most cases and may create problems.
13682
- */
13683
- onClick?: MouseEventHandler<HTMLButtonElement>;
13684
- /**
13685
- * Allow link text to wrap
13686
- */
13687
- wrapText?: boolean;
13688
- /**
13689
- * Pass-through ref reference specifically for targeting
13690
- * instances where the item content is rendered as a `button`
13691
- */
13692
- buttonRef?: React.Ref<HTMLButtonElement>;
13693
- /**
13694
- * Text to be displayed in the tooltip when `showToolTip` is true.
13695
- * By default the text will be same as the label text.
13696
- */
13697
- toolTipText?: string;
13698
- /**
13699
- * Allows customizing the tooltip shown when `showToolTip` is true.
13700
- * Accepts any props that [EuiToolTip](/#/display/tooltip) accepts.
13701
- */
13702
- toolTipProps?: Partial<EuiToolTipProps>;
13703
- };
13704
- export const EuiListGroupItem: FunctionComponent<EuiListGroupItemProps>;
13705
-
13706
- }
13707
- declare module '@elastic/eui/src/components/list_group/list_group.styles' {
13708
- import { UseEuiTheme } from '@elastic/eui/src/services';
13709
- export const euiListGroupStyles: (euiThemeContext: UseEuiTheme) => {
13710
- euiListGroup: import("@emotion/react").SerializedStyles;
13711
- flush: import("@emotion/react").SerializedStyles;
13712
- bordered: import("@emotion/react").SerializedStyles;
13713
- maxWidthDefault: import("@emotion/react").SerializedStyles;
13714
- none: import("@emotion/react").SerializedStyles;
13715
- s: import("@emotion/react").SerializedStyles;
13716
- m: import("@emotion/react").SerializedStyles;
13717
- };
14271
+ * but not be toggle-able to close.
14272
+ *
14273
+ * Yes, I know this is the 3rd component in EUI named EuiCollapsibleNavGroup :|
14274
+ * I'm waiting for serverless's design architecture to settle before untangling
14275
+ * this pasghetti
14276
+ */
14277
+ export const EuiCollapsibleNavGroup: FunctionComponent<EuiCollapsibleNavGroupProps>;
14278
+ export {};
13718
14279
 
13719
14280
  }
13720
- declare module '@elastic/eui/src/components/list_group/list_group' {
13721
- import { FunctionComponent, HTMLAttributes, CSSProperties } from 'react';
13722
- import { CommonProps } from '@elastic/eui/src/components/common';
13723
- import { EuiListGroupItemProps } from '@elastic/eui/src/components/list_group/list_group_item';
13724
- export const GUTTER_SIZES: readonly ["none", "s", "m"];
13725
- export type EuiListGroupGutterSize = (typeof GUTTER_SIZES)[number];
13726
- export type EuiListGroupProps = CommonProps & Omit<HTMLAttributes<HTMLUListElement>, 'color'> & {
13727
- /**
13728
- * Add a border to the list container
13729
- */
13730
- bordered?: boolean;
14281
+ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item' {
14282
+ import { FunctionComponent, HTMLAttributes, MouseEventHandler, ReactNode } from 'react';
14283
+ import { CommonProps, ExclusiveUnion } from '@elastic/eui/src/components/common';
14284
+ import { IconType, EuiIconProps } from '@elastic/eui/src/components/icon';
14285
+ import { EuiLinkProps } from '@elastic/eui/src/components/link';
14286
+ import { EuiAccordionProps } from '@elastic/eui/src/components/accordion';
14287
+ export type _SharedEuiCollapsibleNavItemProps = HTMLAttributes<HTMLElement> & CommonProps & {
13731
14288
  /**
13732
- * Remove container padding, stretching list items to the edges
14289
+ * Highlights whether an item is currently selected, e.g.
14290
+ * if the user is on the same page as the nav link
13733
14291
  */
13734
- flush?: boolean;
14292
+ isSelected?: boolean;
14293
+ };
14294
+ export type EuiCollapsibleNavItemProps = _SharedEuiCollapsibleNavItemProps & ExclusiveUnion<{
13735
14295
  /**
13736
- * Spacing between list items
14296
+ * Required text to render as the nav item title
13737
14297
  */
13738
- gutterSize?: EuiListGroupGutterSize;
14298
+ title: string;
13739
14299
  /**
13740
- * Items to display in this group. See {@link EuiListGroupItem}
14300
+ * Allows customizing the title element.
14301
+ * Consider using a heading element for better accessibility.
14302
+ * Defaults to an unsemantic `span` or `div`, depending on context.
13741
14303
  */
13742
- listItems?: EuiListGroupItemProps[];
14304
+ titleElement?: 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'span' | 'div';
13743
14305
  /**
13744
- * Change the colors of all `listItems` at once
13745
- * @default text
14306
+ * Optional icon to render to the left of title content
13746
14307
  */
13747
- color?: EuiListGroupItemProps['color'];
14308
+ icon?: IconType;
13748
14309
  /**
13749
- * Change the size of all `listItems` at once
13750
- * @default m
14310
+ * Optional props to pass to the title icon
13751
14311
  */
13752
- size?: EuiListGroupItemProps['size'];
14312
+ iconProps?: Partial<EuiIconProps>;
14313
+ }, {}> & ExclusiveUnion<{
13753
14314
  /**
13754
- * Sets the max-width of the page.
13755
- * Set to `true` to use the default size,
13756
- * set to `false` to not restrict the width,
13757
- * or set to a number/string for a custom CSS width/measurement.
14315
+ * The nav item link.
14316
+ *
14317
+ * If not included, and no `onClick` is specified, the nav item
14318
+ * will render as an non-interactive `<span>`.
14319
+ *
14320
+ * Should not be used together with `items`, as the title will
14321
+ * trigger the accordion collapse/expand action instead of a link.
13758
14322
  */
13759
- maxWidth?: boolean | CSSProperties['maxWidth'];
14323
+ href?: string;
13760
14324
  /**
13761
- * Display tooltips on all list items
14325
+ * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
13762
14326
  */
13763
- showToolTips?: boolean;
14327
+ linkProps?: Partial<EuiLinkProps>;
14328
+ }, {
13764
14329
  /**
13765
- * Allow link text to wrap vs truncated
14330
+ * Will render either an accordion or group of nested child item links.
14331
+ *
14332
+ * Accepts any {@link EuiCollapsibleNavItemProps}. Or, to render completely custom
14333
+ * subitem content, pass an object with a `renderItem` callback.
13766
14334
  */
13767
- wrapText?: boolean;
13768
- ariaLabelledby?: string;
13769
- };
13770
- export const EuiListGroup: FunctionComponent<EuiListGroupProps>;
13771
-
13772
- }
13773
- declare module '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group.styles' {
13774
- import { UseEuiTheme } from '@elastic/eui/src/services';
13775
- export const euiPinnableListGroupItemExtraActionStyles: ({ euiTheme, }: UseEuiTheme) => {
13776
- euiPinnableListGroup__itemExtraAction: import("@emotion/react").SerializedStyles;
13777
- pinned: import("@emotion/react").SerializedStyles;
13778
- };
13779
-
13780
- }
13781
- declare module '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group' {
13782
- import { FunctionComponent } from 'react';
13783
- import { CommonProps } from '@elastic/eui/src/components/common';
13784
- import { EuiListGroupProps } from '@elastic/eui/src/components/list_group/list_group';
13785
- import { EuiListGroupItemProps } from '@elastic/eui/src/components/list_group/list_group_item';
13786
- export type EuiPinnableListGroupItemProps = EuiListGroupItemProps & {
14335
+ items: EuiCollapsibleNavSubItemProps[];
13787
14336
  /**
13788
- * Saves the pinned status and changes the visibility of the pin icon
14337
+ * If set to false, will (visually) render an always-open accordion that cannot
14338
+ * be toggled closed. Ignored if `items` is not passed.
14339
+ *
14340
+ * @default true
13789
14341
  */
13790
- pinned?: boolean;
14342
+ isCollapsible?: boolean;
13791
14343
  /**
13792
- * Passing `onPinClick` to the full EuiPinnableListGroup, will make every item pinnable.
13793
- * Set this property to `false` to turn off individual item pinnability
14344
+ * If `items` is specified, and `isCollapsible` is not set to false, you may
14345
+ * use this prop to pass any prop that `EuiAccordion` accepts, including props
14346
+ * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
13794
14347
  */
13795
- pinnable?: boolean;
14348
+ accordionProps?: Partial<EuiAccordionProps>;
14349
+ }>;
14350
+ export type EuiCollapsibleNavCustomSubItem = {
14351
+ renderItem: (options: {
14352
+ /**
14353
+ * When the side nav is collapsed on larger screens, the menu appears in an EuiPopover.
14354
+ * When the sidenav is collapsed on smaller screens, the menu appears in an EuiFlyout.
14355
+ *
14356
+ * Use this handler to close either the portalled flyout or popover, depending on which is present.
14357
+ * If the handler is not defined, it means there is no portal onscreen to close.
14358
+ */
14359
+ closePortals?: MouseEventHandler;
14360
+ }) => ReactNode;
13796
14361
  };
13797
- export interface EuiPinnableListGroupProps extends CommonProps, EuiListGroupProps {
13798
- /**
13799
- * Extends `EuiListGroupItemProps`, at the very least, expecting a `label`.
13800
- * See {@link EuiPinnableListGroupItemProps}
13801
- */
13802
- listItems: EuiPinnableListGroupItemProps[];
13803
- /**
13804
- * Shows the pin icon and calls this function on click.
13805
- * Returns `item: EuiPinnableListGroupItemProps`
13806
- */
13807
- onPinClick: (item: EuiPinnableListGroupItemProps) => void;
13808
- /**
13809
- * The pin icon needs a title/aria-label for accessibility.
13810
- * It is a function that passes the item back and must return a string `(item) => string`.
13811
- * Default is `"Pin item"`
13812
- */
13813
- pinTitle?: (item: EuiPinnableListGroupItemProps) => string;
14362
+ export type EuiCollapsibleNavSubItemProps = ExclusiveUnion<EuiCollapsibleNavItemProps, EuiCollapsibleNavCustomSubItem>;
14363
+ export type _EuiCollapsibleNavItemDisplayProps = {
13814
14364
  /**
13815
- * The unpin icon needs a title/aria-label for accessibility.
13816
- * It is a function that passes the item back and must return a string `(item) => string`.
13817
- * Default is `"Unpin item"`
14365
+ * Determines whether the item should render as a top-level nav item
14366
+ * or a nested nav subitem. Set internally by EUI
13818
14367
  */
13819
- unpinTitle?: (item: EuiPinnableListGroupItemProps) => string;
13820
- }
13821
- export const EuiPinnableListGroup: FunctionComponent<EuiPinnableListGroupProps>;
13822
-
13823
- }
13824
- declare module '@elastic/eui/src/components/list_group/pinnable_list_group' {
13825
- export type { EuiPinnableListGroupProps, EuiPinnableListGroupItemProps, } from '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group';
13826
- export { EuiPinnableListGroup } from '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group';
14368
+ isSubItem?: boolean;
14369
+ };
14370
+ /**
14371
+ * Internal subcomponent for title display
14372
+ */
14373
+ export const EuiCollapsibleNavItemTitle: FunctionComponent<Pick<EuiCollapsibleNavItemProps, 'title' | 'titleElement' | 'icon' | 'iconProps'>>;
14374
+ /**
14375
+ * Sub-items can either be a totally custom rendered item,
14376
+ * or they can simply be more links or accordions
14377
+ */
14378
+ export const EuiCollapsibleNavSubItem: FunctionComponent<EuiCollapsibleNavSubItemProps>;
14379
+ /**
14380
+ * Reuseable component for rendering a group of sub items
14381
+ * Used by both `EuiCollapsibleNavGroup` and `EuiCollapsibleNavAccordion`
14382
+ */
14383
+ type EuiCollapsibleNavSubItemsProps = HTMLAttributes<HTMLDivElement> & _EuiCollapsibleNavItemDisplayProps & {
14384
+ items: EuiCollapsibleNavSubItemProps[];
14385
+ };
14386
+ export const EuiCollapsibleNavSubItems: FunctionComponent<EuiCollapsibleNavSubItemsProps>;
14387
+ /**
14388
+ * The actual exported component
14389
+ */
14390
+ export const EuiCollapsibleNavItem: FunctionComponent<EuiCollapsibleNavItemProps>;
14391
+ export {};
13827
14392
 
13828
14393
  }
13829
- declare module '@elastic/eui/src/components/list_group' {
13830
- export type { EuiListGroupProps } from '@elastic/eui/src/components/list_group/list_group';
13831
- export { EuiListGroup } from '@elastic/eui/src/components/list_group/list_group';
13832
- export type { EuiListGroupItemProps } from '@elastic/eui/src/components/list_group/list_group_item';
13833
- export type { EuiListGroupItemExtraActionProps } from '@elastic/eui/src/components/list_group/list_group_item_extra_action';
13834
- export { EuiListGroupItem } from '@elastic/eui/src/components/list_group/list_group_item';
13835
- export type { EuiPinnableListGroupProps, EuiPinnableListGroupItemProps, } from '@elastic/eui/src/components/list_group/pinnable_list_group';
13836
- export { EuiPinnableListGroup } from '@elastic/eui/src/components/list_group/pinnable_list_group';
14394
+ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item' {
14395
+ export type { EuiCollapsibleNavItemProps, EuiCollapsibleNavSubItemProps, } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item';
14396
+ export { EuiCollapsibleNavItem, EuiCollapsibleNavSubItem, } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item';
13837
14397
 
13838
14398
  }
13839
14399
  declare module '@elastic/eui/src/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.styles' {
@@ -13887,7 +14447,7 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
13887
14447
  import React, { HTMLAttributes, ReactNode } from 'react';
13888
14448
  import { CommonProps } from '@elastic/eui/src/components/common';
13889
14449
  import { EuiFlyoutProps } from '@elastic/eui/src/components/flyout';
13890
- export type EuiCollapsibleNavBetaProps = CommonProps & HTMLAttributes<HTMLElement> & Pick<EuiFlyoutProps, // Extend only specific flyout props - EuiCollapsibleNav is much less customizable than EuiFlyout
14450
+ export type EuiCollapsibleNavBetaProps = CommonProps & Omit<HTMLAttributes<HTMLElement>, 'onResize'> & Pick<EuiFlyoutProps, // Extend only specific flyout props - EuiCollapsibleNav is much less customizable than EuiFlyout
13891
14451
  // Extend only specific flyout props - EuiCollapsibleNav is much less customizable than EuiFlyout
13892
14452
  'side' | 'focusTrapProps' | 'includeFixedHeadersInFocusTrap'> & {
13893
14453
  /**
@@ -24651,6 +25211,15 @@ declare module '@elastic/eui/src/components/search_bar/search_bar' {
24651
25211
  queryText: string;
24652
25212
  error: null;
24653
25213
  }
25214
+ /**
25215
+ * When `searchFormat` is 'text', `query` is null and the search is performed
25216
+ * on the `queryText` directly without EQL parsing
25217
+ */
25218
+ interface ArgsWithPlainText {
25219
+ query: null;
25220
+ queryText: string;
25221
+ error: null;
25222
+ }
24654
25223
  interface ArgsWithError {
24655
25224
  query: null;
24656
25225
  queryText: string;
@@ -24662,7 +25231,7 @@ declare module '@elastic/eui/src/components/search_bar/search_bar' {
24662
25231
  flags?: string[];
24663
25232
  recognizedFields?: string[];
24664
25233
  }
24665
- export type EuiSearchBarOnChangeArgs = ArgsWithQuery | ArgsWithError;
25234
+ export type EuiSearchBarOnChangeArgs = ArgsWithQuery | ArgsWithPlainText | ArgsWithError;
24666
25235
  type HintPopOverProps = Partial<Pick<EuiInputPopoverProps, 'isOpen' | 'closePopover' | 'fullWidth' | 'disableFocusTrap' | 'panelClassName' | 'panelPaddingSize' | 'panelStyle' | 'panelProps' | 'popoverScreenReaderText' | 'repositionOnScroll' | 'zIndex' | 'data-test-subj'>>;
24667
25236
  export interface EuiSearchBarProps extends CommonProps {
24668
25237
  onChange?: (args: EuiSearchBarOnChangeArgs) => void | boolean;
@@ -25749,15 +26318,12 @@ declare module '@elastic/eui/src/components/basic_table/in_memory_table' {
25749
26318
  import { CommonProps } from '@elastic/eui/src/components/common';
25750
26319
  import { EuiTablePaginationProps } from '@elastic/eui/src/components/table/table_pagination';
25751
26320
  import { EuiComponentDefaults } from '@elastic/eui/src/components/provider/component_defaults';
25752
- export interface EuiInMemoryTableSearchBarOnChangeArgs {
26321
+ interface onChangeArgument {
25753
26322
  query: Query | null;
25754
26323
  queryText: string;
25755
26324
  error: Error | null;
25756
26325
  }
25757
- export interface EuiInMemoryTableSearchBarProps extends Omit<EuiSearchBarProps, 'onChange'> {
25758
- onChange?: (args: EuiInMemoryTableSearchBarOnChangeArgs) => void | boolean;
25759
- }
25760
- export type Search = boolean | EuiInMemoryTableSearchBarProps;
26326
+ export type Search = boolean | EuiSearchBarProps;
25761
26327
  interface PaginationOptions extends EuiTablePaginationProps {
25762
26328
  pageSizeOptions?: number[];
25763
26329
  initialPageIndex?: number;
@@ -25866,7 +26432,7 @@ declare module '@elastic/eui/src/components/basic_table/in_memory_table' {
25866
26432
  static getDerivedStateFromProps<T extends object>(nextProps: EuiInMemoryTableProps<T>, prevState: State<T>): State<T> | null;
25867
26433
  constructor(props: EuiInMemoryTableProps<T>, context: EuiComponentDefaults);
25868
26434
  onTableChange: ({ page, sort }: Criteria<T>) => void;
25869
- onQueryChange: ({ query, queryText, error, }: EuiInMemoryTableSearchBarOnChangeArgs) => void;
26435
+ onQueryChange: ({ query, queryText, error }: onChangeArgument) => void;
25870
26436
  onPlainTextSearch: (searchValue: string) => void;
25871
26437
  renderSearchBar(): React.JSX.Element | undefined;
25872
26438
  resolveSearchSchema(): SchemaType;
@@ -25883,7 +26449,7 @@ declare module '@elastic/eui/src/components/basic_table/in_memory_table' {
25883
26449
  declare module '@elastic/eui/src/components/basic_table' {
25884
26450
  export type { EuiBasicTableProps, EuiBasicTableColumn, Criteria, CriteriaWithPagination, } from '@elastic/eui/src/components/basic_table/basic_table';
25885
26451
  export { EuiBasicTable } from '@elastic/eui/src/components/basic_table/basic_table';
25886
- export type { EuiInMemoryTableProps, EuiInMemoryTableSearchBarOnChangeArgs, EuiInMemoryTableSearchBarProps, Search, } from '@elastic/eui/src/components/basic_table/in_memory_table';
26452
+ export type { EuiInMemoryTableProps, Search } from '@elastic/eui/src/components/basic_table/in_memory_table';
25887
26453
  export { EuiInMemoryTable } from '@elastic/eui/src/components/basic_table/in_memory_table';
25888
26454
  export type { EuiTableDataType, EuiTableFooterProps, EuiTableFieldDataColumnType, EuiTableComputedColumnType, EuiTableActionsColumnType, EuiTableSelectionType, EuiTableSortingType, } from '@elastic/eui/src/components/basic_table/table_types';
25889
26455
  export type { Pagination } from '@elastic/eui/src/components/basic_table/pagination_bar';
@@ -32407,13 +32973,14 @@ declare module '@elastic/eui' {
32407
32973
  "euiTourFooter.endTour": any;
32408
32974
  "euiTourFooter.skipTour": any;
32409
32975
  "euiTourFooter.closeTour": any;
32976
+ "euiIconTip.defaultAriaLabel": any;
32410
32977
  "euiToast.newNotification": any;
32411
32978
  "euiToast.notification": any;
32412
32979
  "euiToast.dismissToast": any;
32413
32980
  "euiGlobalToastList.clearAllToastsButtonAriaLabel": any;
32414
32981
  "euiGlobalToastList.clearAllToastsButtonDisplayText": any;
32415
- "euiIconTip.defaultAriaLabel": any;
32416
32982
  "euiTableHeaderCell.titleTextWithDesc": any;
32983
+ "euiStat.loadingText": any;
32417
32984
  "euiStepStrings.step": any;
32418
32985
  "euiStepStrings.simpleStep": any;
32419
32986
  "euiStepStrings.complete": any;
@@ -32430,22 +32997,21 @@ declare module '@elastic/eui' {
32430
32997
  "euiStepStrings.simpleLoading": any;
32431
32998
  "euiStepStrings.current": any;
32432
32999
  "euiStepStrings.simpleCurrent": any;
32433
- "euiStat.loadingText": any;
32434
33000
  "euiSkeletonLoading.loadedAriaText": any;
32435
33001
  "euiSkeletonLoading.loadingAriaText": any;
32436
- "euiSearchBox.placeholder": any;
32437
- "euiSearchBox.incrementalAriaLabel": any;
32438
- "euiSearchBox.ariaLabel": any;
32439
33002
  "euiSideNav.mobileToggleAriaLabel": any;
32440
- "euiResizablePanel.toggleButtonAriaLabel": any;
32441
- "euiResizableButton.horizontalResizerAriaLabel": any;
32442
- "euiResizableButton.verticalResizerAriaLabel": any;
32443
33003
  "euiSelectable.loadingOptions": any;
32444
33004
  "euiSelectable.noMatchingOptions": any;
32445
33005
  "euiSelectable.noAvailableOptions": any;
32446
33006
  "euiSelectable.screenReaderInstructions": any;
32447
33007
  "euiSelectable.placeholderName": any;
32448
33008
  "euiSelectable.searchResults": any;
33009
+ "euiSearchBox.placeholder": any;
33010
+ "euiSearchBox.incrementalAriaLabel": any;
33011
+ "euiSearchBox.ariaLabel": any;
33012
+ "euiResizablePanel.toggleButtonAriaLabel": any;
33013
+ "euiResizableButton.horizontalResizerAriaLabel": any;
33014
+ "euiResizableButton.verticalResizerAriaLabel": any;
32449
33015
  "euiProgress.valueText": any;
32450
33016
  "euiPopover.screenReaderAnnouncement": any;
32451
33017
  "euiPaginationButtonArrow.firstPage": any;
@@ -32491,6 +33057,8 @@ declare module '@elastic/eui' {
32491
33057
  "euiImageButton.openFullScreen": any;
32492
33058
  "euiImageButton.closeFullScreen": any;
32493
33059
  "euiForm.addressFormErrors": any;
33060
+ "euiFlyoutMenu.back": any;
33061
+ "euiFlyoutMenu.history": any;
32494
33062
  "euiFlyout.screenReaderModalDialog": any;
32495
33063
  "euiFlyout.screenReaderNonModalDialog": any;
32496
33064
  "euiFlyout.screenReaderFocusTrapShards": any;
@@ -32548,7 +33116,6 @@ declare module '@elastic/eui' {
32548
33116
  "euiTablePagination.rowsPerPageOptionShowAllRows": any;
32549
33117
  "euiTablePagination.rowsPerPageOption": any;
32550
33118
  "euiTableSortMobile.sorting": any;
32551
- "euiFieldValueSelectionFilter.buttonLabelHint": any;
32552
33119
  "euiSelectableTemplateSitewide.searchPlaceholder": any;
32553
33120
  "euiSelectableTemplateSitewide.loadingResults": any;
32554
33121
  "euiSelectableTemplateSitewide.noResults": any;
@@ -32562,6 +33129,7 @@ declare module '@elastic/eui' {
32562
33129
  "euiSelectableListItem.mixedOptionInstructions": any;
32563
33130
  "euiSelectableListItem.mixedOptionUncheckInstructions": any;
32564
33131
  "euiSelectableListItem.mixedOptionExcludeInstructions": any;
33132
+ "euiFieldValueSelectionFilter.buttonLabelHint": any;
32565
33133
  "euiPinnableListGroup.pinExtraActionLabel": any;
32566
33134
  "euiPinnableListGroup.pinnedExtraActionLabel": any;
32567
33135
  "euiHeaderLinks.appNavigation": any;
@@ -32570,20 +33138,23 @@ declare module '@elastic/eui' {
32570
33138
  "euiSuperSelect.ariaLabel": any;
32571
33139
  "euiRange.sliderScreenReaderInstructions": any;
32572
33140
  "euiDualRange.sliderScreenReaderInstructions": any;
33141
+ "euiFormControlLayoutDelimited.delimiterLabel": any;
33142
+ "euiFormControlLayoutClearButton.label": any;
32573
33143
  "euiFilePicker.promptText": any;
32574
33144
  "euiFilePicker.filesSelected": any;
32575
33145
  "euiFilePicker.removeSelectedAriaLabel": any;
32576
33146
  "euiFilePicker.removeSelected": any;
32577
- "euiFormControlLayoutDelimited.delimiterLabel": any;
32578
- "euiFormControlLayoutClearButton.label": any;
32579
33147
  "euiFieldSearch.clearSearchButtonLabel": any;
32580
33148
  "euiFieldPassword.showPassword": any;
32581
33149
  "euiFieldPassword.maskPassword": any;
32582
- "euiSuperUpdateButton.updatingButtonLabel": any;
32583
- "euiSuperUpdateButton.updateButtonLabel": any;
32584
- "euiSuperUpdateButton.refreshButtonLabel": any;
32585
- "euiSuperUpdateButton.cannotUpdateTooltip": any;
32586
- "euiSuperUpdateButton.clickToApplyTooltip": any;
33150
+ "euiFlyoutManaged.defaultTitle": any;
33151
+ "euiTimeWindowButtons.invalidShiftLabel": any;
33152
+ "euiTimeWindowButtons.invalidZoomOutLabel": any;
33153
+ "euiTimeWindowButtons.previousLabel": any;
33154
+ "euiTimeWindowButtons.previousDescription": any;
33155
+ "euiTimeWindowButtons.zoomOutLabel": any;
33156
+ "euiTimeWindowButtons.nextLabel": any;
33157
+ "euiTimeWindowButtons.nextDescription": any;
32587
33158
  "euiTimeOptions.last": any;
32588
33159
  "euiTimeOptions.next": any;
32589
33160
  "euiTimeOptions.seconds": any;
@@ -32622,13 +33193,11 @@ declare module '@elastic/eui' {
32622
33193
  "euiTimeOptions.weekToDate": any;
32623
33194
  "euiTimeOptions.monthToDate": any;
32624
33195
  "euiTimeOptions.yearToDate": any;
32625
- "euiTimeWindowButtons.invalidShiftLabel": any;
32626
- "euiTimeWindowButtons.invalidZoomOutLabel": any;
32627
- "euiTimeWindowButtons.previousLabel": any;
32628
- "euiTimeWindowButtons.previousDescription": any;
32629
- "euiTimeWindowButtons.zoomOutLabel": any;
32630
- "euiTimeWindowButtons.nextLabel": any;
32631
- "euiTimeWindowButtons.nextDescription": any;
33196
+ "euiSuperUpdateButton.updatingButtonLabel": any;
33197
+ "euiSuperUpdateButton.updateButtonLabel": any;
33198
+ "euiSuperUpdateButton.refreshButtonLabel": any;
33199
+ "euiSuperUpdateButton.cannotUpdateTooltip": any;
33200
+ "euiSuperUpdateButton.clickToApplyTooltip": any;
32632
33201
  "euiPrettyInterval.seconds": any;
32633
33202
  "euiPrettyInterval.minutes": any;
32634
33203
  "euiPrettyInterval.hours": any;
@@ -32709,7 +33278,6 @@ declare module '@elastic/eui' {
32709
33278
  "euiKeyboardShortcuts.escapeDescription": any;
32710
33279
  "euiFullscreenSelector.fullscreenButton": any;
32711
33280
  "euiFullscreenSelector.fullscreenButtonActive": any;
32712
- "euiDataGridToolbarControl.badgeAriaLabel": any;
32713
33281
  "euiDisplaySelector.densityLabel": any;
32714
33282
  "euiDisplaySelector.labelCompact": any;
32715
33283
  "euiDisplaySelector.labelNormal": any;
@@ -32720,17 +33288,18 @@ declare module '@elastic/eui' {
32720
33288
  "euiDisplaySelector.labelMax": any;
32721
33289
  "euiDisplaySelector.buttonText": any;
32722
33290
  "euiDisplaySelector.resetButtonText": any;
32723
- "euiColumnSorting.button": any;
32724
- "euiColumnSorting.sortFieldAriaLabel": any;
32725
- "euiColumnSorting.emptySorting": any;
32726
- "euiColumnSorting.pickFields": any;
32727
- "euiColumnSorting.clearAll": any;
33291
+ "euiDataGridToolbarControl.badgeAriaLabel": any;
32728
33292
  "euiColumnSortingDraggable.defaultSortAsc": any;
32729
33293
  "euiColumnSortingDraggable.defaultSortDesc": any;
32730
33294
  "euiColumnSortingDraggable.dragHandleAriaLabel": any;
32731
33295
  "euiColumnSortingDraggable.activeSortLabel": any;
32732
33296
  "euiColumnSortingDraggable.removeSortLabel": any;
32733
33297
  "euiColumnSortingDraggable.toggleLegend": any;
33298
+ "euiColumnSorting.button": any;
33299
+ "euiColumnSorting.sortFieldAriaLabel": any;
33300
+ "euiColumnSorting.emptySorting": any;
33301
+ "euiColumnSorting.pickFields": any;
33302
+ "euiColumnSorting.clearAll": any;
32734
33303
  "euiColumnSelector.dragHandleAriaLabel": any;
32735
33304
  "euiColumnSelector.button": any;
32736
33305
  "euiColumnSelector.search": any;