В vscode с машинописью
множественные непатентованные средства не используются должным образом при использовании пользовательских защитных ограждений
const arraySample = [1, [3, 4], ["s"]];
const isFlat = <T, U>(array: (T | T[] | U | U[])[]): array is (T | U)[] => {
return !array.some(Array.isArray);
};
if (isFlat(arraySample)) {
arraySample;
}
всплывающая подсказка vscode с ошибкой:
const isFlat: <number, number>(array: (number | number[])[]) => array is number[]
но я думаю, что это должно быть
const isFlat: <number, string>(array: (number | number[] | string | string[])[]) => array is (number|string)[]
Не могли бы вы дать мне знать правильное решение?