diff --git a/src/components/list_group/index.d.ts b/src/components/list_group/index.d.ts index 79438ba828b..1389d1ecdfa 100644 --- a/src/components/list_group/index.d.ts +++ b/src/components/list_group/index.d.ts @@ -1,6 +1,6 @@ import { EuiButtonIconProps, EuiButtonPropsForButtonOrLink } from '@elastic/eui'; import { IconType } from '../icon'; -import { CommonProps } from '../common'; +import { CommonProps, ExclusiveUnion } from '../common'; import { AnchorHTMLAttributes, ButtonHTMLAttributes, @@ -35,7 +35,7 @@ declare module '@elastic/eui' { * @see './list_group_item.js' */ - type EuiListGroupItemProps = { + type EuiListGroupItemPropsBasics = { size?: 'xs' | 's' | 'm' | 'l'; label: ReactNode; isActive?: boolean; @@ -55,16 +55,15 @@ declare module '@elastic/eui' { wrapText?: boolean; }; - type EuiListGroupItemExtendedProps = EuiListGroupItemProps & CommonProps & ( - ({ - onClick: MouseEventHandler; - } & ButtonHTMLAttributes) | - ({ - href: string; - onClick: MouseEventHandler; - } & AnchorHTMLAttributes) | + type EuiListGroupItemProps = EuiListGroupItemPropsBasics & + CommonProps & + ExclusiveUnion< + ExclusiveUnion< + ButtonHTMLAttributes, + AnchorHTMLAttributes + >, HTMLAttributes - ); + >; - export const EuiListGroupItem: FunctionComponent; + export const EuiListGroupItem: FunctionComponent; }