//#region src/Array/findReplace.d.ts /** * # findReplace * * ```ts * function Array.findReplace( * target: readonly T[], * predicate: ( * value: NoInfer, * index: number, * target: readonly NoInfer[], * ) => boolean, * replacement: NoInfer, * ): readonly T[] * ``` * * Finds the first element in `array` that satisfies the provided `predicate` function and replaces it with `replacement`, returning a new array with the replaced element. * * ## Example * * ```ts [data-first] * import { Array } from "@monstermann/array"; * * Array.findReplace([1, 2, 3, 4], (x) => x > 2, 10); // [1, 2, 10, 4] * ``` * * ```ts [data-last] * import { Array } from "@monstermann/array"; * * pipe( * [1, 2, 3, 4], * Array.findReplace((x) => x > 2, 10), * ); // [1, 2, 10, 4] * ``` * */ declare const findReplace: { (predicate: (value: NoInfer, index: number, target: readonly NoInfer[]) => boolean, replacement: NoInfer): (target: T[]) => T[]; (predicate: (value: NoInfer, index: number, target: readonly NoInfer[]) => boolean, replacement: NoInfer): (target: readonly T[]) => readonly T[]; (target: T[], predicate: (value: NoInfer, index: number, target: readonly NoInfer[]) => boolean, replacement: NoInfer): T[]; (target: readonly T[], predicate: (value: NoInfer, index: number, target: readonly NoInfer[]) => boolean, replacement: NoInfer): readonly T[]; }; //#endregion export { findReplace };