/* eslint-disable @typescript-eslint/no-empty-object-type -- augmenting vitest matchers */ import 'vitest'; import type { TMat2D } from './src/typedefs'; import type { cloneDeepWith } from 'es-toolkit/compat'; import type { FabricImage } from './src/shapes/Image'; type ObjectOptions = ExtendedOptions & { includeDefaultValues?: boolean; }; type ExtendedOptions = { cloneDeepWith?: Parameters>[1]; } & object; interface CustomMatchers { toMatchSnapshot(propertiesOrHint?: ExtendedOptions, hint?: string): R; toMatchObjectSnapshot(propertiesOrHint?: ObjectOptions, hint?: string): R; toMatchSVGSnapshot(hint?: string): R; toEqualRoundedMatrix(expected: TMat2D, precision?: number): R; toEqualSVG(expected: string): void; toSameImageObject(expected: Partial): void; } declare module 'vitest' { interface Assertion extends CustomMatchers {} interface AsymmetricMatchersContaining extends CustomMatchers {} }