export type ToolName = "rg" | "fd"; export type TargetKey = | "linux-x64" | "linux-arm64" | "darwin-x64" | "darwin-arm64" | "win32-x64" | "win32-arm64"; export interface RuntimeTarget { key: TargetKey; platform: NodeJS.Platform; arch: NodeJS.Architecture; } export interface ToolBundleSpec { version: string; assetTriple: string; archiveExt: "tar.gz" | "zip"; binaryName: string; sha256: string; archiveSha256: string; sourceUrl: string; } export interface BundleManifest { schemaVersion: number; generatedAt: string; tools: Record>; } export interface BinaryVerification { ok: boolean; path: string; expected: string; actual?: string; reason?: string; }