import { buildProviderStatusReport } from './provider-status.js'; import type { ProviderRouteId } from './provider-platform/types.js'; interface EnvVarStatus { name: string; /** * True when at least one provider route DECLARES this key. It is not a * blocking requirement: you only need the keys for the route you intend to * render on, so a missing one is a warning naming that route. */ required: boolean; /** The route ids this key gates, empty for advisory keys no route declares. */ gatesRoutes: ProviderRouteId[]; present: boolean; source: 'process' | '.env.local' | '.env' | 'missing'; } interface DependencyStatus { name: string; available: boolean; path?: string; } export interface VideoEnvironmentReport { generatedAt: string; workspaceRoot: string; /** The application tree the build row was checked against. */ applicationRoot: string; envSources: string[]; envVars: EnvVarStatus[]; geminiKeyPool: { count: number; recommended: number; ok: boolean; }; localDependencies: DependencyStatus[]; /** * The interpreter actually running, against the floor `package.json` * declares. Unlike a provider key, a Node below the floor cannot run the tool * at all, so this one does block. */ nodeVersion: { current: string; declaredMinimum: string | null; satisfied: boolean; }; build: { path: string; exists: boolean; ageHours?: number; fresh?: boolean; }; providers: ReturnType; blockingIssues: string[]; warnings: string[]; ok: boolean; } interface BuildVideoEnvironmentReportOptions { workspaceRoot?: string; /** * Where the `vclaw` application itself lives. The build-output row checks * THIS root, not the workspace: on an installed package the compiled CLI sits * in the package directory, so checking the workspace (or cwd) reported * "Build output missing: dist/cli/vclaw.js" and a blanket ok:false on a * perfectly healthy install. Same resolver the Veo sidecar uses. */ applicationRoot?: string; env?: NodeJS.ProcessEnv; now?: Date; probeExecutable?: (name: string) => string | undefined; /** The running interpreter version (e.g. `v20.10.0`); default process.version. */ nodeVersion?: string; } export declare function buildVideoEnvironmentReport(options?: BuildVideoEnvironmentReportOptions): VideoEnvironmentReport; export {}; //# sourceMappingURL=verify-env.d.ts.map