import type { GeneratedKeystore } from './keystore.js'; export declare const KEYSTORE_FILE = "upload.jks"; export declare const SIGNING_SECRETS_FILE = "signing.json"; export declare const SIGNING_SECRET_FIELDS: readonly ["storePassword", "keyPassword", "keyAlias"]; export type SigningSecretField = (typeof SIGNING_SECRET_FIELDS)[number]; /** 호출 시점에 계산한다 — 테스트가 홈 디렉터리를 바꿀 수 있어야 한다. */ export declare function keystoresDir(): string; export interface PersistedKeystore { dir: string; keystorePath: string; secretsPath: string; keyAlias: string; } /** keystore 바이너리와 비밀번호 파일을 0600 으로 저장한다. label 은 영숫자·하이픈만 남긴다. */ export declare function persistGeneratedKeystore(ks: GeneratedKeystore, label: string): PersistedKeystore; /** ~/.mimi-seed/keystores/ 안의 keystore 파일만 base64 로 읽는다. */ export declare function readKeystoreBase64(filePath: string): string; /** jenkins_upload_keystore 입력 → base64. 직접 값(기존 호환)과 경로 중 정확히 하나. */ export declare function resolveKeystoreInput(input: { base64?: string; path?: string; }): string; /** jenkins_create_credential 입력 → 비밀값. 직접 값(기존 호환)과 파일+필드 중 정확히 하나. */ export declare function resolveSecretInput(input: { secret?: string; secretFile?: string; secretField?: SigningSecretField; }): string; /** ~/.mimi-seed/keystores/ 안의 signing.json 에서 한 필드만 꺼낸다. */ export declare function readSigningSecret(filePath: string, field: SigningSecretField): string;