import { expectType } from 'ts-data-forge'; import { type StrictExclude } from 'ts-type-forge'; // eslint-disable-next-line vitest/no-importing-vitest-globals import { type assert as originalAssert } from 'vitest'; test('original assert exposes only supported APIs', () => { // transformer-ignore-next-line expectType< StrictExclude< keyof typeof originalAssert, | 'approximately' | 'changes' | 'changesBy' | 'closeTo' | 'containsAllDeepKeys' | 'containsAllKeys' | 'containsSubset' | 'containSubset' | 'decreases' | 'decreasesButNotBy' | 'decreasesBy' | 'deepEqual' // remove | 'deepInclude' | 'deepNestedInclude' | 'deepNestedPropertyVal' | 'deepOwnInclude' | 'deepProperty' | 'deepPropertyVal' | 'deepStrictEqual' | 'doesNotChange' | 'doesNotContainSubset' | 'doesNotDecrease' | 'doesNotDecreaseBy' | 'doesNotHaveAllDeepKeys' | 'doesNotHaveAllKeys' | 'doesNotHaveAnyDeepKeys' | 'doesNotHaveAnyKeys' | 'doesNotIncrease' | 'doesNotThrow' | 'equal' // remove | 'exists' | 'extensible' | 'fail' | 'frozen' | 'hasAllDeepKeys' | 'hasAllKeys' | 'hasAnyDeepKeys' | 'hasAnyKeys' | 'ifError' | 'include' | 'includeDeepMembers' | 'includeDeepOrderedMembers' | 'includeMembers' | 'includeOrderedMembers' | 'increases' | 'increasesButNotBy' | 'increasesBy' | 'instanceOf' | 'isAbove' | 'isArray' | 'isAtLeast' | 'isAtMost' | 'isBelow' | 'isBoolean' | 'isDefined' | 'isEmpty' | 'isExtensible' | 'isFalse' | 'isFinite' | 'isFrozen' | 'isFunction' | 'isNaN' | 'isNotArray' | 'isNotBoolean' | 'isNotEmpty' | 'isNotExtensible' | 'isNotFalse' | 'isNotFrozen' | 'isNotFunction' | 'isNotNaN' | 'isNotNull' | 'isNotNumber' | 'isNotObject' | 'isNotOk' // remove | 'isNotSealed' | 'isNotString' | 'isNotTrue' | 'isNull' | 'isNumber' | 'isObject' | 'isOk' // remove | 'isSealed' | 'isString' | 'isTrue' | 'isUndefined' | 'lengthOf' | 'match' | 'nestedInclude' | 'nestedProperty' | 'nestedPropertyVal' | 'notDeepEqual' | 'notDeepInclude' | 'notDeepNestedInclude' | 'notDeepNestedPropertyVal' | 'notDeepOwnInclude' | 'notDeepProperty' | 'notDeepPropertyVal' | 'notEqual' // remove | 'notExists' | 'notExtensible' | 'notFrozen' | 'notInclude' | 'notIncludeDeepMembers' | 'notIncludeDeepOrderedMembers' | 'notIncludeMembers' | 'notIncludeOrderedMembers' | 'notInstanceOf' | 'notMatch' | 'notNestedInclude' | 'notNestedProperty' | 'notNestedPropertyVal' | 'notOk' // remove | 'notOwnInclude' | 'notProperty' | 'notPropertyVal' | 'notSameDeepMembers' | 'notSameDeepOrderedMembers' | 'notSameOrderedMembers' | 'notSealed' | 'notStrictEqual' | 'notTypeOf' | 'ok' // remove | 'oneOf' | 'operator' | 'ownInclude' | 'property' | 'propertyVal' | 'sameDeepMembers' | 'sameDeepOrderedMembers' | 'sameMembers' | 'sameOrderedMembers' | 'sealed' | 'strictEqual' | 'throw' | 'Throw' | 'throws' | 'typeOf' >, never >('='); assert.strictEqual(true, true); });