ts-data-forge
Version:
[](https://www.npmjs.com/package/ts-data-forge) [](https://www.npmjs.com/package/ts-data-forge) [);
*
* assert.isFalse(Arr.eq(numbers, differentNumbers));
* ```
*/
export declare const eq: <E>(array1: readonly E[], array2: readonly E[], equality?: (a: E, b: E) => boolean) => boolean;
/**
* Alias for `eq`.
*
* @see {@link eq}
*/
export declare const equal: <E>(array1: readonly E[], array2: readonly E[], equality?: (a: E, b: E) => boolean) => boolean;
/**
* Checks if the first array is a subset of the second array.
*
* @example
*
* ```ts
* const subset = [1, 2] as const;
*
* const superset = [1, 2, 3] as const;
*
* const notSubset = [2, 4] as const;
*
* assert.isTrue(Arr.isSubset(subset, superset));
*
* assert.isFalse(Arr.isSubset(notSubset, superset));
* ```
*/
export declare const isSubset: <E1 extends Primitive, E2 extends Primitive = E1>(array1: readonly E1[], array2: readonly E2[]) => boolean;
/**
* Checks if the first array is a superset of the second array.
*
* @example
*
* ```ts
* const potentialSuperset = ['a', 'b', 'c'] as const;
*
* const subset = ['a', 'c'] as const;
*
* const notSuperset = ['a', 'd'] as const;
*
* assert.isTrue(Arr.isSuperset(potentialSuperset, subset));
*
* assert.isFalse(Arr.isSuperset(subset, potentialSuperset));
*
* assert.isFalse(Arr.isSuperset(potentialSuperset, notSuperset));
* ```
*/
export declare const isSuperset: <E1 extends Primitive, E2 extends Primitive = E1>(array1: readonly E1[], array2: readonly E2[]) => boolean;
/**
* Returns the intersection of two arrays.
*
* @example
*
* ```ts
* const refs = ['Ada', 'Alan', 'Grace'] as const;
*
* const attendees = ['Grace', 'Alan', 'Barbara'] as const;
*
* const both = Arr.setIntersection(refs, attendees);
*
* assert.deepStrictEqual(both, ['Alan', 'Grace']);
* ```
*/
export declare const setIntersection: <E1 extends Primitive, E2 extends Primitive = E1>(array1: readonly E1[], array2: readonly E2[]) => readonly (E1 & E2)[];
/**
* Returns the set difference of two arrays (elements in first but not in second).
*
* @example
*
* ```ts
* const baseline = [1, 2, 3, 4] as const;
*
* const removed = [2, 4] as const;
*
* const remaining = Arr.setDifference(baseline, removed);
*
* assert.deepStrictEqual(remaining, [1, 3]);
* ```
*/
export declare const setDifference: <E extends Primitive>(array1: readonly E[], array2: readonly E[]) => readonly E[];
/**
* Returns the set difference of two sorted numeric arrays (optimized for sorted arrays).
*
* @example
*
* ```ts
* const upcoming = [1, 3, 5, 7, 9] as const;
*
* const completed = [3, 4, 7] as const;
*
* const remaining = Arr.sortedNumSetDifference(upcoming, completed);
*
* const expected = [1, 5, 9] as const;
*
* assert.deepStrictEqual(remaining, expected);
* ```
*/
export declare const sortedNumSetDifference: <E extends number>(sortedList1: readonly E[], sortedList2: readonly E[]) => readonly E[];
//# sourceMappingURL=array-utils-set-op.d.mts.map