import { type AuthMetricsInput } from '../../metrics.js'; import { Bearer, Receiver } from '../../token.js'; import { custom, customJson, Logger } from '../../util/logging.js'; /** * Runs one interactive OAuth federation login. * * This low-level bearer starts a loopback HTTP callback server and opens the * authorization URL in a browser. Set `noBrowserOpen` when the user must open * the URL manually. It does not cache or renew the returned token; normal SDK * configuration uses * {@link https://nebius.github.io/js-sdk/classes/runtime_token_federation_account.FederationAccountBearer.html | FederationAccountBearer} * for those features. */ export declare class FederationBearer extends Bearer { [custom]: () => string; private readonly profileName; private readonly clientId; private readonly federationEndpoint; private readonly federationId; private readonly writer?; private readonly noBrowserOpen; private readonly ca?; /** Contains the fully qualified runtime type name. */ readonly $type = "nebius.sdk.FederationBearer"; private readonly logger?; private readonly metrics; /** * Creates an interactive login source. * * `writer` receives the authorization URL. The default writer uses * `console.log`. `ca` adds a trusted CA certificate for the token request. */ constructor(profileName: string, clientId: string, federationEndpoint: string, federationId: string, writer?: ((s: string) => void) | undefined, noBrowserOpen?: boolean, ca?: Buffer | undefined, logger?: Logger, metrics?: AuthMetricsInput); /** Sets the metrics. */ setMetrics(metrics: AuthMetricsInput): void; /** Returns a JSON-safe value for logs. */ [customJson](): unknown; /** Returns the credential name. */ get name(): string | undefined; /** Creates a token receiver. */ receiver(): Receiver; } //# sourceMappingURL=index.d.ts.map