@elastic/eui 110.0.0 → 111.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/es/components/collapsible_nav/collapsible_nav.js +20 -101
  2. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  3. package/es/components/flyout/_flyout_overlay.js +52 -0
  4. package/es/components/flyout/_flyout_resize_button.js +32 -0
  5. package/es/components/flyout/{flyout_resizable.styles.js → _flyout_resize_button.styles.js} +11 -11
  6. package/es/components/flyout/const.js +42 -0
  7. package/es/components/flyout/flyout.component.js +481 -0
  8. package/es/components/flyout/flyout.js +77 -379
  9. package/es/components/flyout/flyout.styles.js +105 -7
  10. package/es/components/flyout/flyout_menu.js +241 -0
  11. package/es/components/flyout/flyout_menu.styles.js +19 -0
  12. package/{optimize/es/components/flyout/flyout_context.js → es/components/flyout/flyout_menu_context.js} +1 -7
  13. package/es/components/flyout/flyout_parent_context.js +36 -0
  14. package/es/components/flyout/flyout_resizable.js +33 -144
  15. package/es/components/flyout/hooks.js +25 -0
  16. package/es/components/flyout/index.js +5 -2
  17. package/es/components/flyout/manager/actions.js +153 -0
  18. package/es/components/flyout/manager/activity_stage.js +95 -0
  19. package/es/components/flyout/manager/const.js +56 -0
  20. package/es/components/flyout/manager/context.js +33 -0
  21. package/es/components/flyout/manager/flyout_child.js +75 -0
  22. package/es/components/flyout/manager/flyout_main.js +65 -0
  23. package/es/components/flyout/manager/flyout_main.styles.js +25 -0
  24. package/es/components/flyout/manager/flyout_managed.js +227 -0
  25. package/es/components/flyout/manager/flyout_managed.styles.js +69 -0
  26. package/es/components/flyout/manager/hooks.js +55 -0
  27. package/es/components/flyout/manager/index.js +31 -0
  28. package/es/components/flyout/manager/layout_mode.js +167 -0
  29. package/es/components/flyout/manager/provider.js +57 -0
  30. package/es/components/flyout/manager/reducer.js +320 -0
  31. package/es/components/flyout/manager/selectors.js +116 -0
  32. package/es/components/flyout/manager/store.js +113 -0
  33. package/es/components/flyout/manager/validation.js +85 -0
  34. package/es/components/flyout/use_flyout_resizable.js +149 -0
  35. package/es/components/flyout/use_flyout_z_index.js +46 -0
  36. package/es/components/overlay_mask/overlay_mask.js +13 -3
  37. package/es/components/overlay_mask/overlay_mask.styles.js +11 -2
  38. package/es/components/provider/provider.js +2 -1
  39. package/eui.d.ts +1484 -921
  40. package/i18ntokens.json +1207 -1153
  41. package/lib/components/collapsible_nav/collapsible_nav.js +20 -101
  42. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  43. package/lib/components/flyout/_flyout_overlay.js +59 -0
  44. package/lib/components/flyout/_flyout_resize_button.js +38 -0
  45. package/{test-env/components/flyout/flyout_resizable.styles.js → lib/components/flyout/_flyout_resize_button.styles.js} +12 -12
  46. package/lib/components/flyout/const.js +49 -0
  47. package/lib/components/flyout/flyout.component.js +488 -0
  48. package/lib/components/flyout/flyout.js +102 -379
  49. package/lib/components/flyout/flyout.styles.js +105 -7
  50. package/lib/components/flyout/flyout_menu.js +243 -0
  51. package/lib/components/flyout/flyout_menu.styles.js +25 -0
  52. package/{optimize/lib/components/flyout/flyout_context.js → lib/components/flyout/flyout_menu_context.js} +2 -7
  53. package/lib/components/flyout/flyout_parent_context.js +43 -0
  54. package/lib/components/flyout/flyout_resizable.js +36 -147
  55. package/lib/components/flyout/hooks.js +30 -0
  56. package/lib/components/flyout/index.js +21 -14
  57. package/lib/components/flyout/manager/actions.js +159 -0
  58. package/lib/components/flyout/manager/activity_stage.js +101 -0
  59. package/lib/components/flyout/manager/const.js +62 -0
  60. package/lib/components/flyout/manager/context.js +41 -0
  61. package/lib/components/flyout/manager/flyout_child.js +80 -0
  62. package/lib/components/flyout/manager/flyout_main.js +70 -0
  63. package/lib/components/flyout/manager/flyout_main.styles.js +31 -0
  64. package/lib/components/flyout/manager/flyout_managed.js +233 -0
  65. package/lib/components/flyout/manager/flyout_managed.styles.js +73 -0
  66. package/lib/components/flyout/manager/hooks.js +131 -0
  67. package/lib/components/flyout/manager/index.js +168 -0
  68. package/lib/components/flyout/manager/layout_mode.js +171 -0
  69. package/lib/components/flyout/manager/provider.js +63 -0
  70. package/lib/components/flyout/manager/reducer.js +325 -0
  71. package/lib/components/flyout/manager/selectors.js +122 -0
  72. package/lib/components/flyout/manager/store.js +120 -0
  73. package/lib/components/flyout/manager/validation.js +94 -0
  74. package/lib/components/flyout/use_flyout_resizable.js +153 -0
  75. package/lib/components/flyout/use_flyout_z_index.js +51 -0
  76. package/lib/components/overlay_mask/overlay_mask.js +12 -2
  77. package/lib/components/overlay_mask/overlay_mask.styles.js +11 -4
  78. package/lib/components/provider/provider.js +2 -1
  79. package/optimize/es/components/collapsible_nav/collapsible_nav.js +1 -0
  80. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  81. package/optimize/es/components/flyout/_flyout_overlay.js +52 -0
  82. package/optimize/es/components/flyout/_flyout_resize_button.js +31 -0
  83. package/optimize/es/components/flyout/{flyout_resizable.styles.js → _flyout_resize_button.styles.js} +11 -11
  84. package/optimize/es/components/flyout/const.js +42 -0
  85. package/optimize/es/components/flyout/flyout.component.js +469 -0
  86. package/optimize/es/components/flyout/flyout.js +53 -349
  87. package/optimize/es/components/flyout/flyout.styles.js +102 -7
  88. package/optimize/es/components/flyout/flyout_menu.js +162 -0
  89. package/optimize/es/components/flyout/flyout_menu.styles.js +19 -0
  90. package/{es/components/flyout/flyout_context.js → optimize/es/components/flyout/flyout_menu_context.js} +1 -7
  91. package/optimize/es/components/flyout/flyout_parent_context.js +36 -0
  92. package/optimize/es/components/flyout/flyout_resizable.js +7 -138
  93. package/optimize/es/components/flyout/hooks.js +25 -0
  94. package/optimize/es/components/flyout/index.js +5 -2
  95. package/optimize/es/components/flyout/manager/actions.js +153 -0
  96. package/optimize/es/components/flyout/manager/activity_stage.js +95 -0
  97. package/optimize/es/components/flyout/manager/const.js +56 -0
  98. package/optimize/es/components/flyout/manager/context.js +33 -0
  99. package/optimize/es/components/flyout/manager/flyout_child.js +71 -0
  100. package/optimize/es/components/flyout/manager/flyout_main.js +61 -0
  101. package/optimize/es/components/flyout/manager/flyout_main.styles.js +25 -0
  102. package/optimize/es/components/flyout/manager/flyout_managed.js +223 -0
  103. package/optimize/es/components/flyout/manager/flyout_managed.styles.js +69 -0
  104. package/optimize/es/components/flyout/manager/hooks.js +55 -0
  105. package/optimize/es/components/flyout/manager/index.js +31 -0
  106. package/optimize/es/components/flyout/manager/layout_mode.js +162 -0
  107. package/optimize/es/components/flyout/manager/provider.js +53 -0
  108. package/optimize/es/components/flyout/manager/reducer.js +312 -0
  109. package/optimize/es/components/flyout/manager/selectors.js +116 -0
  110. package/optimize/es/components/flyout/manager/store.js +113 -0
  111. package/optimize/es/components/flyout/manager/types.js +1 -0
  112. package/optimize/es/components/flyout/manager/validation.js +85 -0
  113. package/optimize/es/components/flyout/types.js +1 -0
  114. package/optimize/es/components/flyout/use_flyout_resizable.js +144 -0
  115. package/optimize/es/components/flyout/use_flyout_z_index.js +46 -0
  116. package/optimize/es/components/overlay_mask/overlay_mask.js +13 -3
  117. package/optimize/es/components/overlay_mask/overlay_mask.styles.js +11 -2
  118. package/optimize/es/components/provider/provider.js +2 -1
  119. package/optimize/lib/components/collapsible_nav/collapsible_nav.js +1 -0
  120. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  121. package/optimize/lib/components/flyout/_flyout_overlay.js +62 -0
  122. package/optimize/lib/components/flyout/_flyout_resize_button.js +37 -0
  123. package/{lib/components/flyout/flyout_resizable.styles.js → optimize/lib/components/flyout/_flyout_resize_button.styles.js} +12 -12
  124. package/optimize/lib/components/flyout/const.js +49 -0
  125. package/optimize/lib/components/flyout/flyout.component.js +477 -0
  126. package/optimize/lib/components/flyout/flyout.js +77 -349
  127. package/optimize/lib/components/flyout/flyout.styles.js +102 -7
  128. package/optimize/lib/components/flyout/flyout_menu.js +168 -0
  129. package/optimize/lib/components/flyout/flyout_menu.styles.js +25 -0
  130. package/{lib/components/flyout/flyout_context.js → optimize/lib/components/flyout/flyout_menu_context.js} +2 -7
  131. package/optimize/lib/components/flyout/flyout_parent_context.js +43 -0
  132. package/optimize/lib/components/flyout/flyout_resizable.js +9 -139
  133. package/optimize/lib/components/flyout/hooks.js +30 -0
  134. package/optimize/lib/components/flyout/index.js +21 -14
  135. package/optimize/lib/components/flyout/manager/actions.js +159 -0
  136. package/optimize/lib/components/flyout/manager/activity_stage.js +101 -0
  137. package/optimize/lib/components/flyout/manager/const.js +62 -0
  138. package/optimize/lib/components/flyout/manager/context.js +41 -0
  139. package/optimize/lib/components/flyout/manager/flyout_child.js +76 -0
  140. package/optimize/lib/components/flyout/manager/flyout_main.js +66 -0
  141. package/optimize/lib/components/flyout/manager/flyout_main.styles.js +31 -0
  142. package/optimize/lib/components/flyout/manager/flyout_managed.js +231 -0
  143. package/optimize/lib/components/flyout/manager/flyout_managed.styles.js +74 -0
  144. package/optimize/lib/components/flyout/manager/hooks.js +131 -0
  145. package/optimize/lib/components/flyout/manager/index.js +168 -0
  146. package/optimize/lib/components/flyout/manager/layout_mode.js +169 -0
  147. package/optimize/lib/components/flyout/manager/provider.js +61 -0
  148. package/optimize/lib/components/flyout/manager/reducer.js +318 -0
  149. package/optimize/lib/components/flyout/manager/selectors.js +122 -0
  150. package/optimize/lib/components/flyout/manager/store.js +120 -0
  151. package/optimize/lib/components/flyout/manager/validation.js +94 -0
  152. package/optimize/lib/components/flyout/types.js +5 -0
  153. package/optimize/lib/components/flyout/use_flyout_resizable.js +151 -0
  154. package/optimize/lib/components/flyout/use_flyout_z_index.js +51 -0
  155. package/optimize/lib/components/overlay_mask/overlay_mask.js +12 -2
  156. package/optimize/lib/components/overlay_mask/overlay_mask.styles.js +11 -4
  157. package/optimize/lib/components/provider/provider.js +2 -1
  158. package/package.json +5 -4
  159. package/test-env/components/collapsible_nav/collapsible_nav.js +20 -101
  160. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  161. package/test-env/components/flyout/_flyout_overlay.js +62 -0
  162. package/test-env/components/flyout/_flyout_resize_button.js +37 -0
  163. package/{optimize/lib/components/flyout/flyout_resizable.styles.js → test-env/components/flyout/_flyout_resize_button.styles.js} +12 -12
  164. package/test-env/components/flyout/const.js +49 -0
  165. package/test-env/components/flyout/flyout.component.js +477 -0
  166. package/test-env/components/flyout/flyout.styles.js +102 -7
  167. package/test-env/components/flyout/flyout_menu.js +241 -0
  168. package/test-env/components/flyout/flyout_menu.styles.js +25 -0
  169. package/test-env/components/flyout/{flyout_context.js → flyout_menu_context.js} +2 -7
  170. package/test-env/components/flyout/flyout_parent_context.js +43 -0
  171. package/test-env/components/flyout/flyout_resizable.js +35 -139
  172. package/test-env/components/flyout/hooks.js +30 -0
  173. package/test-env/components/flyout/index.js +21 -14
  174. package/test-env/components/flyout/manager/actions.js +159 -0
  175. package/test-env/components/flyout/manager/activity_stage.js +101 -0
  176. package/test-env/components/flyout/manager/const.js +62 -0
  177. package/test-env/components/flyout/manager/context.js +41 -0
  178. package/test-env/components/flyout/manager/flyout_child.js +76 -0
  179. package/test-env/components/flyout/manager/flyout_main.js +66 -0
  180. package/test-env/components/flyout/manager/flyout_main.styles.js +31 -0
  181. package/test-env/components/flyout/manager/flyout_managed.js +231 -0
  182. package/test-env/components/flyout/manager/flyout_managed.styles.js +74 -0
  183. package/test-env/components/flyout/manager/hooks.js +131 -0
  184. package/test-env/components/flyout/manager/index.js +168 -0
  185. package/test-env/components/flyout/manager/layout_mode.js +169 -0
  186. package/test-env/components/flyout/manager/provider.js +61 -0
  187. package/test-env/components/flyout/manager/reducer.js +318 -0
  188. package/test-env/components/flyout/manager/selectors.js +122 -0
  189. package/test-env/components/flyout/manager/store.js +120 -0
  190. package/test-env/components/flyout/manager/types.js +5 -0
  191. package/test-env/components/flyout/manager/validation.js +94 -0
  192. package/test-env/components/flyout/types.js +5 -0
  193. package/test-env/components/flyout/use_flyout_resizable.js +151 -0
  194. package/test-env/components/flyout/use_flyout_z_index.js +51 -0
  195. package/test-env/components/overlay_mask/overlay_mask.js +12 -2
  196. package/test-env/components/overlay_mask/overlay_mask.styles.js +11 -4
  197. package/test-env/components/provider/provider.js +2 -1
  198. package/es/components/flyout/flyout_child.js +0 -223
  199. package/es/components/flyout/flyout_child.styles.js +0 -32
  200. package/es/components/flyout/flyout_child_manager.js +0 -114
  201. package/es/components/flyout/sessions/flyout_provider.js +0 -95
  202. package/es/components/flyout/sessions/flyout_reducer.js +0 -195
  203. package/es/components/flyout/sessions/index.js +0 -10
  204. package/es/components/flyout/sessions/use_eui_flyout.js +0 -82
  205. package/lib/components/flyout/flyout_child.js +0 -231
  206. package/lib/components/flyout/flyout_child.styles.js +0 -38
  207. package/lib/components/flyout/flyout_child_manager.js +0 -122
  208. package/lib/components/flyout/sessions/flyout_provider.js +0 -102
  209. package/lib/components/flyout/sessions/flyout_reducer.js +0 -202
  210. package/lib/components/flyout/sessions/index.js +0 -25
  211. package/lib/components/flyout/sessions/use_eui_flyout.js +0 -88
  212. package/optimize/es/components/flyout/flyout_child.js +0 -178
  213. package/optimize/es/components/flyout/flyout_child.styles.js +0 -32
  214. package/optimize/es/components/flyout/flyout_child_manager.js +0 -100
  215. package/optimize/es/components/flyout/sessions/flyout_provider.js +0 -90
  216. package/optimize/es/components/flyout/sessions/flyout_reducer.js +0 -187
  217. package/optimize/es/components/flyout/sessions/index.js +0 -10
  218. package/optimize/es/components/flyout/sessions/use_eui_flyout.js +0 -82
  219. package/optimize/lib/components/flyout/flyout_child.js +0 -186
  220. package/optimize/lib/components/flyout/flyout_child.styles.js +0 -38
  221. package/optimize/lib/components/flyout/flyout_child_manager.js +0 -110
  222. package/optimize/lib/components/flyout/sessions/flyout_provider.js +0 -100
  223. package/optimize/lib/components/flyout/sessions/flyout_reducer.js +0 -195
  224. package/optimize/lib/components/flyout/sessions/index.js +0 -25
  225. package/optimize/lib/components/flyout/sessions/use_eui_flyout.js +0 -88
  226. package/test-env/components/flyout/flyout_child.js +0 -230
  227. package/test-env/components/flyout/flyout_child.styles.js +0 -38
  228. package/test-env/components/flyout/flyout_child_manager.js +0 -119
  229. package/test-env/components/flyout/sessions/flyout_provider.js +0 -100
  230. package/test-env/components/flyout/sessions/flyout_reducer.js +0 -195
  231. package/test-env/components/flyout/sessions/index.js +0 -25
  232. package/test-env/components/flyout/sessions/use_eui_flyout.js +0 -88
  233. /package/es/components/flyout/{sessions → manager}/types.js +0 -0
  234. /package/{optimize/es/components/flyout/sessions → es/components/flyout}/types.js +0 -0
  235. /package/lib/components/flyout/{sessions → manager}/types.js +0 -0
  236. /package/{optimize/lib/components/flyout/sessions → lib/components/flyout}/types.js +0 -0
  237. /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;
