UNPKG

@monstermann/fn

Version:

A utility library for TypeScript.

32 lines (30 loc) 954 B
import { ArrayGuard, ArrayPredicate } from "./internals/types.js"; //#region src/array/filter.d.ts /** * `filter(target, by)` * * Filters elements from `target` array based on the predicate function `by`. * * ```ts * filter([1, 2, 3, 4], (x) => x > 2); // [3, 4] * ``` * * ```ts * pipe( * [1, 2, 3, 4], * filter((x) => x > 2), * ); // [3, 4] * ``` */ declare const filter: { <T, U extends T>(by: ArrayGuard<T, U>): (target: T[]) => U[]; <T, U extends T>(by: ArrayGuard<T, U>): (target: readonly T[]) => readonly U[]; <T>(by: ArrayPredicate<T>): (target: T[]) => T[]; <T>(by: ArrayPredicate<T>): (target: readonly T[]) => readonly T[]; <T, U extends T>(target: T[], by: ArrayGuard<T, U>): U[]; <T, U extends T>(target: readonly T[], by: ArrayGuard<T, U>): readonly U[]; <T>(target: T[], by: ArrayPredicate<T>): T[]; <T>(target: readonly T[], by: ArrayPredicate<T>): readonly T[]; }; //#endregion export { filter };