import type { ProjectCommandOptions, RemoteCommandContext } from "./util.js"; import { SecretRequestError } from "../../statelog/secretsClient.js"; import type { SecretValueSources } from "../secretsInput.js"; /** The set recipe's terminal dependencies, injected by the Commander action * and faked in tests. Same fields as SecretValueSources minus fromEnv, which * arrives via options. */ export type SecretsSetIO = Omit; export type SecretsSetResult = { kind: "set"; } | { kind: "canceled"; }; /** THE one presenter for SecretRequestError, used by all four recipes * (including every collected import failure): redacts any additional known * values BEFORE terminal-safe escaping, then appends the trusted one-line * full-access-key guidance on status 401/403. Stays one line so import * summaries keep one outcome per line. */ export declare function presentSecretError(error: SecretRequestError, sensitiveValues?: string[]): string; export declare function runSecretsSet(name: string, options: ProjectCommandOptions & { fromEnv?: string; }, context: RemoteCommandContext, io: SecretsSetIO): Promise; export declare function runSecretsList(options: ProjectCommandOptions, context: RemoteCommandContext): Promise; export declare function runSecretsRm(name: string, options: ProjectCommandOptions, context: RemoteCommandContext): Promise; export type ImportResult = { kind: "declined"; } | { kind: "succeeded"; } | { kind: "failed"; }; export type SecretsImportIO = { stdinIsTty: boolean; readStdin: () => Promise; confirm: (question: string) => Promise; }; export declare function runSecretsImport(file: string | undefined, options: ProjectCommandOptions, context: RemoteCommandContext, io: SecretsImportIO): Promise;