@elastic/eui 91.3.0 → 92.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 (175) hide show
  1. package/dist/eui_charts_theme.js.map +1 -1
  2. package/dist/eui_theme_dark.css +0 -513
  3. package/dist/eui_theme_dark.min.css +1 -1
  4. package/dist/eui_theme_light.css +0 -513
  5. package/dist/eui_theme_light.min.css +1 -1
  6. package/es/components/basic_table/basic_table.js +25 -22
  7. package/es/components/basic_table/collapsed_item_actions.js +14 -15
  8. package/es/components/basic_table/expanded_item_actions.js +4 -4
  9. package/es/components/datagrid/body/header/data_grid_header_cell.js +3 -3
  10. package/es/components/drag_and_drop/drag_and_drop.a11y.js +1 -1
  11. package/es/components/filter_group/filter_button.js +20 -13
  12. package/es/components/filter_group/filter_button.styles.js +11 -20
  13. package/es/components/flyout/flyout.js +4 -4
  14. package/es/components/flyout/flyout_resizable.js +127 -0
  15. package/es/components/flyout/flyout_resizable.styles.js +27 -0
  16. package/es/components/flyout/index.js +2 -1
  17. package/es/components/form/range/dual_range.js +15 -66
  18. package/es/components/form/range/range.js +6 -5
  19. package/es/components/form/range/range_slider.js +28 -22
  20. package/es/components/form/text_area/text_area.js +39 -3
  21. package/es/components/index.js +0 -2
  22. package/es/components/markdown_editor/markdown_editor.js +12 -13
  23. package/es/components/page_template/bottom_bar/page_bottom_bar.js +1 -1
  24. package/es/components/selectable/selectable_list/selectable_list_item.js +1 -1
  25. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +5 -0
  26. package/es/components/tree_view/tree_view.js +23 -25
  27. package/es/utils/prop_types/is.js +2 -2
  28. package/eui.d.ts +830 -1145
  29. package/i18ntokens.json +121 -373
  30. package/lib/components/basic_table/basic_table.js +25 -22
  31. package/lib/components/basic_table/collapsed_item_actions.js +14 -15
  32. package/lib/components/basic_table/expanded_item_actions.js +4 -4
  33. package/lib/components/datagrid/body/header/data_grid_header_cell.js +3 -3
  34. package/lib/components/drag_and_drop/drag_and_drop.a11y.js +1 -1
  35. package/lib/components/filter_group/filter_button.js +20 -13
  36. package/lib/components/filter_group/filter_button.styles.js +11 -20
  37. package/lib/components/flyout/flyout.js +4 -4
  38. package/lib/components/flyout/flyout_resizable.js +136 -0
  39. package/lib/components/flyout/flyout_resizable.styles.js +32 -0
  40. package/lib/components/flyout/index.js +8 -1
  41. package/lib/components/form/range/dual_range.js +15 -66
  42. package/lib/components/form/range/range.js +6 -5
  43. package/lib/components/form/range/range_slider.js +27 -21
  44. package/lib/components/form/text_area/text_area.js +42 -3
  45. package/lib/components/index.js +0 -22
  46. package/lib/components/markdown_editor/markdown_editor.js +12 -13
  47. package/lib/components/page_template/bottom_bar/page_bottom_bar.js +1 -1
  48. package/lib/components/pagination/pagination_button.js +79 -2
  49. package/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
  50. package/lib/components/tree_view/tree_view.js +23 -25
  51. package/lib/utils/prop_types/is.js +2 -2
  52. package/optimize/es/components/basic_table/basic_table.js +25 -22
  53. package/optimize/es/components/basic_table/collapsed_item_actions.js +14 -15
  54. package/optimize/es/components/basic_table/expanded_item_actions.js +4 -4
  55. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +3 -3
  56. package/optimize/es/components/drag_and_drop/drag_and_drop.a11y.js +1 -1
  57. package/optimize/es/components/filter_group/filter_button.js +20 -13
  58. package/optimize/es/components/filter_group/filter_button.styles.js +11 -20
  59. package/optimize/es/components/flyout/flyout.js +4 -4
  60. package/optimize/es/components/flyout/flyout_resizable.js +121 -0
  61. package/optimize/es/components/flyout/flyout_resizable.styles.js +27 -0
  62. package/optimize/es/components/flyout/index.js +2 -1
  63. package/optimize/es/components/form/range/dual_range.js +15 -66
  64. package/optimize/es/components/form/range/range.js +6 -5
  65. package/optimize/es/components/form/range/range_slider.js +26 -21
  66. package/optimize/es/components/form/text_area/text_area.js +29 -3
  67. package/optimize/es/components/index.js +0 -2
  68. package/optimize/es/components/markdown_editor/markdown_editor.js +12 -13
  69. package/optimize/es/components/page_template/bottom_bar/page_bottom_bar.js +1 -1
  70. package/optimize/es/components/selectable/selectable_list/selectable_list_item.js +1 -1
  71. package/optimize/es/components/tree_view/tree_view.js +23 -25
  72. package/optimize/es/utils/prop_types/is.js +2 -2
  73. package/optimize/lib/components/basic_table/basic_table.js +25 -22
  74. package/optimize/lib/components/basic_table/collapsed_item_actions.js +14 -15
  75. package/optimize/lib/components/basic_table/expanded_item_actions.js +4 -4
  76. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +3 -3
  77. package/optimize/lib/components/drag_and_drop/drag_and_drop.a11y.js +1 -1
  78. package/optimize/lib/components/filter_group/filter_button.js +20 -13
  79. package/optimize/lib/components/filter_group/filter_button.styles.js +11 -20
  80. package/optimize/lib/components/flyout/flyout.js +4 -4
  81. package/optimize/lib/components/flyout/flyout_resizable.js +131 -0
  82. package/optimize/lib/components/flyout/flyout_resizable.styles.js +32 -0
  83. package/optimize/lib/components/flyout/index.js +8 -1
  84. package/optimize/lib/components/form/range/dual_range.js +15 -66
  85. package/optimize/lib/components/form/range/range.js +6 -5
  86. package/optimize/lib/components/form/range/range_slider.js +26 -21
  87. package/optimize/lib/components/form/text_area/text_area.js +32 -3
  88. package/optimize/lib/components/index.js +0 -22
  89. package/optimize/lib/components/markdown_editor/markdown_editor.js +12 -13
  90. package/optimize/lib/components/page_template/bottom_bar/page_bottom_bar.js +1 -1
  91. package/optimize/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
  92. package/optimize/lib/components/tree_view/tree_view.js +23 -25
  93. package/optimize/lib/utils/prop_types/is.js +2 -2
  94. package/package.json +3 -5
  95. package/src/components/index.scss +0 -2
  96. package/test-env/components/basic_table/basic_table.js +25 -22
  97. package/test-env/components/basic_table/collapsed_item_actions.js +14 -15
  98. package/test-env/components/basic_table/expanded_item_actions.js +4 -4
  99. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +3 -3
  100. package/test-env/components/drag_and_drop/drag_and_drop.a11y.js +1 -1
  101. package/test-env/components/filter_group/filter_button.js +20 -13
  102. package/test-env/components/filter_group/filter_button.styles.js +11 -20
  103. package/test-env/components/flyout/flyout_resizable.js +131 -0
  104. package/test-env/components/flyout/flyout_resizable.styles.js +32 -0
  105. package/test-env/components/flyout/index.js +8 -1
  106. package/test-env/components/form/range/dual_range.js +15 -66
  107. package/test-env/components/form/range/range.js +6 -5
  108. package/test-env/components/form/range/range_slider.js +27 -21
  109. package/test-env/components/form/text_area/text_area.js +42 -3
  110. package/test-env/components/index.js +0 -22
  111. package/test-env/components/markdown_editor/markdown_editor.js +12 -13
  112. package/test-env/components/page_template/bottom_bar/page_bottom_bar.js +1 -1
  113. package/test-env/components/pagination/pagination_button.js +79 -2
  114. package/test-env/components/selectable/selectable_list/selectable_list_item.js +1 -1
  115. package/test-env/components/tree_view/tree_view.js +23 -25
  116. package/test-env/utils/prop_types/is.js +2 -2
  117. package/es/components/control_bar/control_bar.a11y.js +0 -133
  118. package/es/components/control_bar/control_bar.js +0 -609
  119. package/es/components/control_bar/index.js +0 -9
  120. package/es/components/notification/index.js +0 -9
  121. package/es/components/notification/notification_event.a11y.js +0 -104
  122. package/es/components/notification/notification_event.js +0 -288
  123. package/es/components/notification/notification_event_messages.js +0 -79
  124. package/es/components/notification/notification_event_meta.js +0 -148
  125. package/es/components/notification/notification_event_read_button.js +0 -86
  126. package/es/components/notification/notification_event_read_icon.js +0 -77
  127. package/lib/components/control_bar/control_bar.a11y.js +0 -134
  128. package/lib/components/control_bar/control_bar.js +0 -441
  129. package/lib/components/control_bar/index.js +0 -12
  130. package/lib/components/notification/index.js +0 -12
  131. package/lib/components/notification/notification_event.a11y.js +0 -105
  132. package/lib/components/notification/notification_event.js +0 -297
  133. package/lib/components/notification/notification_event_messages.js +0 -88
  134. package/lib/components/notification/notification_event_meta.js +0 -157
  135. package/lib/components/notification/notification_event_read_button.js +0 -93
  136. package/lib/components/notification/notification_event_read_icon.js +0 -64
  137. package/optimize/es/components/control_bar/control_bar.a11y.js +0 -128
  138. package/optimize/es/components/control_bar/control_bar.js +0 -308
  139. package/optimize/es/components/control_bar/index.js +0 -9
  140. package/optimize/es/components/notification/index.js +0 -9
  141. package/optimize/es/components/notification/notification_event.a11y.js +0 -99
  142. package/optimize/es/components/notification/notification_event.js +0 -114
  143. package/optimize/es/components/notification/notification_event_messages.js +0 -63
  144. package/optimize/es/components/notification/notification_event_meta.js +0 -106
  145. package/optimize/es/components/notification/notification_event_read_button.js +0 -44
  146. package/optimize/es/components/notification/notification_event_read_icon.js +0 -44
  147. package/optimize/lib/components/control_bar/control_bar.a11y.js +0 -134
  148. package/optimize/lib/components/control_bar/control_bar.js +0 -301
  149. package/optimize/lib/components/control_bar/index.js +0 -12
  150. package/optimize/lib/components/notification/index.js +0 -12
  151. package/optimize/lib/components/notification/notification_event.a11y.js +0 -105
  152. package/optimize/lib/components/notification/notification_event.js +0 -123
  153. package/optimize/lib/components/notification/notification_event_messages.js +0 -74
  154. package/optimize/lib/components/notification/notification_event_meta.js +0 -117
  155. package/optimize/lib/components/notification/notification_event_read_button.js +0 -51
  156. package/optimize/lib/components/notification/notification_event_read_icon.js +0 -51
  157. package/src/components/control_bar/_control_bar.scss +0 -232
  158. package/src/components/control_bar/_index.scss +0 -2
  159. package/src/components/control_bar/_variables.scss +0 -12
  160. package/src/components/notification/_index.scss +0 -5
  161. package/src/components/notification/_notification_event.scss +0 -40
  162. package/src/components/notification/_notification_event_messages.scss +0 -17
  163. package/src/components/notification/_notification_event_meta.scss +0 -44
  164. package/src/components/notification/_notification_event_read_button.scss +0 -5
  165. package/src/components/notification/_notification_event_read_icon.scss +0 -12
  166. package/test-env/components/control_bar/control_bar.a11y.js +0 -134
  167. package/test-env/components/control_bar/control_bar.js +0 -436
  168. package/test-env/components/control_bar/index.js +0 -12
  169. package/test-env/components/notification/index.js +0 -12
  170. package/test-env/components/notification/notification_event.a11y.js +0 -105
  171. package/test-env/components/notification/notification_event.js +0 -296
  172. package/test-env/components/notification/notification_event_messages.js +0 -85
  173. package/test-env/components/notification/notification_event_meta.js +0 -154
  174. package/test-env/components/notification/notification_event_read_button.js +0 -92
  175. package/test-env/components/notification/notification_event_read_icon.js +0 -63
