из подобной функции? Несколько часов уже сижу, но чем больше погружаюсь в infer, тем сильнее запутываюсь
const minMax = (
num1: any,
num2: any,
data: IMinMax,
overload?: string,
): number[] | IMinMax => {
if (overload === 'object') return data
const { min, max } = data
if (typeof num1 !== 'number') num1 = min
if (typeof num2 !== 'number') num2 = max
const resMin = num1 <= num2 ? num1 : num2
const resMax = num2 > num1 ? num2 : num1
return [resMin, resMax]
}
.js + .d.ts ?
Что значит вывести возвращаемый тип? Он же прописан явно.
я подумал разделение возвращаемых типов в зависимости от типов у аргументов
Ну да, оверлоады тоже можно было бы написать.
Обсуждают сегодня