/**
 * Package surface manifest types — framework-level pin of which package
 * surfaces the symbol-resolution preflight (W0198) reads against.
 *
 * Tasks reference packages by name; version metadata lives here, not on
 * the task. A semver-major bump is an editorial event (regenerate cached
 * surfaces, run the historical comparison set, ride a release) — patch
 * and minor releases within a pinned major flow silently because semver
 * disallows the export removals that would change a deduction outcome.
 *
 * @see docs/design-docs/two-stage-grader-symbol-preflight.md
 */
/**
 * One in-scope package, pinned to a semver-major range.
 *
 * - `pkg` — npm package name (e.g. `"@sanity/sdk-react"`).
 * - `semverPin` — semver range pinned to a single major (e.g. `"^2.0.0"`).
 *   The W0198 resolver answers existence questions against this major;
 *   minor and patch upgrades within the major do not require a manifest
 *   bump because semver disallows export removal.
 */
export interface PackageSurfaceEntry {
    pkg: string;
    semverPin: string;
}
/**
 * Framework-level package-surface manifest.
 *
 * Authored once in `packages/eval/config/package-surface.ts` via
 * `definePackageSurface(...)`. Per-task pin overrides remain a deliberate
 * future extension point; the shape leaves room for them but the initial
 * slice does not implement them.
 */
export interface PackageSurfaceConfig {
    packages: PackageSurfaceEntry[];
}
