import type { AxisConfig } from "../types/config.js"; import type { ArtifactEntry } from "../types/output.js"; import type { Logger } from "../types/output.js"; import type { Scenario } from "../types/scenario.js"; /** * Compute the effective artifact glob patterns for a single run by merging * top-level config patterns with per-scenario patterns. Order is preserved * (config first, scenario second) and duplicates are removed. */ export declare function resolveArtifactPatterns(axisConfig: AxisConfig, scenario: Scenario): string[]; /** * Walk `workspace`, match files against `patterns`, copy each match into * `destDir` preserving its relative path, and return the manifest entries * with file contents base64-encoded so the HTML report can preview/download * them even when opened from disk. */ export declare function captureArtifacts(workspace: string, patterns: string[], destDir: string, logger?: Logger): ArtifactEntry[]; /** * Walk a directory recursively, invoking `onFile` with each file's path * relative to `root` (forward-slash normalized). Skips symlinks to avoid * following loops outside the workspace. */ export declare function walk(root: string, rel: string, onFile: (relPath: string) => void): void; /** * Convert a glob pattern to a RegExp anchored to the start and end of the * input. Supported syntax: * - `**` any number of path segments (including zero) * - `*` any chars except `/` * - `?` any single char except `/` * - `[abc]` / `[a-z]` character classes * - everything else is matched literally * * Patterns are matched against forward-slash relative paths. */ export declare function globToRegExp(pattern: string): RegExp; export declare function inferMimeType(filePath: string): string; //# sourceMappingURL=artifacts.d.ts.map