diff --git a/packages/type-testing/README.md b/packages/type-testing/README.md index 5c42e49..f3f8fb7 100644 --- a/packages/type-testing/README.md +++ b/packages/type-testing/README.md @@ -337,6 +337,117 @@ expect().toBeNullable() // passes expect().toBeOptional() // passes ``` +## Vitest Integration + +The library provides a native Vitest integration with custom matchers for a more familiar testing experience. + +### Installation + +```bash +npm install @deessejs/type-testing +``` + +### Quick Start + +```typescript +import { expectType } from '@deessejs/type-testing/vitest' + +// Type equality +expectType().toBeType() +expectType().toNotBeType() + +// Type extends +expectType().toExtend() +expectType().toNotExtend() + +// Property check +expectType<{ a: string }>().toHaveProperty('a') + +// Special types +expectType().toBeAny() +expectType().toBeNever() +expectType().toBeUnknown() +expectType().toBeVoid() +expectType().toBeUndefined() +expectType().toBeNull() + +// Nullable/Optional +expectType().toBeNullable() +expectType<{ a?: string }>().toBeOptional() + +// Structure +expectType().toBeUnion() +expectType<[string, number]>().toBeTuple() +expectType().toBeArray() + +// Inhabitation +expectType().toBeInhabited() +expectType().toBeUninhabited() +``` + +### Using with Vitest's expect.extend + +You can also extend Vitest's expect with the matchers: + +```typescript +import { expect, test } from 'vitest' +import { toBeType, toHaveProperty } from '@deessejs/type-testing/vitest' + +expect.extend({ toBeType, toHaveProperty }) + +test('type checks', () => { + expect().toBeType() + expect<{ a: string }>().toHaveProperty('a') +}) +``` + +### Setup File + +For automatic matcher registration, add the setup file to your Vitest config: + +```typescript +// vitest.config.ts +import { defineConfig } from 'vitest/config' + +export default defineConfig({ + test: { + setupFiles: ['@deessejs/type-testing/vitest/setup'] + } +}) +``` + +Or import it in your setup file: + +```typescript +// setup.ts +import '@deessejs/type-testing/vitest/setup' +``` + +### Available Matchers + +| Matcher | Description | +|---------|-------------| +| `toBeType()` | Asserts type equality | +| `toNotBeType()` | Asserts type inequality | +| `toExtend()` | Asserts type extends another | +| `toNotExtend()` | Asserts type does not extend another | +| `toHaveProperty()` | Asserts property exists | +| `toBeAny()` | Asserts type is `any` | +| `toBeNever()` | Asserts type is `never` | +| `toBeUnknown()` | Asserts type is `unknown` | +| `toBeVoid()` | Asserts type is `void` | +| `toBeUndefined()` | Asserts type is `undefined` | +| `toBeNull()` | Asserts type is `null` | +| `toBeNullable()` | Asserts type is nullable | +| `toBeOptional()` | Asserts type is optional | +| `toBeUnion()` | Asserts type is a union | +| `toBeTuple()` | Asserts type is a tuple | +| `toBeArray()` | Asserts type is an array | +| `toBeInhabited()` | Asserts type is inhabited | +| `toBeUninhabited()` | Asserts type is uninhabited | + +> **Note**: The `toNotBeType` matcher follows a different pattern than standard Vitest (`not.toBeType`). This is intentional as it provides better TypeScript inference. Use `toNotBeType` instead of `.not.toBeType`. + ## Compile-time Assertions ### ExpectTrue & ExpectEqual diff --git a/packages/type-testing/package.json b/packages/type-testing/package.json index 6c18aa5..db1e108 100644 --- a/packages/type-testing/package.json +++ b/packages/type-testing/package.json @@ -16,6 +16,14 @@ ".": { "import": "./dist/index.js", "types": "./dist/index.d.ts" + }, + "./vitest": { + "import": "./dist/vitest/index.js", + "types": "./dist/vitest/index.d.ts" + }, + "./vitest/setup": { + "import": "./dist/vitest/setup.js", + "types": "./dist/vitest/setup.d.ts" } }, "scripts": { diff --git a/packages/type-testing/src/vitest/index.ts b/packages/type-testing/src/vitest/index.ts new file mode 100644 index 0000000..a0c0da7 --- /dev/null +++ b/packages/type-testing/src/vitest/index.ts @@ -0,0 +1,27 @@ +/** + * Vitest integration for type-testing. + * + * @packageDocumentation + */ + +export { + toBeType, + toNotBeType, + toExtend, + toNotExtend, + toHaveProperty, + toBeAny, + toBeNever, + toBeUnknown, + toBeVoid, + toBeUndefined, + toBeNull, + toBeNullable, + toBeOptional, + toBeUnion, + toBeTuple, + toBeArray, + toBeInhabited, + toBeUninhabited, + expectType +} from './matchers.js' diff --git a/packages/type-testing/src/vitest/matchers.ts b/packages/type-testing/src/vitest/matchers.ts new file mode 100644 index 0000000..abf65fa --- /dev/null +++ b/packages/type-testing/src/vitest/matchers.ts @@ -0,0 +1,183 @@ +/** + * Custom Vitest matchers for type testing. + * + * These matchers provide compile-time type checking. At runtime, they return + * undefined to allow the test to pass. The actual type checking happens + * at compile time through TypeScript's type system. + */ + +import type { Equal, NotEqual } from '../types/equality.js' +import type { IsAny, IsNever, IsUnknown, IsVoid, IsUndefined, IsNull, IsNullable, IsOptional } from '../types/special.js' +import type { IsUnion, IsTuple, IsArray } from '../types/union.js' +import type { IsInhabited, IsUninhabited } from '../types/inhabitation.js' +import type { HasProperty } from '../types/property.js' +import type { CheckPass } from '../api/check.js' + +/** + * Creates a Vitest matcher for type equality. + * + * @example + * ```typescript + * import { expect, test } from 'vitest' + * import { toBeType } from '@deessejs/type-testing/vitest' + * + * expect.extend({ toBeType }) + * + * test('type check', () => { + * expectType().toBeType() + * }) + * ``` + */ +export function toBeType(): Equal extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for type inequality. + */ +export function toNotBeType(): NotEqual extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for type extends check. + */ +export function toExtend(): T extends U ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for type not extends check. + */ +export function toNotExtend(): T extends U ? never : CheckPass { + return undefined as any +} + +/** + * Creates a Vitest matcher for property existence. + */ +export function toHaveProperty(): HasProperty extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for any type check. + */ +export function toBeAny(): IsAny extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for never type check. + */ +export function toBeNever(): IsNever extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for unknown type check. + */ +export function toBeUnknown(): IsUnknown extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for void type check. + */ +export function toBeVoid(): IsVoid extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for undefined type check. + */ +export function toBeUndefined(): IsUndefined extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for null type check. + */ +export function toBeNull(): IsNull extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for nullable type check. + */ +export function toBeNullable(): IsNullable extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for optional type check. + */ +export function toBeOptional(): IsOptional extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for union type check. + */ +export function toBeUnion(): IsUnion extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for tuple type check. + */ +export function toBeTuple(): IsTuple extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for array type check. + */ +export function toBeArray(): IsArray extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for inhabited type check. + */ +export function toBeInhabited(): IsInhabited extends true ? CheckPass : never { + return undefined as any +} + +/** + * Creates a Vitest matcher for uninhabited type check. + */ +export function toBeUninhabited(): IsUninhabited extends true ? CheckPass : never { + return undefined as any +} + +/** + * Helper function to create a type holder for testing. + * + * @example + * ```typescript + * expectType().toBeType() + * ``` + */ +export function expectType(): { + toBeType(): Equal extends true ? CheckPass : never + toNotBeType(): NotEqual extends true ? CheckPass : never + toExtend(): T extends U ? CheckPass : never + toNotExtend(): T extends U ? never : CheckPass + toHaveProperty(): HasProperty extends true ? CheckPass : never + toBeAny(): IsAny extends true ? CheckPass : never + toBeNever(): IsNever extends true ? CheckPass : never + toBeUnknown(): IsUnknown extends true ? CheckPass : never + toBeVoid(): IsVoid extends true ? CheckPass : never + toBeUndefined(): IsUndefined extends true ? CheckPass : never + toBeNull(): IsNull extends true ? CheckPass : never + toBeNullable(): IsNullable extends true ? CheckPass : never + toBeOptional(): IsOptional extends true ? CheckPass : never + toBeUnion(): IsUnion extends true ? CheckPass : never + toBeTuple(): IsTuple extends true ? CheckPass : never + toBeArray(): IsArray extends true ? CheckPass : never + toBeInhabited(): IsInhabited extends true ? CheckPass : never + toBeUninhabited(): IsUninhabited extends true ? CheckPass : never +} { + return {} as any +} diff --git a/packages/type-testing/src/vitest/setup.ts b/packages/type-testing/src/vitest/setup.ts new file mode 100644 index 0000000..561228a --- /dev/null +++ b/packages/type-testing/src/vitest/setup.ts @@ -0,0 +1,19 @@ +/** + * Vitest setup for type-testing. + * + * This module provides integration with Vitest. + * + * @example + * ```typescript + * // vitest.config.ts + * import { defineConfig } from 'vitest/config' + * + * export default defineConfig({ + * test: { + * setupFiles: ['@deessejs/type-testing/vitest/setup'] + * } + * }) + * ``` + */ + +export { expectType } from './matchers.js' diff --git a/packages/type-testing/tests/vitest-setup.test.ts b/packages/type-testing/tests/vitest-setup.test.ts new file mode 100644 index 0000000..bc00346 --- /dev/null +++ b/packages/type-testing/tests/vitest-setup.test.ts @@ -0,0 +1,17 @@ +/** + * Vitest setup module tests. + */ + +import { describe, it, expect } from 'vitest' + +// Import from the setup module +import '../src/vitest/setup' + +describe('Vitest setup', () => { + it('should export expectType from setup', async () => { + const { expectType } = await import('../src/vitest/setup') + expect(expectType).toBeDefined() + const result = expectType() + expect(result).toBeDefined() + }) +}) diff --git a/packages/type-testing/tests/vitest.test.ts b/packages/type-testing/tests/vitest.test.ts new file mode 100644 index 0000000..ea78c86 --- /dev/null +++ b/packages/type-testing/tests/vitest.test.ts @@ -0,0 +1,340 @@ +/** + * Vitest integration tests. + */ + +import { describe, it, expect } from 'vitest' +import { + toBeType, + toNotBeType, + toExtend, + toNotExtend, + toHaveProperty, + toBeAny, + toBeNever, + toBeUnknown, + toBeVoid, + toBeUndefined, + toBeNull, + toBeNullable, + toBeOptional, + toBeUnion, + toBeTuple, + toBeArray, + toBeInhabited, + toBeUninhabited, + expectType as exportedExpectType +} from '../src/vitest' + +describe('Vitest matchers runtime', () => { + describe('toBeType', () => { + it('should be callable at runtime', () => { + const result = toBeType() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeType + const _test: Test = true + }) + }) + + describe('toNotBeType', () => { + it('should be callable at runtime', () => { + const result = toNotBeType() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toNotBeType + const _test: Test = true + }) + }) + + describe('toExtend', () => { + it('should be callable at runtime', () => { + const result = toExtend() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toExtend + const _test: Test = true + }) + }) + + describe('toNotExtend', () => { + it('should be callable at runtime', () => { + const result = toNotExtend() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toNotExtend + const _test: Test = true + }) + }) + + describe('toHaveProperty', () => { + it('should be callable at runtime', () => { + const result = toHaveProperty<{ a: string }, 'a'>() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toHaveProperty<{ a: string }, 'a'> + const _test: Test = true + }) + }) + + describe('toBeAny', () => { + it('should be callable at runtime', () => { + const result = toBeAny() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeAny + const _test: Test = true + }) + }) + + describe('toBeNever', () => { + it('should be callable at runtime', () => { + const result = toBeNever() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeNever + const _test: Test = true + }) + }) + + describe('toBeUnknown', () => { + it('should be callable at runtime', () => { + const result = toBeUnknown() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeUnknown + const _test: Test = true + }) + }) + + describe('toBeVoid', () => { + it('should be callable at runtime', () => { + const result = toBeVoid() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeVoid + const _test: Test = true + }) + }) + + describe('toBeUndefined', () => { + it('should be callable at runtime', () => { + const result = toBeUndefined() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeUndefined + const _test: Test = true + }) + }) + + describe('toBeNull', () => { + it('should be callable at runtime', () => { + const result = toBeNull() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeNull + const _test: Test = true + }) + }) + + describe('toBeNullable', () => { + it('should be callable at runtime', () => { + const result = toBeNullable() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeNullable + const _test: Test = true + }) + }) + + describe('toBeOptional', () => { + it('should be callable at runtime', () => { + const result = toBeOptional<{ a?: string }>() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeOptional<{ a?: string }> + const _test: Test = true + }) + }) + + describe('toBeUnion', () => { + it('should be callable at runtime', () => { + const result = toBeUnion() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeUnion + const _test: Test = true + }) + }) + + describe('toBeTuple', () => { + it('should be callable at runtime', () => { + const result = toBeTuple<[string, number]>() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeTuple<[string, number]> + const _test: Test = true + }) + }) + + describe('toBeArray', () => { + it('should be callable at runtime', () => { + const result = toBeArray() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeArray + const _test: Test = true + }) + }) + + describe('toBeInhabited', () => { + it('should be callable at runtime', () => { + const result = toBeInhabited() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeInhabited + const _test: Test = true + }) + }) + + describe('toBeUninhabited', () => { + it('should be callable at runtime', () => { + const result = toBeUninhabited() + expect(result).toBeUndefined() + }) + + it('should have correct type signature', () => { + type Test = typeof toBeUninhabited + const _test: Test = true + }) + }) + + describe('expectType', () => { + it('should be callable at runtime', () => { + const result = exportedExpectType() + expect(result).toBeDefined() + }) + + it('should be exported from vitest module', () => { + const _test = exportedExpectType + }) + + it('should provide type holder with toBeType', () => { + type Test = ReturnType['toBeType']> + const _test: Test = true + }) + + it('should provide type holder with toNotBeType', () => { + type Test = ReturnType['toNotBeType']> + const _test: Test = true + }) + + it('should provide type holder with toExtend', () => { + type Test = ReturnType['toExtend']> + const _test: Test = true + }) + + it('should provide type holder with toHaveProperty', () => { + type Test = ReturnType['toHaveProperty']> + const _test: Test = true + }) + + it('should provide type holder with toBeAny', () => { + type Test = ReturnType['toBeAny']> + const _test: Test = true + }) + + it('should provide type holder with toBeNever', () => { + type Test = ReturnType['toBeNever']> + const _test: Test = true + }) + + it('should provide type holder with toBeUnknown', () => { + type Test = ReturnType['toBeUnknown']> + const _test: Test = true + }) + + it('should provide type holder with toBeVoid', () => { + type Test = ReturnType['toBeVoid']> + const _test: Test = true + }) + + it('should provide type holder with toBeUndefined', () => { + type Test = ReturnType['toBeUndefined']> + const _test: Test = true + }) + + it('should provide type holder with toBeNull', () => { + type Test = ReturnType['toBeNull']> + const _test: Test = true + }) + + it('should provide type holder with toBeNullable', () => { + type Test = ReturnType['toBeNullable']> + const _test: Test = true + }) + + it('should provide type holder with toBeOptional', () => { + type Test = ReturnType['toBeOptional']> + const _test: Test = true + }) + + it('should provide type holder with toBeUnion', () => { + type Test = ReturnType['toBeUnion']> + const _test: Test = true + }) + + it('should provide type holder with toBeTuple', () => { + type Test = ReturnType['toBeTuple']> + const _test: Test = true + }) + + it('should provide type holder with toBeArray', () => { + type Test = ReturnType['toBeArray']> + const _test: Test = true + }) + + it('should provide type holder with toBeInhabited', () => { + type Test = ReturnType['toBeInhabited']> + const _test: Test = true + }) + + it('should provide type holder with toBeUninhabited', () => { + type Test = ReturnType['toBeUninhabited']> + const _test: Test = true + }) + }) +}) diff --git a/packages/type-testing/tsconfig.tsbuildinfo b/packages/type-testing/tsconfig.tsbuildinfo index 73c5bd3..cd11097 100644 --- a/packages/type-testing/tsconfig.tsbuildinfo +++ b/packages/type-testing/tsconfig.tsbuildinfo @@ -1 +1 @@ -{"fileNames":["../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","./src/types/special.ts","./src/types/equality.ts","./src/types/union.ts","./src/types/inhabitation.ts","./src/types/property.ts","./src/types/function.ts","./src/types/length.ts","./src/types/deep.ts","./src/types/index.ts","./src/api/check.ts","./src/api/assert.ts","./src/api/expect.ts","./src/api/index.ts","./src/utils.ts","./src/runtime/comparison.ts","./src/runtime/index.ts","./src/index.ts"],"fileIdsList":[[58,59,60,61,62,67],[58,59,60,61,62,63,64],[59],[67,68,69],[66,70,71,73],[72],[58],[58,59,60,61,62,63,64,65]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"e9a6e5b111706d3f80cba260e6e73d85446bab8e5a37887e949799fb40020e6f","signature":"f74c0c6303fe6d13e627656ba50102b4a14f4ec673fb2f849731996accaf664f"},{"version":"25d1923c6bd56275f287f5a6f83c906e424221f30ac8e165c48560af86f9abf0","signature":"86611bd6064e47f50a9b6c59e77324663bb73f5898de3120bcc68cc7eec3a01a"},{"version":"1fabc25980fac2dac5d8acd20f3a0a6814bbefd8f9737f6448175aef1f56d594","signature":"30d8b1b909032513bc606577cdcc89861b031b32003e0e2db2fd3b03b6486035"},{"version":"0bec569e660e096ded7027a67d3f30d3133a8b1d6b9739945d01a82314e84211","signature":"841d40ad9edf5a1eefcc388690de635c7afedefde0550a958d15b53a716eff8d"},{"version":"f5f32278421ccf6363c54ce1860c463e6a41b5fcdc1f8f825242b497e633b719","signature":"e5ae22dd38f6afe818b473da7a6767354703f592290afc92984fae440a6fc5a5"},{"version":"385df2eeb76b714111e51c0310aad7372d0735f2c1a6ebd1f2939e6b56989880","signature":"a6bc74308f8828a22a3490c6ff97d1bfe1247bbda94669c1df44039b53b2f89e"},{"version":"3706da0afa7a2cbf50224d08cd7b8ed7286e379335e147b3838eb75ea778c472","signature":"6e7af0a71d3b4e286e96117ee438b98ce562e2a8f1b19954809638b59e6ed1f2"},{"version":"8045406291ccae22e83840d02406675b4317c253a8b5e07483b38fa4d6605ea4","signature":"bcc063adf122f7710f28fb63ae678f7a67249337e0af06388e65a0b6b582c5b6"},{"version":"b4ac4eee2a005ea110eb300abe1e1677b18c563204f1ac1a9b77e85aee7822a2","signature":"66b49a028622d637120e41633979189ae18476b7d7b55c8a24f7c24c69a38dfe"},{"version":"2e7bdad691203c50ea72e664002f533897188e4dbff652ab5bdd53db078a137d","signature":"905a85d8a2b07323ed0317b734133957dec225e0b7d47ad5287afbcec69dd6f2"},{"version":"d2d7d3a5a603557a972442dfb2f3c79c702a4270016d1ea44a4004ec4fe5a834","signature":"87e80de062defad4bb98081f208f015f4461aa4816c79c8e5c5f1f09a7c9a8c5"},{"version":"9f6d118d31a392657cae6bb0a3b24927b78b13d567d81454eca70cd27fa19122","signature":"cfd315f7d76da02c61decba44aed3581b4156d9626501966dec44b3d2e77173b"},{"version":"733b77bf4c9513af3123a920bd243234ca155daa7e574dab8b91ec750ca21391","signature":"b3a67362ff9962ab5590ef9d8bc7f00833b4c70ac344214f8b984648561a3641"},{"version":"88179ff2d5b80463d4c0bf51e8ee8d13cbdf47e25a2e0621f2256a40a4a50e33","signature":"cb1d04a61a8c00ebcf5919a4f4675b7020342e2392075aec7b23ef3c856f7653"},{"version":"389125bffce1a2bb592c74c89a9e143ed23844a9e13aa1f2311a15d56857c35e","signature":"896126a9358d5ea6e7fd7a1c73b908023ed55898bbd185bfab2daeb04f26fa87"},{"version":"32948f63f53b163b5aae8165dced7aacd97c6a964bc4d431045477635e4c16fb","signature":"0d69b5cf35da740a13681703cd80219298c37f31c8026184c51da5bc17351957"},{"version":"92231c7fa06a51f876a1a31fcbc22bea0a1a712af53b150f05822403104ca500","signature":"dce9027cfb036733b782dfd6900fd844d34f8aa2b8f7c84d5e6dc277f0a40aaf"}],"root":[[58,74]],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":99,"noUncheckedIndexedAccess":true,"outDir":"./dist","rootDir":"./src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":9},"referencedMap":[[68,1],[67,2],[69,3],[70,4],[74,5],[73,6],[59,7],[66,8],[62,3],[58,3],[71,3]],"latestChangedDtsFile":"./dist/utils.d.ts","version":"5.9.3"} \ No newline at end of file +{"fileNames":["../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","./src/types/special.ts","./src/types/equality.ts","./src/types/union.ts","./src/types/inhabitation.ts","./src/types/property.ts","./src/types/function.ts","./src/types/length.ts","./src/types/deep.ts","./src/types/index.ts","./src/api/check.ts","./src/api/assert.ts","./src/api/expect.ts","./src/api/index.ts","./src/utils.ts","./src/runtime/comparison.ts","./src/runtime/index.ts","./src/index.ts","./src/vitest/matchers.ts","./src/vitest/index.ts","./src/vitest/setup.ts"],"fileIdsList":[[58,59,60,61,62,67],[58,59,60,61,62,63,64],[59],[67,68,69],[66,70,71,73],[72],[58],[58,59,60,61,62,63,64,65],[75]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"e9a6e5b111706d3f80cba260e6e73d85446bab8e5a37887e949799fb40020e6f","signature":"f74c0c6303fe6d13e627656ba50102b4a14f4ec673fb2f849731996accaf664f"},{"version":"25d1923c6bd56275f287f5a6f83c906e424221f30ac8e165c48560af86f9abf0","signature":"86611bd6064e47f50a9b6c59e77324663bb73f5898de3120bcc68cc7eec3a01a"},{"version":"1fabc25980fac2dac5d8acd20f3a0a6814bbefd8f9737f6448175aef1f56d594","signature":"30d8b1b909032513bc606577cdcc89861b031b32003e0e2db2fd3b03b6486035"},{"version":"0bec569e660e096ded7027a67d3f30d3133a8b1d6b9739945d01a82314e84211","signature":"841d40ad9edf5a1eefcc388690de635c7afedefde0550a958d15b53a716eff8d"},{"version":"f5f32278421ccf6363c54ce1860c463e6a41b5fcdc1f8f825242b497e633b719","signature":"e5ae22dd38f6afe818b473da7a6767354703f592290afc92984fae440a6fc5a5"},{"version":"385df2eeb76b714111e51c0310aad7372d0735f2c1a6ebd1f2939e6b56989880","signature":"a6bc74308f8828a22a3490c6ff97d1bfe1247bbda94669c1df44039b53b2f89e"},{"version":"3706da0afa7a2cbf50224d08cd7b8ed7286e379335e147b3838eb75ea778c472","signature":"6e7af0a71d3b4e286e96117ee438b98ce562e2a8f1b19954809638b59e6ed1f2"},{"version":"8045406291ccae22e83840d02406675b4317c253a8b5e07483b38fa4d6605ea4","signature":"bcc063adf122f7710f28fb63ae678f7a67249337e0af06388e65a0b6b582c5b6"},{"version":"b4ac4eee2a005ea110eb300abe1e1677b18c563204f1ac1a9b77e85aee7822a2","signature":"66b49a028622d637120e41633979189ae18476b7d7b55c8a24f7c24c69a38dfe"},{"version":"2e7bdad691203c50ea72e664002f533897188e4dbff652ab5bdd53db078a137d","signature":"905a85d8a2b07323ed0317b734133957dec225e0b7d47ad5287afbcec69dd6f2"},{"version":"d2d7d3a5a603557a972442dfb2f3c79c702a4270016d1ea44a4004ec4fe5a834","signature":"87e80de062defad4bb98081f208f015f4461aa4816c79c8e5c5f1f09a7c9a8c5"},{"version":"9f6d118d31a392657cae6bb0a3b24927b78b13d567d81454eca70cd27fa19122","signature":"cfd315f7d76da02c61decba44aed3581b4156d9626501966dec44b3d2e77173b"},{"version":"733b77bf4c9513af3123a920bd243234ca155daa7e574dab8b91ec750ca21391","signature":"b3a67362ff9962ab5590ef9d8bc7f00833b4c70ac344214f8b984648561a3641"},{"version":"88179ff2d5b80463d4c0bf51e8ee8d13cbdf47e25a2e0621f2256a40a4a50e33","signature":"cb1d04a61a8c00ebcf5919a4f4675b7020342e2392075aec7b23ef3c856f7653"},{"version":"389125bffce1a2bb592c74c89a9e143ed23844a9e13aa1f2311a15d56857c35e","signature":"896126a9358d5ea6e7fd7a1c73b908023ed55898bbd185bfab2daeb04f26fa87"},{"version":"32948f63f53b163b5aae8165dced7aacd97c6a964bc4d431045477635e4c16fb","signature":"0d69b5cf35da740a13681703cd80219298c37f31c8026184c51da5bc17351957"},{"version":"92231c7fa06a51f876a1a31fcbc22bea0a1a712af53b150f05822403104ca500","signature":"dce9027cfb036733b782dfd6900fd844d34f8aa2b8f7c84d5e6dc277f0a40aaf"},{"version":"cf666c965d866078f92084c817b3e0d0898da9a4e2a63a19d5beeb10ed5ce63b","signature":"f17285432644a6afa70bfa839b5370bfdfaf1dd26bfa1559be9f47efc13244d0"},{"version":"6da846ad8e50d43045b312cd8123cf279ce36a37febd0e7197b49de79b5ab0be","signature":"97e5520a514fbe3dcae63147d49d5c7f41acc71057c06a68b99a372243fc321e"},{"version":"bedbff8ca6441523b456a5db03e056e2f4e31c74af33b249ef9e5ecd536fbe1e","signature":"9ddd5fbc4c937f3348cb279f3c7fb2f107cd79e9b7f49b0c6e8df29dc46930a5"}],"root":[[58,77]],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":99,"noUncheckedIndexedAccess":true,"outDir":"./dist","rootDir":"./src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":9},"referencedMap":[[68,1],[67,2],[69,3],[70,4],[74,5],[73,6],[59,7],[66,8],[62,3],[58,3],[71,3],[76,9],[75,1],[77,9]],"latestChangedDtsFile":"./dist/vitest/index.d.ts","version":"5.9.3"} \ No newline at end of file