/** * `gjc sdk guides` command family (routing lives in `src/commands/sdk.ts`). * * Verbs: * refresh --url fetch + verify the online manifest and advisory * text, install the verified cache, report selection. * Fails operationally (exit 1) whenever the online * manifest is not selected: fallback cache/bundled * content is reported as a failure, never as a * successful refresh * list offline selection: verified cache, else bundled * show render the advisory text for one guide (data only) * status selection provenance, cache health, fetch policy * trust pinned key ids and the no-credential fetch boundary * * The subsystem is advisory-text only: it never executes guide content, never * mutates configuration, and never accepts or emits credentials. The only * state it writes is the verified guide cache during `refresh`. */ export type SdkGuidesCliAction = "refresh" | "list" | "show" | "status" | "trust"; export interface SdkGuidesCliArgs { action?: string; /** Guide id for `show`. */ guideId?: string; /** Online manifest URL for `refresh`; must satisfy the HTTPS allowlist. */ url?: string; agentDir?: string; /** Bounded fetch timeout for `refresh`. */ timeoutMs?: number; /** Fetch implementation override for `refresh` (test seam); defaults to the global fetch. */ fetchImpl?: typeof fetch; } /** * Runs the `gjc sdk guides` command family. Exported for command routing from * `src/commands/sdk.ts` and for direct service use; the injected `write` / * `setExitCode` hooks keep the surface testable without touching stdout or * the process exit code. */ export declare function runSdkGuidesCli(args: SdkGuidesCliArgs, writeOutput?: (value: unknown) => void, setExitCode?: (exitCode: 1 | 2) => void): Promise;