import { custom, customJson } from '../util/logging.js'; import type { Reader } from './service_account.js'; /** * Reads another service-account reader once and reuses the result. * * Use this wrapper when the source is expensive and credentials do not rotate * while the process runs. Do not use it when later file changes must take * effect. */ export declare class CachedReader implements Reader { [custom]: () => string; private readonly next; /** Contains the fully qualified runtime type name. */ readonly $type = "nebius.sdk.CachedReader"; private _cache?; /** Creates a lazy cache. The wrapped reader is not called until first use. */ constructor(next: Reader); /** Returns the first successful read for the lifetime of this wrapper. */ read(): import("./service_account.js").ServiceAccount; /** Returns a JSON-safe value for logs. */ [customJson](): unknown; /** Returns the exchange token request. */ getExchangeTokenRequest(): import("../../api/nebius/iam/v1/index.js").ExchangeTokenRequest; } //# sourceMappingURL=cached.d.ts.map