30 lines
1.6 KiB
TypeScript
30 lines
1.6 KiB
TypeScript
import {Credentials} from '../credentials';
|
|
import {AWSError} from '../error';
|
|
import {ConfigurationOptions} from '../config';
|
|
import STS = require('../../clients/sts');
|
|
export class WebIdentityCredentials extends Credentials {
|
|
/**
|
|
* Creates a new credentials object with optional configuraion.
|
|
* @param {Object} options - a map of options that are passed to the AWS.STS.assumeRole() or AWS.STS.getSessionToken() operations. If a RoleArn parameter is passed in, credentials will be based on the IAM role.
|
|
* @param {Object} clientConfig - a map of configuration options to pass to the underlying STS client.
|
|
*/
|
|
constructor(options: WebIdentityCredentials.WebIdentityCredentialsOptions, clientConfig?: ConfigurationOptions);
|
|
/**
|
|
* Creates a new credentials object.
|
|
* @param {string} options - a map of options that are passed to the AWS.STS.assumeRole() or AWS.STS.getSessionToken() operations. If a RoleArn parameter is passed in, credentials will be based on the IAM role.
|
|
*/
|
|
constructor(options?: WebIdentityCredentials.WebIdentityCredentialsOptions);
|
|
/**
|
|
* Refreshes credentials using AWS.STS.assumeRoleWithWebIdentity().
|
|
*/
|
|
refresh(callback: (err: AWSError) => void): void;
|
|
|
|
data: STS.Types.AssumeRoleWithWebIdentityResponse;
|
|
params: STS.Types.AssumeRoleWithWebIdentityRequest
|
|
}
|
|
|
|
// Needed to expose interfaces on the class
|
|
declare namespace WebIdentityCredentials {
|
|
export type ClientConfiguration = ConfigurationOptions;
|
|
export type WebIdentityCredentialsOptions = STS.AssumeRoleWithWebIdentityRequest;
|
|
} |