import { default as React } from 'react'; import { IconProps } from '../../Icons/Icon.models'; export type SelectDisplayOption = { /** Identifier for an option */ name: string; /** Label display for an option */ label: string; /** Object of tippy to show children on option value */ children?: { /** Array of options for tippy */ options: SelectDisplayOption[]; }; /** Optional secondary content to display */ secondaryContent?: React.ReactNode; /** Optional image to appear to the left of the option */ image?: string; /** * When present, the option is non-interactive (click guard + disabled styling). * Provide `tooltip` to also show an info icon with an explanation. * Provide `iconProps` to customize the info icon appearance. */ disabledConfig?: { tooltip?: React.ReactNode; iconProps?: Omit; }; }; export type SelectDisplayProps = { /** Array of options */ options: Options; /** Function to be called when an option is clicked */ callout: (option: Options[number]) => void; /** Determines if there is an active option to be highlighted */ active?: Options[number]['name']; /** Adds a border around the component */ hasBorder?: boolean; /** Adds a tippy style around the component */ hasTippy?: boolean; /** Optional maxHeight for the display. Enables scrolling of the overflow. */ maxHeight?: number | string; /** Optional prop to add a test id to the SelectDisplay for QA testing */ qaTestId?: string; }; declare const SelectDisplay: ({ options, callout, active, hasBorder, hasTippy, maxHeight, qaTestId, }: SelectDisplayProps) => React.JSX.Element; export default SelectDisplay; export declare const SelectDisplayRow: ({ callout, active, option, hasBorder, getOptions, }: { callout: (option: OptionItem) => void; active?: OptionItem["name"]; option: OptionItem; getOptions?: (filteredOptions: readonly OptionItem[]) => React.JSX.Element; hasBorder?: boolean; }) => import("react/jsx-runtime").JSX.Element;