export default class CollectionUtil { static mapNotNullOrUndefined(array: T[], transform: (element: T) => R | null | undefined): Array; static mapOrUndefined(array: T[], transform: (element: T) => R | null | undefined): Array | undefined; static associateTo>(array: T[], destination: M, transform: (element: T) => [K, V]): M; static associate(array: T[], transform: (element: T) => [K, V]): Map; static associateBy(receiver: T[], keySelector: (element: T) => K): Map; static associateRecord(array: T[], transform: (element: T) => [K, V]): Record; static chunked(arr: T[], chunkSize: number): T[][]; static sum(arr: T[], valueResolver: (it: T) => number): number; }