1 | import { SignatureV4CryptoInit, SignatureV4Init } from "@aws-sdk/signature-v4";
|
2 | import { AuthScheme, AwsCredentialIdentity, HashConstructor, Logger, MemoizedProvider, Provider, RegionInfoProvider, RequestSigner } from "@aws-sdk/types";
|
3 | export interface AwsAuthInputConfig {
|
4 | |
5 |
|
6 |
|
7 | credentials?: AwsCredentialIdentity | Provider<AwsCredentialIdentity>;
|
8 | |
9 |
|
10 |
|
11 | signer?: RequestSigner | ((authScheme?: AuthScheme) => Promise<RequestSigner>);
|
12 | /**
|
13 | * Whether to escape request path when signing the request.
|
14 | */
|
15 | signingEscapePath?: boolean;
|
16 | /**
|
17 | * An offset value in milliseconds to apply to all signing times.
|
18 | */
|
19 | systemClockOffset?: number;
|
20 | /**
|
21 | * The region where you want to sign your request against. This
|
22 | * can be different to the region in the endpoint.
|
23 | */
|
24 | signingRegion?: string;
|
25 | /**
|
26 | * The injectable SigV4-compatible signer class constructor. If not supplied,
|
27 | * regular SignatureV4 constructor will be used.
|
28 | * @private
|
29 | */
|
30 | signerConstructor?: new (options: SignatureV4Init & SignatureV4CryptoInit) => RequestSigner;
|
31 | }
|
32 | export interface SigV4AuthInputConfig {
|
33 | |
34 |
|
35 |
|
36 | credentials?: AwsCredentialIdentity | Provider<AwsCredentialIdentity>;
|
37 | |
38 |
|
39 |
|
40 | signer?: RequestSigner | ((authScheme?: AuthScheme) => Promise<RequestSigner>);
|
41 | /**
|
42 | * Whether to escape request path when signing the request.
|
43 | */
|
44 | signingEscapePath?: boolean;
|
45 | /**
|
46 | * An offset value in milliseconds to apply to all signing times.
|
47 | */
|
48 | systemClockOffset?: number;
|
49 | }
|
50 | interface PreviouslyResolved {
|
51 | credentialDefaultProvider: (input: any) => MemoizedProvider<AwsCredentialIdentity>;
|
52 | region: string | Provider<string>;
|
53 | regionInfoProvider?: RegionInfoProvider;
|
54 | signingName?: string;
|
55 | defaultSigningName?: string;
|
56 | serviceId: string;
|
57 | sha256: HashConstructor;
|
58 | useFipsEndpoint: Provider<boolean>;
|
59 | useDualstackEndpoint: Provider<boolean>;
|
60 | }
|
61 | interface SigV4PreviouslyResolved {
|
62 | credentialDefaultProvider: (input: any) => MemoizedProvider<AwsCredentialIdentity>;
|
63 | region: string | Provider<string>;
|
64 | signingName: string;
|
65 | sha256: HashConstructor;
|
66 | logger?: Logger;
|
67 | }
|
68 | export interface AwsAuthResolvedConfig {
|
69 | |
70 |
|
71 |
|
72 |
|
73 |
|
74 | credentials: MemoizedProvider<AwsCredentialIdentity>;
|
75 | |
76 |
|
77 |
|
78 | signer: (authScheme?: AuthScheme) => Promise<RequestSigner>;
|
79 | |
80 |
|
81 |
|
82 | signingEscapePath: boolean;
|
83 | |
84 |
|
85 |
|
86 | systemClockOffset: number;
|
87 | }
|
88 | export interface SigV4AuthResolvedConfig extends AwsAuthResolvedConfig {
|
89 | }
|
90 | export declare const resolveAwsAuthConfig: <T>(input: T & AwsAuthInputConfig & PreviouslyResolved) => T & AwsAuthResolvedConfig;
|
91 | export declare const resolveSigV4AuthConfig: <T>(input: T & SigV4AuthInputConfig & SigV4PreviouslyResolved) => T & SigV4AuthResolvedConfig;
|
92 | export {};
|