import type { Argv } from "yargs"; import { type ModuleRuntimeReport } from "../controller-runtime.js"; import { type Logger } from "../logger.js"; /** What `telo module manifest --json` prints. The hub's tracker reads all five: * `manifest` is cached to the bucket at `cacheKey`, `integrity` becomes the * import pin it serves per version, and `runtime` is stored as the runtime and * language facets without the consumer parsing a single PURL. */ export interface ManifestJsonPayload { ref: string; /** Deterministic hub cache key, or `null` for a ref with no cache location. */ cacheKey: string | null; manifest: string; /** `sha256-`, or `null` when nothing could hash the ref. */ integrity: string | null; /** Which kernels can host each kind, and the module-level roll-up. */ runtime: ModuleRuntimeReport; } /** Build the `--json` payload for an already-resolved manifest. * * Separate from `runManifest` so the shape can be asserted without a process: * the hub e2e cannot cover it — that container tracks with the `telo` its base * image ships, so a field added here is invisible there until a release lands — * which leaves this the only place the contract the tracker depends on is * checked. */ export declare function buildManifestJsonPayload(ref: string, registryUrl: string, text: string, log: Logger): Promise; export declare function moduleCommand(yargs: Argv): Argv; //# sourceMappingURL=module.d.ts.map