signal-desktop/patches/@vitest+expect+1.6.0.patch

1963 lines
73 KiB
Diff
Raw Normal View History

2024-07-08 18:23:27 +00:00
diff --git a/node_modules/@vitest/expect/dist/chai.d.cts b/node_modules/@vitest/expect/dist/chai.d.cts
index 7e23131..fc4c3ed 100644
--- a/node_modules/@vitest/expect/dist/chai.d.cts
+++ b/node_modules/@vitest/expect/dist/chai.d.cts
@@ -13,1956 +13,4 @@
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 3.0
-declare namespace Chai {
- type Message = string | (() => string);
- type ObjectProperty = string | symbol | number;
-
- interface PathInfo {
- parent: object;
- name: string;
- value?: any;
- exists: boolean;
- }
-
- interface ErrorConstructor {
- new(...args: any[]): Error;
- }
-
- interface ChaiUtils {
- addChainableMethod(
- // object to define the method on, e.g. chai.Assertion.prototype
- ctx: object,
- // method name
- name: string,
- // method itself; any arguments
- method: (...args: any[]) => void,
- // called when property is accessed
- chainingBehavior?: () => void,
- ): void;
- overwriteChainableMethod(
- ctx: object,
- name: string,
- method: (...args: any[]) => void,
- chainingBehavior?: () => void,
- ): void;
- addLengthGuard(
- fn: Function,
- assertionName: string,
- isChainable: boolean,
- ): void;
- addMethod(ctx: object, name: string, method: Function): void;
- addProperty(ctx: object, name: string, getter: () => any): void;
- overwriteMethod(ctx: object, name: string, method: Function): void;
- overwriteProperty(ctx: object, name: string, getter: () => any): void;
- compareByInspect(a: object, b: object): -1 | 1;
- expectTypes(obj: object, types: string[]): void;
- flag(obj: object, key: string, value?: any): any;
- getActual(obj: object, args: AssertionArgs): any;
- getProperties(obj: object): string[];
- getEnumerableProperties(obj: object): string[];
- getOwnEnumerablePropertySymbols(obj: object): symbol[];
- getOwnEnumerableProperties(obj: object): Array<string | symbol>;
- getMessage(errorLike: Error | string): string;
- getMessage(obj: any, args: AssertionArgs): string;
- inspect(obj: any, showHidden?: boolean, depth?: number, colors?: boolean): string;
- isProxyEnabled(): boolean;
- objDisplay(obj: object): void;
- proxify(obj: object, nonChainableMethodName: string): object;
- test(obj: object, args: AssertionArgs): boolean;
- transferFlags(assertion: Assertion, obj: object, includeAll?: boolean): void;
- compatibleInstance(thrown: Error, errorLike: Error | ErrorConstructor): boolean;
- compatibleConstructor(thrown: Error, errorLike: Error | ErrorConstructor): boolean;
- compatibleMessage(thrown: Error, errMatcher: string | RegExp): boolean;
- getConstructorName(constructorFn: Function): string;
- getFuncName(constructorFn: Function): string | null;
-
- // Reexports from pathval:
- hasProperty(obj: object | undefined | null, name: ObjectProperty): boolean;
- getPathInfo(obj: object, path: string): PathInfo;
- getPathValue(obj: object, path: string): object | undefined;
- }
-
- type ChaiPlugin = (chai: ChaiStatic, utils: ChaiUtils) => void;
-
- interface ChaiStatic {
- expect: ExpectStatic;
- should(): Should;
- /**
- * Provides a way to extend the internals of Chai
- */
- use(fn: ChaiPlugin): ChaiStatic;
- util: ChaiUtils;
- assert: AssertStatic;
- config: Config;
- Assertion: AssertionStatic;
- AssertionError: typeof AssertionError;
- version: string;
- }
-
- export interface ExpectStatic {
- (val: any, message?: string): Assertion;
- fail(message?: string): never;
- fail(actual: any, expected: any, message?: string, operator?: Operator): never;
- }
-
- export interface AssertStatic extends Assert {
- }
-
- // chai.Assertion.prototype.assert arguments
- type AssertionArgs = [
- // 'expression to be tested'
- // This parameter is unused and the docs list its type as
- // 'Philosophical', which is mentioned nowhere else in the source. Do
- // with that what you will!
- any,
- Message, // message if value fails
- Message, // message if negated value fails
- any, // expected value
- any?, // actual value
- boolean?, // showDiff
- ];
-
- export interface AssertionPrototype {
- assert(...args: AssertionArgs): void;
- _obj: any;
- }
-
- export interface AssertionStatic extends AssertionPrototype {
- prototype: AssertionPrototype;
-
- new(target: any, message?: string, ssfi?: Function, lockSsfi?: boolean): Assertion;
-
- // Deprecated properties:
- includeStack: boolean;
- showDiff: boolean;
-
- // Partials of functions on ChaiUtils:
- addProperty(name: string, getter: (this: AssertionStatic) => any): void;
- addMethod(name: string, method: (this: AssertionStatic, ...args: any[]) => any): void;
- addChainableMethod(
- name: string,
- method: (this: AssertionStatic, ...args: any[]) => void,
- chainingBehavior?: () => void,
- ): void;
- overwriteProperty(name: string, getter: (this: AssertionStatic) => any): void;
- overwriteMethod(name: string, method: (this: AssertionStatic, ...args: any[]) => any): void;
- overwriteChainableMethod(
- name: string,
- method: (this: AssertionStatic, ...args: any[]) => void,
- chainingBehavior?: () => void,
- ): void;
- }
-
- export type Operator = string; // "==" | "===" | ">" | ">=" | "<" | "<=" | "!=" | "!==";
-
- export type OperatorComparable = boolean | null | number | string | undefined | Date;
-
- interface ShouldAssertion {
- equal(value1: any, value2: any, message?: string): void;
- Throw: ShouldThrow;
- throw: ShouldThrow;
- exist(value: any, message?: string): void;
- }
-
- interface Should extends ShouldAssertion {
- not: ShouldAssertion;
- fail(message?: string): never;
- fail(actual: any, expected: any, message?: string, operator?: Operator): never;
- }
-
- interface ShouldThrow {
- (actual: Function, expected?: string | RegExp, message?: string): void;
- (actual: Function, constructor: Error | Function, expected?: string | RegExp, message?: string): void;
- }
-
- interface Assertion extends LanguageChains, NumericComparison, TypeComparison {
- not: Assertion;
- deep: Deep;
- ordered: Ordered;
- nested: Nested;
- own: Own;
- any: KeyFilter;
- all: KeyFilter;
- a: Assertion;
- an: Assertion;
- include: Include;
- includes: Include;
- contain: Include;
- contains: Include;
- ok: Assertion;
- true: Assertion;
- false: Assertion;
- null: Assertion;
- undefined: Assertion;
- NaN: Assertion;
- exist: Assertion;
- empty: Assertion;
- arguments: Assertion;
- Arguments: Assertion;
- finite: Assertion;
- equal: Equal;
- equals: Equal;
- eq: Equal;
- eql: Equal;
- eqls: Equal;
- property: Property;
- ownProperty: Property;
- haveOwnProperty: Property;
- ownPropertyDescriptor: OwnPropertyDescriptor;
- haveOwnPropertyDescriptor: OwnPropertyDescriptor;
- length: Length;
- lengthOf: Length;
- match: Match;
- matches: Match;
- string(string: string, message?: string): Assertion;
- keys: Keys;
- key(string: string): Assertion;
- throw: Throw;
- throws: Throw;
- Throw: Throw;
- respondTo: RespondTo;
- respondsTo: RespondTo;
- itself: Assertion;
- satisfy: Satisfy;
- satisfies: Satisfy;
- closeTo: CloseTo;
- approximately: CloseTo;
- members: Members;
- increase: PropertyChange;
- increases: PropertyChange;
- decrease: PropertyChange;
- decreases: PropertyChange;
- change: PropertyChange;
- changes: PropertyChange;
- extensible: Assertion;
- sealed: Assertion;
- frozen: Assertion;
- oneOf: OneOf;
- }
-
- interface LanguageChains {
- to: Assertion;
- be: Assertion;
- been: Assertion;
- is: Assertion;
- that: Assertion;
- which: Assertion;
- and: Assertion;
- has: Assertion;
- have: Assertion;
- with: Assertion;
- at: Assertion;
- of: Assertion;
- same: Assertion;
- but: Assertion;
- does: Assertion;
- }
-
- interface NumericComparison {
- above: NumberComparer;
- gt: NumberComparer;
- greaterThan: NumberComparer;
- least: NumberComparer;
- gte: NumberComparer;
- greaterThanOrEqual: NumberComparer;
- below: NumberComparer;
- lt: NumberComparer;
- lessThan: NumberComparer;
- most: NumberComparer;
- lte: NumberComparer;
- lessThanOrEqual: NumberComparer;
- within(start: number, finish: number, message?: string): Assertion;
- within(start: Date, finish: Date, message?: string): Assertion;
- }
-
- interface NumberComparer {
- (value: number | Date, message?: string): Assertion;
- }
-
- interface TypeComparison {
- (type: string, message?: string): Assertion;
- instanceof: InstanceOf;
- instanceOf: InstanceOf;
- }
-
- interface InstanceOf {
- (constructor: any, message?: string): Assertion;
- }
-
- interface CloseTo {
- (expected: number, delta: number, message?: string): Assertion;
- }
-
- interface Nested {
- include: Include;
- includes: Include;
- contain: Include;
- contains: Include;
- property: Property;
- members: Members;
- }
-
- interface Own {
- include: Include;
- includes: Include;
- contain: Include;
- contains: Include;
- property: Property;
- }
-
- interface Deep extends KeyFilter {
- be: Assertion;
- equal: Equal;
- equals: Equal;
- eq: Equal;
- include: Include;
- includes: Include;
- contain: Include;
- contains: Include;
- property: Property;
- ordered: Ordered;
- nested: Nested;
- oneOf: OneOf;
- own: Own;
- }
-
- interface Ordered {
- members: Members;
- }
-
- interface KeyFilter {
- keys: Keys;
- members: Members;
- }
-
- interface Equal {
- (value: any, message?: string): Assertion;
- }
-
- interface Property {
- (name: string | symbol, value: any, message?: string): Assertion;
- (name: string | symbol, message?: string): Assertion;
- }
-
- interface OwnPropertyDescriptor {
- (name: string | symbol, descriptor: PropertyDescriptor, message?: string): Assertion;
- (name: string | symbol, message?: string): Assertion;
- }
-
- interface Length extends LanguageChains, NumericComparison {
- (length: number, message?: string): Assertion;
- }
-
- interface Include {
- (value: any, message?: string): Assertion;
- keys: Keys;
- deep: Deep;
- ordered: Ordered;
- members: Members;
- any: KeyFilter;
- all: KeyFilter;
- oneOf: OneOf;
- }
-
- interface OneOf {
- (list: ReadonlyArray<unknown>, message?: string): Assertion;
- }
-
- interface Match {
- (regexp: RegExp, message?: string): Assertion;
- }
-
- interface Keys {
- (...keys: string[]): Assertion;
- (keys: ReadonlyArray<any> | Object): Assertion;
- }
-
- interface Throw {
- (expected?: string | RegExp, message?: string): Assertion;
- (constructor: Error | Function, expected?: string | RegExp, message?: string): Assertion;
- }
-
- interface RespondTo {
- (method: string, message?: string): Assertion;
- }
-
- interface Satisfy {
- (matcher: Function, message?: string): Assertion;
- }
-
- interface Members {
- (set: ReadonlyArray<any>, message?: string): Assertion;
- }
-
- interface PropertyChange {
- (object: Object, property?: string, message?: string): DeltaAssertion;
- }
-
- interface DeltaAssertion extends Assertion {
- by(delta: number, msg?: string): Assertion;
- }
-
- export interface Assert {
- /**
- * @param expression Expression to test for truthiness.
- * @param message Message to display on error.
- */
- (expression: any, message?: string): asserts expression;
-
- /**
- * Throws a failure.
- *
- * @param message Message to display on error.
- * @remarks Node.js assert module-compatible.
- */
- fail(message?: string): never;
-
- /**
- * Throws a failure.
- *
- * T Type of the objects.
- * @param actual Actual value.
- * @param expected Potential expected value.
- * @param message Message to display on error.
- * @param operator Comparison operator, if not strict equality.
- * @remarks Node.js assert module-compatible.
- */
- fail<T>(actual: T, expected: T, message?: string, operator?: Operator): never;
-
- /**
- * Asserts that object is truthy.
- *
- * T Type of object.
- * @param object Object to test.
- * @param message Message to display on error.
- */
- isOk<T>(value: T, message?: string): void;
-
- /**
- * Asserts that object is truthy.
- *
- * T Type of object.
- * @param object Object to test.
- * @param message Message to display on error.
- */
- ok<T>(value: T, message?: string): void;
-
- /**
- * Asserts that object is falsy.
- *
- * T Type of object.
- * @param object Object to test.
- * @param message Message to display on error.
- */
- isNotOk<T>(value: T, message?: string): void;
-
- /**
- * Asserts that object is falsy.
- *
- * T Type of object.
- * @param object Object to test.
- * @param message Message to display on error.
- */
- notOk<T>(value: T, message?: string): void;
-
- /**
- * Asserts non-strict equality (==) of actual and expected.
- *
- * T Type of the objects.
- * @param actual Actual value.
- * @param expected Potential expected value.
- * @param message Message to display on error.
- */
- equal<T>(actual: T, expected: T, message?: string): void;
-
- /**
- * Asserts non-strict inequality (!=) of actual and expected.
- *
- * T Type of the objects.
- * @param actual Actual value.
- * @param expected Potential expected value.
- * @param message Message to display on error.
- */
- notEqual<T>(actual: T, expected: T, message?: string): void;
-
- /**
- * Asserts strict equality (===) of actual and expected.
- *
- * T Type of the objects.
- * @param actual Actual value.
- * @param expected Potential expected value.
- * @param message Message to display on error.
- */
- strictEqual<T>(actual: T, expected: T, message?: string): void;
-
- /**
- * Asserts strict inequality (!==) of actual and expected.
- *
- * T Type of the objects.
- * @param actual Actual value.
- * @param expected Potential expected value.
- * @param message Message to display on error.
- */
- notStrictEqual<T>(actual: T, expected: T, message?: string): void;
-
- /**
- * Asserts that actual is deeply equal to expected.
- *
- * T Type of the objects.
- * @param actual Actual value.
- * @param expected Potential expected value.
- * @param message Message to display on error.
- */
- deepEqual<T>(actual: T, expected: T, message?: string): void;
-
- /**
- * Asserts that actual is not deeply equal to expected.
- *
- * T Type of the objects.
- * @param actual Actual value.
- * @param expected Potential expected value.
- * @param message Message to display on error.
- */
- notDeepEqual<T>(actual: T, expected: T, message?: string): void;
-
- /**
- * Alias to deepEqual
- *
- * T Type of the objects.
- * @param actual Actual value.
- * @param expected Potential expected value.
- * @param message Message to display on error.
- */
- deepStrictEqual<T>(actual: T, expected: T, message?: string): void;
-
- /**
- * Asserts valueToCheck is strictly greater than (>) valueToBeAbove.
- *
- * @param valueToCheck Actual value.
- * @param valueToBeAbove Minimum Potential expected value.
- * @param message Message to display on error.
- */
- isAbove(valueToCheck: number, valueToBeAbove: number, message?: string): void;
-
- /**
- * Asserts valueToCheck is greater than or equal to (>=) valueToBeAtLeast.
- *
- * @param valueToCheck Actual value.
- * @param valueToBeAtLeast Minimum Potential expected value.
- * @param message Message to display on error.
- */
- isAtLeast(valueToCheck: number, valueToBeAtLeast: number, message?: string): void;
-
- /**
- * Asserts valueToCheck is strictly less than (<) valueToBeBelow.
- *
- * @param valueToCheck Actual value.
- * @param valueToBeBelow Minimum Potential expected value.
- * @param message Message to display on error.
- */
- isBelow(valueToCheck: number, valueToBeBelow: number, message?: string): void;
-
- /**
- * Asserts valueToCheck is less than or equal to (<=) valueToBeAtMost.
- *
- * @param valueToCheck Actual value.
- * @param valueToBeAtMost Minimum Potential expected value.
- * @param message Message to display on error.
- */
- isAtMost(valueToCheck: number, valueToBeAtMost: number, message?: string): void;
-
- /**
- * Asserts that value is true.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isTrue<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is false.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isFalse<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is not true.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isNotTrue<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is not false.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isNotFalse<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is null.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isNull<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is not null.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isNotNull<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is NaN.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isNaN<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is not NaN.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isNotNaN<T>(value: T, message?: string): void;
-
- /**
- * Asserts that the target is neither null nor undefined.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- exists<T>(value: T, message?: string): void;
-
- /**
- * Asserts that the target is either null or undefined.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- notExists<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is undefined.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isUndefined<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is not undefined.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isDefined<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is a function.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isFunction<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is not a function.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isNotFunction<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is an object of type 'Object'
- * (as revealed by Object.prototype.toString).
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- * @remarks The assertion does not match subclassed objects.
- */
- isObject<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is not an object of type 'Object'
- * (as revealed by Object.prototype.toString).
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isNotObject<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is an array.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isArray<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is not an array.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isNotArray<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is a string.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isString<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is not a string.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isNotString<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is a number.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isNumber<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is not a number.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isNotNumber<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is a finite number.
- * Unlike `.isNumber`, this will fail for `NaN` and `Infinity`.
- *
- * T Type of value
- * @param value Actual value
- * @param message Message to display on error.
- */
- isFinite<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is a boolean.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isBoolean<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value is not a boolean.
- *
- * T Type of value.
- * @param value Actual value.
- * @param message Message to display on error.
- */
- isNotBoolean<T>(value: T, message?: string): void;
-
- /**
- * Asserts that value's type is name, as determined by Object.prototype.toString.
- *
- * T Type of value.
- * @param value Actual value.
- * @param name Potential expected type name of value.
- * @param message Message to display on error.
- */
- typeOf<T>(value: T, name: string, message?: string): void;
-
- /**
- * Asserts that value's type is not name, as determined by Object.prototype.toString.
- *
- * T Type of value.
- * @param value Actual value.
- * @param name Potential expected type name of value.
- * @param message Message to display on error.
- */
- notTypeOf<T>(value: T, name: string, message?: string): void;
-
- /**
- * Asserts that value is an instance of constructor.
- *
- * T Type of value.
- * @param value Actual value.
- * @param constructor Potential expected contructor of value.
- * @param message Message to display on error.
- */
- instanceOf<T>(value: T, constructor: Function, message?: string): void;
-
- /**
- * Asserts that value is not an instance of constructor.
- *
- * T Type of value.
- * @param value Actual value.
- * @param constructor Potential expected contructor of value.
- * @param message Message to display on error.
- */
- notInstanceOf<T>(value: T, type: Function, message?: string): void;
-
- /**
- * Asserts that haystack includes needle.
- *
- * @param haystack Container string.
- * @param needle Potential substring of haystack.
- * @param message Message to display on error.
- */
- include(haystack: string, needle: string, message?: string): void;
-
- /**
- * Asserts that haystack includes needle.
- *
- * T Type of values in haystack.
- * @param haystack Container array, set or map.
- * @param needle Potential value contained in haystack.
- * @param message Message to display on error.
- */
- include<T>(
- haystack: ReadonlyArray<T> | ReadonlySet<T> | ReadonlyMap<any, T>,
- needle: T,
- message?: string,
- ): void;
-
- /**
- * Asserts that haystack includes needle.
- *
- * T Type of values in haystack.
- * @param haystack WeakSet container.
- * @param needle Potential value contained in haystack.
- * @param message Message to display on error.
- */
- include<T extends object>(haystack: WeakSet<T>, needle: T, message?: string): void;
-
- /**
- * Asserts that haystack includes needle.
- *
- * T Type of haystack.
- * @param haystack Object.
- * @param needle Potential subset of the haystack's properties.
- * @param message Message to display on error.
- */
- include<T>(haystack: T, needle: Partial<T>, message?: string): void;
-
- /**
- * Asserts that haystack does not includes needle.
- *
- * @param haystack Container string.
- * @param needle Potential substring of haystack.
- * @param message Message to display on error.
- */
- notInclude(haystack: string, needle: string, message?: string): void;
-
- /**
- * Asserts that haystack does not includes needle.
- *
- * T Type of values in haystack.
- * @param haystack Container array, set or map.
- * @param needle Potential value contained in haystack.
- * @param message Message to display on error.
- */
- notInclude<T>(
- haystack: ReadonlyArray<T> | ReadonlySet<T> | ReadonlyMap<any, T>,
- needle: T,
- message?: string,
- ): void;
-
- /**
- * Asserts that haystack does not includes needle.
- *
- * T Type of values in haystack.
- * @param haystack WeakSet container.
- * @param needle Potential value contained in haystack.
- * @param message Message to display on error.
- */
- notInclude<T extends object>(haystack: WeakSet<T>, needle: T, message?: string): void;
-
- /**
- * Asserts that haystack does not includes needle.
- *
- * T Type of haystack.
- * @param haystack Object.
- * @param needle Potential subset of the haystack's properties.
- * @param message Message to display on error.
- */
- notInclude<T>(haystack: T, needle: Partial<T>, message?: string): void;
-
- /**
- * Asserts that haystack includes needle. Deep equality is used.
- *
- * @param haystack Container string.
- * @param needle Potential substring of haystack.
- * @param message Message to display on error.
- *
- * @deprecated Does not have any effect on string. Use {@link Assert#include} instead.
- */
- deepInclude(haystack: string, needle: string, message?: string): void;
-
- /**
- * Asserts that haystack includes needle. Deep equality is used.
- *
- * T Type of values in haystack.
- * @param haystack Container array, set or map.
- * @param needle Potential value contained in haystack.
- * @param message Message to display on error.
- */
- deepInclude<T>(
- haystack: ReadonlyArray<T> | ReadonlySet<T> | ReadonlyMap<any, T>,
- needle: T,
- message?: string,
- ): void;
-
- /**
- * Asserts that haystack does not includes needle.
- *
- * T Type of haystack.
- * @param haystack Object.
- * @param needle Potential subset of the haystack's properties.
- * @param message Message to display on error.
- */
- deepInclude<T>(haystack: T, needle: T extends WeakSet<any> ? never : Partial<T>, message?: string): void;
-
- /**
- * Asserts that haystack does not includes needle. Deep equality is used.
- *
- * @param haystack Container string.
- * @param needle Potential substring of haystack.
- * @param message Message to display on error.
- *
- * @deprecated Does not have any effect on string. Use {@link Assert#notInclude} instead.
- */
- notDeepInclude(haystack: string, needle: string, message?: string): void;
-
- /**
- * Asserts that haystack does not includes needle. Deep equality is used.
- *
- * T Type of values in haystack.
- * @param haystack Container array, set or map.
- * @param needle Potential value contained in haystack.
- * @param message Message to display on error.
- */
- notDeepInclude<T>(
- haystack: ReadonlyArray<T> | ReadonlySet<T> | ReadonlyMap<any, T>,
- needle: T,
- message?: string,
- ): void;
-
- /**
- * Asserts that haystack does not includes needle. Deep equality is used.
- *
- * T Type of haystack.
- * @param haystack Object.
- * @param needle Potential subset of the haystack's properties.
- * @param message Message to display on error.
- */
- notDeepInclude<T>(haystack: T, needle: T extends WeakSet<any> ? never : Partial<T>, message?: string): void;
-
- /**
- * Asserts that haystack includes needle. Can be used to assert the inclusion of a subset of properties in an object.
- *
- * Enables the use of dot- and bracket-notation for referencing nested properties.
- * [] and . in property names can be escaped using double backslashes.Asserts that haystack includes needle.
- * Can be used to assert the inclusion of a subset of properties in an object.
- * Enables the use of dot- and bracket-notation for referencing nested properties.
- * [] and . in property names can be escaped using double backslashes.
- *
- * @param haystack
- * @param needle
- * @param message Message to display on error.
- */
- nestedInclude(haystack: any, needle: any, message?: string): void;
-
- /**
- * Asserts that haystack does not include needle. Can be used to assert the absence of a subset of properties in an object.
- *
- * Enables the use of dot- and bracket-notation for referencing nested properties.
- * [] and . in property names can be escaped using double backslashes.Asserts that haystack includes needle.
- * Can be used to assert the inclusion of a subset of properties in an object.
- * Enables the use of dot- and bracket-notation for referencing nested properties.
- * [] and . in property names can be escaped using double backslashes.
- *
- * @param haystack
- * @param needle
- * @param message Message to display on error.
- */
- notNestedInclude(haystack: any, needle: any, message?: string): void;
-
- /**
- * Asserts that haystack includes needle. Can be used to assert the inclusion of a subset of properties in an object while checking for deep equality
- *
- * Enables the use of dot- and bracket-notation for referencing nested properties.
- * [] and . in property names can be escaped using double backslashes.Asserts that haystack includes needle.
- * Can be used to assert the inclusion of a subset of properties in an object.
- * Enables the use of dot- and bracket-notation for referencing nested properties.
- * [] and . in property names can be escaped using double backslashes.
- *
- * @param haystack
- * @param needle
- * @param message Message to display on error.
- */
- deepNestedInclude(haystack: any, needle: any, message?: string): void;
-
- /**
- * Asserts that haystack does not include needle. Can be used to assert the absence of a subset of properties in an object while checking for deep equality.
- *
- * Enables the use of dot- and bracket-notation for referencing nested properties.
- * [] and . in property names can be escaped using double backslashes.Asserts that haystack includes needle.
- * Can be used to assert the inclusion of a subset of properties in an object.
- * Enables the use of dot- and bracket-notation for referencing nested properties.
- * [] and . in property names can be escaped using double backslashes.
- *
- * @param haystack
- * @param needle
- * @param message Message to display on error.
- */
- notDeepNestedInclude(haystack: any, needle: any, message?: string): void;
-
- /**
- * Asserts that haystack includes needle. Can be used to assert the inclusion of a subset of properties in an object while ignoring inherited properties.
- *
- * @param haystack
- * @param needle
- * @param message Message to display on error.
- */
- ownInclude(haystack: any, needle: any, message?: string): void;
-
- /**
- * Asserts that haystack includes needle. Can be used to assert the absence of a subset of properties in an object while ignoring inherited properties.
- *
- * @param haystack
- * @param needle
- * @param message Message to display on error.
- */
- notOwnInclude(haystack: any, needle: any, message?: string): void;
-
- /**
- * Asserts that haystack includes needle. Can be used to assert the inclusion of a subset of properties in an object while ignoring inherited properties and checking for deep
- *
- * @param haystack
- * @param needle
- * @param message Message to display on error.
- */
- deepOwnInclude(haystack: any, needle: any, message?: string): void;
-
- /**
- * Asserts that haystack includes needle. Can be used to assert the absence of a subset of properties in an object while ignoring inherited properties and checking for deep equality.
- *
- * @param haystack
- * @param needle
- * @param message Message to display on error.
- */
- notDeepOwnInclude(haystack: any, needle: any, message?: string): void;
-
- /**
- * Asserts that value matches the regular expression regexp.
- *
- * @param value Actual value.
- * @param regexp Potential match of value.
- * @param message Message to display on error.
- */
- match(value: string, regexp: RegExp, message?: string): void;
-
- /**
- * Asserts that value does not match the regular expression regexp.
- *
- * @param value Actual value.
- * @param regexp Potential match of value.
- * @param message Message to display on error.
- */
- notMatch(expected: any, regexp: RegExp, message?: string): void;
-
- /**
- * Asserts that object has a property named by property.
- *
- * T Type of object.
- * @param object Container object.
- * @param property Potential contained property of object.
- * @param message Message to display on error.
- */
- property<T>(object: T, property: string, /* keyof T */ message?: string): void;
-
- /**
- * Asserts that object has a property named by property.
- *
- * T Type of object.
- * @param object Container object.
- * @param property Potential contained property of object.
- * @param message Message to display on error.
- */
- notProperty<T>(object: T, property: string, /* keyof T */ message?: string): void;
-
- /**
- * Asserts that object has a property named by property, which can be a string
- * using dot- and bracket-notation for deep reference.
- *
- * T Type of object.
- * @param object Container object.
- * @param property Potential contained property of object.
- * @param message Message to display on error.
- */
- deepProperty<T>(object: T, property: string, message?: string): void;
-
- /**
- * Asserts that object does not have a property named by property, which can be a
- * string using dot- and bracket-notation for deep reference.
- *
- * T Type of object.
- * @param object Container object.
- * @param property Potential contained property of object.
- * @param message Message to display on error.
- */
- notDeepProperty<T>(object: T, property: string, message?: string): void;
-
- /**
- * Asserts that object has a property named by property with value given by value.
- *
- * T Type of object.
- * V Type of value.
- * @param object Container object.
- * @param property Potential contained property of object.
- * @param value Potential expected property value.
- * @param message Message to display on error.
- */
- propertyVal<T, V>(object: T, property: string, /* keyof T */ value: V, message?: string): void;
-
- /**
- * Asserts that object has a property named by property with value given by value.
- *
- * T Type of object.
- * V Type of value.
- * @param object Container object.
- * @param property Potential contained property of object.
- * @param value Potential expected property value.
- * @param message Message to display on error.
- */
- notPropertyVal<T, V>(object: T, property: string, /* keyof T */ value: V, message?: string): void;
-
- /**
- * Asserts that object has a property named by property, which can be a string
- * using dot- and bracket-notation for deep reference.
- *
- * T Type of object.
- * V Type of value.
- * @param object Container object.
- * @param property Potential contained property of object.
- * @param value Potential expected property value.
- * @param message Message to display on error.
- */
- deepPropertyVal<T, V>(object: T, property: string, value: V, message?: string): void;
-
- /**
- * Asserts that object does not have a property named by property, which can be a
- * string using dot- and bracket-notation for deep reference.
- *
- * T Type of object.
- * V Type of value.
- * @param object Container object.
- * @param property Potential contained property of object.
- * @param value Potential expected property value.
- * @param message Message to display on error.
- */
- notDeepPropertyVal<T, V>(object: T, property: string, value: V, message?: string): void;
-
- /**
- * Asserts that object has a length property with the expected value.
- *
- * T Type of object.
- * @param object Container object.
- * @param length Potential expected length of object.
- * @param message Message to display on error.
- */
- lengthOf<T extends { readonly length?: number | undefined }>(object: T, length: number, message?: string): void;
-
- /**
- * Asserts that fn will throw an error.
- *
- * @param fn Function that may throw.
- * @param errMsgMatcher Expected error message matcher.
- * @param ignored Ignored parameter.
- * @param message Message to display on error.
- */
- throw(fn: () => void, errMsgMatcher?: RegExp | string, ignored?: any, message?: string): void;
-
- /**
- * Asserts that fn will throw an error.
- *
- * @param fn Function that may throw.
- * @param errorLike Expected error constructor or error instance.
- * @param errMsgMatcher Expected error message matcher.
- * @param message Message to display on error.
- */
- throw(
- fn: () => void,
- errorLike?: ErrorConstructor | Error | null,
- errMsgMatcher?: RegExp | string | null,
- message?: string,
- ): void;
-
- /**
- * Asserts that fn will throw an error.
- *
- * @param fn Function that may throw.
- * @param errMsgMatcher Expected error message matcher.
- * @param ignored Ignored parameter.
- * @param message Message to display on error.
- */
- throws(fn: () => void, errMsgMatcher?: RegExp | string, ignored?: any, message?: string): void;
-
- /**
- * Asserts that fn will throw an error.
- *
- * @param fn Function that may throw.
- * @param errorLike Expected error constructor or error instance.
- * @param errMsgMatcher Expected error message matcher.
- * @param message Message to display on error.
- */
- throws(
- fn: () => void,
- errorLike?: ErrorConstructor | Error | null,
- errMsgMatcher?: RegExp | string | null,
- message?: string,
- ): void;
-
- /**
- * Asserts that fn will throw an error.
- *
- * @param fn Function that may throw.
- * @param errMsgMatcher Expected error message matcher.
- * @param ignored Ignored parameter.
- * @param message Message to display on error.
- */
- Throw(fn: () => void, errMsgMatcher?: RegExp | string, ignored?: any, message?: string): void;
-
- /**
- * Asserts that fn will throw an error.
- *
- * @param fn Function that may throw.
- * @param errorLike Expected error constructor or error instance.
- * @param errMsgMatcher Expected error message matcher.
- * @param message Message to display on error.
- */
- Throw(
- fn: () => void,
- errorLike?: ErrorConstructor | Error | null,
- errMsgMatcher?: RegExp | string | null,
- message?: string,
- ): void;
-
- /**
- * Asserts that fn will not throw an error.
- *
- * @param fn Function that may throw.
- * @param errMsgMatcher Expected error message matcher.
- * @param ignored Ignored parameter.
- * @param message Message to display on error.
- */
- doesNotThrow(fn: () => void, errMsgMatcher?: RegExp | string, ignored?: any, message?: string): void;
-
- /**
- * Asserts that fn will not throw an error.
- *
- * @param fn Function that may throw.
- * @param errorLike Expected error constructor or error instance.
- * @param errMsgMatcher Expected error message matcher.
- * @param message Message to display on error.
- */
- doesNotThrow(
- fn: () => void,
- errorLike?: ErrorConstructor | Error | null,
- errMsgMatcher?: RegExp | string | null,
- message?: string,
- ): void;
-
- /**
- * Compares two values using operator.
- *
- * @param val1 Left value during comparison.
- * @param operator Comparison operator.
- * @param val2 Right value during comparison.
- * @param message Message to display on error.
- */
- operator(val1: OperatorComparable, operator: Operator, val2: OperatorComparable, message?: string): void;
-
- /**
- * Asserts that the target is equal to expected, to within a +/- delta range.
- *
- * @param actual Actual value
- * @param expected Potential expected value.
- * @param delta Maximum differenced between values.
- * @param message Message to display on error.
- */
- closeTo(actual: number, expected: number, delta: number, message?: string): void;
-
- /**
- * Asserts that the target is equal to expected, to within a +/- delta range.
- *
- * @param actual Actual value
- * @param expected Potential expected value.
- * @param delta Maximum differenced between values.
- * @param message Message to display on error.
- */
- approximately(act: number, exp: number, delta: number, message?: string): void;
-
- /**
- * Asserts that set1 and set2 have the same members. Order is not take into account.
- *
- * T Type of set values.
- * @param set1 Actual set of values.
- * @param set2 Potential expected set of values.
- * @param message Message to display on error.
- */
- sameMembers<T>(set1: T[], set2: T[], message?: string): void;
-
- /**
- * Asserts that set1 and set2 have the same members using deep equality checking.
- * Order is not take into account.
- *
- * T Type of set values.
- * @param set1 Actual set of values.
- * @param set2 Potential expected set of values.
- * @param message Message to display on error.
- */
- sameDeepMembers<T>(set1: T[], set2: T[], message?: string): void;
-
- /**
- * Asserts that set1 and set2 have the same members in the same order.
- * Uses a strict equality check (===).
- *
- * T Type of set values.
- * @param set1 Actual set of values.
- * @param set2 Potential expected set of values.
- * @param message Message to display on error.
- */
- sameOrderedMembers<T>(set1: T[], set2: T[], message?: string): void;
-
- /**
- * Asserts that set1 and set2 dont have the same members in the same order.
- * Uses a strict equality check (===).
- *
- * T Type of set values.
- * @param set1 Actual set of values.
- * @param set2 Potential expected set of values.
- * @param message Message to display on error.
- */
- notSameOrderedMembers<T>(set1: T[], set2: T[], message?: string): void;
-
- /**
- * Asserts that set1 and set2 have the same members in the same order.
- * Uses a deep equality check.
- *
- * T Type of set values.
- * @param set1 Actual set of values.
- * @param set2 Potential expected set of values.
- * @param message Message to display on error.
- */
- sameDeepOrderedMembers<T>(set1: T[], set2: T[], message?: string): void;
-
- /**
- * Asserts that set1 and set2 dont have the same members in the same order.
- * Uses a deep equality check.
- *
- * T Type of set values.
- * @param set1 Actual set of values.
- * @param set2 Potential expected set of values.
- * @param message Message to display on error.
- */
- notSameDeepOrderedMembers<T>(set1: T[], set2: T[], message?: string): void;
-
- /**
- * Asserts that subset is included in superset in the same order beginning with the first element in superset.
- * Uses a strict equality check (===).
- *
- * T Type of set values.
- * @param superset Actual set of values.
- * @param subset Potential contained set of values.
- * @param message Message to display on error.
- */
- includeOrderedMembers<T>(superset: T[], subset: T[], message?: string): void;
-
- /**
- * Asserts that subset isnt included in superset in the same order beginning with the first element in superset.
- * Uses a strict equality check (===).
- *
- * T Type of set values.
- * @param superset Actual set of values.
- * @param subset Potential contained set of values.
- * @param message Message to display on error.
- */
- notIncludeOrderedMembers<T>(superset: T[], subset: T[], message?: string): void;
-
- /**
- * Asserts that subset is included in superset in the same order beginning with the first element in superset.
- * Uses a deep equality check.
- *
- * T Type of set values.
- * @param superset Actual set of values.
- * @param subset Potential contained set of values.
- * @param message Message to display on error.
- */
- includeDeepOrderedMembers<T>(superset: T[], subset: T[], message?: string): void;
-
- /**
- * Asserts that subset isnt included in superset in the same order beginning with the first element in superset.
- * Uses a deep equality check.
- *
- * T Type of set values.
- * @param superset Actual set of values.
- * @param subset Potential contained set of values.
- * @param message Message to display on error.
- */
- notIncludeDeepOrderedMembers<T>(superset: T[], subset: T[], message?: string): void;
-
- /**
- * Asserts that subset is included in superset. Order is not take into account.
- *
- * T Type of set values.
- * @param superset Actual set of values.
- * @param subset Potential contained set of values.
- * @param message Message to display on error.
- */
- includeMembers<T>(superset: T[], subset: T[], message?: string): void;
-
- /**
- * Asserts that subset isnt included in superset in any order.
- * Uses a strict equality check (===). Duplicates are ignored.
- *
- * T Type of set values.
- * @param superset Actual set of values.
- * @param subset Potential not contained set of values.
- * @param message Message to display on error.
- */
- notIncludeMembers<T>(superset: T[], subset: T[], message?: string): void;
-
- /**
- * Asserts that subset is included in superset using deep equality checking.
- * Order is not take into account.
- *
- * T Type of set values.
- * @param superset Actual set of values.
- * @param subset Potential contained set of values.
- * @param message Message to display on error.
- */
- includeDeepMembers<T>(superset: T[], subset: T[], message?: string): void;
-
- /**
- * Asserts that non-object, non-array value inList appears in the flat array list.
- *
- * T Type of list values.
- * @param inList Value expected to be in the list.
- * @param list List of values.
- * @param message Message to display on error.
- */
- oneOf<T>(inList: T, list: T[], message?: string): void;
-
- /**
- * Asserts that a function changes the value of a property.
- *
- * T Type of object.
- * @param modifier Function to run.
- * @param object Container object.
- * @param property Property of object expected to be modified.
- * @param message Message to display on error.
- */
- changes<T>(modifier: Function, object: T, property: string, /* keyof T */ message?: string): void;
-
- /**
- * Asserts that a function does not change the value of a property.
- *
- * T Type of object.
- * @param modifier Function to run.
- * @param object Container object.
- * @param property Property of object expected not to be modified.
- * @param message Message to display on error.
- */
- doesNotChange<T>(modifier: Function, object: T, property: string, /* keyof T */ message?: string): void;
-
- /**
- * Asserts that a function increases an object property.
- *
- * T Type of object.
- * @param modifier Function to run.
- * @param object Container object.
- * @param property Property of object expected to be increased.
- * @param message Message to display on error.
- */
- increases<T>(modifier: Function, object: T, property: string, /* keyof T */ message?: string): void;
-
- /**
- * Asserts that a function does not increase an object property.
- *
- * T Type of object.
- * @param modifier Function to run.
- * @param object Container object.
- * @param property Property of object expected not to be increased.
- * @param message Message to display on error.
- */
- doesNotIncrease<T>(modifier: Function, object: T, property: string, /* keyof T */ message?: string): void;
-
- /**
- * Asserts that a function decreases an object property.
- *
- * T Type of object.
- * @param modifier Function to run.
- * @param object Container object.
- * @param property Property of object expected to be decreased.
- * @param message Message to display on error.
- */
- decreases<T>(modifier: Function, object: T, property: string, /* keyof T */ message?: string): void;
-
- /**
- * Asserts that a function does not decrease an object property.
- *
- * T Type of object.
- * @param modifier Function to run.
- * @param object Container object.
- * @param property Property of object expected not to be decreased.
- * @param message Message to display on error.
- */
- doesNotDecrease<T>(modifier: Function, object: T, property: string, /* keyof T */ message?: string): void;
-
- /**
- * Asserts if value is not a false value, and throws if it is a true value.
- *
- * T Type of object.
- * @param object Actual value.
- * @param message Message to display on error.
- * @remarks This is added to allow for chai to be a drop-in replacement for
- * Nodes assert class.
- */
- ifError<T>(object: T, message?: string): void;
-
- /**
- * Asserts that object is extensible (can have new properties added to it).
- *
- * T Type of object
- * @param object Actual value.
- * @param message Message to display on error.
- */
- isExtensible<T>(object: T, message?: string): void;
-
- /**
- * Asserts that object is extensible (can have new properties added to it).
- *
- * T Type of object
- * @param object Actual value.
- * @param message Message to display on error.
- */
- extensible<T>(object: T, message?: string): void;
-
- /**
- * Asserts that object is not extensible.
- *
- * T Type of object
- * @param object Actual value.
- * @param message Message to display on error.
- */
- isNotExtensible<T>(object: T, message?: string): void;
-
- /**
- * Asserts that object is not extensible.
- *
- * T Type of object
- * @param object Actual value.
- * @param message Message to display on error.
- */
- notExtensible<T>(object: T, message?: string): void;
-
- /**
- * Asserts that object is sealed (can have new properties added to it
- * and its existing properties cannot be removed).
- *
- * T Type of object
- * @param object Actual value.
- * @param message Message to display on error.
- */
- isSealed<T>(object: T, message?: string): void;
-
- /**
- * Asserts that object is sealed (can have new properties added to it
- * and its existing properties cannot be removed).
- *
- * T Type of object
- * @param object Actual value.
- * @param message Message to display on error.
- */
- sealed<T>(object: T, message?: string): void;
-
- /**
- * Asserts that object is not sealed.
- *
- * T Type of object
- * @param object Actual value.
- * @param message Message to display on error.
- */
- isNotSealed<T>(object: T, message?: string): void;
-
- /**
- * Asserts that object is not sealed.
- *
- * T Type of object
- * @param object Actual value.
- * @param message Message to display on error.
- */
- notSealed<T>(object: T, message?: string): void;
-
- /**
- * Asserts that object is frozen (cannot have new properties added to it
- * and its existing properties cannot be removed).
- *
- * T Type of object
- * @param object Actual value.
- * @param message Message to display on error.
- */
- isFrozen<T>(object: T, message?: string): void;
-
- /**
- * Asserts that object is frozen (cannot have new properties added to it
- * and its existing properties cannot be removed).
- *
- * T Type of object
- * @param object Actual value.
- * @param message Message to display on error.
- */
- frozen<T>(object: T, message?: string): void;
-
- /**
- * Asserts that object is not frozen (cannot have new properties added to it
- * and its existing properties cannot be removed).
- *
- * T Type of object
- * @param object Actual value.
- * @param message Message to display on error.
- */
- isNotFrozen<T>(object: T, message?: string): void;
-
- /**
- * Asserts that object is not frozen (cannot have new properties added to it
- * and its existing properties cannot be removed).
- *
- * T Type of object
- * @param object Actual value.
- * @param message Message to display on error.
- */
- notFrozen<T>(object: T, message?: string): void;
-
- /**
- * Asserts that the target does not contain any values. For arrays and
- * strings, it checks the length property. For Map and Set instances, it
- * checks the size property. For non-function objects, it gets the count
- * of own enumerable string keys.
- *
- * T Type of object
- * @param object Actual value.
- * @param message Message to display on error.
- */
- isEmpty<T>(object: T, message?: string): void;
-
- /**
- * Asserts that the target contains values. For arrays and strings, it checks
- * the length property. For Map and Set instances, it checks the size property.
- * For non-function objects, it gets the count of own enumerable string keys.
- *
- * T Type of object.
- * @param object Object to test.
- * @param message Message to display on error.
- */
- isNotEmpty<T>(object: T, message?: string): void;
-
- /**
- * Asserts that `object` has at least one of the `keys` provided.
- * You can also provide a single object instead of a `keys` array and its keys
- * will be used as the expected set of keys.
- *
- * T Type of object.
- * @param object Object to test.
- * @param keys Keys to check
- * @param message Message to display on error.
- */
- hasAnyKeys<T>(object: T, keys: Array<Object | string> | { [key: string]: any }, message?: string): void;
-
- /**
- * Asserts that `object` has all and only all of the `keys` provided.
- * You can also provide a single object instead of a `keys` array and its keys
- * will be used as the expected set of keys.
- *
- * T Type of object.
- * @param object Object to test.
- * @param keys Keys to check
- * @param message Message to display on error.
- */
- hasAllKeys<T>(object: T, keys: Array<Object | string> | { [key: string]: any }, message?: string): void;
-
- /**
- * Asserts that `object` has all of the `keys` provided but may have more keys not listed.
- * You can also provide a single object instead of a `keys` array and its keys
- * will be used as the expected set of keys.
- *
- * T Type of object.
- * @param object Object to test.
- * @param keys Keys to check
- * @param message Message to display on error.
- */
- containsAllKeys<T>(object: T, keys: Array<Object | string> | { [key: string]: any }, message?: string): void;
-
- /**
- * Asserts that `object` has none of the `keys` provided.
- * You can also provide a single object instead of a `keys` array and its keys
- * will be used as the expected set of keys.
- *
- * T Type of object.
- * @param object Object to test.
- * @param keys Keys to check
- * @param message Message to display on error.
- */
- doesNotHaveAnyKeys<T>(object: T, keys: Array<Object | string> | { [key: string]: any }, message?: string): void;
-
- /**
- * Asserts that `object` does not have at least one of the `keys` provided.
- * You can also provide a single object instead of a `keys` array and its keys
- * will be used as the expected set of keys.
- *
- * T Type of object.
- * @param object Object to test.
- * @param keys Keys to check
- * @param message Message to display on error.
- */
- doesNotHaveAllKeys<T>(object: T, keys: Array<Object | string> | { [key: string]: any }, message?: string): void;
-
- /**
- * Asserts that `object` has at least one of the `keys` provided.
- * Since Sets and Maps can have objects as keys you can use this assertion to perform
- * a deep comparison.
- * You can also provide a single object instead of a `keys` array and its keys
- * will be used as the expected set of keys.
- *
- * T Type of object.
- * @param object Object to test.
- * @param keys Keys to check
- * @param message Message to display on error.
- */
- hasAnyDeepKeys<T>(object: T, keys: Array<Object | string> | { [key: string]: any }, message?: string): void;
-
- /**
- * Asserts that `object` has all and only all of the `keys` provided.
- * Since Sets and Maps can have objects as keys you can use this assertion to perform
- * a deep comparison.
- * You can also provide a single object instead of a `keys` array and its keys
- * will be used as the expected set of keys.
- *
- * T Type of object.
- * @param object Object to test.
- * @param keys Keys to check
- * @param message Message to display on error.
- */
- hasAllDeepKeys<T>(object: T, keys: Array<Object | string> | { [key: string]: any }, message?: string): void;
-
- /**
- * Asserts that `object` contains all of the `keys` provided.
- * Since Sets and Maps can have objects as keys you can use this assertion to perform
- * a deep comparison.
- * You can also provide a single object instead of a `keys` array and its keys
- * will be used as the expected set of keys.
- *
- * T Type of object.
- * @param object Object to test.
- * @param keys Keys to check
- * @param message Message to display on error.
- */
- containsAllDeepKeys<T>(
- object: T,
- keys: Array<Object | string> | { [key: string]: any },
- message?: string,
- ): void;
-
- /**
- * Asserts that `object` contains all of the `keys` provided.
- * Since Sets and Maps can have objects as keys you can use this assertion to perform
- * a deep comparison.
- * You can also provide a single object instead of a `keys` array and its keys
- * will be used as the expected set of keys.
- *
- * T Type of object.
- * @param object Object to test.
- * @param keys Keys to check
- * @param message Message to display on error.
- */
- doesNotHaveAnyDeepKeys<T>(
- object: T,
- keys: Array<Object | string> | { [key: string]: any },
- message?: string,
- ): void;
-
- /**
- * Asserts that `object` contains all of the `keys` provided.
- * Since Sets and Maps can have objects as keys you can use this assertion to perform
- * a deep comparison.
- * You can also provide a single object instead of a `keys` array and its keys
- * will be used as the expected set of keys.
- *
- * T Type of object.
- * @param object Object to test.
- * @param keys Keys to check
- * @param message Message to display on error.
- */
- doesNotHaveAllDeepKeys<T>(
- object: T,
- keys: Array<Object | string> | { [key: string]: any },
- message?: string,
- ): void;
-
- /**
- * Asserts that object has a direct or inherited property named by property,
- * which can be a string using dot- and bracket-notation for nested reference.
- *
- * T Type of object.
- * @param object Object to test.
- * @param property Property to test.
- * @param message Message to display on error.
- */
- nestedProperty<T>(object: T, property: string, message?: string): void;
-
- /**
- * Asserts that object does not have a property named by property,
- * which can be a string using dot- and bracket-notation for nested reference.
- * The property cannot exist on the object nor anywhere in its prototype chain.
- *
- * T Type of object.
- * @param object Object to test.
- * @param property Property to test.
- * @param message Message to display on error.
- */
- notNestedProperty<T>(object: T, property: string, message?: string): void;
-
- /**
- * Asserts that object has a property named by property with value given by value.
- * property can use dot- and bracket-notation for nested reference. Uses a strict equality check (===).
- *
- * T Type of object.
- * @param object Object to test.
- * @param property Property to test.
- * @param value Value to test.
- * @param message Message to display on error.
- */
- nestedPropertyVal<T>(object: T, property: string, value: any, message?: string): void;
-
- /**
- * Asserts that object does not have a property named by property with value given by value.
- * property can use dot- and bracket-notation for nested reference. Uses a strict equality check (===).
- *
- * T Type of object.
- * @param object Object to test.
- * @param property Property to test.
- * @param value Value to test.
- * @param message Message to display on error.
- */
- notNestedPropertyVal<T>(object: T, property: string, value: any, message?: string): void;
-
- /**
- * Asserts that object has a property named by property with a value given by value.
- * property can use dot- and bracket-notation for nested reference. Uses a deep equality check.
- *
- * T Type of object.
- * @param object Object to test.
- * @param property Property to test.
- * @param value Value to test.
- * @param message Message to display on error.
- */
- deepNestedPropertyVal<T>(object: T, property: string, value: any, message?: string): void;
-
- /**
- * Asserts that object does not have a property named by property with value given by value.
- * property can use dot- and bracket-notation for nested reference. Uses a deep equality check.
- *
- * T Type of object.
- * @param object Object to test.
- * @param property Property to test.
- * @param value Value to test.
- * @param message Message to display on error.
- */
- notDeepNestedPropertyVal<T>(object: T, property: string, value: any, message?: string): void;
- }
-
- export interface Config {
- /**
- * Default: false
- */
- includeStack: boolean;
-
- /**
- * Default: true
- */
- showDiff: boolean;
-
- /**
- * Default: 40
- */
- truncateThreshold: number;
-
- /**
- * Default: true
- */
- useProxy: boolean;
-
- /**
- * Default: ['then', 'catch', 'inspect', 'toJSON']
- */
- proxyExcludedKeys: string[];
- }
-
- export class AssertionError {
- constructor(message: string, _props?: any, ssf?: Function);
- name: string;
- message: string;
- showDiff: boolean;
- stack: string;
- }
-}
-
-declare const chai: Chai.ChaiStatic;
-
-declare module "chai" {
- export = chai;
-}
-
-// interface Object {
-// should: Chai.Assertion;
-// }
+/* SIGNAL: We already have @types/chai and it conflicts with this file */