UNPKG

@aws-sdk/middleware-signing

Version:

[![NPM version](https://img.shields.io/npm/v/@aws-sdk/middleware-signing/latest.svg)](https://www.npmjs.com/package/@aws-sdk/middleware-signing) [![NPM downloads](https://img.shields.io/npm/dm/@aws-sdk/middleware-signing.svg)](https://www.npmjs.com/packag

69 lines (68 loc) 2.19 kB
import { SignatureV4CryptoInit, SignatureV4Init } from "@smithy/signature-v4"; import { AuthScheme, AwsCredentialIdentity, ChecksumConstructor, HashConstructor, Logger, MemoizedProvider, Provider, RegionInfoProvider, RequestSigner, } from "@smithy/types"; export interface AwsAuthInputConfig { credentials?: AwsCredentialIdentity | Provider<AwsCredentialIdentity>; signer?: | RequestSigner | ((authScheme?: AuthScheme) => Promise<RequestSigner>); signingEscapePath?: boolean; systemClockOffset?: number; signingRegion?: string; signerConstructor?: new ( options: SignatureV4Init & SignatureV4CryptoInit ) => RequestSigner; } export interface SigV4AuthInputConfig { credentials?: AwsCredentialIdentity | Provider<AwsCredentialIdentity>; signer?: | RequestSigner | ((authScheme?: AuthScheme) => Promise<RequestSigner>); signingEscapePath?: boolean; systemClockOffset?: number; } interface PreviouslyResolved { credentialDefaultProvider: ( input: any ) => MemoizedProvider<AwsCredentialIdentity>; region: string | Provider<string>; regionInfoProvider?: RegionInfoProvider; signingName?: string; defaultSigningName?: string; serviceId: string; sha256: ChecksumConstructor | HashConstructor; useFipsEndpoint: Provider<boolean>; useDualstackEndpoint: Provider<boolean>; } interface SigV4PreviouslyResolved { credentialDefaultProvider: ( input: any ) => MemoizedProvider<AwsCredentialIdentity>; region: string | Provider<string>; signingName: string; sha256: ChecksumConstructor | HashConstructor; logger?: Logger; } export interface AwsAuthResolvedConfig { credentials: MemoizedProvider<AwsCredentialIdentity>; signer: (authScheme?: AuthScheme) => Promise<RequestSigner>; signingEscapePath: boolean; systemClockOffset: number; } export interface SigV4AuthResolvedConfig extends AwsAuthResolvedConfig {} export declare const resolveAwsAuthConfig: <T>( input: T & AwsAuthInputConfig & PreviouslyResolved ) => T & AwsAuthResolvedConfig; export declare const resolveSigV4AuthConfig: <T>( input: T & SigV4AuthInputConfig & SigV4PreviouslyResolved ) => T & SigV4AuthResolvedConfig; export {};