import { ValidationResult, FileSystem } from './validate-helpers'; export interface ResolvedItem { item: Record; /** The file this item was declared in (the $ref target, or the definition file for inline items). */ sourceFile: string; } export declare function resolveRefs(items: unknown[], defFilePath: string, r: ValidationResult, fs: FileSystem, _visited?: Set): ResolvedItem[]; /** * Walks a definition's tests and resolves two kinds of action-level `$ref`: * * 1. **Action ref** (all action types) — `$ref` on `step.action` loads a * fragment with `{ action: {...} }` and shallow-merges inline overrides. * * 2. **UI sub-step ref** — `$ref` entries inside a UI action's `steps` array * load fragments with `{ steps: [...] }` and splice them in place. * * Both fragment types accept optional `name` and `description` metadata. * * Must be called BEFORE validateDefinition() so the validator and * screenshot-uniqueness checker see the fully expanded results. */ export declare function resolveActionRefs(definition: Record, defFilePath: string, r: ValidationResult, fs: FileSystem, _visited?: Set): void;