//provide as accurate typing as we can up to a point... //this repetitiveness is a limitation of typescript declare function zip(...arr: [ readonly T[] ]): [T][] declare function zip(...arr: [ readonly T[], readonly U[] ]): [T, U][] declare function zip(...arr: [ readonly T[], readonly U[], readonly V[] ]): [T, U, V][] declare function zip(...arr: [ readonly T[], readonly U[], readonly V[], readonly W[] ]): [T, U, V, W][] declare function zip(...arr: [ readonly T[], readonly U[], readonly V[], readonly W[], readonly X[] ]): [T, U, V, W, X][] declare function zip(...arr: [ readonly T[], readonly U[], readonly V[], readonly W[], readonly X[], readonly Y[] ]): [T, U, V, W, X, Y][] declare function zip(...arr: [ readonly T[], readonly U[], readonly V[], readonly W[], readonly X[], readonly Y[], readonly Z[] ]): [T, U, V, W, X, Y, Z][] declare function zip(...arr: ReadonlyArray[]): any[][] export default zip