import tsconfigPaths, { PluginOptions } from "vite-tsconfig-paths";
import { Plugin, UserWorkspaceConfig, ViteUserConfig, defineConfig, defineProject, mergeConfig } from "vitest/config";
//#region src/defaults.d.ts
/**
* Default configuration for {@linkcode vitestProject}.
*
* @since 0.0.5
* @public
*/
declare const vitestProjectDefaults: {
/**
* @default { 'import.meta.vitest': 'undefined' }
*/
readonly define: {
/**
* @default 'undefined'
*/
readonly 'import.meta.vitest': "undefined";
};
readonly test: {
/**
* @default true
*/
readonly clearMocks: true;
/**
* @default true
*/
readonly globals: true;
/**
* @default { enabled: true, tsconfig: './tsconfig.json' }
*/
readonly typecheck: {
/**
* @default true
*/
readonly enabled: true;
/**
* @default './tsconfig.json'
*/
readonly tsconfig: "./tsconfig.json";
};
/**
* @default true
*/
readonly unstubEnvs: true;
/**
* @default true
*/
readonly unstubGlobals: true;
};
};
/**
* Default configuration for {@linkcode vitestConfig}.
*
* @since 0.0.5
* @public
*/
declare const vitestConfigDefaults: {
readonly test: {
/**
* @default { include: ['src/**\/*.?(c|m)[jt]s?(x)'] }
*/
readonly coverage: {
/**
* @default ['src/**\/*.?(c|m)[jt]s?(x)']
*/
readonly include: ["src/**/*.?(c|m)[jt]s?(x)"];
};
/**
* @default process.env.GITHUB_ACTIONS ? [['default', { summary: false }], ['github-actions', {}]] : [['default', {}]]
*/
readonly reporters: [["default", {
readonly summary: false;
}], ["github-actions", {}]] | [["default", {}]];
/**
* @default false
*/
readonly watch: false;
/**
* @default true
*/
readonly clearMocks: true;
/**
* @default true
*/
readonly globals: true;
/**
* @default { enabled: true, tsconfig: './tsconfig.json' }
*/
readonly typecheck: {
/**
* @default true
*/
readonly enabled: true;
/**
* @default './tsconfig.json'
*/
readonly tsconfig: "./tsconfig.json";
};
/**
* @default true
*/
readonly unstubEnvs: true;
/**
* @default true
*/
readonly unstubGlobals: true;
};
/**
* @default { 'import.meta.vitest': 'undefined' }
*/
readonly define: {
/**
* @default 'undefined'
*/
readonly 'import.meta.vitest': "undefined";
};
};
//#endregion
//#region src/plugins.d.ts
/**
* Default configuration for {@linkcode tsconfigPaths}.
*
* @since 0.0.5
* @public
*/
declare const tsconfigPathsOptions: {
readonly configNames: ["tsconfig.json"];
readonly projects: ["./tsconfig.json"];
};
/**
* plugins for {@linkcode vitestProjectDefaults}.
*
* @since 0.0.5
* @public
*/
declare const plugins: [Plugin];
//#endregion
//#region src/shareableConfigs.d.ts
/**
* Shareable {@link https://vitest.dev | **Vitest**}
* configuration tailored for projects using TypeScript.
*
* @example
*
#### __ECMAScript Modules (ESM) usage inside a file like `vitest.config.mts` or `vitest.config.mjs`__
*
* ```ts
* import { vitestConfig } from '@aryaemami59/vitest-config'
*
* export default vitestConfig
* ```
*
* @example
* #### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using `require`)__
*
* ```ts
* const { vitestConfig } = require('@aryaemami59/vitest-config')
*
* module.exports = vitestConfig
* ```
*
* @example
* #### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using dynamic import)__
*
* ```ts
* module.exports = (async () =>
* (await import('@aryaemami59/vitest-config')).vitestConfig)()
* ```
*
* @example
* #### __CommonJS (CJS) usage inside a file like `vitest.config.cts` (using import and export assignment)__
*
* ```ts
* import vitestConfigModule = require('@aryaemami59/vitest-config')
* import vitestConfig = vitestConfigModule.vitestConfig
*
* export = vitestConfig
* ```
*
* @since 0.0.3
* @public
*/
declare const vitestConfig: ViteUserConfig;
/**
* Shareable {@link https://vitest.dev | **Vitest**}
* configuration tailored for projects using TypeScript.
*
* @example
* #### __ECMAScript Modules (ESM) usage inside a file like `vitest.config.mts` or `vitest.config.mjs`__
*
* ```ts
* import { vitestProject } from '@aryaemami59/vitest-config'
*
* export default vitestProject
* ```
*
* @example
* #### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using `require`)__
*
* ```ts
* const { vitestProject } = require('@aryaemami59/vitest-config')
*
* module.exports = vitestProject
* ```
*
* @example
* #### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using dynamic import)__
*
* ```ts
* module.exports = (async () =>
* (await import('@aryaemami59/vitest-config')).vitestProject)()
* ```
*
* @example
* #### __CommonJS (CJS) usage inside a file like `vitest.config.cts` (using import and export assignment)__
*
* ```ts
* import vitestConfigModule = require('@aryaemami59/vitest-config')
* import vitestProject = vitestConfigModule.vitestProject
*
* export = vitestProject
* ```
*
* @since 0.0.5
* @public
*/
declare const vitestProject: UserWorkspaceConfig;
//#endregion
//#region src/utils.d.ts
/**
* A function that returns {@linkcode vitestConfig}
* along with optional additional overrides.
*
* @param [additionalOverrides={}] - **Optional** additional overrides to apply to the configuration.
* @returns An augmented version of the default {@linkcode vitestConfig}, incorporating any provided overrides.
*
* @example
* #### __ECMAScript Modules (ESM) usage inside a file like `vitest.config.mts` or `vitest.config.mjs`__
*
* ```ts
* import { createVitestConfig } from '@aryaemami59/vitest-config'
*
* export default createVitestConfig({
* test: {
* environment: 'jsdom',
* // Other additional overrides
* },
* })
* ```
*
* @example
* #### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using `require`)__
*
* ```ts
* const { createVitestConfig } = require('@aryaemami59/vitest-config')
*
* module.exports = createVitestConfig({
* test: {
* environment: 'jsdom',
* // Other additional overrides
* },
* })
* ```
*
* @example
* #### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using dynamic import)__
*
* ```ts
* module.exports = (async () =>
* (await import('@aryaemami59/vitest-config')).createVitestConfig({
* test: {
* environment: 'jsdom',
* // Other additional overrides
* },
* }))()
* ```
*
* @example
* #### __CommonJS (CJS) usage inside a file like `vitest.config.cts` (using import and export assignment)__
*
* ```ts
* import vitestConfigModule = require('@aryaemami59/vitest-config')
* import createVitestConfig = vitestConfigModule.createVitestConfig
*
* export = createVitestConfig({
* test: {
* environment: 'jsdom',
* // Other additional overrides
* },
* })
* ```
*
* @since 0.0.3
* @public
*/
declare const createVitestConfig: (additionalOverrides?: ViteUserConfig) => ViteUserConfig;
/**
* A function that returns {@linkcode vitestProject}
* along with optional additional overrides.
*
* @param [additionalOverrides={}] - **Optional** additional overrides to apply to the configuration.
* @returns An augmented version of the default {@linkcode vitestProject}, incorporating any provided overrides.
*
* @example
* #### __ECMAScript Modules (ESM) usage inside a file like `vitest.config.mts` or `vitest.config.mjs`__
*
* ```ts
* import { createVitestProject } from '@aryaemami59/vitest-config'
*
* export default createVitestProject({
* test: {
* environment: 'jsdom',
* // Other additional overrides
* },
* })
* ```
*
* @example
* #### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using `require`)__
*
* ```ts
* const { createVitestProject } = require('@aryaemami59/vitest-config')
*
* module.exports = createVitestProject({
* test: {
* environment: 'jsdom',
* // Other additional overrides
* },
* })
* ```
*
* @example
* #### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using dynamic import)__
*
* ```ts
* module.exports = (async () =>
* (await import('@aryaemami59/vitest-config')).createVitestProject({
* test: {
* environment: 'jsdom',
* // Other additional overrides
* },
* }))()
* ```
*
* @example
* #### __CommonJS (CJS) usage inside a file like `vitest.config.cts` (using import and export assignment)__
*
* ```ts
* import vitestConfigModule = require('@aryaemami59/vitest-config')
* import createVitestProject = vitestConfigModule.createVitestProject
*
* export = createVitestProject({
* test: {
* environment: 'jsdom',
* // Other additional overrides
* },
* })
* ```
*
* @since 0.0.5
* @public
*/
declare const createVitestProject: (additionalOverrides?: UserWorkspaceConfig) => UserWorkspaceConfig;
//#endregion
export { type Plugin, type PluginOptions, type UserWorkspaceConfig, type ViteUserConfig, createVitestConfig, createVitestProject, defineConfig, defineProject, mergeConfig, plugins, tsconfigPaths, tsconfigPathsOptions, vitestConfig, vitestConfigDefaults, vitestProject, vitestProjectDefaults };
//# sourceMappingURL=index.d.cts.map