tdesign-react
Version:
TDesign Component for React
32 lines (31 loc) • 1.66 kB
TypeScript
import { ReactElement } from 'react';
import type { SelectKeysType, SelectOption, SelectValue, TdOptionProps, TdSelectProps } from '../type';
export type ValueToOption = {
[value: string | number]: TdOptionProps;
};
export declare const getKeyMapping: (keys: SelectKeysType) => {
valueKey: string;
labelKey: string;
disabledKey: string;
};
export declare const setValueToOptionFormOptionDom: (dom: ReactElement, valueToOption: ValueToOption, keys: SelectKeysType) => void;
export declare const getValueToOption: (children: ReactElement, options: SelectOption[], keys: SelectKeysType) => ValueToOption;
export declare const getLabel: (children: ReactElement, value: SelectValue<TdOptionProps>, options: TdOptionProps[], keys: SelectKeysType) => string;
export declare const getMultipleTags: (values: SelectValue[], keys: SelectKeysType) => {
label: any;
value: any;
}[];
/**
* 计算多选时的 `value` 数组
*/
export declare const getSelectValueArr: (values: SelectValue | SelectValue[], activeValue: SelectValue, selected?: boolean, valueType?: TdSelectProps["valueType"], keys?: SelectKeysType, objVal?: SelectValue) => any[];
/**
* 计算 `onChange` 事件回调的 `selectedOptions` 参数
* @param value 所有已选中的值
* @param selectedValue 当前选择/取消选择的特定选项
*/
export declare const getSelectedOptions: (value: SelectValue, multiple: TdSelectProps["multiple"], valueType: TdSelectProps["valueType"], keys: SelectKeysType, valueToOption: ValueToOption, selectedValue?: SelectValue) => {
currentSelectedOptions: any[];
currentOption: SelectOption;
allSelectedValue: SelectValue[];
};