import { test as vitestTest } from "vitest"; import { type TestFunction, type TestOptions, type VitestUtils } from "vitest"; import { type Context } from "../api/context"; import { type SerializedTrace } from "../naite/naite"; export interface BootstrapOptions { /** * Sonamu 초기화 모드를 지정합니다. * - true (기본값): 테스팅 모드로 초기화 (빠름, Syncer/Task 생략) * - false: 전체 초기화 (Syncer, Task, EntityManager 등 모두 로드) * * migrator, syncer, template 등의 테스트에서는 false를 사용합니다. */ forTesting?: boolean; } export declare function bootstrap(vi: VitestUtils, options?: BootstrapOptions): void; export declare function runWithContext(context: Context | null, fn: () => Promise): Promise; export declare function runWithMockContext(fn: () => Promise): Promise; type TestResult = Promise>; type TestCallbackResult = void | Promise; type TestEach = (cases: readonly TArgs[]) => (title: string, fn: (...args: TArgs) => TestCallbackResult) => void; type TestWrapper = { (title: string, fn: TestFunction, options?: TestOptions): TestResult; skip: (title: string, fn: TestFunction, options?: TestOptions) => TestResult; only: (title: string, fn: TestFunction, options?: TestOptions) => TestResult; todo: (title: string) => void; each: TestEach; }; type TestAsWrapper = { (user: User, title: string, fn: TestFunction, options?: TestOptions): TestResult; skip: (user: User, title: string, fn: TestFunction, options?: TestOptions) => TestResult; only: (user: User, title: string, fn: TestFunction, options?: TestOptions) => TestResult; todo: (title: string) => void; }; declare module "vitest" { interface TaskMeta { traces: SerializedTrace[]; } } export declare const test: TestWrapper; export declare const testAs: TestAsWrapper; export {}; //# sourceMappingURL=bootstrap.d.ts.map