@@ -13443,397 +14301,99 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
13443
14301
  * Consider using a heading element for better accessibility.
13444
14302
  * Defaults to an unsemantic `span` or `div`, depending on context.
13445
14303
  */
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
- };
13718
-
13719
- }
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;
13731
- /**
13732
- * Remove container padding, stretching list items to the edges
13733
- */
13734
- flush?: boolean;
13735
- /**
13736
- * Spacing between list items
13737
- */
13738
- gutterSize?: EuiListGroupGutterSize;
13739
- /**
13740
- * Items to display in this group. See {@link EuiListGroupItem}
13741
- */
13742
- listItems?: EuiListGroupItemProps[];
13743
- /**
13744
- * Change the colors of all `listItems` at once
13745
- * @default text
13746
- */
13747
- color?: EuiListGroupItemProps['color'];
13748
- /**
13749
- * Change the size of all `listItems` at once
13750
- * @default m
13751
- */
13752
- size?: EuiListGroupItemProps['size'];
13753
- /**
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.
13758
- */
13759
- maxWidth?: boolean | CSSProperties['maxWidth'];
14304
+ titleElement?: 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'span' | 'div';
13760
14305
  /**
13761
- * Display tooltips on all list items
14306
+ * Optional icon to render to the left of title content
13762
14307
  */
