export type SubcommandResult = { code: number; lines: string[]; }; export interface GcloudRunner { run(args: string[], opts?: { input?: string; }): Promise<{ code: number; stdout: string; stderr: string; }>; } /** Default runner — wraps gcloud subprocess. */ export declare const defaultRunner: GcloudRunner; export interface PathLookupProcess { once(event: string, listener: (value: unknown) => void): PathLookupProcess; kill(): boolean; } export type PathSpawner = (command: string, args: string[], options: { stdio: 'ignore'; windowsHide: boolean; }) => PathLookupProcess; /** PATH discovery is diagnostic, so it must never hang the command or CI. */ export declare function commandOnPath(executable: string, platform?: NodeJS.Platform, spawnCommand?: PathSpawner, timeoutMs?: number): Promise; /** Validate full GCP setup for publish-time secret fetch. */ export declare function check(args: string[], runner?: GcloudRunner, pathProbe?: () => Promise): Promise; /** Fetch a secret's latest value and print to stdout. */ export declare function fetch(args: string[], runner?: GcloudRunner): Promise; /** * Fetch NPM_TOKEN and run `npm whoami --registry=https://registry.npmjs.org/`. * No publish — just confirms the token is valid + non-revoked. */ export declare function validateToken(args: string[], runner?: GcloudRunner): Promise; /** Top-level dispatcher for `harness secrets ...`. */ export declare function secretsDispatch(args: string[], runner?: GcloudRunner): Promise; //# sourceMappingURL=secrets.d.ts.map