import React, { CSSProperties, ReactNode } from 'react'; import { Mode, RenderDOMFunc, RawValue, Option, Item, ShowSearchType, Path } from './interface'; declare type Key = string | number; declare type RawValueType = string | number; interface LabelValueType { key?: Key; value?: RawValueType; label?: React.ReactNode; isCacheable?: boolean; } export interface ScatterCascaderProps { className?: string; dropdownClassName?: string; options: Option[] | Item[]; onChange?: (value: ScatterCascaderValue | undefined, selected?: LabeledValue[] | undefined) => void; value?: ScatterCascaderValue; defaultValue?: ScatterCascaderValue; placeholder?: string; loadData?: (selectedOption: Item) => void; showSearch?: boolean | ShowSearchType; onSearch?: (keyword: string) => void; searchList?: SearchItem[]; mode?: Mode; allowClear?: boolean; labelInValue?: boolean; style?: CSSProperties; dropdownStyle?: CSSProperties; getPopupContainer?: RenderDOMFunc; expandIcon?: ReactNode; onDropdownVisibleChange?: (open: boolean) => void; showArrow?: boolean; searchValue?: string; virtual?: boolean; notFoundContent?: ReactNode; open?: boolean; autoFocus?: boolean; bordered?: boolean; clearIcon?: ReactNode; defaultOpen?: boolean; disabled?: boolean; disabledValues?: RawValue[]; disabledTip?: string; loading?: boolean; maxTagCount?: number | 'responsive'; maxTagPlaceholder?: ReactNode | ((omittedValues: LabelValueType[]) => ReactNode); removeIcon?: ReactNode; size?: 'small' | 'middle' | 'large' | undefined; suffixIcon?: ReactNode; onBlur?: React.FocusEventHandler; onFocus?: React.FocusEventHandler; onDeselect?: (SelectLabeledValue: any) => void; onlyChildCanSelect?: boolean; } export declare type ScatterCascaderValue = RawValue | RawValue[] | LabeledValue | LabeledValue[]; interface LabeledValue { label: React.ReactNode; value: RawValue; parentValue?: RawValue; children?: LabeledValue[]; path?: Item[]; layer?: number; color?: string; isParent?: boolean; } interface SearchItem { value: RawValue; label?: React.ReactNode; color?: string; path: Path[]; } declare const ScatterCascader: (props: ScatterCascaderProps) => JSX.Element; export default ScatterCascader;