13763
- showToolTips?: boolean;
14308
+ icon?: IconType;
13764
14309
  /**
13765
- * Allow link text to wrap vs truncated
14310
+ * Optional props to pass to the title icon
13766
14311
  */
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 & {
14312
+ iconProps?: Partial<EuiIconProps>;
14313
+ }, {}> & ExclusiveUnion<{
13787
14314
  /**
13788
- * Saves the pinned status and changes the visibility of the pin icon
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.
13789
14322
  */
13790
- pinned?: boolean;
14323
+ href?: string;
13791
14324
  /**
13792
- * Passing `onPinClick` to the full EuiPinnableListGroup, will make every item pinnable.
13793
- * Set this property to `false` to turn off individual item pinnability
14325
+ * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
13794
14326
  */
13795
- pinnable?: boolean;
13796
- };
13797
- export interface EuiPinnableListGroupProps extends CommonProps, EuiListGroupProps {
14327
+ linkProps?: Partial<EuiLinkProps>;
14328
+ }, {
13798
14329
  /**
13799
- * Extends `EuiListGroupItemProps`, at the very least, expecting a `label`.
13800
- * See {@link EuiPinnableListGroupItemProps}
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.
13801
14334
  */
13802
- listItems: EuiPinnableListGroupItemProps[];
14335
+ items: EuiCollapsibleNavSubItemProps[];
13803
14336
  /**
13804
- * Shows the pin icon and calls this function on click.
13805
- * Returns `item: EuiPinnableListGroupItemProps`
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
13806
14341
  */
13807
- onPinClick: (item: EuiPinnableListGroupItemProps) => void;
14342
+ isCollapsible?: boolean;
13808
14343
  /**
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"`
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`)
13812
14347
  */
13813
- pinTitle?: (item: EuiPinnableListGroupItemProps) => string;
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;
14361
+ };
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
  /**
@@ -32405,20 +32965,21 @@ declare module '@loki/create-async-callback' {
32405
32965
 
32406
32966
  declare module '@elastic/eui' {
32407
32967
  export type EuiTokensObject = {
32408
- "euiTreeView.listNavigationInstructions": any;
32409
- "euiTourStepIndicator.isActive": any;
32968
+ "euiTourStepIndicator.isActive": any;
32410
32969
  "euiTourStepIndicator.isComplete": any;
32411
32970
  "euiTourStepIndicator.isIncomplete": any;
32412
32971
  "euiTourStepIndicator.ariaLabel": any;
32413
32972
  "euiTourFooter.endTour": any;
32414
32973
  "euiTourFooter.skipTour": any;
32415
32974
  "euiTourFooter.closeTour": any;
32975
+ "euiIconTip.defaultAriaLabel": any;
32976
+ "euiTreeView.listNavigationInstructions": any;
32416
32977
  "euiToast.newNotification": any;
32417
32978
  "euiToast.notification": any;
32418
32979
  "euiToast.dismissToast": any;
32419
32980
  "euiGlobalToastList.clearAllToastsButtonAriaLabel": any;
32420
32981
  "euiGlobalToastList.clearAllToastsButtonDisplayText": any;
32421
- "euiIconTip.defaultAriaLabel": any;
32982
+ "euiStat.loadingText": any;
32422
32983
  "euiTableHeaderCell.titleTextWithDesc": any;
32423
32984
  "euiStepStrings.step": any;
32424
32985
  "euiStepStrings.simpleStep": any;
@@ -32436,22 +32997,21 @@ declare module '@elastic/eui' {
32436
32997
  "euiStepStrings.simpleLoading": any;
32437
32998
  "euiStepStrings.current": any;
32438
32999
  "euiStepStrings.simpleCurrent": any;
32439
- "euiStat.loadingText": any;
32440
33000
  "euiSkeletonLoading.loadedAriaText": any;
32441
33001
  "euiSkeletonLoading.loadingAriaText": any;
32442
- "euiSearchBox.placeholder": any;
32443
- "euiSearchBox.incrementalAriaLabel": any;
32444
- "euiSearchBox.ariaLabel": any;
32445
33002
  "euiSideNav.mobileToggleAriaLabel": any;
32446
- "euiResizablePanel.toggleButtonAriaLabel": any;
32447
- "euiResizableButton.horizontalResizerAriaLabel": any;
32448
- "euiResizableButton.verticalResizerAriaLabel": any;
32449
33003
  "euiSelectable.loadingOptions": any;
32450
33004
  "euiSelectable.noMatchingOptions": any;
32451
33005
  "euiSelectable.noAvailableOptions": any;
32452
33006
  "euiSelectable.screenReaderInstructions": any;
32453
33007
  "euiSelectable.placeholderName": any;
32454
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;
32455
33015
  "euiProgress.valueText": any;
32456
33016
  "euiPopover.screenReaderAnnouncement": any;
32457
33017
  "euiPaginationButtonArrow.firstPage": any;
@@ -32468,6 +33028,8 @@ declare module '@elastic/eui' {
32468
33028
  "euiPagination.of": any;
32469
33029
  "euiPagination.collection": any;
32470
33030
  "euiPagination.fromEndLabel": any;
33031
+ "euiMark.highlightStart": any;
33032
+ "euiMark.highlightEnd": any;
32471
33033
  "euiModal.screenReaderModalDialog": any;
32472
33034
  "euiModal.closeModal": any;
32473
33035
  "euiMarkdownEditorToolbar.editor": any;
@@ -32485,11 +33047,9 @@ declare module '@elastic/eui' {
32485
33047
  "euiMarkdownEditorFooter.supportedFileTypes": any;
32486
33048
  "euiMarkdownEditorFooter.showSyntaxErrors": any;
32487
33049
  "euiMarkdownEditorFooter.errorsTitle": any;
32488
- "euiMark.highlightStart": any;
32489
- "euiMark.highlightEnd": any;
32490
- "euiLoadingStrings.ariaLabel": any;
32491
33050
  "euiExternalLinkIcon.newTarget.screenReaderOnlyText": any;
32492
33051
  "euiExternalLinkIcon.externalTarget.screenReaderOnlyText": any;
33052
+ "euiLoadingStrings.ariaLabel": any;
32493
33053
  "euiInlineEditForm.saveButtonAriaLabel": any;
32494
33054
  "euiInlineEditForm.cancelButtonAriaLabel": any;
32495
33055
  "euiInlineEditForm.inputKeyboardInstructions": any;
@@ -32497,6 +33057,8 @@ declare module '@elastic/eui' {
32497
33057
  "euiImageButton.openFullScreen": any;
32498
33058
  "euiImageButton.closeFullScreen": any;
32499
33059
  "euiForm.addressFormErrors": any;
33060
+ "euiFlyoutMenu.back": any;
33061
+ "euiFlyoutMenu.history": any;
32500
33062
  "euiFlyout.screenReaderModalDialog": any;
32501
33063
  "euiFlyout.screenReaderNonModalDialog": any;
32502
33064
  "euiFlyout.screenReaderFocusTrapShards": any;
@@ -32524,22 +33086,19 @@ declare module '@elastic/eui' {
32524
33086
  "euiColorPicker.openLabel": any;
32525
33087
  "euiColorPicker.closeLabel": any;
32526
33088
  "euiCollapsibleNavBeta.ariaLabel": any;
33089
+ "euiCallOut.dismissAriaLabel": any;
32527
33090
  "euiCodeBlockFullScreen.fullscreenCollapse": any;
32528
33091
  "euiCodeBlockFullScreen.fullscreenExpand": any;
32529
33092
  "euiCodeBlockFullScreen.ariaLabel": any;
32530
33093
  "euiCodeBlockCopy.copy": any;
32531
33094
  "euiCodeBlockAnnotations.ariaLabel": any;
32532
33095
  "euiCodeBlock.label": any;
32533
- "euiCallOut.dismissAriaLabel": any;
32534
- "euiBreadcrumbs.nav.ariaLabel": any;
32535
- "euiBreadcrumb.collapsedBadge.ariaLabel": any;
32536
- "euiBreadcrumb.popoverAriaLabel": any;
32537
33096
  "euiBottomBar.screenReaderHeading": any;
32538
33097
  "euiBottomBar.customScreenReaderAnnouncement": any;
32539
33098
  "euiBottomBar.screenReaderAnnouncement": any;
32540
- "euiCollapsedItemActions.allActionsTooltip": any;
32541
- "euiCollapsedItemActions.allActions": any;
32542
- "euiCollapsedItemActions.allActionsDisabled": any;
33099
+ "euiBreadcrumbs.nav.ariaLabel": any;
33100
+ "euiBreadcrumb.collapsedBadge.ariaLabel": any;
33101
+ "euiBreadcrumb.popoverAriaLabel": any;
32543
33102
  "euiBasicTable.noItemsMessage": any;
32544
33103
  "euiBasicTable.tableCaptionWithPagination": any;
32545
33104
  "euiBasicTable.tableAutoCaptionWithPagination": any;
@@ -32549,12 +33108,14 @@ declare module '@elastic/eui' {
32549
33108
  "euiBasicTable.deselectRows": any;
32550
33109
  "euiBasicTable.selectThisRow": any;
32551
33110
  "euiBasicTable.tablePagination": any;
33111
+ "euiCollapsedItemActions.allActionsTooltip": any;
33112
+ "euiCollapsedItemActions.allActions": any;
33113
+ "euiCollapsedItemActions.allActionsDisabled": any;
32552
33114
  "euiTablePagination.allRows": any;
32553
33115
  "euiTablePagination.rowsPerPage": any;
32554
33116
  "euiTablePagination.rowsPerPageOptionShowAllRows": any;
32555
33117
  "euiTablePagination.rowsPerPageOption": any;
32556
33118
  "euiTableSortMobile.sorting": any;
32557
- "euiFieldValueSelectionFilter.buttonLabelHint": any;
32558
33119
  "euiSelectableTemplateSitewide.searchPlaceholder": any;
32559
33120
  "euiSelectableTemplateSitewide.loadingResults": any;
32560
33121
  "euiSelectableTemplateSitewide.noResults": any;
@@ -32568,6 +33129,7 @@ declare module '@elastic/eui' {
32568
33129
  "euiSelectableListItem.mixedOptionInstructions": any;
32569
33130
  "euiSelectableListItem.mixedOptionUncheckInstructions": any;
32570
33131
  "euiSelectableListItem.mixedOptionExcludeInstructions": any;
33132
+ "euiFieldValueSelectionFilter.buttonLabelHint": any;
32571
33133
  "euiPinnableListGroup.pinExtraActionLabel": any;
32572
33134
  "euiPinnableListGroup.pinnedExtraActionLabel": any;
32573
33135
  "euiHeaderLinks.appNavigation": any;
@@ -32576,20 +33138,32 @@ declare module '@elastic/eui' {
32576
33138
  "euiSuperSelect.ariaLabel": any;
32577
33139
  "euiRange.sliderScreenReaderInstructions": any;
32578
33140
  "euiDualRange.sliderScreenReaderInstructions": any;
33141
+ "euiFormControlLayoutDelimited.delimiterLabel": any;
33142
+ "euiFormControlLayoutClearButton.label": any;
32579
33143
  "euiFilePicker.promptText": any;
32580
33144
  "euiFilePicker.filesSelected": any;
32581
33145
  "euiFilePicker.removeSelectedAriaLabel": any;
32582
33146
  "euiFilePicker.removeSelected": any;
32583
- "euiFormControlLayoutDelimited.delimiterLabel": any;
32584
- "euiFormControlLayoutClearButton.label": any;
32585
33147
  "euiFieldSearch.clearSearchButtonLabel": any;
32586
33148
  "euiFieldPassword.showPassword": any;
32587
33149
  "euiFieldPassword.maskPassword": any;
32588
- "euiSuperUpdateButton.updatingButtonLabel": any;
32589
- "euiSuperUpdateButton.updateButtonLabel": any;
32590
- "euiSuperUpdateButton.refreshButtonLabel": any;
32591
- "euiSuperUpdateButton.cannotUpdateTooltip": any;
32592
- "euiSuperUpdateButton.clickToApplyTooltip": any;
33150
+ "euiFlyoutManaged.defaultTitle": any;
33151
+ "euiRefreshInterval.fullDescriptionOff": any;
33152
+ "euiRefreshInterval.fullDescriptionOn": any;
33153
+ "euiRefreshInterval.toggleLabel": any;
33154
+ "euiRefreshInterval.toggleAriaLabel": any;
33155
+ "euiRefreshInterval.valueAriaLabel": any;
33156
+ "euiRefreshInterval.unitsAriaLabel": any;
33157
+ "euiAutoRefresh.autoRefreshLabel": any;
33158
+ "euiAutoRefresh.buttonLabelOff": any;
33159
+ "euiAutoRefresh.buttonLabelOn": any;
33160
+ "euiTimeWindowButtons.invalidShiftLabel": any;
33161
+ "euiTimeWindowButtons.invalidZoomOutLabel": any;
33162
+ "euiTimeWindowButtons.previousLabel": any;
33163
+ "euiTimeWindowButtons.previousDescription": any;
33164
+ "euiTimeWindowButtons.zoomOutLabel": any;
33165
+ "euiTimeWindowButtons.nextLabel": any;
33166
+ "euiTimeWindowButtons.nextDescription": any;
32593
33167
  "euiTimeOptions.last": any;
32594
33168
  "euiTimeOptions.next": any;
32595
33169
  "euiTimeOptions.seconds": any;
@@ -32628,13 +33202,11 @@ declare module '@elastic/eui' {
32628
33202
  "euiTimeOptions.weekToDate": any;
32629
33203
  "euiTimeOptions.monthToDate": any;
32630
33204
  "euiTimeOptions.yearToDate": any;
32631
- "euiTimeWindowButtons.invalidShiftLabel": any;
32632
- "euiTimeWindowButtons.invalidZoomOutLabel": any;
32633
- "euiTimeWindowButtons.previousLabel": any;
32634
- "euiTimeWindowButtons.previousDescription": any;
32635
- "euiTimeWindowButtons.zoomOutLabel": any;
32636
- "euiTimeWindowButtons.nextLabel": any;
32637
- "euiTimeWindowButtons.nextDescription": any;
33205
+ "euiSuperUpdateButton.updatingButtonLabel": any;
33206
+ "euiSuperUpdateButton.updateButtonLabel": any;
33207
+ "euiSuperUpdateButton.refreshButtonLabel": any;
33208
+ "euiSuperUpdateButton.cannotUpdateTooltip": any;
33209
+ "euiSuperUpdateButton.clickToApplyTooltip": any;
32638
33210
  "euiPrettyInterval.seconds": any;
32639
33211
  "euiPrettyInterval.minutes": any;
32640
33212
  "euiPrettyInterval.hours": any;
@@ -32668,15 +33240,8 @@ declare module '@elastic/eui' {
32668
33240
  "euiPrettyDuration.now": any;
32669
33241
  "euiPrettyDuration.invalid": any;
32670
33242
  "euiPrettyDuration.fallbackDuration": any;
32671
- "euiRefreshInterval.fullDescriptionOff": any;
32672
- "euiRefreshInterval.fullDescriptionOn": any;
32673
- "euiRefreshInterval.toggleLabel": any;
32674
- "euiRefreshInterval.toggleAriaLabel": any;
32675
- "euiRefreshInterval.valueAriaLabel": any;
32676
- "euiRefreshInterval.unitsAriaLabel": any;
32677
- "euiAutoRefresh.autoRefreshLabel": any;
32678
- "euiAutoRefresh.buttonLabelOff": any;
32679
- "euiAutoRefresh.buttonLabelOn": any;
33243
+ "euiDataGridPagination.detailedPaginationLabel": any;
33244
+ "euiDataGridPagination.paginationLabel": any;
32680
33245
  "euiDataGridSchema.booleanSortTextAsc": any;
32681
33246
  "euiDataGridSchema.booleanSortTextDesc": any;
32682
33247
  "euiDataGridSchema.currencySortTextAsc": any;
@@ -32687,8 +33252,6 @@ declare module '@elastic/eui' {
32687
33252
  "euiDataGridSchema.numberSortTextDesc": any;
32688
33253
  "euiDataGridSchema.jsonSortTextAsc": any;
32689
33254
  "euiDataGridSchema.jsonSortTextDesc": any;
32690
- "euiDataGridPagination.detailedPaginationLabel": any;
32691
- "euiDataGridPagination.paginationLabel": any;
32692
33255
  "euiKeyboardShortcuts.title": any;
32693
33256
  "euiKeyboardShortcuts.upArrowTitle": any;
32694
33257
  "euiKeyboardShortcuts.upArrowDescription": any;
@@ -32715,7 +33278,6 @@ declare module '@elastic/eui' {
32715
33278
  "euiKeyboardShortcuts.escapeDescription": any;
32716
33279
  "euiFullscreenSelector.fullscreenButton": any;
32717
33280
  "euiFullscreenSelector.fullscreenButtonActive": any;
32718
- "euiDataGridToolbarControl.badgeAriaLabel": any;
32719
33281
  "euiDisplaySelector.densityLabel": any;
32720
33282
  "euiDisplaySelector.labelCompact": any;
32721
33283
  "euiDisplaySelector.labelNormal": any;
@@ -32726,17 +33288,18 @@ declare module '@elastic/eui' {
32726
33288
  "euiDisplaySelector.labelMax": any;
32727
33289
  "euiDisplaySelector.buttonText": any;
32728
33290
  "euiDisplaySelector.resetButtonText": any;
32729
- "euiColumnSorting.button": any;
32730
- "euiColumnSorting.sortFieldAriaLabel": any;
32731
- "euiColumnSorting.emptySorting": any;
32732
- "euiColumnSorting.pickFields": any;
32733
- "euiColumnSorting.clearAll": any;
33291
+ "euiDataGridToolbarControl.badgeAriaLabel": any;
32734
33292
  "euiColumnSortingDraggable.defaultSortAsc": any;
32735
33293
  "euiColumnSortingDraggable.defaultSortDesc": any;
32736
33294
  "euiColumnSortingDraggable.dragHandleAriaLabel": any;
32737
33295
  "euiColumnSortingDraggable.activeSortLabel": any;
32738
33296
  "euiColumnSortingDraggable.removeSortLabel": any;
32739
33297
  "euiColumnSortingDraggable.toggleLegend": any;
33298
+ "euiColumnSorting.button": any;
33299
+ "euiColumnSorting.sortFieldAriaLabel": any;
33300
+ "euiColumnSorting.emptySorting": any;
33301
+ "euiColumnSorting.pickFields": any;
33302
+ "euiColumnSorting.clearAll": any;
32740
33303
  "euiColumnSelector.dragHandleAriaLabel": any;
32741
33304
  "euiColumnSelector.button": any;
32742
33305
  "euiColumnSelector.search": any;
@@ -32762,17 +33325,6 @@ declare module '@elastic/eui' {
32762
33325
  "euiCardSelect.unavailable": any;
32763
33326
  "euiCardSelect.select": any;
32764
33327
  "euiAccordionChildrenLoading.message": any;
32765
- "euiRecentlyUsed.legend": any;
32766
- "euiQuickSelectPopover.buttonLabel": any;
32767
- "euiQuickSelect.quickSelectTitle": any;
32768
- "euiQuickSelect.previousLabel": any;
32769
- "euiQuickSelect.nextLabel": any;
32770
- "euiQuickSelect.tenseLabel": any;
32771
- "euiQuickSelect.valueLabel": any;
32772
- "euiQuickSelect.unitLabel": any;
32773
- "euiQuickSelect.applyButton": any;
32774
- "euiQuickSelect.fullDescription": any;
32775
- "euiCommonlyUsedTimeRanges.legend": any;
32776
33328
  "euiRelativeTab.numberInputLabel": any;
32777
33329
  "euiRelativeTab.numberInputError": any;
32778
33330
  "euiRelativeTab.dateInputError": any;
@@ -32804,6 +33356,17 @@ declare module '@elastic/eui' {
32804
33356
  "euiColumnActions.moveRight": any;
32805
33357
  "euiColumnActions.unsort": any;
32806
33358
  "euiColumnActions.sort": any;
33359
+ "euiRecentlyUsed.legend": any;
33360
+ "euiQuickSelectPopover.buttonLabel": any;
33361
+ "euiQuickSelect.quickSelectTitle": any;
33362
+ "euiQuickSelect.previousLabel": any;
33363
+ "euiQuickSelect.nextLabel": any;
33364
+ "euiQuickSelect.tenseLabel": any;
33365
+ "euiQuickSelect.valueLabel": any;
33366
+ "euiQuickSelect.unitLabel": any;
33367
+ "euiQuickSelect.applyButton": any;
33368
+ "euiQuickSelect.fullDescription": any;
33369
+ "euiCommonlyUsedTimeRanges.legend": any;
32807
33370
  "euiDataGridCell.focusTrapExitPrompt": any;
32808
33371
  "euiDataGridCell.focusTrapEnterPrompt": any;
32809
33372
  "euiDataGridCell.focusTrapEnteredExitPrompt": any;