UNPKG

stonev5-utils

Version:
23 lines (22 loc) 1.04 kB
export declare function into<U>(fn: () => U): U; declare global { interface Array<T> { asyncMap<U, K = Awaited<U>>(callback: (value: T, index: number) => U | Promise<U>, postMap?: (value: Awaited<U>, index: number) => K | Promise<K>): Promise<Awaited<K>[]>; uniq<V = T>(fn?: (value: T, index: number) => V): T[]; chunks(size: number): T[][]; shuffle(): T[]; toMap<K, V>(callback: (value: T, index?: number) => [K, V]): Map<K, V[]>; toSet<K>(callback: (value: T, index?: number) => K): Set<K>; mapfilter<U>(callback: (value: T, index?: number) => U | null | undefined): U[]; } interface Iterator<T> { toArray(): T[]; } interface Promise<T> { thenMap<U>(callback: (value: T extends Array<infer V> ? V : never, index: number, array: T extends Array<infer V> ? V[] : never[]) => U): Promise<U[]>; } interface Map<K, V> { getOr(key: K, defaultValue: V | (() => V)): V; getSet(key: K, defaultValue: V | (() => V)): V; } }