interface ConfigOptions
extends Partial<Args.ParsedFlags>

Resolved settings handed to setup in place of an argv, by the JS API and by anyone else assembling a run programmatically. Every CLI flag has a field here — they are the same settings, arrived at by a different route — plus the two things argv cannot express: a working directory, and esbuild plugins as live objects rather than module specifiers.

inputs are raw targets, exactly as they would be typed on the command line: relative or absolute, .html fixtures, file.ts#34 line targets. Args.applyInputs classifies them.

import * as Config from './config.ts';

const options: Config.ConfigOptions = { inputs: ['test/cart-test.ts#34'], filter: 'Cart' };
options.inputs; // ['test/cart-test.ts#34'] — resolved against `cwd` by setup()

Properties

optional
cwd: string

Directory the project root and relative inputs resolve against. Defaults to process.cwd().

optional
esbuildPlugins: EsbuildPlugin[]

Live esbuild plugin objects, appended after any resolved from package.json#qunitx.plugins.

optional
reporters: ReporterInstance[]

Reporter instances for this run, replacing the one reporter/junit would have selected. The way a caller observes a run as data rather than as text.

Cancels the run when it fires. Placed on state.signal; setup never subscribes to it.

optional
console: Console

Where reporter text and # diagnostics go. Defaults to the process streams; pass silentConsole for a run that prints nothing at all. Named apart from output — the build directory — because they are unrelated and both spellings are load-bearing.

Usage

import { type ConfigOptions } from "lib/setup/config.ts";