export const partition = ( array: Array, predicate: (value: T, index: number, array: Array) => boolean, ): [Array, Array] => { const truthy: Array = []; const falsy: Array = []; array.forEach((value, index, arr) => { if (predicate(value, index, arr)) { truthy.push(value); } else { falsy.push(value); } }); return [truthy, falsy]; };