import { ComponentType, Component, ReactNode, ReactElement } from 'react'; import { CSSObject } from '@emotion/serialize'; import { borderRadius, colors, spacing } from '../theme'; import { CommonProps, GroupTypeBase, OptionTypeBase } from '../types'; export type MultiValueProps< OptionType extends OptionTypeBase, GroupType extends GroupTypeBase = GroupTypeBase > = CommonProps & { children: ReactNode; components: any; cropWithEllipsis: boolean; data: OptionType; innerProps: any; isFocused: boolean; isDisabled: boolean; removeProps: { onTouchEnd: (event: any) => void; onClick: (event: any) => void; onMouseDown: (event: any) => void; }; }; export function multiValueCSS(): CSSObject; export function multiValueLabelCSS(props: MultiValueProps): CSSObject; export function multiValueRemoveCSS(props: MultiValueProps): CSSObject; export interface MultiValueGenericProps { children: ReactNode; data: OptionType; innerProps: { className?: string }; selectProps: any; } export function MultiValueGeneric( // tslint:disable-next-line:no-unnecessary-generics props: MultiValueGenericProps, ): ReactElement; export const MultiValueContainer: typeof MultiValueGeneric; export const MultiValueLabel: typeof MultiValueGeneric; export type MultiValueRemoveProps< OptionType extends OptionTypeBase, GroupType extends GroupTypeBase = GroupTypeBase > = CommonProps & { children: ReactNode; data: OptionType; innerProps: { className: string; onTouchEnd: (event: any) => void; onClick: (event: any) => void; onMouseDown: (event: any) => void; }; selectProps: any; }; export function MultiValueRemove< OptionType extends OptionTypeBase, GroupType extends GroupTypeBase = GroupTypeBase // tslint:disable-next-line:no-unnecessary-generics >(props: MultiValueRemoveProps): ReactElement; declare function MultiValue< OptionType extends OptionTypeBase, GroupType extends GroupTypeBase = GroupTypeBase // tslint:disable-next-line:no-unnecessary-generics >(props: MultiValueProps): ReactElement; export default MultiValue;