1 | import { Arbitrary } from '../check/arbitrary/definition/Arbitrary';
|
2 | /**
|
3 | * Type of the value produced by {@link clone}
|
4 | * @remarks Since 2.5.0
|
5 | * @public
|
6 | */
|
7 | export declare type CloneValue<T, N extends number> = N extends 0 ? [] : N extends 1 ? [T] : N extends 2 ? [T, T] : N extends 3 ? [T, T, T] : N extends 4 ? [T, T, T, T] : T[];
|
8 | /**
|
9 | * Clone the values generated by `arb` in order to produce fully equal values (might not be equal in terms of === or ==)
|
10 | *
|
11 | * @param arb - Source arbitrary
|
12 | * @param numValues - Number of values to produce
|
13 | *
|
14 | * @remarks Since 2.5.0
|
15 | * @public
|
16 | */
|
17 | declare function clone<T, N extends number>(arb: Arbitrary<T>, numValues: N): Arbitrary<CloneValue<T, N>>;
|
18 | export { clone };
|