package/eui.d.ts CHANGED
@@ -126,7 +126,7 @@ declare module '@elastic/eui/src/components/common' {
126
126
  /**
127
127
  * Wraps Object.keys with proper typescript definition of the resulting array
128
128
  */
129
- export function keysOf<T, K extends keyof T>(obj: T): K[];
129
+ export function keysOf<T extends object, K extends keyof T>(obj: T): K[];
130
130
  /**
131
131
  * Like `keyof typeof`, but for getting values instead of keys
132
132
  * ValueOf<typeof {key1: 'value1', key2: 'value2'}>
@@ -7237,14 +7237,16 @@ declare module '@elastic/eui/src/components/form/range/range_slider.styles' {
7237
7237
 
7238
7238
  }
7239
7239
  declare module '@elastic/eui/src/components/form/range/range_slider' {
7240
- import React, { ChangeEventHandler, InputHTMLAttributes } from 'react';
7240
+ import { ChangeEventHandler, InputHTMLAttributes, FunctionComponent } from 'react';
7241
7241
  import { CommonProps } from '@elastic/eui/src/components/common';
7242
+ import { EuiResizeObserverProps } from '@elastic/eui/src/components/observer/resize_observer';
7242
7243
  import type { EuiRangeProps, EuiRangeLevel } from '@elastic/eui/src/components/form/range/types';
7243
- export interface EuiRangeSliderProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'min' | 'max' | 'step'>, CommonProps, Pick<EuiRangeProps, 'id' | 'name' | 'tabIndex' | 'min' | 'max' | 'step' | 'disabled' | 'isLoading' | 'showRange' | 'showTicks'> {
7244
+ export interface EuiRangeSliderProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'min' | 'max' | 'step' | 'onResize'>, CommonProps, Pick<EuiRangeProps, 'id' | 'name' | 'tabIndex' | 'min' | 'max' | 'step' | 'disabled' | 'isLoading' | 'showRange' | 'showTicks'> {
7244
7245
  onChange?: ChangeEventHandler<HTMLInputElement>;
7245
7246
  thumbColor?: EuiRangeLevel['color'];
7247
+ onResize: EuiResizeObserverProps['onResize'];
7246
7248
  }
7247
- export const EuiRangeSlider: React.ForwardRefExoticComponent<EuiRangeSliderProps & React.RefAttributes<HTMLInputElement>>;
7249
+ export const EuiRangeSlider: FunctionComponent<EuiRangeSliderProps>;
7248
7250
 
7249
7251
  }
7250
7252
  declare module '@elastic/eui/src/components/form/range/range_thumb.styles' {
@@ -7370,15 +7372,11 @@ declare module '@elastic/eui/src/components/form/range/dual_range' {
7370
7372
  };
7371
7373
  state: {
7372
7374
  id: string;
7373
- rangeSliderRefAvailable: boolean;
7374
7375
  isPopoverOpen: boolean;
7375
7376
  rangeWidth: number;
7376
- isVisible: boolean;
7377
7377
  };
7378
7378
  get isInPopover(): boolean;
7379
7379
  preventPopoverClose: boolean;
7380
- rangeSliderRef: HTMLInputElement | null;
7381
- handleRangeSliderRefUpdate: (ref: HTMLInputElement | null) => void;
7382
7380
  private leftPosition;
7383
7381
  private dragAcc;
7384
7382
  get lowerValue(): string | number;
@@ -7386,8 +7384,6 @@ declare module '@elastic/eui/src/components/form/range/dual_range' {
7386
7384
  get lowerValueIsValid(): boolean;
7387
7385
  get upperValueIsValid(): boolean;
7388
7386
  get isValid(): boolean;
7389
- componentDidMount(): void;
7390
- componentDidUpdate(): void;
7391
7387
  _determineInvalidThumbMovement: (newVal: ValueMember, lower: ValueMember, upper: ValueMember, e: React.ChangeEvent<HTMLInputElement> | React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLInputElement>) => void;
7392
7388
  _determineValidThumbMovement: (newVal: ValueMember, lower: ValueMember, upper: ValueMember, e: React.ChangeEvent<HTMLInputElement> | React.MouseEvent<HTMLButtonElement>) => void;
7393
7389
  _determineThumbMovement: (newVal: number, e: React.ChangeEvent<HTMLInputElement> | React.MouseEvent<HTMLButtonElement>) => void;
@@ -7410,7 +7406,9 @@ declare module '@elastic/eui/src/components/form/range/dual_range' {
7410
7406
  onInputFocus: (e: React.FocusEvent<HTMLInputElement>) => void;
7411
7407
  onInputBlur: (e: React.FocusEvent<HTMLInputElement>) => NodeJS.Timeout;
7412
7408
  closePopover: () => void;
7413
- onResize: (width: number) => void;
7409
+ setRangeWidth: ({ width }: {
7410
+ width: number;
7411
+ }) => void;
7414
7412
  getNearestStep: (value: number) => number;
7415
7413
  handleDrag: (x: number, isFirstInteraction?: boolean | undefined) => void;
7416
7414
  render(): React.JSX.Element;
@@ -7470,7 +7468,9 @@ declare module '@elastic/eui/src/components/form/range/range' {
7470
7468
  };
7471
7469
  handleOnChange: (e: React.ChangeEvent<HTMLInputElement> | React.MouseEvent<HTMLButtonElement>) => void;
7472
7470
  get isValid(): boolean;
7473
- rangeSliderRef: (ref: HTMLInputElement | null) => void;
7471
+ setTrackWidth: ({ width }: {
7472
+ width: number;
7473
+ }) => void;
7474
7474
  onInputFocus: (e: React.FocusEvent<HTMLInputElement>) => void;
7475
7475
  onInputBlur: (e: React.FocusEvent<HTMLInputElement>) => NodeJS.Timeout;
7476
7476
  closePopover: () => void;
@@ -7713,9 +7713,15 @@ declare module '@elastic/eui/src/components/form/switch' {
7713
7713
  declare module '@elastic/eui/src/components/form/text_area/text_area' {
7714
7714
  import { TextareaHTMLAttributes, Ref, FunctionComponent } from 'react';
7715
7715
  import { CommonProps } from '@elastic/eui/src/components/common';
7716
+ import { EuiFormControlLayoutIconsProps } from '@elastic/eui/src/components/form/form_control_layout/form_control_layout_icons';
7716
7717
  export type EuiTextAreaProps = TextareaHTMLAttributes<HTMLTextAreaElement> & CommonProps & {
7718
+ icon?: EuiFormControlLayoutIconsProps['icon'];
7717
7719
  isLoading?: boolean;
7718
7720
  isInvalid?: boolean;
7721
+ /**
7722
+ * Shows a button that allows users to quickly clear the textarea
7723
+ */
7724
+ isClearable?: boolean;
7719
7725
  /**
7720
7726
  * Expand to fill 100% of the parent.
7721
7727
  * Defaults to `fullWidth` prop of `<EuiForm>`.
@@ -8515,7 +8521,7 @@ declare module '@elastic/eui/src/services/sort/comparators' {
8515
8521
  default: (direction?: 'asc' | 'desc') => (v1: Primitive, v2: Primitive) => number;
8516
8522
  reverse: <T>(comparator: Comparator<T>) => Comparator<T>;
8517
8523
  value<T_1>(valueCallback: (value: T_1) => Primitive, comparator?: Comparator<Primitive> | undefined): Comparator<T_1>;
8518
- property<T_2>(prop: string, comparator?: Comparator<Primitive> | undefined): Comparator<T_2>;
8524
+ property<T_2 extends object>(prop: string, comparator?: Comparator<Primitive> | undefined): Comparator<T_2>;
8519
8525
  }>;
8520
8526
  export {};
8521
8527
 
@@ -10839,135 +10845,651 @@ declare module '@elastic/eui/src/components/flyout/flyout_header' {
10839
10845
  export const EuiFlyoutHeader: EuiFlyoutHeaderProps;
10840
10846
 
10841
10847
  }
10842
- declare module '@elastic/eui/src/components/flyout' {
10843
- export type { EuiFlyoutProps, EuiFlyoutSize } from '@elastic/eui/src/components/flyout/flyout';
10844
- export { EuiFlyout } from '@elastic/eui/src/components/flyout/flyout';
10845
- export type { EuiFlyoutBodyProps } from '@elastic/eui/src/components/flyout/flyout_body';
10846
- export { EuiFlyoutBody } from '@elastic/eui/src/components/flyout/flyout_body';
10847
- export type { EuiFlyoutFooterProps } from '@elastic/eui/src/components/flyout/flyout_footer';
10848
- export { EuiFlyoutFooter } from '@elastic/eui/src/components/flyout/flyout_footer';
10849
- export type { EuiFlyoutHeaderProps } from '@elastic/eui/src/components/flyout/flyout_header';
10850
- export { EuiFlyoutHeader } from '@elastic/eui/src/components/flyout/flyout_header';
10851
- export { euiFlyoutSlideInRight, euiFlyoutSlideInLeft } from '@elastic/eui/src/components/flyout/flyout.styles';
10848
+ declare module '@elastic/eui/src/components/resizable_container/types' {
10849
+ import { KeyboardEvent, MouseEvent, TouchEvent } from 'react';
10850
+ export type PanelModeType = 'collapsible' | 'main' | 'custom';
10851
+ export type PanelPosition = 'first' | 'middle' | 'last';
10852
+ export type PanelDirection = 'left' | 'right';
10853
+ export type KeyMoveDirection = 'forward' | 'backward';
10854
+ export type ResizeTrigger = 'pointer' | 'key';
10855
+ export interface EuiResizablePanelController {
10856
+ id: string;
10857
+ size: number;
10858
+ getSizePx: () => number;
10859
+ minSize: string[];
10860
+ mode?: PanelModeType;
10861
+ isCollapsed: boolean;
10862
+ prevSize: number;
10863
+ position: PanelPosition;
10864
+ }
10865
+ export interface EuiResizableButtonController {
10866
+ id: string;
10867
+ ref: HTMLElement;
10868
+ isDisabled: boolean;
10869
+ isFocused: boolean;
10870
+ }
10871
+ export interface EuiResizableContainerRegistry {
10872
+ panels: {
10873
+ [key: string]: EuiResizablePanelController;
10874
+ };
10875
+ resizers: {
10876
+ [key: string]: EuiResizableButtonController;
10877
+ };
10878
+ }
10879
+ export type EuiResizableButtonMouseEvent = MouseEvent<HTMLButtonElement> | TouchEvent<HTMLButtonElement>;
10880
+ export type EuiResizableButtonKeyEvent = KeyboardEvent<HTMLButtonElement>;
10881
+ export interface EuiResizableContainerState {
10882
+ isDragging: boolean;
10883
+ currentResizerPos: number;
10884
+ prevPanelId: string | null;
10885
+ nextPanelId: string | null;
10886
+ containerSize: number;
10887
+ isHorizontal?: boolean;
10888
+ panels: EuiResizableContainerRegistry['panels'];
10889
+ resizers: EuiResizableContainerRegistry['resizers'];
10890
+ }
10891
+ export interface ActionToggleOptions {
10892
+ direction: PanelDirection;
10893
+ }
10894
+ interface ActionReset {
10895
+ type: 'EUI_RESIZABLE_RESET';
10896
+ }
10897
+ interface ActionInit {
10898
+ type: 'EUI_RESIZABLE_CONTAINER_INIT';
10899
+ payload: {
10900
+ isHorizontal: boolean;
10901
+ };
10902
+ }
10903
+ export interface ActionDragStart {
10904
+ type: 'EUI_RESIZABLE_DRAG_START';
10905
+ payload: {
10906
+ prevPanelId: string;
10907
+ nextPanelId: string;
10908
+ position: number;
10909
+ };
10910
+ }
10911
+ export interface ActionDragMove {
10912
+ type: 'EUI_RESIZABLE_DRAG_MOVE';
10913
+ payload: {
10914
+ prevPanelId: string;
10915
+ nextPanelId: string;
10916
+ position: number;
10917
+ };
10918
+ }
10919
+ export interface ActionKeyMove {
10920
+ type: 'EUI_RESIZABLE_KEY_MOVE';
10921
+ payload: {
10922
+ prevPanelId: string;
10923
+ nextPanelId: string;
10924
+ direction: KeyMoveDirection;
10925
+ };
10926
+ }
10927
+ export interface ActionResize {
10928
+ type: 'EUI_RESIZABLE_RESIZE';
10929
+ payload: {};
10930
+ }
10931
+ export interface ActionToggle {
10932
+ type: 'EUI_RESIZABLE_TOGGLE';
10933
+ payload: {
10934
+ panelId: string;
10935
+ options: ActionToggleOptions;
10936
+ };
10937
+ }
10938
+ interface ActionRegisterPanel {
10939
+ type: 'EUI_RESIZABLE_PANEL_REGISTER';
10940
+ payload: {
10941
+ panel: EuiResizablePanelController;
10942
+ };
10943
+ }
10944
+ interface ActionDeregisterPanel {
10945
+ type: 'EUI_RESIZABLE_PANEL_DEREGISTER';
10946
+ payload: {
10947
+ panelId: EuiResizablePanelController['id'];
10948
+ };
10949
+ }
10950
+ interface ActionRegisterResizer {
10951
+ type: 'EUI_RESIZABLE_BUTTON_REGISTER';
10952
+ payload: {
10953
+ resizer: EuiResizableButtonController;
10954
+ };
10955
+ }
10956
+ interface ActionDeregisterResizer {
10957
+ type: 'EUI_RESIZABLE_BUTTON_DEREGISTER';
10958
+ payload: {
10959
+ resizerId: EuiResizableButtonController['id'];
10960
+ };
10961
+ }
10962
+ export interface ActionFocus {
10963
+ type: 'EUI_RESIZABLE_BUTTON_FOCUS';
10964
+ payload: {
10965
+ resizerId: EuiResizableButtonController['id'];
10966
+ };
10967
+ }
10968
+ interface ActionBlur {
10969
+ type: 'EUI_RESIZABLE_BUTTON_BLUR';
10970
+ }
10971
+ interface ActionOnChange {
10972
+ type: 'EUI_RESIZABLE_ONCHANGE';
10973
+ }
10974
+ export type EuiResizableContainerAction = ActionReset | ActionInit | ActionRegisterPanel | ActionDeregisterPanel | ActionRegisterResizer | ActionDeregisterResizer | ActionDragStart | ActionDragMove | ActionKeyMove | ActionResize | ActionToggle | ActionFocus | ActionBlur | ActionOnChange;
10975
+ export interface EuiResizableContainerActions {
10976
+ reset: () => void;
10977
+ initContainer: (isHorizontal: boolean) => void;
10978
+ registerPanel: (panel: EuiResizablePanelController) => void;
10979
+ deregisterPanel: (panelId: EuiResizablePanelController['id']) => void;
10980
+ registerResizer: (resizer: EuiResizableButtonController) => void;
10981
+ deregisterResizer: (resizerId: EuiResizableButtonController['id']) => void;
10982
+ dragStart: ({ prevPanelId, nextPanelId, position, }: ActionDragStart['payload']) => void;
10983
+ dragMove: ({ prevPanelId, nextPanelId, position, }: ActionDragMove['payload']) => void;
10984
+ keyMove: ({ prevPanelId, nextPanelId, direction, }: ActionKeyMove['payload']) => void;
10985
+ resizerFocus: (resizerId: ActionFocus['payload']['resizerId']) => void;
10986
+ resizerBlur: () => void;
10987
+ togglePanel: (panelId: ActionToggle['payload']['panelId'], options: ActionToggle['payload']['options']) => void;
10988
+ }
10989
+ export {};
10852
10990
 
10853
10991
  }
10854
- declare module '@elastic/eui/src/components/collapsible_nav/collapsible_nav.styles' {
10992
+ declare module '@elastic/eui/src/components/resizable_container/context' {
10993
+ import React from 'react';
10994
+ import { EuiResizableContainerRegistry } from '@elastic/eui/src/components/resizable_container/types';
10995
+ interface ContainerContextProps {
10996
+ registry?: EuiResizableContainerRegistry;
10997
+ }
10998
+ interface ContextProviderProps extends Required<ContainerContextProps> {
10999
+ /**
11000
+ * ReactNode to render as this component's content
11001
+ */
11002
+ children: any;
11003
+ }
11004
+ export function EuiResizableContainerContextProvider({ children, registry, }: ContextProviderProps): React.JSX.Element;
11005
+ export const useEuiResizableContainerContext: () => ContainerContextProps;
11006
+ export {};
11007
+
11008
+ }
11009
+ declare module '@elastic/eui/src/components/resizable_container/resizable_button.styles' {
10855
11010
  import { UseEuiTheme } from '@elastic/eui/src/services';
10856
- export const euiCollapsibleNavStyles: ({ euiTheme }: UseEuiTheme) => {
10857
- euiCollapsibleNav: import("@emotion/utils").SerializedStyles;
10858
- push: import("@emotion/utils").SerializedStyles;
10859
- overlay: import("@emotion/utils").SerializedStyles;
11011
+ export const euiResizableButtonStyles: (euiThemeContext: UseEuiTheme) => {
11012
+ euiResizableButton: import("@emotion/utils").SerializedStyles;
11013
+ horizontal: import("@emotion/utils").SerializedStyles;
11014
+ vertical: import("@emotion/utils").SerializedStyles;
11015
+ alignIndicator: {
11016
+ center: import("@emotion/utils").SerializedStyles;
11017
+ start: import("@emotion/utils").SerializedStyles;
11018
+ end: import("@emotion/utils").SerializedStyles;
11019
+ };
10860
11020
  };
10861
11021
 
10862
11022
  }
10863
- declare module '@elastic/eui/src/components/collapsible_nav/collapsible_nav' {
10864
- import { FunctionComponent, ReactElement, ReactNode } from 'react';
10865
- import { EuiFlyoutProps } from '@elastic/eui/src/components/flyout';
10866
- export type EuiCollapsibleNavProps = Omit<EuiFlyoutProps, 'type' | 'pushBreakpoint'> & {
11023
+ declare module '@elastic/eui/src/components/resizable_container/resizable_button' {
11024
+ import React, { FunctionComponent, ButtonHTMLAttributes } from 'react';
11025
+ import { CommonProps } from '@elastic/eui/src/components/common';
11026
+ import { EuiResizableButtonController, EuiResizableButtonMouseEvent, EuiResizableButtonKeyEvent } from '@elastic/eui/src/components/resizable_container/types';
11027
+ export type EuiResizableButtonProps = ButtonHTMLAttributes<HTMLButtonElement> & CommonProps & {
10867
11028
  /**
10868
- * ReactNode to render as this component's content
11029
+ * Defaults to displaying a resizer for vertical (y-axis) resizing.
11030
+ * Set to `true` to display a resizer for horizontal (x-axis) resizing.
10869
11031
  */
10870
- children?: ReactNode;
11032
+ isHorizontal?: boolean;
10871
11033
  /**
10872
- * Shows the navigation flyout
11034
+ * Specify the alignment of the initial resize indicator. Defaults to `center`,
11035
+ * but consider using `start` for extremely tall content that scrolls off-screen
10873
11036
  */
10874
- isOpen?: boolean;
11037
+ alignIndicator?: 'center' | 'start' | 'end';
10875
11038
  /**
10876
- * Keeps navigation flyout visible and push `<body>` content via padding
11039
+ * When disabled, the resizer button will be completely hidden
10877
11040
  */
10878
- isDocked?: boolean;
11041
+ disabled?: boolean;
11042
+ };
11043
+ /**
11044
+ * A generic button for indicating/facilitating resizable content,
11045
+ * usable outside of the EuiResizableContainer context
11046
+ */
11047
+ export const EuiResizableButton: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & CommonProps & {
10879
11048
  /**
10880
- * Named breakpoint (`xs` through `xl`) for customizing the minimum window width to enable docking
11049
+ * Defaults to displaying a resizer for vertical (y-axis) resizing.
11050
+ * Set to `true` to display a resizer for horizontal (x-axis) resizing.
10881
11051
  */
10882
- dockedBreakpoint?: EuiFlyoutProps['pushMinBreakpoint'];
11052
+ isHorizontal?: boolean | undefined;
10883
11053
  /**
10884
- * Button for controlling visible state of the nav
11054
+ * Specify the alignment of the initial resize indicator. Defaults to `center`,
11055
+ * but consider using `start` for extremely tall content that scrolls off-screen
10885
11056
  */
10886
- button?: ReactElement;
11057
+ alignIndicator?: "center" | "end" | "start" | undefined;
10887
11058
  /**
10888
- * Keeps the display of toggle button when in docked state
11059
+ * When disabled, the resizer button will be completely hidden
10889
11060
  */
10890
- showButtonIfDocked?: boolean;
11061
+ disabled?: boolean | undefined;
11062
+ } & React.RefAttributes<HTMLButtonElement>>;
11063
+ /**
11064
+ * Resizer button specific to controlled EuiResizableContainer usage
11065
+ */
11066
+ export type EuiResizableButtonControls = Omit<EuiResizableButtonProps, 'onFocus'> & {
11067
+ registration: {
11068
+ register: (resizer: EuiResizableButtonController) => void;
11069
+ deregister: (resizerId: EuiResizableButtonController['id']) => void;
11070
+ };
11071
+ onKeyDown: (e: EuiResizableButtonKeyEvent) => void;
11072
+ onKeyUp: (e: EuiResizableButtonKeyEvent) => void;
11073
+ onMouseDown: (e: EuiResizableButtonMouseEvent) => void;
11074
+ onTouchStart: (e: EuiResizableButtonMouseEvent) => void;
11075
+ onBlur: () => void;
11076
+ onFocus: (id: string) => void;
10891
11077
  };
10892
- export const EuiCollapsibleNav: FunctionComponent<EuiCollapsibleNavProps>;
10893
-
10894
- }
10895
- declare module '@elastic/eui/src/components/collapsible_nav' {
10896
- export type { EuiCollapsibleNavGroupProps } from '@elastic/eui/src/components/collapsible_nav/collapsible_nav_group';
10897
- export { EuiCollapsibleNavGroup } from '@elastic/eui/src/components/collapsible_nav/collapsible_nav_group';
10898
- export type { EuiCollapsibleNavProps } from '@elastic/eui/src/components/collapsible_nav/collapsible_nav';
10899
- export { EuiCollapsibleNav } from '@elastic/eui/src/components/collapsible_nav/collapsible_nav';
11078
+ export const EuiResizableButtonControlled: FunctionComponent<Partial<EuiResizableButtonControls>>;
11079
+ export const euiResizableButtonWithControls: (controls: EuiResizableButtonControls) => (props: CommonProps) => React.JSX.Element;
10900
11080
 
10901
11081
  }
10902
- declare module '@elastic/eui/src/components/header/header.styles' {
11082
+ declare module '@elastic/eui/src/components/resizable_container/resizable_collapse_button.styles' {
10903
11083
  import { UseEuiTheme } from '@elastic/eui/src/services';
10904
- export const euiHeaderVariables: (euiThemeContext: UseEuiTheme) => {
10905
- height: string;
10906
- childHeight: string;
10907
- padding: string;
10908
- };
10909
- export const euiHeaderStyles: (euiThemeContext: UseEuiTheme) => {
10910
- euiHeader: import("@emotion/utils").SerializedStyles;
10911
- static: import("@emotion/utils").SerializedStyles;
10912
- fixed: import("@emotion/utils").SerializedStyles;
10913
- default: import("@emotion/utils").SerializedStyles;
10914
- dark: import("@emotion/utils").SerializedStyles;
11084
+ export const euiResizableCollapseButtonStyles: (euiThemeContext: UseEuiTheme) => {
11085
+ euiResizableCollapseButton: import("@emotion/utils").SerializedStyles;
11086
+ collapsible: {
11087
+ collapsible: import("@emotion/utils").SerializedStyles;
11088
+ horizontal: {
11089
+ after: import("@emotion/utils").SerializedStyles;
11090
+ before: import("@emotion/utils").SerializedStyles;
11091
+ middle: import("@emotion/utils").SerializedStyles;
11092
+ top: import("@emotion/utils").SerializedStyles;
11093
+ bottom: import("@emotion/utils").SerializedStyles;
11094
+ readonly left: import("@emotion/utils").SerializedStyles;
11095
+ readonly right: import("@emotion/utils").SerializedStyles;
11096
+ };
11097
+ vertical: {
11098
+ after: import("@emotion/utils").SerializedStyles;
11099
+ before: import("@emotion/utils").SerializedStyles;
11100
+ middle: import("@emotion/utils").SerializedStyles;
11101
+ left: import("@emotion/utils").SerializedStyles;
11102
+ right: import("@emotion/utils").SerializedStyles;
11103
+ readonly top: import("@emotion/utils").SerializedStyles;
11104
+ readonly bottom: import("@emotion/utils").SerializedStyles;
11105
+ };
11106
+ };
11107
+ collapsed: {
11108
+ collapsed: import("@emotion/utils").SerializedStyles;
11109
+ horizontal: import("@emotion/utils").SerializedStyles;
11110
+ vertical: import("@emotion/utils").SerializedStyles;
11111
+ horizontalPositions: {
11112
+ top: import("@emotion/utils").SerializedStyles;
11113
+ bottom: import("@emotion/utils").SerializedStyles;
11114
+ middle: import("@emotion/utils").SerializedStyles;
11115
+ left: import("@emotion/utils").SerializedStyles;
11116
+ right: import("@emotion/utils").SerializedStyles;
11117
+ };
11118
+ verticalPositions: {
11119
+ left: import("@emotion/utils").SerializedStyles;
11120
+ right: import("@emotion/utils").SerializedStyles;
11121
+ middle: import("@emotion/utils").SerializedStyles;
11122
+ top: import("@emotion/utils").SerializedStyles;
11123
+ bottom: import("@emotion/utils").SerializedStyles;
11124
+ };
11125
+ };
10915
11126
  };
10916
11127
 
10917
11128
  }
10918
- declare module '@elastic/eui/src/components/collapsible_nav_beta/context' {
10919
-
10920
- import { _EuiFlyoutSide } from '@elastic/eui/src/components/flyout/flyout'; type _EuiCollapsibleNavContext = {
10921
- isCollapsed: boolean;
10922
- isPush: boolean;
10923
- isOverlayOpen: boolean;
10924
- side: _EuiFlyoutSide;
11129
+ declare module '@elastic/eui/src/components/resizable_container/resizable_collapse_button' {
11130
+ import { FunctionComponent } from 'react';
11131
+ import { EuiButtonIconPropsForButton } from '@elastic/eui/src/components/button';
11132
+ import { ToggleOptions } from '@elastic/eui/src/components/resizable_container/resizable_panel';
11133
+ import { EuiResizableContainerProps } from '@elastic/eui/src/components/resizable_container/resizable_container';
11134
+ export type EuiResizableCollapseButtonProps = Omit<EuiButtonIconPropsForButton, 'iconType'> & {
11135
+ /**
11136
+ * Position of the toggle button.
11137
+ * Enums based on the `direction` of the EuiResizableContainer
11138
+ */
11139
+ internalPosition?: ToggleOptions['position'];
11140
+ /**
11141
+ * Position of the toggle button.
11142
+ * Enums based on the `direction` of the EuiResizableContainer
11143
+ */
11144
+ externalPosition?: 'before' | 'after';
11145
+ /**
11146
+ * Same direction derived from EuiResizableContainer
11147
+ */
11148
+ direction?: EuiResizableContainerProps['direction'];
11149
+ isVisible?: boolean;
11150
+ isCollapsed?: boolean;
10925
11151
  };
10926
- export const EuiCollapsibleNavContext: import("react").Context<_EuiCollapsibleNavContext>;
10927
- export {};
11152
+ export const EuiResizableCollapseButton: FunctionComponent<EuiResizableCollapseButtonProps>;
10928
11153
 
10929
11154
  }
10930
- declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.styles' {
11155
+ declare module '@elastic/eui/src/components/resizable_container/resizable_panel.styles' {
10931
11156
  import { UseEuiTheme } from '@elastic/eui/src/services';
10932
- export const euiCollapsibleNavButtonWrapperStyles: (euiThemeContext: UseEuiTheme) => {
10933
- euiCollapsibleNavButtonWrapper: import("@emotion/utils").SerializedStyles;
10934
- euiCollapsibleNavButton: import("@emotion/utils").SerializedStyles;
10935
- left: import("@emotion/utils").SerializedStyles;
10936
- right: import("@emotion/utils").SerializedStyles;
11157
+ export const euiResizablePanelStyles: (euiThemeContext: UseEuiTheme) => {
11158
+ euiResizablePanel: import("@emotion/utils").SerializedStyles;
11159
+ collapsed: import("@emotion/utils").SerializedStyles;
11160
+ paddingSizes: {
11161
+ none: null;
11162
+ xs: import("@emotion/utils").SerializedStyles;
11163
+ s: import("@emotion/utils").SerializedStyles;
11164
+ m: import("@emotion/utils").SerializedStyles;
11165
+ l: import("@emotion/utils").SerializedStyles;
11166
+ xl: import("@emotion/utils").SerializedStyles;
11167
+ };
11168
+ };
11169
+ export const euiResizablePanelContentStyles: (euiThemeContext: UseEuiTheme) => {
11170
+ euiResizablePanel__content: import("@emotion/utils").SerializedStyles;
11171
+ scrollable: import("@emotion/utils").SerializedStyles;
11172
+ collapsedChildren: import("@emotion/utils").SerializedStyles;
11173
+ horizontal: {
11174
+ collapsed: import("@emotion/utils").SerializedStyles;
11175
+ hasCollapsibleButton: import("@emotion/utils").SerializedStyles;
11176
+ };
11177
+ vertical: {
11178
+ collapsed: import("@emotion/utils").SerializedStyles;
11179
+ hasCollapsibleButton: import("@emotion/utils").SerializedStyles;
11180
+ };
10937
11181
  };
10938
11182
 
10939
11183
  }
10940
- declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button' {
10941
- import React from 'react';
11184
+ declare module '@elastic/eui/src/components/resizable_container/resizable_panel' {
11185
+ import React, { CSSProperties, ReactNode, FunctionComponent, HTMLAttributes } from 'react';
10942
11186
  import { CommonProps } from '@elastic/eui/src/components/common';
10943
- import { EuiButtonIconPropsForButton } from '@elastic/eui/src/components/button';
10944
- export type EuiCollapsibleNavButtonProps = CommonProps & Partial<EuiButtonIconPropsForButton>;
10945
- export const EuiCollapsibleNavButton: React.ForwardRefExoticComponent<CommonProps & Partial<EuiButtonIconPropsForButton> & React.RefAttributes<HTMLDivElement>>;
10946
-
10947
- }
10948
- declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_button' {
10949
- export { EuiCollapsibleNavButton } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button';
11187
+ import { PanelPaddingSize, _EuiPanelProps } from '@elastic/eui/src/components/panel/panel';
11188
+ import { EuiResizablePanelController, ActionToggleOptions, PanelModeType } from '@elastic/eui/src/components/resizable_container/types';
11189
+ export interface ToggleOptions {
11190
+ 'data-test-subj'?: string;
11191
+ className?: string;
11192
+ /**
11193
+ * Position of the toggle button.
11194
+ * Enums based on the `direction` of the EuiResizableContainer
11195
+ */
11196
+ position?: 'top' | 'middle' | 'bottom' | 'left' | 'right';
11197
+ }
11198
+ export type ModeOptions = PanelModeType | [PanelModeType, Partial<ToggleOptions>];
11199
+ export type ToggleCollapseCallback = (panelId: EuiResizablePanelController['id'], options: ActionToggleOptions) => void;
11200
+ export const getModeType: (mode?: ModeOptions | undefined) => PanelModeType | undefined;
11201
+ export const getToggleOptions: (mode?: ModeOptions | undefined) => {
11202
+ 'data-test-subj': string | undefined;
11203
+ className: string | null;
11204
+ position: string;
11205
+ };
11206
+ export interface EuiResizablePanelControls {
11207
+ isHorizontal: boolean;
11208
+ registration: {
11209
+ register: (panel: EuiResizablePanelController) => void;
11210
+ deregister: (panelId: EuiResizablePanelController['id']) => void;
11211
+ };
11212
+ /**
11213
+ * #ToggleCollapseCallback
11214
+ */
11215
+ onToggleCollapsed?: ToggleCollapseCallback;
11216
+ onToggleCollapsedInternal: ToggleCollapseCallback;
11217
+ }
11218
+ export interface EuiResizablePanelProps extends _EuiPanelProps, CommonProps, Partial<EuiResizablePanelControls> {
11219
+ /**
11220
+ * Specify a desired minimum panel size in pixels or percents,
11221
+ * for example "300px" or "30%"
11222
+ * The actual minimum size will be calculated,
11223
+ * using the larger of this prop and the panelProps.paddingSize
11224
+ */
11225
+ minSize?: string;
11226
+ /**
11227
+ * Specify id of panel if you want to track panel size in "onPanelWidthChange" callback
11228
+ */
11229
+ id?: string;
11230
+ /**
11231
+ * Initial size of the panel in percents
11232
+ * Specify this prop if you don't need to handle the panel size from outside
11233
+ */
11234
+ initialSize?: number;
11235
+ /**
11236
+ * Size of the panel in percents.
11237
+ * Specify this prop if you want to control the size from outside, the panel will ignore the "initialSize"
11238
+ */
11239
+ size?: number;
11240
+ /**
11241
+ * Add Eui scroll and overflow for the panel
11242
+ */
11243
+ scrollable?: boolean;
11244
+ mode?: ModeOptions;
11245
+ /**
11246
+ * ReactNode to render as this component's content
11247
+ */
11248
+ children: ReactNode;
11249
+ /**
11250
+ * Custom CSS properties applied to the wrapping `.euiResizablePanel` div
11251
+ */
11252
+ style?: CSSProperties;
11253
+ /**
11254
+ * tabIndex={0} provides full keyboard access when content overflows `<EuiResizablePanel />`
11255
+ */
11256
+ tabIndex?: number;
11257
+ /**
11258
+ * Props to add to the wrapping `.euiResizablePanel` div
11259
+ */
11260
+ wrapperProps?: CommonProps & HTMLAttributes<HTMLDivElement>;
11261
+ /**
11262
+ * Padding to add directly to the wrapping `.euiResizablePanel` div
11263
+ * Gives space around the actual panel.
11264
+ */
11265
+ wrapperPadding?: PanelPaddingSize;
11266
+ }
11267
+ export const EuiResizablePanel: FunctionComponent<EuiResizablePanelProps>;
11268
+ export function euiResizablePanelWithControls(controls: EuiResizablePanelControls): (props: EuiResizablePanelProps) => React.JSX.Element;
10950
11269
 
10951
11270
  }
10952
- declare module '@elastic/eui/src/themes/themes' {
10953
- import { EuiThemeSystem } from '@elastic/eui/src/services';
10954
- export interface EUI_THEME {
10955
- text: string;
10956
- value: string;
10957
- provider?: EuiThemeSystem;
11271
+ declare module '@elastic/eui/src/components/resizable_container/helpers' {
11272
+ import { MouseEvent as ReactMouseEvent, TouchEvent as ReactTouchEvent } from 'react';
11273
+ import { EuiResizableContainerRegistry, EuiResizableContainerState, EuiResizableContainerActions } from '@elastic/eui/src/components/resizable_container/types';
11274
+ interface Params {
11275
+ initialState: EuiResizableContainerState;
11276
+ containerRef: React.RefObject<HTMLDivElement>;
11277
+ onPanelWidthChange?: ({}: {
11278
+ [key: string]: number;
11279
+ }) => any;
10958
11280
  }
10959
- export const EUI_THEMES: EUI_THEME[];
10960
- export const isDefaultTheme: (name: string) => boolean;
11281
+ export const pxToPercent: (proportion: number, whole: number) => number;
11282
+ export const sizesOnly: (panelObject: EuiResizableContainerRegistry['panels']) => {
11283
+ [key: string]: number;
11284
+ };
11285
+ export const getPanelMinSize: (panelMinSize: string[], containerSize: number) => number;
11286
+ export const getPosition: (event: ReactMouseEvent | ReactTouchEvent, isHorizontal: boolean) => number;
11287
+ export const useContainerCallbacks: ({ initialState, containerRef, onPanelWidthChange, }: Params) => [EuiResizableContainerActions, EuiResizableContainerState];
11288
+ export {};
10961
11289
 
10962
11290
  }
10963
- declare module '@elastic/eui/src/themes' {
10964
- export type { EUI_THEME } from '@elastic/eui/src/themes/themes';
10965
- export { EUI_THEMES, isDefaultTheme } from '@elastic/eui/src/themes/themes';
10966
- export { AMSTERDAM_NAME_KEY, EuiThemeAmsterdam } from '@elastic/eui/src/themes/amsterdam/theme';
10967
- export * from '@elastic/eui/src/themes/amsterdam';
11291
+ declare module '@elastic/eui/src/components/resizable_container/resizable_container.styles' {
11292
+ export const euiResizableContainerStyles: () => {
11293
+ euiResizableContainer: import("@emotion/utils").SerializedStyles;
11294
+ horizontal: import("@emotion/utils").SerializedStyles;
11295
+ vertical: import("@emotion/utils").SerializedStyles;
11296
+ };
10968
11297
 
10969
11298
  }
10970
- declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_body_footer.styles' {
11299
+ declare module '@elastic/eui/src/components/resizable_container/resizable_container' {
11300
+ import { ReactNode, CSSProperties, FunctionComponent, HTMLAttributes, ComponentType } from 'react';
11301
+ import { CommonProps } from '@elastic/eui/src/components/common';
11302
+ import { EuiResizableButtonProps } from '@elastic/eui/src/components/resizable_container/resizable_button';
11303
+ import { EuiResizablePanelProps, ToggleCollapseCallback } from '@elastic/eui/src/components/resizable_container/resizable_panel';
11304
+ import { EuiResizableContainerActions, ResizeTrigger } from '@elastic/eui/src/components/resizable_container/types';
11305
+ export interface EuiResizableContainerProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'>, CommonProps {
11306
+ /**
11307
+ * Specify the container direction
11308
+ */
11309
+ direction?: 'vertical' | 'horizontal';
11310
+ /**
11311
+ * Pure function which accepts Panel and Resizer components in arguments
11312
+ * and returns a component tree
11313
+ */
11314
+ children: (Panel: ComponentType<EuiResizablePanelProps>, Resizer: ComponentType<EuiResizableButtonProps>, actions: Partial<EuiResizableContainerActions>) => ReactNode;
11315
+ /**
11316
+ * Pure function which accepts an object where keys are IDs of panels, which sizes were changed,
11317
+ * and values are actual sizes in percents
11318
+ */
11319
+ onPanelWidthChange?: ({}: {
11320
+ [key: string]: number;
11321
+ }) => void;
11322
+ onToggleCollapsed?: ToggleCollapseCallback;
11323
+ /**
11324
+ * Called when resizing starts
11325
+ */
11326
+ onResizeStart?: (trigger: ResizeTrigger) => void;
11327
+ /**
11328
+ * Called when resizing ends
11329
+ */
11330
+ onResizeEnd?: () => void;
11331
+ style?: CSSProperties;
11332
+ }
11333
+ export const EuiResizableContainer: FunctionComponent<EuiResizableContainerProps>;
11334
+
11335
+ }
11336
+ declare module '@elastic/eui/src/components/resizable_container' {
11337
+ export type { EuiResizableContainerProps } from '@elastic/eui/src/components/resizable_container/resizable_container';
11338
+ export { EuiResizableContainer } from '@elastic/eui/src/components/resizable_container/resizable_container';
11339
+ export type { EuiResizableButtonProps } from '@elastic/eui/src/components/resizable_container/resizable_button';
11340
+ export { EuiResizableButton } from '@elastic/eui/src/components/resizable_container/resizable_button';
11341
+
11342
+ }
11343
+ declare module '@elastic/eui/src/components/flyout/flyout_resizable.styles' {
11344
+ import { UseEuiTheme } from '@elastic/eui/src/services';
11345
+ export const euiFlyoutResizableButtonStyles: ({ euiTheme }: UseEuiTheme) => {
11346
+ euiFlyoutResizableButton: import("@emotion/utils").SerializedStyles;
11347
+ left: import("@emotion/utils").SerializedStyles;
11348
+ right: import("@emotion/utils").SerializedStyles;
11349
+ };
11350
+
11351
+ }
11352
+ declare module '@elastic/eui/src/components/flyout/flyout_resizable' {
11353
+ import React from 'react';
11354
+ import { EuiFlyoutProps } from '@elastic/eui/src/components/flyout/flyout';
11355
+ export type EuiFlyoutResizableProps = Omit<EuiFlyoutProps, 'maxWidth'> & {
11356
+ maxWidth?: number;
11357
+ minWidth?: number;
11358
+ };
11359
+ export const EuiFlyoutResizable: React.ForwardRefExoticComponent<Omit<EuiFlyoutResizableProps, "ref"> & React.RefAttributes<unknown>>;
11360
+
11361
+ }
11362
+ declare module '@elastic/eui/src/components/flyout' {
11363
+ export type { EuiFlyoutProps, EuiFlyoutSize } from '@elastic/eui/src/components/flyout/flyout';
11364
+ export { EuiFlyout } from '@elastic/eui/src/components/flyout/flyout';
11365
+ export type { EuiFlyoutBodyProps } from '@elastic/eui/src/components/flyout/flyout_body';
11366
+ export { EuiFlyoutBody } from '@elastic/eui/src/components/flyout/flyout_body';
11367
+ export type { EuiFlyoutFooterProps } from '@elastic/eui/src/components/flyout/flyout_footer';
11368
+ export { EuiFlyoutFooter } from '@elastic/eui/src/components/flyout/flyout_footer';
11369
+ export type { EuiFlyoutHeaderProps } from '@elastic/eui/src/components/flyout/flyout_header';
11370
+ export { EuiFlyoutHeader } from '@elastic/eui/src/components/flyout/flyout_header';
11371
+ export { euiFlyoutSlideInRight, euiFlyoutSlideInLeft } from '@elastic/eui/src/components/flyout/flyout.styles';
11372
+ export type { EuiFlyoutResizableProps } from '@elastic/eui/src/components/flyout/flyout_resizable';
11373
+ export { EuiFlyoutResizable } from '@elastic/eui/src/components/flyout/flyout_resizable';
11374
+
11375
+ }
11376
+ declare module '@elastic/eui/src/components/collapsible_nav/collapsible_nav.styles' {
11377
+ import { UseEuiTheme } from '@elastic/eui/src/services';
11378
+ export const euiCollapsibleNavStyles: ({ euiTheme }: UseEuiTheme) => {
11379
+ euiCollapsibleNav: import("@emotion/utils").SerializedStyles;
11380
+ push: import("@emotion/utils").SerializedStyles;
11381
+ overlay: import("@emotion/utils").SerializedStyles;
11382
+ };
11383
+
11384
+ }
11385
+ declare module '@elastic/eui/src/components/collapsible_nav/collapsible_nav' {
11386
+ import { FunctionComponent, ReactElement, ReactNode } from 'react';
11387
+ import { EuiFlyoutProps } from '@elastic/eui/src/components/flyout';
11388
+ export type EuiCollapsibleNavProps = Omit<EuiFlyoutProps, 'type' | 'pushBreakpoint'> & {
11389
+ /**
11390
+ * ReactNode to render as this component's content
11391
+ */
11392
+ children?: ReactNode;
11393
+ /**
11394
+ * Shows the navigation flyout
11395
+ */
11396
+ isOpen?: boolean;
11397
+ /**
11398
+ * Keeps navigation flyout visible and push `<body>` content via padding
11399
+ */
11400
+ isDocked?: boolean;
11401
+ /**
11402
+ * Named breakpoint (`xs` through `xl`) for customizing the minimum window width to enable docking
11403
+ */
11404
+ dockedBreakpoint?: EuiFlyoutProps['pushMinBreakpoint'];
11405
+ /**
11406
+ * Button for controlling visible state of the nav
11407
+ */
11408
+ button?: ReactElement;
11409
+ /**
11410
+ * Keeps the display of toggle button when in docked state
11411
+ */
11412
+ showButtonIfDocked?: boolean;
11413
+ };
11414
+ export const EuiCollapsibleNav: FunctionComponent<EuiCollapsibleNavProps>;
11415
+
11416
+ }
11417
+ declare module '@elastic/eui/src/components/collapsible_nav' {
11418
+ export type { EuiCollapsibleNavGroupProps } from '@elastic/eui/src/components/collapsible_nav/collapsible_nav_group';
11419
+ export { EuiCollapsibleNavGroup } from '@elastic/eui/src/components/collapsible_nav/collapsible_nav_group';
11420
+ export type { EuiCollapsibleNavProps } from '@elastic/eui/src/components/collapsible_nav/collapsible_nav';
11421
+ export { EuiCollapsibleNav } from '@elastic/eui/src/components/collapsible_nav/collapsible_nav';
11422
+
11423
+ }
11424
+ declare module '@elastic/eui/src/components/header/header.styles' {
11425
+ import { UseEuiTheme } from '@elastic/eui/src/services';
11426
+ export const euiHeaderVariables: (euiThemeContext: UseEuiTheme) => {
11427
+ height: string;
11428
+ childHeight: string;
11429
+ padding: string;
11430
+ };
11431
+ export const euiHeaderStyles: (euiThemeContext: UseEuiTheme) => {
11432
+ euiHeader: import("@emotion/utils").SerializedStyles;
11433
+ static: import("@emotion/utils").SerializedStyles;
11434
+ fixed: import("@emotion/utils").SerializedStyles;
11435
+ default: import("@emotion/utils").SerializedStyles;
11436
+ dark: import("@emotion/utils").SerializedStyles;
11437
+ };
11438
+
11439
+ }
11440
+ declare module '@elastic/eui/src/components/collapsible_nav_beta/context' {
11441
+
11442
+ import { _EuiFlyoutSide } from '@elastic/eui/src/components/flyout/flyout'; type _EuiCollapsibleNavContext = {
11443
+ isCollapsed: boolean;
11444
+ isPush: boolean;
11445
+ isOverlayOpen: boolean;
11446
+ side: _EuiFlyoutSide;
11447
+ };
11448
+ export const EuiCollapsibleNavContext: import("react").Context<_EuiCollapsibleNavContext>;
11449
+ export {};
11450
+
11451
+ }
11452
+ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.styles' {
11453
+ import { UseEuiTheme } from '@elastic/eui/src/services';
11454
+ export const euiCollapsibleNavButtonWrapperStyles: (euiThemeContext: UseEuiTheme) => {
11455
+ euiCollapsibleNavButtonWrapper: import("@emotion/utils").SerializedStyles;
11456
+ euiCollapsibleNavButton: import("@emotion/utils").SerializedStyles;
11457
+ left: import("@emotion/utils").SerializedStyles;
11458
+ right: import("@emotion/utils").SerializedStyles;
11459
+ };
11460
+
11461
+ }
11462
+ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button' {
11463
+ import React from 'react';
11464
+ import { CommonProps } from '@elastic/eui/src/components/common';
11465
+ import { EuiButtonIconPropsForButton } from '@elastic/eui/src/components/button';
11466
+ export type EuiCollapsibleNavButtonProps = CommonProps & Partial<EuiButtonIconPropsForButton>;
11467
+ export const EuiCollapsibleNavButton: React.ForwardRefExoticComponent<CommonProps & Partial<EuiButtonIconPropsForButton> & React.RefAttributes<HTMLDivElement>>;
11468
+
11469
+ }
11470
+ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_button' {
11471
+ export { EuiCollapsibleNavButton } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button';
11472
+
11473
+ }
11474
+ declare module '@elastic/eui/src/themes/themes' {
11475
+ import { EuiThemeSystem } from '@elastic/eui/src/services';
11476
+ export interface EUI_THEME {
11477
+ text: string;
11478
+ value: string;
11479
+ provider?: EuiThemeSystem;
11480
+ }
11481
+ export const EUI_THEMES: EUI_THEME[];
11482
+ export const isDefaultTheme: (name: string) => boolean;
11483
+
11484
+ }
11485
+ declare module '@elastic/eui/src/themes' {
11486
+ export type { EUI_THEME } from '@elastic/eui/src/themes/themes';
11487
+ export { EUI_THEMES, isDefaultTheme } from '@elastic/eui/src/themes/themes';
11488
+ export { AMSTERDAM_NAME_KEY, EuiThemeAmsterdam } from '@elastic/eui/src/themes/amsterdam/theme';
11489
+ export * from '@elastic/eui/src/themes/amsterdam';
11490
+
11491
+ }
11492
+ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_body_footer.styles' {
10971
11493
  import { UseEuiTheme } from '@elastic/eui/src/services';
10972
11494
  export const hideScrollbars = "\n scrollbar-width: none; /* Firefox */\n\n &::-webkit-scrollbar {\n display: none; /* Chrome, Edge, & Safari */\n }\n";
10973
11495
  export const euiCollapsibleNavBodyStyles: {
@@ -12313,172 +12835,12 @@ declare module '@elastic/eui/src/components/comment_list' {
12313
12835
  export { EuiCommentList } from '@elastic/eui/src/components/comment_list/comment_list';
12314
12836
 
12315
12837
  }
12316
- declare module '@elastic/eui/src/components/control_bar/control_bar' {
12317
- import React, { ButtonHTMLAttributes, Component, HTMLAttributes, MouseEventHandler, Ref, ReactNode } from 'react';
12318
- import { EuiBreadcrumbsProps } from '@elastic/eui/src/components/breadcrumbs';
12319
- import { EuiButtonIconProps, EuiButtonProps } from '@elastic/eui/src/components/button';
12320
- import { CommonProps, ExclusiveUnion, PropsForAnchor, PropsForButton } from '@elastic/eui/src/components/common';
12321
- import { EuiIconProps } from '@elastic/eui/src/components/icon/icon';
12322
- /**
12323
- * Extends EuiButton excluding `size`. Requires `label` as the `children`.
12324
- */
12325
- export interface ButtonControl extends Omit<EuiButtonProps, 'size'> {
12326
- id: string;
12327
- label: ReactNode;
12328
- } type ButtonPropsForAnchor = PropsForAnchor<ButtonControl, {
12329
- buttonRef?: Ref<HTMLAnchorElement>;
12330
- }>; type ButtonPropsForButton = PropsForButton<ButtonControl, {
12331
- buttonRef?: Ref<HTMLButtonElement>;
12332
- }>; type ButtonControlProps = ExclusiveUnion<ButtonPropsForAnchor, ButtonPropsForButton> & {
12333
- controlType: 'button';
12334
- };
12335
- /**
12336
- * Creates a `button` visually styles as a tab.
12337
- * Requires `label` as the `children`.
12338
- * `onClick` must be provided to handle the content swapping.
12339
- */
12340
- export interface TabControl extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'id' | 'onClick'> {
12341
- controlType: 'tab';
12342
- id: string;
12343
- label: ReactNode;
12344
- onClick: MouseEventHandler<HTMLButtonElement>;
12345
- }
12346
- /**
12347
- * Extends EuiBreadcrumbs
12348
- */
12349
- export interface BreadcrumbControl extends EuiBreadcrumbsProps {
12350
- controlType: 'breadcrumbs';
12351
- id: string;
12352
- }
12353
- /**
12354
- * Simple div controlling color and size text output.
12355
- * Requires `label` as the `children`.
12356
- */
12357
- export interface TextControl extends CommonProps, HTMLAttributes<HTMLDivElement> {
12358
- controlType: 'text';
12359
- id: string;
12360
- text: ReactNode;
12361
- }
12362
- export interface SpacerControl {
12363
- controlType: 'spacer';
12364
- }
12365
- export interface DividerControl {
12366
- controlType: 'divider';
12367
- }
12368
- /**
12369
- * Custom props specific to the icon control type
12370
- */
12371
- export interface IconControlProps {
12372
- controlType: 'icon';
12373
- id: string;
12374
- iconType: string;
12375
- onClick?: MouseEventHandler;
12376
- }
12377
- /**
12378
- * Icon can extend EuiIcon
12379
- * Had to omit `onClick` as it's a valid prop of SVGElement
12380
- * Also omits `type` and `id` as these are also specific to icon control
12381
- */
12382
- export interface IconControlType extends Omit<EuiIconProps, 'type' | 'id' | 'onClick'>, IconControlProps {
12383
- }
12384
- /**
12385
- * Icon can extend EuiButtonIcon
12386
- * Also omits `iconType` and `id` as these are also specific to icon control
12387
- */
12388
- export interface IconButtonControlType extends Omit<EuiButtonIconProps, 'iconType' | 'id'>, IconControlProps {
12389
- }
12390
- export type IconControl = ExclusiveUnion<IconControlType, Omit<IconButtonControlType, 'size' | 'display'>>;
12391
- export type Control = ExclusiveUnion<ExclusiveUnion<ExclusiveUnion<ExclusiveUnion<ExclusiveUnion<ButtonControlProps, ExclusiveUnion<BreadcrumbControl, TabControl>>, TextControl>, IconControl>, DividerControl>, SpacerControl>;
12392
- /**
12393
- * @deprecated
12394
- */
12395
- export type EuiControlBarProps = HTMLAttributes<HTMLDivElement> & CommonProps & {
12396
- /**
12397
- * Show or hide the content area containing the `children`
12398
- */
12399
- showContent?: boolean;
12400
- /**
12401
- * An array of controls, actions, and layout spacers to display.
12402
- * Accepts `'button' | 'tab' | 'breadcrumbs' | 'text' | 'icon' | 'spacer' | 'divider'`
12403
- */
12404
- controls: Control[];
12405
- /**
12406
- * The default height of the content area.
12407
- */
12408
- size?: 's' | 'm' | 'l';
12409
- /**
12410
- * Customize the max height.
12411
- * Best when used with `size=l` as this will ensure the actual height equals the max height set.
12412
- */
12413
- maxHeight?: number | string;
12414
- /**
12415
- * Set the offset from the left side of the screen.
12416
- */
12417
- leftOffset?: number | string;
12418
- /**
12419
- * Set the offset from the left side of the screen.
12420
- */
12421
- rightOffset?: number | string;
12422
- /**
12423
- * The control bar is hidden on mobile by default. Use the `showOnMobile` prop to force it's display on mobile screens.
12424
- * You'll need to ensure that the content you place into the bar renders as expected on mobile.
12425
- */
12426
- showOnMobile?: boolean;
12427
- /**
12428
- * By default EuiControlBar will live in a portal, fixed position to the browser window.
12429
- * Change the position of the bar to live inside a container and be positioned against its parent.
12430
- */
12431
- position?: 'fixed' | 'relative' | 'absolute';
12432
- /**
12433
- * Optional class applied to the body used when `position = fixed`
12434
- */
12435
- bodyClassName?: string;
12436
- /**
12437
- * Customize the screen reader heading that helps users find this control. Default is "Page level controls".
12438
- */
12439
- landmarkHeading?: string;
12440
- };
12441
- interface EuiControlBarState {
12442
- selectedTab: string;
12443
- }
12444
- /**
12445
- * @deprecated - EuiControlBar is scheduled for deprecation due to low internal usage and high
12446
- * overlap with other existing EUI components. We recommend using EuiBottomBar instead,
12447
- * or copying this component into your own application for usage if necessary.
12448
- *
12449
- * The component will be permanently removed in December 2023.
12450
- */
12451
- export class EuiControlBar extends Component<EuiControlBarProps, EuiControlBarState> {
12452
- static defaultProps: {
12453
- leftOffset: number;
12454
- rightOffset: number;
12455
- position: string;
12456
- size: string;
12457
- showContent: boolean;
12458
- showOnMobile: boolean;
12459
- };
12460
- private bar;
12461
- componentDidMount(): void;
12462
- componentWillUnmount(): void;
12463
- state: {
12464
- selectedTab: string;
12465
- };
12466
- render(): React.JSX.Element;
12467
- }
12468
- export {};
12469
-
12470
- }
12471
- declare module '@elastic/eui/src/components/control_bar' {
12472
- export type { EuiControlBarProps } from '@elastic/eui/src/components/control_bar/control_bar';
12473
- export { EuiControlBar } from '@elastic/eui/src/components/control_bar/control_bar';
12474
-
12475
- }
12476
- declare module '@elastic/eui/src/components/list_group/list_group_item_extra_action.styles' {
12477
- import { UseEuiTheme } from '@elastic/eui/src/services';
12478
- export const euiListGroupItemExtraActionStyles: ({ euiTheme, }: UseEuiTheme) => {
12479
- euiListGroupItemExtraAction: import("@emotion/utils").SerializedStyles;
12480
- hoverStyles: import("@emotion/utils").SerializedStyles;
12481
- alwaysShow: import("@emotion/utils").SerializedStyles;
12838
+ declare module '@elastic/eui/src/components/list_group/list_group_item_extra_action.styles' {
12839
+ import { UseEuiTheme } from '@elastic/eui/src/services';
12840
+ export const euiListGroupItemExtraActionStyles: ({ euiTheme, }: UseEuiTheme) => {
12841
+ euiListGroupItemExtraAction: import("@emotion/utils").SerializedStyles;
12842
+ hoverStyles: import("@emotion/utils").SerializedStyles;
12843
+ alwaysShow: import("@emotion/utils").SerializedStyles;
12482
12844
  };
12483
12845
 
12484
12846
  }
@@ -16520,7 +16882,6 @@ declare module '@elastic/eui/src/components/filter_group/filter_button.styles' {
16520
16882
  text: {
16521
16883
  euiFilterButton__text: import("@emotion/utils").SerializedStyles;
16522
16884
  hasNotification: import("@emotion/utils").SerializedStyles;
16523
- euiFilterButton__textShift: import("@emotion/utils").SerializedStyles;
16524
16885
  };
16525
16886
  notification: {
16526
16887
  euiFilterButton__notification: import("@emotion/utils").SerializedStyles;
@@ -18419,171 +18780,6 @@ declare module '@elastic/eui/src/components/markdown_editor' {
18419
18780
  export { euiMarkdownLinkValidator } from '@elastic/eui/src/components/markdown_editor/plugins/markdown_link_validator';
18420
18781
  export type { EuiMarkdownLinkValidatorOptions } from '@elastic/eui/src/components/markdown_editor/plugins/markdown_link_validator';
18421
18782
 
18422
- }
18423
- declare module '@elastic/eui/src/components/notification/notification_event_meta' {
18424
- import { FunctionComponent, ReactNode, ReactElement } from 'react';
18425
- import { IconType } from '@elastic/eui/src/components/icon';
18426
- import { EuiBadgeProps } from '@elastic/eui/src/components/badge';
18427
- import { EuiContextMenuItem, EuiContextMenuItemProps } from '@elastic/eui/src/components/context_menu';
18428
- export type EuiNotificationEventMetaProps = {
18429
- id: string;
18430
- /**
18431
- * Type of event (e.g. "Alert", "Cloud", etc..). Shows inside a badge.
18432
- */
18433
- type: string;
18434
- /**
18435
- * A unique, human-friendly name for the event to be used in aria attributes (e.g. "alert-critical-01", "cloud-no-severity-12", etc..).
18436
- */
18437
- eventName: string;
18438
- /**
18439
- * Type of severity (e.g. "Critical", "Warning", etc..). Shows as a text after the `type` following the format "Alert: Critical".
18440
- */
18441
- severity?: string;
18442
- /**
18443
- * Accepts either our palette colors (primary, success ..etc) or a hex value `#FFFFFF`, `#000`.
18444
- */
18445
- badgeColor?: EuiBadgeProps['color'];
18446
- /**
18447
- * The icon used to visually represent this data type. Accepts any `EuiIcon IconType`.
18448
- */
18449
- iconType?: IconType;
18450
- /**
18451
- * Specify an `aria-label` for the icon.
18452
- * If no `aria-label` is passed we assume the icon is purely decorative.
18453
- */
18454
- iconAriaLabel?: string;
18455
- /**
18456
- * Indicates when the event was received.
18457
- */
18458
- time: ReactNode;
18459
- /**
18460
- * Necessary to trigger `onOpenContextMenu` from #EuiNotificationEvent
18461
- */
18462
- onOpenContextMenu?: () => Array<ReactElement<EuiContextMenuItemProps, typeof EuiContextMenuItem>>;
18463
- };
18464
- export const EuiNotificationEventMeta: FunctionComponent<EuiNotificationEventMetaProps>;
18465
-
18466
- }
18467
- declare module '@elastic/eui/src/components/notification/notification_event_messages' {
18468
- import { FunctionComponent } from 'react';
18469
- export type EuiNotificationEventMessagesProps = {
18470
- messages: string[];
18471
- /**
18472
- * A unique, human-friendly name for the event to be used in aria attributes (e.g. "alert-critical-01", "cloud-no-severity-12", etc..).
18473
- */
18474
- eventName: string;
18475
- };
18476
- export const EuiNotificationEventMessages: FunctionComponent<EuiNotificationEventMessagesProps>;
18477
-
18478
- }
18479
- declare module '@elastic/eui/src/components/notification/notification_event_read_button' {
18480
- import { FunctionComponent } from 'react';
18481
- import { EuiButtonIconProps } from '@elastic/eui/src/components/button';
18482
- export type EuiNotificationEventReadButtonProps = Omit<EuiButtonIconProps, 'iconType' | 'isDisabled' | 'isSelected' | 'size'> & {
18483
- id: string;
18484
- /**
18485
- * Shows an indicator of the read state of the event
18486
- */
18487
- isRead: boolean;
18488
- /**
18489
- * Applies an `onClick` handler to the `read` indicator.
18490
- */
18491
- onClick: () => void;
18492
- /**
18493
- * A unique, human-friendly name for the event to be used in aria attributes (e.g. "alert-critical-01", "cloud-no-severity-12", etc..).
18494
- */
18495
- eventName: string;
18496
- };
18497
- export const EuiNotificationEventReadButton: FunctionComponent<EuiNotificationEventReadButtonProps>;
18498
-
18499
- }
18500
- declare module '@elastic/eui/src/components/notification/notification_event_read_icon' {
18501
- import { FunctionComponent } from 'react';
18502
- import { EuiIconProps } from '@elastic/eui/src/components/icon';
18503
- export type EuiNotificationEventReadIconProps = Omit<EuiIconProps, 'type' | 'color' | 'size'> & {
18504
- id: string;
18505
- /**
18506
- * Shows an indicator of the read state of the event
18507
- */
18508
- isRead: boolean;
18509
- /**
18510
- * A unique, human-friendly name for the event to be used in aria attributes (e.g. "alert-critical-01", "cloud-no-severity-12", etc..).
18511
- */
18512
- eventName: string;
18513
- };
18514
- export const EuiNotificationEventReadIcon: FunctionComponent<EuiNotificationEventReadIconProps>;
18515
-
18516
- }
18517
- declare module '@elastic/eui/src/components/notification/notification_event' {
18518
- import { FunctionComponent, ReactElement, HTMLAttributes } from 'react';
18519
- import { CommonProps } from '@elastic/eui/src/components/common';
18520
- import { EuiNotificationEventMetaProps } from '@elastic/eui/src/components/notification/notification_event_meta';
18521
- import { EuiNotificationEventMessagesProps } from '@elastic/eui/src/components/notification/notification_event_messages';
18522
- import { EuiNotificationEventReadButtonProps } from '@elastic/eui/src/components/notification/notification_event_read_button';
18523
- import { EuiButtonEmptyProps } from '@elastic/eui/src/components/button';
18524
- import { EuiContextMenuItem, EuiContextMenuItemProps } from '@elastic/eui/src/components/context_menu';
18525
- export type EuiNotificationHeadingLevel = 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
18526
- /**
18527
- * @deprecated
18528
- */
18529
- export type EuiNotificationEventProps = Omit<EuiNotificationEventMetaProps, 'onOpenContextMenu' | 'onRead' | 'eventName' | 'id'> & Omit<EuiNotificationEventReadButtonProps, 'onClick' | 'color' | 'eventName' | 'isRead' | 'id'> & CommonProps & Omit<HTMLAttributes<HTMLDivElement>, 'title'> & {
18530
- /**
18531
- * A unique identifier
18532
- */
18533
- id: string;
18534
- /**
18535
- * The title of the event.
18536
- */
18537
- title: string;
18538
- /**
18539
- * The heading level of the title.
18540
- */
18541
- headingLevel?: EuiNotificationHeadingLevel;
18542
- /**
18543
- * Returns the `id` and applies an `onClick` handler to the title.
18544
- */
18545
- onClickTitle?: (id: string) => void;
18546
- /**
18547
- * The label of the primary action
18548
- */
18549
- primaryAction?: string;
18550
- /**
18551
- * Apply more props to the `primaryAction` button. See #EuiPrimaryActionProps.
18552
- */
18553
- primaryActionProps?: EuiButtonEmptyProps;
18554
- /**
18555
- * Returns the `id` and applies an `onClick` handler to the `primaryAction`.
18556
- */
18557
- onClickPrimaryAction?: (id: string) => void;
18558
- /**
18559
- * Notification messages as an array of strings. More than one message wraps in an accordion.
18560
- */
18561
- messages: EuiNotificationEventMessagesProps['messages'];
18562
- /**
18563
- * Shows an indicator of the read state of the event. Leave as `undefined` to hide the indicator.
18564
- */
18565
- isRead?: boolean | undefined;
18566
- /**
18567
- * Returns the `id` and `isRead` state. Applies an `onClick` handler to the `read` indicator.
18568
- */
18569
- onRead?: (id: string, isRead: boolean) => void;
18570
- /**
18571
- * Provided the `id` of the event must return an array of #EuiContextMenuItem elements.
18572
- */
18573
- onOpenContextMenu?: (id: string) => Array<ReactElement<EuiContextMenuItemProps, typeof EuiContextMenuItem>>;
18574
- };
18575
- /**
18576
- * @deprecated - EuiNotificationEvent is scheduled for deprecation due to low internal usage and high
18577
- * maintenance requirements. If necessary, we recommend copying this component into your own application.
18578
- *
18579
- * The component will be permanently removed in December 2023.
18580
- */
18581
- export const EuiNotificationEvent: FunctionComponent<EuiNotificationEventProps>;
18582
-
18583
- }
18584
- declare module '@elastic/eui/src/components/notification' {
18585
- export { EuiNotificationEvent } from '@elastic/eui/src/components/notification/notification_event';
18586
-
18587
18783
  }
18588
18784
  declare module '@elastic/eui/src/components/page/_restrict_width' {
18589
18785
  /**
@@ -19335,7 +19531,7 @@ declare module '@elastic/eui/src/components/tree_view/tree_view' {
19335
19531
  static contextType: React.Context<string>;
19336
19532
  context: ContextType<typeof EuiTreeViewContext>;
19337
19533
  isNested: boolean;
19338
- state: EuiTreeViewState;
19534
+ constructor(props: EuiTreeViewProps, context: ContextType<typeof EuiTreeViewContext>);
19339
19535
  componentDidUpdate(prevProps: EuiTreeViewProps): void;
19340
19536
  buttonRef: Array<HTMLButtonElement | undefined>;
19341
19537
  setButtonRef: (ref: HTMLButtonElement | HTMLAnchorElement | null, index: number) => void;
@@ -19393,7 +19589,7 @@ declare module '@elastic/eui/src/components/search_bar/query/date_format' {
19393
19589
  MONTH: GranularityType;
19394
19590
  YEAR: GranularityType;
19395
19591
  }
19396
- export const Granularity: GranularitiesType;
19592
+ export const Granularity: Readonly<GranularitiesType>;
19397
19593
  export const printIso8601: (value: MomentInput) => string;
19398
19594
  export const dateGranularity: (parsedDate: EuiMoment) => GranularityType;
19399
19595
  export const dateFormat: Readonly<{
@@ -19754,14 +19950,14 @@ declare module '@elastic/eui/src/components/search_bar/query/execute_ast' {
19754
19950
  flag?: string;
19755
19951
  match?: MatchType;
19756
19952
  operator?: any;
19757
- } const defaultIsClauseMatcher: <T_1>(item: T_1, clause: IsClause, explain?: Explain[] | undefined) => boolean;
19758
- export const createFilter: <T extends {}>(ast: _AST, defaultFields: string[] | undefined, isClauseMatcher?: <T_1>(item: T_1, clause: IsClause, explain?: Explain[] | undefined) => boolean, explain?: boolean) => (item: T) => boolean;
19953
+ } const defaultIsClauseMatcher: <T_1 extends object>(item: T_1, clause: IsClause, explain?: Explain[] | undefined) => boolean;
19954
+ export const createFilter: <T extends {}>(ast: _AST, defaultFields: string[] | undefined, isClauseMatcher?: <T_1 extends object>(item: T_1, clause: IsClause, explain?: Explain[] | undefined) => boolean, explain?: boolean) => (item: T) => boolean;
19759
19955
  interface Options {
19760
19956
  isClauseMatcher?: typeof defaultIsClauseMatcher;
19761
19957
  defaultFields?: string[];
19762
19958
  explain?: boolean;
19763
19959
  }
19764
- export function executeAst<T>(ast: _AST, items: T[], options?: Options): T[];
19960
+ export function executeAst<T extends object>(ast: _AST, items: T[], options?: Options): T[];
19765
19961
  export {};
19766
19962
 
19767
19963
  }
@@ -19875,7 +20071,7 @@ declare module '@elastic/eui/src/components/search_bar/query/query' {
19875
20071
  * information about why the objects matched the query (default to `false`, mainly/only useful for
19876
20072
  * debugging)
19877
20073
  */
19878
- static execute<T>(query: string | Query, items: T[], options?: {}): T[];
20074
+ static execute<T extends object>(query: string | Query, items: T[], options?: {}): T[];
19879
20075
  /**
19880
20076
  * Builds and returns an Elasticsearch query out this query. Options:
19881
20077
  *
@@ -21793,8 +21989,8 @@ declare module '@elastic/eui/src/components/basic_table/action_types' {
21793
21989
  import { EuiIconType } from '@elastic/eui/src/components/icon/icon';
21794
21990
  import { EuiButtonIconProps } from '@elastic/eui/src/components/button/button_icon/button_icon';
21795
21991
  import { EuiButtonEmptyProps } from '@elastic/eui/src/components/button/button_empty';
21796
- import { ExclusiveUnion } from '@elastic/eui/src/components/common'; type IconFunction<T> = (item: T) => EuiIconType; type ButtonColor = EuiButtonIconProps['color'] | EuiButtonEmptyProps['color']; type EuiButtonIconColorFunction<T> = (item: T) => ButtonColor;
21797
- export interface DefaultItemActionBase<T> {
21992
+ import { ExclusiveUnion } from '@elastic/eui/src/components/common'; type IconFunction<T extends object> = (item: T) => EuiIconType; type ButtonColor = EuiButtonIconProps['color'] | EuiButtonEmptyProps['color']; type EuiButtonIconColorFunction<T> = (item: T) => ButtonColor;
21993
+ export interface DefaultItemActionBase<T extends object> {
21798
21994
  /**
21799
21995
  * The display name of the action (will render as visible text if rendered within a collapsed menu)
21800
21996
  */
@@ -21820,14 +22016,14 @@ declare module '@elastic/eui/src/components/basic_table/action_types' {
21820
22016
  isPrimary?: boolean;
21821
22017
  'data-test-subj'?: string | ((item: T) => string);
21822
22018
  }
21823
- export interface DefaultItemEmptyButtonAction<T> extends DefaultItemActionBase<T> {
22019
+ export interface DefaultItemEmptyButtonAction<T extends object> extends DefaultItemActionBase<T> {
21824
22020
  /**
21825
22021
  * The type of action
21826
22022
  */
21827
22023
  type?: 'button';
21828
22024
  color?: EuiButtonEmptyProps['color'] | EuiButtonIconColorFunction<T>;
21829
22025
  }
21830
- export interface DefaultItemIconButtonAction<T> extends DefaultItemActionBase<T> {
22026
+ export interface DefaultItemIconButtonAction<T extends object> extends DefaultItemActionBase<T> {
21831
22027
  type: 'icon';
21832
22028
  /**
21833
22029
  * Associates an icon with the button
@@ -21838,7 +22034,7 @@ declare module '@elastic/eui/src/components/basic_table/action_types' {
21838
22034
  */
21839
22035
  color?: EuiButtonIconProps['color'] | EuiButtonIconColorFunction<T>;
21840
22036
  }
21841
- export type DefaultItemAction<T> = ExclusiveUnion<DefaultItemEmptyButtonAction<T>, DefaultItemIconButtonAction<T>>;
22037
+ export type DefaultItemAction<T extends object> = ExclusiveUnion<DefaultItemEmptyButtonAction<T>, DefaultItemIconButtonAction<T>>;
21842
22038
  export interface CustomItemAction<T> {
21843
22039
  /**
21844
22040
  * Allows rendering a totally custom action
@@ -21854,8 +22050,8 @@ declare module '@elastic/eui/src/components/basic_table/action_types' {
21854
22050
  enabled?: (item: T) => boolean;
21855
22051
  isPrimary?: boolean;
21856
22052
  }
21857
- export type Action<T> = DefaultItemAction<T> | CustomItemAction<T>;
21858
- export const isCustomItemAction: <T>(action: (import ("@elastic/eui/src/components/common").DisambiguateSet<DefaultItemEmptyButtonAction<T>, DefaultItemIconButtonAction<T>> & DefaultItemIconButtonAction<T>) | (import ("@elastic/eui/src/components/common").DisambiguateSet<DefaultItemIconButtonAction<T>, DefaultItemEmptyButtonAction<T>> & DefaultItemEmptyButtonAction<T>) | CustomItemAction<T>) => action is CustomItemAction<T>;
22053
+ export type Action<T extends object> = DefaultItemAction<T> | CustomItemAction<T>;
22054
+ export const isCustomItemAction: <T extends object>(action: (import ("@elastic/eui/src/components/common").DisambiguateSet<DefaultItemEmptyButtonAction<T>, DefaultItemIconButtonAction<T>> & DefaultItemIconButtonAction<T>) | (import ("@elastic/eui/src/components/common").DisambiguateSet<DefaultItemIconButtonAction<T>, DefaultItemEmptyButtonAction<T>> & DefaultItemEmptyButtonAction<T>) | CustomItemAction<T>) => action is CustomItemAction<T>;
21859
22055
  export const callWithItemIfFunction: <T>(item: T) => <U>(prop: U | ((item: T) => U)) => U;
21860
22056
  export {};
21861
22057
 
@@ -22011,7 +22207,7 @@ declare module '@elastic/eui/src/components/basic_table/table_types' {
22011
22207
  */
22012
22208
  readOnly?: boolean;
22013
22209
  }
22014
- export interface EuiTableActionsColumnType<T> {
22210
+ export interface EuiTableActionsColumnType<T extends object> {
22015
22211
  /**
22016
22212
  * An array of one of the objects: #DefaultItemAction or #CustomItemAction
22017
22213
  */
@@ -22085,26 +22281,26 @@ declare module '@elastic/eui/src/components/basic_table/collapsed_item_actions'
22085
22281
  import React from 'react';
22086
22282
  import { Action } from '@elastic/eui/src/components/basic_table/action_types';
22087
22283
  import { ItemIdResolved } from '@elastic/eui/src/components/basic_table/table_types';
22088
- export interface CollapsedItemActionsProps<T extends {}> {
22284
+ export interface CollapsedItemActionsProps<T extends object> {
22089
22285
  actions: Array<Action<T>>;
22090
22286
  item: T;
22091
22287
  itemId: ItemIdResolved;
22092
- actionEnabled: (action: Action<T>) => boolean;
22288
+ actionsDisabled: boolean;
22093
22289
  className?: string;
22094
22290
  }
22095
- export const CollapsedItemActions: <T extends {}>({ actions, itemId, item, actionEnabled, className, }: CollapsedItemActionsProps<T>) => React.JSX.Element;
22291
+ export const CollapsedItemActions: <T extends {}>({ actions, itemId, item, actionsDisabled, className, }: CollapsedItemActionsProps<T>) => React.JSX.Element;
22096
22292
 
22097
22293
  }
22098
22294
  declare module '@elastic/eui/src/components/basic_table/default_item_action' {
22099
22295
  import { ReactElement } from 'react';
22100
22296
  import { DefaultItemAction as Action } from '@elastic/eui/src/components/basic_table/action_types';
22101
- export interface DefaultItemActionProps<T> {
22297
+ export interface DefaultItemActionProps<T extends object> {
22102
22298
  action: Action<T>;
22103
22299
  enabled: boolean;
22104
22300
  item: T;
22105
22301
  className?: string;
22106
22302
  }
22107
- export const DefaultItemAction: <T>({ action, enabled, item, className, }: DefaultItemActionProps<T>) => ReactElement;
22303
+ export const DefaultItemAction: <T extends object>({ action, enabled, item, className, }: DefaultItemActionProps<T>) => ReactElement;
22108
22304
 
22109
22305
  }
22110
22306
  declare module '@elastic/eui/src/components/basic_table/custom_item_action' {
@@ -22124,14 +22320,14 @@ declare module '@elastic/eui/src/components/basic_table/expanded_item_actions' {
22124
22320
  import { ReactElement } from 'react';
22125
22321
  import { Action } from '@elastic/eui/src/components/basic_table/action_types';
22126
22322
  import { ItemIdResolved } from '@elastic/eui/src/components/basic_table/table_types';
22127
- export interface ExpandedItemActionsProps<T> {
22323
+ export interface ExpandedItemActionsProps<T extends object> {
22128
22324
  actions: Array<Action<T>>;
22129
22325
  itemId: ItemIdResolved;
22130
22326
  item: T;
22131
- actionEnabled: (action: Action<T>) => boolean;
22327
+ actionsDisabled: boolean;
22132
22328
  className?: string;
22133
22329
  }
22134
- export const ExpandedItemActions: <T extends {}>({ actions, itemId, item, actionEnabled, className, }: ExpandedItemActionsProps<T>) => ReactElement;
22330
+ export const ExpandedItemActions: <T extends {}>({ actions, itemId, item, actionsDisabled, className, }: ExpandedItemActionsProps<T>) => ReactElement;
22135
22331
 
22136
22332
  }
22137
22333
  declare module '@elastic/eui/src/components/basic_table/basic_table.styles' {
@@ -22152,7 +22348,7 @@ declare module '@elastic/eui/src/components/basic_table/basic_table' {
22152
22348
  [id: string]: ReactNode;
22153
22349
  }
22154
22350
  export function getItemId<T>(item: T, itemId?: ItemId<T>): any;
22155
- export type EuiBasicTableColumn<T> = EuiTableFieldDataColumnType<T> | EuiTableComputedColumnType<T> | EuiTableActionsColumnType<T>;
22351
+ export type EuiBasicTableColumn<T extends object> = EuiTableFieldDataColumnType<T> | EuiTableComputedColumnType<T> | EuiTableActionsColumnType<T>;
22156
22352
  export interface Criteria<T> {
22157
22353
  /**
22158
22354
  * If the shown items represents a page (slice) into a bigger set, this describes this page
@@ -22177,8 +22373,8 @@ declare module '@elastic/eui/src/components/basic_table/basic_table' {
22177
22373
  index: number;
22178
22374
  size: number;
22179
22375
  };
22180
- } type CellPropsCallback<T> = (item: T, column: EuiBasicTableColumn<T>) => object; type RowPropsCallback<T> = (item: T) => object;
22181
- interface BasicTableProps<T> extends Omit<EuiTableProps, 'onChange'> {
22376
+ } type CellPropsCallback<T extends object> = (item: T, column: EuiBasicTableColumn<T>) => object; type RowPropsCallback<T> = (item: T) => object;
22377
+ interface BasicTableProps<T extends object> extends Omit<EuiTableProps, 'onChange'> {
22182
22378
  /**
22183
22379
  * Describes how to extract a unique ID from each item, used for selections & expanded rows
22184
22380
  */
@@ -22257,16 +22453,16 @@ declare module '@elastic/eui/src/components/basic_table/basic_table' {
22257
22453
  * long text correctly.
22258
22454
  */
22259
22455
  textOnly?: boolean;
22260
- } type BasicTableWithPaginationProps<T> = Omit<BasicTableProps<T>, 'pagination' | 'onChange'> & {
22456
+ } type BasicTableWithPaginationProps<T extends object> = Omit<BasicTableProps<T>, 'pagination' | 'onChange'> & {
22261
22457
  pagination: Pagination;
22262
22458
  onChange?: (criteria: CriteriaWithPagination<T>) => void;
22263
22459
  };
22264
- export type EuiBasicTableProps<T> = CommonProps & Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> & (BasicTableProps<T> | BasicTableWithPaginationProps<T>);
22460
+ export type EuiBasicTableProps<T extends object> = CommonProps & Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> & (BasicTableProps<T> | BasicTableWithPaginationProps<T>);
22265
22461
  interface State<T> {
22266
22462
  initialSelectionRendered: boolean;
22267
22463
  selection: T[];
22268
22464
  }
22269
- export class EuiBasicTable<T = any> extends Component<EuiBasicTableProps<T>, State<T>> {
22465
+ export class EuiBasicTable<T extends object = any> extends Component<EuiBasicTableProps<T>, State<T>> {
22270
22466
  static contextType: React.Context<import ("@elastic/eui/src/components/provider/component_defaults").EuiComponentDefaults>;
22271
22467
  context: ContextType<typeof EuiComponentDefaultsContext>;
22272
22468
  static defaultProps: {
@@ -22274,7 +22470,7 @@ declare module '@elastic/eui/src/components/basic_table/basic_table' {
22274
22470
  tableLayout: string;
22275
22471
  noItemsMessage: React.JSX.Element;
22276
22472
  };
22277
- static getDerivedStateFromProps<T>(nextProps: EuiBasicTableProps<T>, prevState: State<T>): {
22473
+ static getDerivedStateFromProps<T extends object>(nextProps: EuiBasicTableProps<T>, prevState: State<T>): {
22278
22474
  selection: T[];
22279
22475
  } | null;
22280
22476
  constructor(props: EuiBasicTableProps<T>);
@@ -22344,7 +22540,7 @@ declare module '@elastic/eui/src/components/basic_table/in_memory_table' {
22344
22540
  } type Pagination = boolean | PaginationOptions;
22345
22541
  interface SortingOptions {
22346
22542
  sort: PropertySort;
22347
- } type Sorting = boolean | SortingOptions; type InMemoryTableProps<T> = Omit<EuiBasicTableProps<T>, 'pagination' | 'sorting' | 'noItemsMessage' | 'onChange'> & {
22543
+ } type Sorting = boolean | SortingOptions; type InMemoryTableProps<T extends object> = Omit<EuiBasicTableProps<T>, 'pagination' | 'sorting' | 'noItemsMessage' | 'onChange'> & {
22348
22544
  message?: ReactNode;
22349
22545
  /**
22350
22546
  * Configures #Search.
@@ -22398,12 +22594,12 @@ declare module '@elastic/eui/src/components/basic_table/in_memory_table' {
22398
22594
  * Insert content between the search bar and table components.
22399
22595
  */
22400
22596
  childrenBetween?: ReactNode;
22401
- }; type InMemoryTablePropsWithPagination<T> = Omit<InMemoryTableProps<T>, 'pagination' | 'onTableChange'> & {
22597
+ }; type InMemoryTablePropsWithPagination<T extends object> = Omit<InMemoryTableProps<T>, 'pagination' | 'onTableChange'> & {
22402
22598
  pagination: Pagination;
22403
22599
  onTableChange?: (nextValues: CriteriaWithPagination<T>) => void;
22404
22600
  };
22405
- export type EuiInMemoryTableProps<T> = CommonProps & (InMemoryTableProps<T> | InMemoryTablePropsWithPagination<T>);
22406
- interface State<T> {
22601
+ export type EuiInMemoryTableProps<T extends object = object> = CommonProps & (InMemoryTableProps<T> | InMemoryTablePropsWithPagination<T>);
22602
+ interface State<T extends object> {
22407
22603
  prevProps: {
22408
22604
  items: T[];
22409
22605
  sortName: ReactNode;
@@ -22420,7 +22616,7 @@ declare module '@elastic/eui/src/components/basic_table/in_memory_table' {
22420
22616
  allowNeutralSort: boolean;
22421
22617
  showPerPageOptions: boolean | undefined;
22422
22618
  }
22423
- export class EuiInMemoryTable<T> extends Component<EuiInMemoryTableProps<T>, State<T>> {
22619
+ export class EuiInMemoryTable<T extends object = object> extends Component<EuiInMemoryTableProps<T>, State<T>> {
22424
22620
  static contextType: React.Context<EuiComponentDefaults>;
22425
22621
  static defaultProps: {
22426
22622
  responsive: boolean;
@@ -22428,7 +22624,7 @@ declare module '@elastic/eui/src/components/basic_table/in_memory_table' {
22428
22624
  searchFormat: string;
22429
22625
  };
22430
22626
  tableRef: React.RefObject<EuiBasicTable>;
22431
- static getDerivedStateFromProps<T>(nextProps: EuiInMemoryTableProps<T>, prevState: State<T>): State<T> | null;
22627
+ static getDerivedStateFromProps<T extends object>(nextProps: EuiInMemoryTableProps<T>, prevState: State<T>): State<T> | null;
22432
22628
  constructor(props: EuiInMemoryTableProps<T>, context: EuiComponentDefaults);
22433
22629
  setSelection(newSelection: T[]): void;
22434
22630
  onTableChange: ({ page, sort }: Criteria<T>) => void;
@@ -22441,702 +22637,207 @@ declare module '@elastic/eui/src/components/basic_table/in_memory_table' {
22441
22637
  items: T[];
22442
22638
  totalItemCount: number;
22443
22639
  };
22444
- render(): React.JSX.Element;
22445
- }
22446
- export {};
22447
-
22448
- }
22449
- declare module '@elastic/eui/src/components/basic_table' {
22450
- export type { EuiBasicTableProps, EuiBasicTableColumn, Criteria, CriteriaWithPagination, } from '@elastic/eui/src/components/basic_table/basic_table';
22451
- export { EuiBasicTable } from '@elastic/eui/src/components/basic_table/basic_table';
22452
- export type { EuiInMemoryTableProps, Search } from '@elastic/eui/src/components/basic_table/in_memory_table';
22453
- export { EuiInMemoryTable } from '@elastic/eui/src/components/basic_table/in_memory_table';
22454
- export type { EuiTableDataType, EuiTableFooterProps, EuiTableFieldDataColumnType, EuiTableComputedColumnType, EuiTableActionsColumnType, EuiTableSelectionType, EuiTableSortingType, } from '@elastic/eui/src/components/basic_table/table_types';
22455
- export type { Pagination } from '@elastic/eui/src/components/basic_table/pagination_bar';
22456
- export type { DefaultItemAction, CustomItemAction } from '@elastic/eui/src/components/basic_table/action_types';
22457
-
22458
- }
22459
- declare module '@elastic/eui/src/components/text_diff/text_diff.styles' {
22460
- import { UseEuiTheme } from '@elastic/eui/src/services';
22461
- export const euiTextDiffStyles: ({ euiTheme }: UseEuiTheme) => {
22462
- euiTextDiff: import("@emotion/utils").SerializedStyles;
22463
- };
22464
-
22465
- }
22466
- declare module '@elastic/eui/src/components/text_diff/text_diff' {
22467
- import React, { HTMLAttributes, ElementType } from 'react';
22468
- import { CommonProps } from '@elastic/eui/src/components/common';
22469
- interface Props {
22470
- /**
22471
- * The starting string
22472
- */
22473
- beforeText: string;
22474
- /**
22475
- * The string used to compare against `beforeText`
22476
- */
22477
- afterText: string;
22478
- /**
22479
- * HTML element to wrap insertion differences.
22480
- * Defaults to `ins`
22481
- */
22482
- insertComponent?: ElementType;
22483
- /**
22484
- * HTML element to wrap deletion differences.
22485
- * Defaults to `del`
22486
- */
22487
- deleteComponent?: ElementType;
22488
- /**
22489
- * HTML element to wrap text with no differences.
22490
- * Doesn't wrap with anything by default
22491
- */
22492
- sameComponent?: ElementType;
22493
- /**
22494
- * Time in milliseconds. Passing a timeout of value '0' disables the timeout state
22495
- */
22496
- timeout?: number;
22497
- }
22498
- export type EuiTextDiffProps = CommonProps & Props & HTMLAttributes<HTMLElement>;
22499
- export const useEuiTextDiff: ({ className, insertComponent, deleteComponent, sameComponent, beforeText, afterText, timeout, ...rest }: EuiTextDiffProps) => (React.JSX.Element | [0 | 1 | -1, string][])[];
22500
- export {};
22501
-
22502
- }
22503
- declare module '@elastic/eui/src/components/text_diff' {
22504
- export type { EuiTextDiffProps } from '@elastic/eui/src/components/text_diff/text_diff';
22505
- export { useEuiTextDiff } from '@elastic/eui/src/components/text_diff/text_diff';
22506
-
22507
- }
22508
- declare module '@elastic/eui/src/components/toast/toast.styles' {
22509
- import { UseEuiTheme } from '@elastic/eui/src/services';
22510
- export const euiToastStyles: (euiThemeContext: UseEuiTheme) => {
22511
- euiToast: import("@emotion/utils").SerializedStyles;
22512
- euiToast__closeButton: import("@emotion/utils").SerializedStyles;
22513
- primary: import("@emotion/utils").SerializedStyles;
22514
- success: import("@emotion/utils").SerializedStyles;
22515
- warning: import("@emotion/utils").SerializedStyles;
22516
- danger: import("@emotion/utils").SerializedStyles;
22517
- };
22518
- export const euiToastHeaderStyles: (euiThemeContext: UseEuiTheme) => {
22519
- euiToastHeader: import("@emotion/utils").SerializedStyles;
22520
- euiToastHeader__icon: import("@emotion/utils").SerializedStyles;
22521
- euiToastHeader__title: import("@emotion/utils").SerializedStyles;
22522
- withBody: import("@emotion/utils").SerializedStyles;
22523
- };
22524
- export const euiToastBodyStyles: () => {
22525
- euiToastBody: import("@emotion/utils").SerializedStyles;
22526
- };
22527
-
22528
- }
22529
- declare module '@elastic/eui/src/components/toast/toast' {
22530
- import { FunctionComponent, HTMLAttributes, ReactNode } from 'react';
22531
- import { CommonProps } from '@elastic/eui/src/components/common';
22532
- import { IconType } from '@elastic/eui/src/components/icon';
22533
- export const COLORS: readonly ["primary", "success", "warning", "danger"]; type ToastColor = (typeof COLORS)[number];
22534
- export interface EuiToastProps extends CommonProps, Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
22535
- title?: ReactNode;
22536
- color?: ToastColor;
22537
- iconType?: IconType;
22538
- onClose?: () => void;
22539
- }
22540
- export const EuiToast: FunctionComponent<EuiToastProps>;
22541
- export {};
22542
-
22543
- }
22544
- declare module '@elastic/eui/src/services/time/timer' {
22545
- export class Timer {
22546
- id: any;
22547
- callback: undefined | (() => void);
22548
- finishTime: number | undefined;
22549
- timeRemaining: number | undefined;
22550
- constructor(callback: () => void, timeMs: number);
22551
- pause: () => void;
22552
- resume: () => void;
22553
- clear: () => void;
22554
- finish: () => void;
22555
- }
22556
-
22557
- }
22558
- declare module '@elastic/eui/src/services/time' {
22559
- export { Timer } from '@elastic/eui/src/services/time/timer';
22560
-
22561
- }
22562
- declare module '@elastic/eui/src/components/toast/global_toast_list.styles' {
22563
- import { UseEuiTheme } from '@elastic/eui/src/services';
22564
- export const euiGlobalToastListStyles: (euiThemeContext: UseEuiTheme) => {
22565
- /**
22566
- * 1. Allow list to expand as items are added, but cap it at the screen height.
22567
- * 2. Allow some padding for shadow
22568
- */
22569
- euiGlobalToastList: import("@emotion/utils").SerializedStyles;
22570
- right: import("@emotion/utils").SerializedStyles;
22571
- left: import("@emotion/utils").SerializedStyles;
22572
- euiGlobalToastListDismissButton: import("@emotion/utils").SerializedStyles;
22573
- };
22574
- export const euiGlobalToastListItemStyles: ({ euiTheme }: UseEuiTheme) => {
22575
- euiGlobalToastListItem: import("@emotion/utils").SerializedStyles;
22576
- dismissed: import("@emotion/utils").SerializedStyles;
22577
- };
22578
-
22579
- }
22580
- declare module '@elastic/eui/src/components/toast/global_toast_list_item' {
22581
- import { FunctionComponent, ReactElement } from 'react';
22582
- import { CommonProps } from '@elastic/eui/src/components/common';
22583
- export interface EuiGlobalToastListItemProps {
22584
- isDismissed?: boolean;
22585
- /**
22586
- * ReactElement to render as this component's content
22587
- */
22588
- children?: ReactElement;
22589
- }
22590
- export const EuiGlobalToastListItem: FunctionComponent<CommonProps & EuiGlobalToastListItemProps>;
22591
-
22592
- }
22593
- declare module '@elastic/eui/src/components/toast/global_toast_list' {
22594
- import { FunctionComponent, HTMLAttributes, ReactNode } from 'react';
22595
- import { CommonProps } from '@elastic/eui/src/components/common';
22596
- import { EuiToastProps } from '@elastic/eui/src/components/toast/toast'; type ToastSide = 'right' | 'left';
22597
- export const SIDES: ToastSide[];
22598
- export const TOAST_FADE_OUT_MS = 250;
22599
- export const CLEAR_ALL_TOASTS_THRESHOLD_DEFAULT = 3;
22600
- export interface Toast extends EuiToastProps {
22601
- id: string;
22602
- text?: ReactNode;
22603
- toastLifeTimeMs?: number;
22604
- }
22605
- export interface EuiGlobalToastListProps extends CommonProps {
22606
- toasts?: Toast[];
22607
- dismissToast: (toast: Toast) => void;
22608
- toastLifeTimeMs: number;
22609
- /**
22610
- * Determines which side of the browser window the toasts should appear
22611
- */
22612
- side?: ToastSide;
22613
- /**
22614
- * At this threshold, a "Clear all" button will display at the bottom of the toast list
22615
- * that allows users to dismiss all toasts in a single click.
22616
- *
22617
- * Defaults to `3`. Set to `0` to disable the button entirely.
22618
- */
22619
- showClearAllButtonAt?: number;
22620
- /**
22621
- * Optional callback that fires when a user clicks the "Clear all" button.
22622
- */
22623
- onClearAllToasts?: () => void;
22624
- /**
22625
- * Defaults to the [log role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/log_role).
22626
- *
22627
- * The [alert role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/alert_role)
22628
- * can be considered only if *all* toasts in this list will require immediate user attention.
22629
- * Several alerts at once, and unnecessary alerts, will a create bad screen reader user experience.
22630
- *
22631
- * @default log
22632
- */
22633
- role?: HTMLAttributes<HTMLElement>['role'];
22634
- }
22635
- export const EuiGlobalToastList: FunctionComponent<EuiGlobalToastListProps>;
22636
- export {};
22637
-
22638
- }
22639
- declare module '@elastic/eui/src/components/toast' {
22640
- export { EuiToast } from '@elastic/eui/src/components/toast/toast';
22641
- export type { EuiGlobalToastListProps, Toast as EuiGlobalToastListToast, } from '@elastic/eui/src/components/toast/global_toast_list';
22642
- export { EuiGlobalToastList } from '@elastic/eui/src/components/toast/global_toast_list';
22643
- export type { EuiGlobalToastListItemProps } from '@elastic/eui/src/components/toast/global_toast_list_item';
22644
- export { EuiGlobalToastListItem } from '@elastic/eui/src/components/toast/global_toast_list_item';
22645
-
22646
- }
22647
- declare module '@elastic/eui/src/components/resizable_container/types' {
22648
- import { KeyboardEvent, MouseEvent, TouchEvent } from 'react';
22649
- export type PanelModeType = 'collapsible' | 'main' | 'custom';
22650
- export type PanelPosition = 'first' | 'middle' | 'last';
22651
- export type PanelDirection = 'left' | 'right';
22652
- export type KeyMoveDirection = 'forward' | 'backward';
22653
- export type ResizeTrigger = 'pointer' | 'key';
22654
- export interface EuiResizablePanelController {
22655
- id: string;
22656
- size: number;
22657
- getSizePx: () => number;
22658
- minSize: string[];
22659
- mode?: PanelModeType;
22660
- isCollapsed: boolean;
22661
- prevSize: number;
22662
- position: PanelPosition;
22663
- }
22664
- export interface EuiResizableButtonController {
22665
- id: string;
22666
- ref: HTMLElement;
22667
- isDisabled: boolean;
22668
- isFocused: boolean;
22669
- }
22670
- export interface EuiResizableContainerRegistry {
22671
- panels: {
22672
- [key: string]: EuiResizablePanelController;
22673
- };
22674
- resizers: {
22675
- [key: string]: EuiResizableButtonController;
22676
- };
22677
- }
22678
- export type EuiResizableButtonMouseEvent = MouseEvent<HTMLButtonElement> | TouchEvent<HTMLButtonElement>;
22679
- export type EuiResizableButtonKeyEvent = KeyboardEvent<HTMLButtonElement>;
22680
- export interface EuiResizableContainerState {
22681
- isDragging: boolean;
22682
- currentResizerPos: number;
22683
- prevPanelId: string | null;
22684
- nextPanelId: string | null;
22685
- containerSize: number;
22686
- isHorizontal?: boolean;
22687
- panels: EuiResizableContainerRegistry['panels'];
22688
- resizers: EuiResizableContainerRegistry['resizers'];
22689
- }
22690
- export interface ActionToggleOptions {
22691
- direction: PanelDirection;
22692
- }
22693
- interface ActionReset {
22694
- type: 'EUI_RESIZABLE_RESET';
22695
- }
22696
- interface ActionInit {
22697
- type: 'EUI_RESIZABLE_CONTAINER_INIT';
22698
- payload: {
22699
- isHorizontal: boolean;
22700
- };
22701
- }
22702
- export interface ActionDragStart {
22703
- type: 'EUI_RESIZABLE_DRAG_START';
22704
- payload: {
22705
- prevPanelId: string;
22706
- nextPanelId: string;
22707
- position: number;
22708
- };
22709
- }
22710
- export interface ActionDragMove {
22711
- type: 'EUI_RESIZABLE_DRAG_MOVE';
22712
- payload: {
22713
- prevPanelId: string;
22714
- nextPanelId: string;
22715
- position: number;
22716
- };
22717
- }
22718
- export interface ActionKeyMove {
22719
- type: 'EUI_RESIZABLE_KEY_MOVE';
22720
- payload: {
22721
- prevPanelId: string;
22722
- nextPanelId: string;
22723
- direction: KeyMoveDirection;
22724
- };
22725
- }
22726
- export interface ActionResize {
22727
- type: 'EUI_RESIZABLE_RESIZE';
22728
- payload: {};
22729
- }
22730
- export interface ActionToggle {
22731
- type: 'EUI_RESIZABLE_TOGGLE';
22732
- payload: {
22733
- panelId: string;
22734
- options: ActionToggleOptions;
22735
- };
22736
- }
22737
- interface ActionRegisterPanel {
22738
- type: 'EUI_RESIZABLE_PANEL_REGISTER';
22739
- payload: {
22740
- panel: EuiResizablePanelController;
22741
- };
22742
- }
22743
- interface ActionDeregisterPanel {
22744
- type: 'EUI_RESIZABLE_PANEL_DEREGISTER';
22745
- payload: {
22746
- panelId: EuiResizablePanelController['id'];
22747
- };
22748
- }
22749
- interface ActionRegisterResizer {
22750
- type: 'EUI_RESIZABLE_BUTTON_REGISTER';
22751
- payload: {
22752
- resizer: EuiResizableButtonController;
22753
- };
22754
- }
22755
- interface ActionDeregisterResizer {
22756
- type: 'EUI_RESIZABLE_BUTTON_DEREGISTER';
22757
- payload: {
22758
- resizerId: EuiResizableButtonController['id'];
22759
- };
22760
- }
22761
- export interface ActionFocus {
22762
- type: 'EUI_RESIZABLE_BUTTON_FOCUS';
22763
- payload: {
22764
- resizerId: EuiResizableButtonController['id'];
22765
- };
22766
- }
22767
- interface ActionBlur {
22768
- type: 'EUI_RESIZABLE_BUTTON_BLUR';
22769
- }
22770
- interface ActionOnChange {
22771
- type: 'EUI_RESIZABLE_ONCHANGE';
22772
- }
22773
- export type EuiResizableContainerAction = ActionReset | ActionInit | ActionRegisterPanel | ActionDeregisterPanel | ActionRegisterResizer | ActionDeregisterResizer | ActionDragStart | ActionDragMove | ActionKeyMove | ActionResize | ActionToggle | ActionFocus | ActionBlur | ActionOnChange;
22774
- export interface EuiResizableContainerActions {
22775
- reset: () => void;
22776
- initContainer: (isHorizontal: boolean) => void;
22777
- registerPanel: (panel: EuiResizablePanelController) => void;
22778
- deregisterPanel: (panelId: EuiResizablePanelController['id']) => void;
22779
- registerResizer: (resizer: EuiResizableButtonController) => void;
22780
- deregisterResizer: (resizerId: EuiResizableButtonController['id']) => void;
22781
- dragStart: ({ prevPanelId, nextPanelId, position, }: ActionDragStart['payload']) => void;
22782
- dragMove: ({ prevPanelId, nextPanelId, position, }: ActionDragMove['payload']) => void;
22783
- keyMove: ({ prevPanelId, nextPanelId, direction, }: ActionKeyMove['payload']) => void;
22784
- resizerFocus: (resizerId: ActionFocus['payload']['resizerId']) => void;
22785
- resizerBlur: () => void;
22786
- togglePanel: (panelId: ActionToggle['payload']['panelId'], options: ActionToggle['payload']['options']) => void;
22787
- }
22788
- export {};
22789
-
22790
- }
22791
- declare module '@elastic/eui/src/components/resizable_container/context' {
22792
- import React from 'react';
22793
- import { EuiResizableContainerRegistry } from '@elastic/eui/src/components/resizable_container/types';
22794
- interface ContainerContextProps {
22795
- registry?: EuiResizableContainerRegistry;
22796
- }
22797
- interface ContextProviderProps extends Required<ContainerContextProps> {
22798
- /**
22799
- * ReactNode to render as this component's content
22800
- */
22801
- children: any;
22802
- }
22803
- export function EuiResizableContainerContextProvider({ children, registry, }: ContextProviderProps): React.JSX.Element;
22804
- export const useEuiResizableContainerContext: () => ContainerContextProps;
22805
- export {};
22806
-
22807
- }
22808
- declare module '@elastic/eui/src/components/resizable_container/resizable_button.styles' {
22809
- import { UseEuiTheme } from '@elastic/eui/src/services';
22810
- export const euiResizableButtonStyles: (euiThemeContext: UseEuiTheme) => {
22811
- euiResizableButton: import("@emotion/utils").SerializedStyles;
22812
- horizontal: import("@emotion/utils").SerializedStyles;
22813
- vertical: import("@emotion/utils").SerializedStyles;
22814
- alignIndicator: {
22815
- center: import("@emotion/utils").SerializedStyles;
22816
- start: import("@emotion/utils").SerializedStyles;
22817
- end: import("@emotion/utils").SerializedStyles;
22818
- };
22819
- };
22820
-
22821
- }
22822
- declare module '@elastic/eui/src/components/resizable_container/resizable_button' {
22823
- import React, { FunctionComponent, ButtonHTMLAttributes } from 'react';
22824
- import { CommonProps } from '@elastic/eui/src/components/common';
22825
- import { EuiResizableButtonController, EuiResizableButtonMouseEvent, EuiResizableButtonKeyEvent } from '@elastic/eui/src/components/resizable_container/types';
22826
- export type EuiResizableButtonProps = ButtonHTMLAttributes<HTMLButtonElement> & CommonProps & {
22827
- /**
22828
- * Defaults to displaying a resizer for vertical (y-axis) resizing.
22829
- * Set to `true` to display a resizer for horizontal (x-axis) resizing.
22830
- */
22831
- isHorizontal?: boolean;
22832
- /**
22833
- * Specify the alignment of the initial resize indicator. Defaults to `center`,
22834
- * but consider using `start` for extremely tall content that scrolls off-screen
22835
- */
22836
- alignIndicator?: 'center' | 'start' | 'end';
22837
- /**
22838
- * When disabled, the resizer button will be completely hidden
22839
- */
22840
- disabled?: boolean;
22841
- };
22842
- /**
22843
- * A generic button for indicating/facilitating resizable content,
22844
- * usable outside of the EuiResizableContainer context
22845
- */
22846
- export const EuiResizableButton: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & CommonProps & {
22847
- /**
22848
- * Defaults to displaying a resizer for vertical (y-axis) resizing.
22849
- * Set to `true` to display a resizer for horizontal (x-axis) resizing.
22850
- */
22851
- isHorizontal?: boolean | undefined;
22852
- /**
22853
- * Specify the alignment of the initial resize indicator. Defaults to `center`,
22854
- * but consider using `start` for extremely tall content that scrolls off-screen
22855
- */
22856
- alignIndicator?: "center" | "end" | "start" | undefined;
22857
- /**
22858
- * When disabled, the resizer button will be completely hidden
22859
- */
22860
- disabled?: boolean | undefined;
22861
- } & React.RefAttributes<HTMLButtonElement>>;
22862
- /**
22863
- * Resizer button specific to controlled EuiResizableContainer usage
22864
- */
22865
- export type EuiResizableButtonControls = Omit<EuiResizableButtonProps, 'onFocus'> & {
22866
- registration: {
22867
- register: (resizer: EuiResizableButtonController) => void;
22868
- deregister: (resizerId: EuiResizableButtonController['id']) => void;
22869
- };
22870
- onKeyDown: (e: EuiResizableButtonKeyEvent) => void;
22871
- onKeyUp: (e: EuiResizableButtonKeyEvent) => void;
22872
- onMouseDown: (e: EuiResizableButtonMouseEvent) => void;
22873
- onTouchStart: (e: EuiResizableButtonMouseEvent) => void;
22874
- onBlur: () => void;
22875
- onFocus: (id: string) => void;
22876
- };
22877
- export const EuiResizableButtonControlled: FunctionComponent<Partial<EuiResizableButtonControls>>;
22878
- export const euiResizableButtonWithControls: (controls: EuiResizableButtonControls) => (props: CommonProps) => React.JSX.Element;
22879
-
22880
- }
22881
- declare module '@elastic/eui/src/components/resizable_container/resizable_collapse_button.styles' {
22882
- import { UseEuiTheme } from '@elastic/eui/src/services';
22883
- export const euiResizableCollapseButtonStyles: (euiThemeContext: UseEuiTheme) => {
22884
- euiResizableCollapseButton: import("@emotion/utils").SerializedStyles;
22885
- collapsible: {
22886
- collapsible: import("@emotion/utils").SerializedStyles;
22887
- horizontal: {
22888
- after: import("@emotion/utils").SerializedStyles;
22889
- before: import("@emotion/utils").SerializedStyles;
22890
- middle: import("@emotion/utils").SerializedStyles;
22891
- top: import("@emotion/utils").SerializedStyles;
22892
- bottom: import("@emotion/utils").SerializedStyles;
22893
- readonly left: import("@emotion/utils").SerializedStyles;
22894
- readonly right: import("@emotion/utils").SerializedStyles;
22895
- };
22896
- vertical: {
22897
- after: import("@emotion/utils").SerializedStyles;
22898
- before: import("@emotion/utils").SerializedStyles;
22899
- middle: import("@emotion/utils").SerializedStyles;
22900
- left: import("@emotion/utils").SerializedStyles;
22901
- right: import("@emotion/utils").SerializedStyles;
22902
- readonly top: import("@emotion/utils").SerializedStyles;
22903
- readonly bottom: import("@emotion/utils").SerializedStyles;
22904
- };
22905
- };
22906
- collapsed: {
22907
- collapsed: import("@emotion/utils").SerializedStyles;
22908
- horizontal: import("@emotion/utils").SerializedStyles;
22909
- vertical: import("@emotion/utils").SerializedStyles;
22910
- horizontalPositions: {
22911
- top: import("@emotion/utils").SerializedStyles;
22912
- bottom: import("@emotion/utils").SerializedStyles;
22913
- middle: import("@emotion/utils").SerializedStyles;
22914
- left: import("@emotion/utils").SerializedStyles;
22915
- right: import("@emotion/utils").SerializedStyles;
22916
- };
22917
- verticalPositions: {
22918
- left: import("@emotion/utils").SerializedStyles;
22919
- right: import("@emotion/utils").SerializedStyles;
22920
- middle: import("@emotion/utils").SerializedStyles;
22921
- top: import("@emotion/utils").SerializedStyles;
22922
- bottom: import("@emotion/utils").SerializedStyles;
22923
- };
22924
- };
22925
- };
22926
-
22927
- }
22928
- declare module '@elastic/eui/src/components/resizable_container/resizable_collapse_button' {
22929
- import { FunctionComponent } from 'react';
22930
- import { EuiButtonIconPropsForButton } from '@elastic/eui/src/components/button';
22931
- import { ToggleOptions } from '@elastic/eui/src/components/resizable_container/resizable_panel';
22932
- import { EuiResizableContainerProps } from '@elastic/eui/src/components/resizable_container/resizable_container';
22933
- export type EuiResizableCollapseButtonProps = Omit<EuiButtonIconPropsForButton, 'iconType'> & {
22934
- /**
22935
- * Position of the toggle button.
22936
- * Enums based on the `direction` of the EuiResizableContainer
22937
- */
22938
- internalPosition?: ToggleOptions['position'];
22939
- /**
22940
- * Position of the toggle button.
22941
- * Enums based on the `direction` of the EuiResizableContainer
22942
- */
22943
- externalPosition?: 'before' | 'after';
22944
- /**
22945
- * Same direction derived from EuiResizableContainer
22946
- */
22947
- direction?: EuiResizableContainerProps['direction'];
22948
- isVisible?: boolean;
22949
- isCollapsed?: boolean;
22950
- };
22951
- export const EuiResizableCollapseButton: FunctionComponent<EuiResizableCollapseButtonProps>;
22952
-
22953
- }
22954
- declare module '@elastic/eui/src/components/resizable_container/resizable_panel.styles' {
22955
- import { UseEuiTheme } from '@elastic/eui/src/services';
22956
- export const euiResizablePanelStyles: (euiThemeContext: UseEuiTheme) => {
22957
- euiResizablePanel: import("@emotion/utils").SerializedStyles;
22958
- collapsed: import("@emotion/utils").SerializedStyles;
22959
- paddingSizes: {
22960
- none: null;
22961
- xs: import("@emotion/utils").SerializedStyles;
22962
- s: import("@emotion/utils").SerializedStyles;
22963
- m: import("@emotion/utils").SerializedStyles;
22964
- l: import("@emotion/utils").SerializedStyles;
22965
- xl: import("@emotion/utils").SerializedStyles;
22966
- };
22967
- };
22968
- export const euiResizablePanelContentStyles: (euiThemeContext: UseEuiTheme) => {
22969
- euiResizablePanel__content: import("@emotion/utils").SerializedStyles;
22970
- scrollable: import("@emotion/utils").SerializedStyles;
22971
- collapsedChildren: import("@emotion/utils").SerializedStyles;
22972
- horizontal: {
22973
- collapsed: import("@emotion/utils").SerializedStyles;
22974
- hasCollapsibleButton: import("@emotion/utils").SerializedStyles;
22975
- };
22976
- vertical: {
22977
- collapsed: import("@emotion/utils").SerializedStyles;
22978
- hasCollapsibleButton: import("@emotion/utils").SerializedStyles;
22979
- };
22980
- };
22981
-
22982
- }
22983
- declare module '@elastic/eui/src/components/resizable_container/resizable_panel' {
22984
- import React, { CSSProperties, ReactNode, FunctionComponent, HTMLAttributes } from 'react';
22985
- import { CommonProps } from '@elastic/eui/src/components/common';
22986
- import { PanelPaddingSize, _EuiPanelProps } from '@elastic/eui/src/components/panel/panel';
22987
- import { EuiResizablePanelController, ActionToggleOptions, PanelModeType } from '@elastic/eui/src/components/resizable_container/types';
22988
- export interface ToggleOptions {
22989
- 'data-test-subj'?: string;
22990
- className?: string;
22991
- /**
22992
- * Position of the toggle button.
22993
- * Enums based on the `direction` of the EuiResizableContainer
22994
- */
22995
- position?: 'top' | 'middle' | 'bottom' | 'left' | 'right';
22996
- }
22997
- export type ModeOptions = PanelModeType | [PanelModeType, Partial<ToggleOptions>];
22998
- export type ToggleCollapseCallback = (panelId: EuiResizablePanelController['id'], options: ActionToggleOptions) => void;
22999
- export const getModeType: (mode?: ModeOptions | undefined) => PanelModeType | undefined;
23000
- export const getToggleOptions: (mode?: ModeOptions | undefined) => {
23001
- 'data-test-subj': string | undefined;
23002
- className: string | null;
23003
- position: string;
23004
- };
23005
- export interface EuiResizablePanelControls {
23006
- isHorizontal: boolean;
23007
- registration: {
23008
- register: (panel: EuiResizablePanelController) => void;
23009
- deregister: (panelId: EuiResizablePanelController['id']) => void;
23010
- };
23011
- /**
23012
- * #ToggleCollapseCallback
23013
- */
23014
- onToggleCollapsed?: ToggleCollapseCallback;
23015
- onToggleCollapsedInternal: ToggleCollapseCallback;
22640
+ render(): React.JSX.Element;
23016
22641
  }
23017
- export interface EuiResizablePanelProps extends _EuiPanelProps, CommonProps, Partial<EuiResizablePanelControls> {
23018
- /**
23019
- * Specify a desired minimum panel size in pixels or percents,
23020
- * for example "300px" or "30%"
23021
- * The actual minimum size will be calculated,
23022
- * using the larger of this prop and the panelProps.paddingSize
23023
- */
23024
- minSize?: string;
23025
- /**
23026
- * Specify id of panel if you want to track panel size in "onPanelWidthChange" callback
23027
- */
23028
- id?: string;
23029
- /**
23030
- * Initial size of the panel in percents
23031
- * Specify this prop if you don't need to handle the panel size from outside
23032
- */
23033
- initialSize?: number;
23034
- /**
23035
- * Size of the panel in percents.
23036
- * Specify this prop if you want to control the size from outside, the panel will ignore the "initialSize"
23037
- */
23038
- size?: number;
22642
+ export {};
22643
+
22644
+ }
22645
+ declare module '@elastic/eui/src/components/basic_table' {
22646
+ export type { EuiBasicTableProps, EuiBasicTableColumn, Criteria, CriteriaWithPagination, } from '@elastic/eui/src/components/basic_table/basic_table';
22647
+ export { EuiBasicTable } from '@elastic/eui/src/components/basic_table/basic_table';
22648
+ export type { EuiInMemoryTableProps, Search } from '@elastic/eui/src/components/basic_table/in_memory_table';
22649
+ export { EuiInMemoryTable } from '@elastic/eui/src/components/basic_table/in_memory_table';
22650
+ export type { EuiTableDataType, EuiTableFooterProps, EuiTableFieldDataColumnType, EuiTableComputedColumnType, EuiTableActionsColumnType, EuiTableSelectionType, EuiTableSortingType, } from '@elastic/eui/src/components/basic_table/table_types';
22651
+ export type { Pagination } from '@elastic/eui/src/components/basic_table/pagination_bar';
22652
+ export type { DefaultItemAction, CustomItemAction } from '@elastic/eui/src/components/basic_table/action_types';
22653
+
22654
+ }
22655
+ declare module '@elastic/eui/src/components/text_diff/text_diff.styles' {
22656
+ import { UseEuiTheme } from '@elastic/eui/src/services';
22657
+ export const euiTextDiffStyles: ({ euiTheme }: UseEuiTheme) => {
22658
+ euiTextDiff: import("@emotion/utils").SerializedStyles;
22659
+ };
22660
+
22661
+ }
22662
+ declare module '@elastic/eui/src/components/text_diff/text_diff' {
22663
+ import React, { HTMLAttributes, ElementType } from 'react';
22664
+ import { CommonProps } from '@elastic/eui/src/components/common';
22665
+ interface Props {
23039
22666
  /**
23040
- * Add Eui scroll and overflow for the panel
22667
+ * The starting string
23041
22668
  */
23042
- scrollable?: boolean;
23043
- mode?: ModeOptions;
22669
+ beforeText: string;
23044
22670
  /**
23045
- * ReactNode to render as this component's content
22671
+ * The string used to compare against `beforeText`
23046
22672
  */
23047
- children: ReactNode;
22673
+ afterText: string;
23048
22674
  /**
23049
- * Custom CSS properties applied to the wrapping `.euiResizablePanel` div
22675
+ * HTML element to wrap insertion differences.
22676
+ * Defaults to `ins`
23050
22677
  */
23051
- style?: CSSProperties;
22678
+ insertComponent?: ElementType;
23052
22679
  /**
23053
- * tabIndex={0} provides full keyboard access when content overflows `<EuiResizablePanel />`
22680
+ * HTML element to wrap deletion differences.
22681
+ * Defaults to `del`
23054
22682
  */
23055
- tabIndex?: number;
22683
+ deleteComponent?: ElementType;
23056
22684
  /**
23057
- * Props to add to the wrapping `.euiResizablePanel` div
22685
+ * HTML element to wrap text with no differences.
22686
+ * Doesn't wrap with anything by default
23058
22687
  */
23059
- wrapperProps?: CommonProps & HTMLAttributes<HTMLDivElement>;
22688
+ sameComponent?: ElementType;
23060
22689
  /**
23061
- * Padding to add directly to the wrapping `.euiResizablePanel` div
23062
- * Gives space around the actual panel.
22690
+ * Time in milliseconds. Passing a timeout of value '0' disables the timeout state
23063
22691
  */
23064
- wrapperPadding?: PanelPaddingSize;
22692
+ timeout?: number;
23065
22693
  }
23066
- export const EuiResizablePanel: FunctionComponent<EuiResizablePanelProps>;
23067
- export function euiResizablePanelWithControls(controls: EuiResizablePanelControls): (props: EuiResizablePanelProps) => React.JSX.Element;
22694
+ export type EuiTextDiffProps = CommonProps & Props & HTMLAttributes<HTMLElement>;
22695
+ export const useEuiTextDiff: ({ className, insertComponent, deleteComponent, sameComponent, beforeText, afterText, timeout, ...rest }: EuiTextDiffProps) => (React.JSX.Element | [0 | 1 | -1, string][])[];
22696
+ export {};
23068
22697
 
23069
22698
  }
23070
- declare module '@elastic/eui/src/components/resizable_container/helpers' {
23071
- import { MouseEvent as ReactMouseEvent, TouchEvent as ReactTouchEvent } from 'react';
23072
- import { EuiResizableContainerRegistry, EuiResizableContainerState, EuiResizableContainerActions } from '@elastic/eui/src/components/resizable_container/types';
23073
- interface Params {
23074
- initialState: EuiResizableContainerState;
23075
- containerRef: React.RefObject<HTMLDivElement>;
23076
- onPanelWidthChange?: ({}: {
23077
- [key: string]: number;
23078
- }) => any;
23079
- }
23080
- export const pxToPercent: (proportion: number, whole: number) => number;
23081
- export const sizesOnly: (panelObject: EuiResizableContainerRegistry['panels']) => {
23082
- [key: string]: number;
22699
+ declare module '@elastic/eui/src/components/text_diff' {
22700
+ export type { EuiTextDiffProps } from '@elastic/eui/src/components/text_diff/text_diff';
22701
+ export { useEuiTextDiff } from '@elastic/eui/src/components/text_diff/text_diff';
22702
+
22703
+ }
22704
+ declare module '@elastic/eui/src/components/toast/toast.styles' {
22705
+ import { UseEuiTheme } from '@elastic/eui/src/services';
22706
+ export const euiToastStyles: (euiThemeContext: UseEuiTheme) => {
22707
+ euiToast: import("@emotion/utils").SerializedStyles;
22708
+ euiToast__closeButton: import("@emotion/utils").SerializedStyles;
22709
+ primary: import("@emotion/utils").SerializedStyles;
22710
+ success: import("@emotion/utils").SerializedStyles;
22711
+ warning: import("@emotion/utils").SerializedStyles;
22712
+ danger: import("@emotion/utils").SerializedStyles;
23083
22713
  };
23084
- export const getPanelMinSize: (panelMinSize: string[], containerSize: number) => number;
23085
- export const getPosition: (event: ReactMouseEvent | ReactTouchEvent, isHorizontal: boolean) => number;
23086
- export const useContainerCallbacks: ({ initialState, containerRef, onPanelWidthChange, }: Params) => [EuiResizableContainerActions, EuiResizableContainerState];
22714
+ export const euiToastHeaderStyles: (euiThemeContext: UseEuiTheme) => {
22715
+ euiToastHeader: import("@emotion/utils").SerializedStyles;
22716
+ euiToastHeader__icon: import("@emotion/utils").SerializedStyles;
22717
+ euiToastHeader__title: import("@emotion/utils").SerializedStyles;
22718
+ withBody: import("@emotion/utils").SerializedStyles;
22719
+ };
22720
+ export const euiToastBodyStyles: () => {
22721
+ euiToastBody: import("@emotion/utils").SerializedStyles;
22722
+ };
22723
+
22724
+ }
22725
+ declare module '@elastic/eui/src/components/toast/toast' {
22726
+ import { FunctionComponent, HTMLAttributes, ReactNode } from 'react';
22727
+ import { CommonProps } from '@elastic/eui/src/components/common';
22728
+ import { IconType } from '@elastic/eui/src/components/icon';
22729
+ export const COLORS: readonly ["primary", "success", "warning", "danger"]; type ToastColor = (typeof COLORS)[number];
22730
+ export interface EuiToastProps extends CommonProps, Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
22731
+ title?: ReactNode;
22732
+ color?: ToastColor;
22733
+ iconType?: IconType;
22734
+ onClose?: () => void;
22735
+ }
22736
+ export const EuiToast: FunctionComponent<EuiToastProps>;
23087
22737
  export {};
23088
22738
 
23089
22739
  }
23090
- declare module '@elastic/eui/src/components/resizable_container/resizable_container.styles' {
23091
- export const euiResizableContainerStyles: () => {
23092
- euiResizableContainer: import("@emotion/utils").SerializedStyles;
23093
- horizontal: import("@emotion/utils").SerializedStyles;
23094
- vertical: import("@emotion/utils").SerializedStyles;
22740
+ declare module '@elastic/eui/src/services/time/timer' {
22741
+ export class Timer {
22742
+ id: any;
22743
+ callback: undefined | (() => void);
22744
+ finishTime: number | undefined;
22745
+ timeRemaining: number | undefined;
22746
+ constructor(callback: () => void, timeMs: number);
22747
+ pause: () => void;
22748
+ resume: () => void;
22749
+ clear: () => void;
22750
+ finish: () => void;
22751
+ }
22752
+
22753
+ }
22754
+ declare module '@elastic/eui/src/services/time' {
22755
+ export { Timer } from '@elastic/eui/src/services/time/timer';
22756
+
22757
+ }
22758
+ declare module '@elastic/eui/src/components/toast/global_toast_list.styles' {
22759
+ import { UseEuiTheme } from '@elastic/eui/src/services';
22760
+ export const euiGlobalToastListStyles: (euiThemeContext: UseEuiTheme) => {
22761
+ /**
22762
+ * 1. Allow list to expand as items are added, but cap it at the screen height.
22763
+ * 2. Allow some padding for shadow
22764
+ */
22765
+ euiGlobalToastList: import("@emotion/utils").SerializedStyles;
22766
+ right: import("@emotion/utils").SerializedStyles;
22767
+ left: import("@emotion/utils").SerializedStyles;
22768
+ euiGlobalToastListDismissButton: import("@emotion/utils").SerializedStyles;
22769
+ };
22770
+ export const euiGlobalToastListItemStyles: ({ euiTheme }: UseEuiTheme) => {
22771
+ euiGlobalToastListItem: import("@emotion/utils").SerializedStyles;
22772
+ dismissed: import("@emotion/utils").SerializedStyles;
23095
22773
  };
23096
22774
 
23097
22775
  }
23098
- declare module '@elastic/eui/src/components/resizable_container/resizable_container' {
23099
- import { ReactNode, CSSProperties, FunctionComponent, HTMLAttributes, ComponentType } from 'react';
22776
+ declare module '@elastic/eui/src/components/toast/global_toast_list_item' {
22777
+ import { FunctionComponent, ReactElement } from 'react';
23100
22778
  import { CommonProps } from '@elastic/eui/src/components/common';
23101
- import { EuiResizableButtonProps } from '@elastic/eui/src/components/resizable_container/resizable_button';
23102
- import { EuiResizablePanelProps, ToggleCollapseCallback } from '@elastic/eui/src/components/resizable_container/resizable_panel';
23103
- import { EuiResizableContainerActions, ResizeTrigger } from '@elastic/eui/src/components/resizable_container/types';
23104
- export interface EuiResizableContainerProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'>, CommonProps {
22779
+ export interface EuiGlobalToastListItemProps {
22780
+ isDismissed?: boolean;
23105
22781
  /**
23106
- * Specify the container direction
22782
+ * ReactElement to render as this component's content
23107
22783
  */
23108
- direction?: 'vertical' | 'horizontal';
22784
+ children?: ReactElement;
22785
+ }
22786
+ export const EuiGlobalToastListItem: FunctionComponent<CommonProps & EuiGlobalToastListItemProps>;
22787
+
22788
+ }
22789
+ declare module '@elastic/eui/src/components/toast/global_toast_list' {
22790
+ import { FunctionComponent, HTMLAttributes, ReactNode } from 'react';
22791
+ import { CommonProps } from '@elastic/eui/src/components/common';
22792
+ import { EuiToastProps } from '@elastic/eui/src/components/toast/toast'; type ToastSide = 'right' | 'left';
22793
+ export const SIDES: ToastSide[];
22794
+ export const TOAST_FADE_OUT_MS = 250;
22795
+ export const CLEAR_ALL_TOASTS_THRESHOLD_DEFAULT = 3;
22796
+ export interface Toast extends EuiToastProps {
22797
+ id: string;
22798
+ text?: ReactNode;
22799
+ toastLifeTimeMs?: number;
22800
+ }
22801
+ export interface EuiGlobalToastListProps extends CommonProps {
22802
+ toasts?: Toast[];
22803
+ dismissToast: (toast: Toast) => void;
22804
+ toastLifeTimeMs: number;
23109
22805
  /**
23110
- * Pure function which accepts Panel and Resizer components in arguments
23111
- * and returns a component tree
22806
+ * Determines which side of the browser window the toasts should appear
23112
22807
  */
23113
- children: (Panel: ComponentType<EuiResizablePanelProps>, Resizer: ComponentType<EuiResizableButtonProps>, actions: Partial<EuiResizableContainerActions>) => ReactNode;
22808
+ side?: ToastSide;
23114
22809
  /**
23115
- * Pure function which accepts an object where keys are IDs of panels, which sizes were changed,
23116
- * and values are actual sizes in percents
22810
+ * At this threshold, a "Clear all" button will display at the bottom of the toast list
22811
+ * that allows users to dismiss all toasts in a single click.
22812
+ *
22813
+ * Defaults to `3`. Set to `0` to disable the button entirely.
23117
22814
  */
23118
- onPanelWidthChange?: ({}: {
23119
- [key: string]: number;
23120
- }) => void;
23121
- onToggleCollapsed?: ToggleCollapseCallback;
22815
+ showClearAllButtonAt?: number;
23122
22816
  /**
23123
- * Called when resizing starts
22817
+ * Optional callback that fires when a user clicks the "Clear all" button.
23124
22818
  */
23125
- onResizeStart?: (trigger: ResizeTrigger) => void;
22819
+ onClearAllToasts?: () => void;
23126
22820
  /**
23127
- * Called when resizing ends
22821
+ * Defaults to the [log role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/log_role).
22822
+ *
22823
+ * The [alert role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/alert_role)
22824
+ * can be considered only if *all* toasts in this list will require immediate user attention.
22825
+ * Several alerts at once, and unnecessary alerts, will a create bad screen reader user experience.
22826
+ *
22827
+ * @default log
23128
22828
  */
23129
- onResizeEnd?: () => void;
23130
- style?: CSSProperties;
22829
+ role?: HTMLAttributes<HTMLElement>['role'];
23131
22830
  }
23132
- export const EuiResizableContainer: FunctionComponent<EuiResizableContainerProps>;
22831
+ export const EuiGlobalToastList: FunctionComponent<EuiGlobalToastListProps>;
22832
+ export {};
23133
22833
 
23134
22834
  }
23135
- declare module '@elastic/eui/src/components/resizable_container' {
23136
- export type { EuiResizableContainerProps } from '@elastic/eui/src/components/resizable_container/resizable_container';
23137
- export { EuiResizableContainer } from '@elastic/eui/src/components/resizable_container/resizable_container';
23138
- export type { EuiResizableButtonProps } from '@elastic/eui/src/components/resizable_container/resizable_button';
23139
- export { EuiResizableButton } from '@elastic/eui/src/components/resizable_container/resizable_button';
22835
+ declare module '@elastic/eui/src/components/toast' {
22836
+ export { EuiToast } from '@elastic/eui/src/components/toast/toast';
22837
+ export type { EuiGlobalToastListProps, Toast as EuiGlobalToastListToast, } from '@elastic/eui/src/components/toast/global_toast_list';
22838
+ export { EuiGlobalToastList } from '@elastic/eui/src/components/toast/global_toast_list';
22839
+ export type { EuiGlobalToastListItemProps } from '@elastic/eui/src/components/toast/global_toast_list_item';
22840
+ export { EuiGlobalToastListItem } from '@elastic/eui/src/components/toast/global_toast_list_item';
23140
22841
 
23141
22842
  }
23142
22843
  declare module '@elastic/eui/src/components' {
@@ -23160,7 +22861,6 @@ declare module '@elastic/eui/src/components' {
23160
22861
  export * from '@elastic/eui/src/components/comment_list';
23161
22862
  export * from '@elastic/eui/src/components/context';
23162
22863
  export * from '@elastic/eui/src/components/context_menu';
23163
- export * from '@elastic/eui/src/components/control_bar';
23164
22864
  export * from '@elastic/eui/src/components/copy';
23165
22865
  export * from '@elastic/eui/src/components/datagrid';
23166
22866
  export * from '@elastic/eui/src/components/date_picker';
@@ -23194,7 +22894,6 @@ declare module '@elastic/eui/src/components' {
23194
22894
  export * from '@elastic/eui/src/components/mark';
23195
22895
  export * from '@elastic/eui/src/components/modal';
23196
22896
  export * from '@elastic/eui/src/components/observer/mutation_observer';
23197
- export * from '@elastic/eui/src/components/notification';
23198
22897
  export * from '@elastic/eui/src/components/outside_click_detector';
23199
22898
  export * from '@elastic/eui/src/components/overlay_mask';
23200
22899
  export * from '@elastic/eui/src/components/page';
@@ -28736,6 +28435,7 @@ declare module '@elastic/eui' {
28736
28435
  "euiBasicTable.selectThisRow": any;
28737
28436
  "euiBasicTable.tablePagination": any;
28738
28437
  "euiCollapsedItemActions.allActions": any;
28438
+ "euiCollapsedItemActions.allActionsDisabled": any;
28739
28439
  "euiBottomBar.screenReaderHeading": any;
28740
28440
  "euiBottomBar.customScreenReaderAnnouncement": any;
28741
28441
  "euiBottomBar.screenReaderAnnouncement": any;
@@ -28775,9 +28475,6 @@ declare module '@elastic/eui' {
28775
28475
  "euiComboBoxOptionsList.noAvailableOptions": any;
28776
28476
  "euiComboBoxOptionsList.allOptionsSelected": any;
28777
28477
  "euiComboBox.listboxAriaLabel": any;
28778
- "euiControlBar.screenReaderHeading": any;
28779
- "euiControlBar.customScreenReaderAnnouncement": any;
28780
- "euiControlBar.screenReaderAnnouncement": any;
28781
28478
  "euiDataGridCellActions.expandButtonTitle": any;
28782
28479
  "euiDataGridCell.position": any;
28783
28480
  "euiColumnActions.hideColumn": any;
@@ -29025,18 +28722,6 @@ declare module '@elastic/eui' {
29025
28722
  "euiMarkdownEditorToolbar.editor": any;
29026
28723
  "euiMarkdownEditorToolbar.previewMarkdown": any;
29027
28724
  "euiModal.closeModal": any;
29028
- "euiNotificationEventMessages.accordionButtonText": any;
29029
- "euiNotificationEventMessages.accordionAriaLabelButtonText": any;
29030
- "euiNotificationEventMessages.accordionHideText": any;
29031
- "euiNotificationEventMeta.contextMenuButton": any;
29032
- "euiNotificationEventReadButton.markAsReadAria": any;
29033
- "euiNotificationEventReadButton.markAsUnreadAria": any;
29034
- "euiNotificationEventReadButton.markAsRead": any;
29035
- "euiNotificationEventReadButton.markAsUnread": any;
29036
- "euiNotificationEventReadIcon.readAria": any;
29037
- "euiNotificationEventReadIcon.unreadAria": any;
29038
- "euiNotificationEventReadIcon.read": any;
29039
- "euiNotificationEventReadIcon.unread": any;
29040
28725
  "euiPaginationButtonArrow.firstPage": any;
29041
28726
  "euiPaginationButtonArrow.previousPage": any;
29042
28727
  "euiPaginationButtonArrow.nextPage": any;