import { MaybeMockedDeep } from '@vitest/spy'; import { b as ModuleMockOptions, a as ModuleMockFactoryWithHelper } from './types.d-D_aRZRdy.js'; import { g as MockedModule, c as MockerRegistry, M as MockedModuleType } from './registry.d-D765pazg.js'; interface CompilerHintsOptions { /** * This is the key used to access the globalThis object in the worker. * Unlike `globalThisAccessor` in other APIs, this is not injected into the script. * ```ts * // globalThisKey: '__my_variable__' produces: * globalThis['__my_variable__'] * // globalThisKey: '"__my_variable__"' produces: * globalThis['"__my_variable__"'] // notice double quotes * ``` * @default '__vitest_mocker__' */ globalThisKey?: string; } interface ModuleMockerCompilerHints { hoisted: (factory: () => T) => T; mock: (path: string | Promise, factory?: ModuleMockOptions | ModuleMockFactoryWithHelper) => void; unmock: (path: string | Promise) => void; doMock: (path: string | Promise, factory?: ModuleMockOptions | ModuleMockFactoryWithHelper) => void; doUnmock: (path: string | Promise) => void; importActual: (path: string) => Promise; importMock: (path: string) => Promise>; } declare function createCompilerHints(options?: CompilerHintsOptions): ModuleMockerCompilerHints; interface ModuleMockerInterceptor { register: (module: MockedModule) => Promise; delete: (url: string) => Promise; invalidate: () => Promise; } declare class ModuleMocker { private interceptor; private rpc; private spyOn; private config; protected registry: MockerRegistry; private queue; private mockedIds; constructor(interceptor: ModuleMockerInterceptor, rpc: ModuleMockerRPC, spyOn: (obj: any, method: string | symbol) => any, config: ModuleMockerConfig); prepare(): Promise; resolveFactoryModule(id: string): Promise>; getFactoryModule(id: string): any; invalidate(): Promise; importActual(id: string, importer: string): Promise; importMock(rawId: string, importer: string): Promise; mockObject(object: Record, moduleType?: MockedModuleType): Record; queueMock(rawId: string, importer: string, factoryOrOptions?: ModuleMockOptions | (() => any)): void; queueUnmock(id: string, importer: string): void; // We need to await mock registration before importing the actual module // In case there is a mocked module in the import chain wrapDynamicImport(moduleFactory: () => Promise): Promise; private resolveMockPath; } interface ResolveIdResult { id: string; url: string; optimized: boolean; } interface ResolveMockResult { mockType: MockedModuleType; resolvedId: string; resolvedUrl: string; redirectUrl?: string | null; needsInterop?: boolean; } interface ModuleMockerRPC { invalidate: (ids: string[]) => Promise; resolveId: (id: string, importer: string) => Promise; resolveMock: (id: string, importer: string, options: { mock: "spy" | "factory" | "auto" }) => Promise; } interface ModuleMockerConfig { root: string; } export { ModuleMocker as b, createCompilerHints as c }; export type { CompilerHintsOptions as C, ModuleMockerInterceptor as M, ResolveIdResult as R, ModuleMockerCompilerHints as a, ModuleMockerConfig as d, ModuleMockerRPC as e, ResolveMockResult as f };