type MultidimensionalArray = (MultidimensionalArray | number)[]; function* inorderTraversal( arr: MultidimensionalArray, ): Generator { for (const a of arr) { if (typeof a === "number") yield a; else { yield* inorderTraversal(a); } } } export default inorderTraversal; export type { MultidimensionalArray };