interface IValueToLabel {
  label: string;
  value: string | number;
}

interface MapType {
  label?: string;
  value?: string | number;
}

export function useValueToLabel() {
  const valueToLabel = <T = IValueToLabel>(
    list: T[],
    value: string | number,
    map: MapType = {},
  ) => {
    if (!value && value !== 0) return '';
    // @ts-ignore
    return list.find((item) => item[map.value || 'value'] == value)[map.label || 'label'] ?? ''; // 返回匹配到的label，如果没有匹配到，则返回空字符串
  };

  return {
    valueToLabel,
  };
}
