let hogeArr: number[] | string[] = [];
のように定義すると
hogeArr.push('moji');
の呼び出しで以下の怒られ
[ts] 型に呼び出しシグネチャがない式を呼び出すことはできません。型 '((...items: number[]) => number) | ((...items: string[]) => number)' には互換性のある呼び出しシグネチャがありません。
[]
を外に出し、
let hogeArr: (number | string)[] = [];
にしたら怒られない・・。