import { PRNG } from "../rng/index.js";
import { result } from "./result.js";
export declare const zip: (xs: readonly A[], ys: readonly B[]) => [A, B][];
export declare const accumulate: (items: readonly A[], fn: (x: A, y: A) => A) => A[];
export declare const accumulateWithError: (items: readonly A[], fn: (x: A, y: A) => result) => result;
export declare const unzip: (items: readonly (readonly [A, B])[]) => [A[], B[]];
export declare const pairwise: (items: readonly T[], fn: (v1: T, v2: T) => R) => R[];
export declare const pairwiseWithError: (items: readonly T[], fn: (v1: T, v2: T) => result) => result;
export declare const makeBy: (n: number, fn: (i: number) => T) => T[];
export declare function shuffle(array: readonly T[], rng: PRNG): T[];
export declare function isEqual(arr1: readonly T[], arr2: readonly T[]): boolean;
export declare function sample(array: readonly T[], rng: PRNG): T;
export declare function sampleN(array: readonly T[], n: number, rng: PRNG): T[];
//# sourceMappingURL=E_A.d.ts.map