import { custom, customJson, Logger } from '../util/logging.js'; import { type Reader, ServiceAccount } from './service_account.js'; /** * Compatibility error type for unsupported private keys. * * {@link PkFileReader} does not currently throw this error. Key parsing or * signing can report another error when the SDK uses the key. */ export declare class WrongKeyTypeError extends Error { } /** * Reads a PEM private key and combines it with service-account identifiers. * * Unlike * {@link https://nebius.github.io/js-sdk/classes/runtime_service_account_credentials_file.CredentialsFileReader.html | CredentialsFileReader}, * this reader loads the private-key file each time {@link PkFileReader.read} * runs. Restrict access to the file because it contains a secret. */ export declare class PkFileReader implements Reader { [custom]: () => string; private logger?; /** Contains the fully qualified runtime type name. */ readonly $type = "nebius.sdk.PkFileReader"; private readonly kid; private readonly said; private readonly filePath; /** * Creates a reader for a PEM file. * * A leading `~` in `filename` resolves to the home directory. */ constructor(filename: string, publicKeyId: string, serviceAccountId: string, logger?: Logger | undefined); /** Returns a JSON-safe value for logs. */ [customJson](): object; /** Reads the current PEM file and returns signing credentials. */ read(): ServiceAccount; /** Returns the exchange token request. */ getExchangeTokenRequest(): import("../../api/nebius/iam/v1/index.js").ExchangeTokenRequest; } //# sourceMappingURL=pk_file.d.ts.map