import { AWSOptions as _AWSOptions, FetchHeaders, FetchOptions } from './types.js'; export type AWSOptions = _AWSOptions; type FetchOptionsWithHeaders = { headers: FetchHeaders; } & Omit; /** * @private * Create canonical headers *
CanonicalHeaders =
    CanonicalHeadersEntry0 + CanonicalHeadersEntry1 + ... + CanonicalHeadersEntryN
CanonicalHeadersEntry =
    Lowercase(HeaderName) + ':' + Trimall(HeaderValue) + '\n'
*/ declare const getCanonicalHeaders: (headers: FetchHeaders) => string; /** * @private * The list of headers that were included in the canonical headers * For HTTP/1.1 requests, the host header must be included as a signed header. * For HTTP/2 requests that include the :authority header instead of the host header, * you must include the :authority header as a signed header. If you include a date or * x-amz-date header, you must also include that header in the list of signed headers. */ declare const getSignedHeaders: (headers: FetchHeaders) => string; /** * @private * Create a canonical request * Refer to {@link http://docs.aws.amazon.com/general/latest/gr/sigv4-create-canonical-request.html|Create a Canonical Request} *
CanonicalRequest =
    HTTPRequestMethod + '\n' +
    CanonicalURI + '\n' +
    CanonicalQueryString + '\n' +
    CanonicalHeaders + '\n' +
    SignedHeaders + '\n' +
    HexEncode(Hash(RequestPayload))
*/ declare const getCanonicalString: (resource: string, fetchOptions: FetchOptionsWithHeaders) => Promise; declare const getRegionFromResource: (resource: string) => string; declare const getCredentialScope: ({ dateString, region, service, }: { dateString: string; region: string; service: string; }) => string; /** * @private * Create a string to sign * Refer to {@link http://docs.aws.amazon.com/general/latest/gr/sigv4-create-string-to-sign.html|Create String to Sign} */ declare const getStringToSign: ({ algorithm, canonicalString, dateTimeString, scope, }: { algorithm: string; canonicalString: string; dateTimeString: string; scope: string; }) => Promise; /** * @private * Create signing key * Refer to {@link http://docs.aws.amazon.com/general/latest/gr/sigv4-calculate-signature.html|Calculate Signature} */ declare const getSigningKey: ({ dateString, region, secretAccessKey, service, }: { dateString: string; region: string; secretAccessKey: string; service: string; }) => Promise>; declare const getSignature: (signingKey: string | Uint8Array, stringToSign: string) => Promise; /** * @private * Create authorization headers to include in the HTTP request * Refer to {@link http://docs.aws.amazon.com/general/latest/gr/sigv4-add-signature-to-request.html|Add signature to request} */ declare const getAuthorizationHeader: ({ accessKeyId, algorithm, scope, signature, signedHeaders, }: { accessKeyId: string; algorithm: string; scope: string; signature: string; signedHeaders: string; }) => string; declare const getHeadersWithAuthorization: (resource: string, fetchOptions: FetchOptions, { accessKeyId, region, secretAccessKey, service, sessionToken, }: AWSOptions) => Promise; export { getAuthorizationHeader, getCanonicalHeaders, getCanonicalString, getCredentialScope, getHeadersWithAuthorization, getRegionFromResource, getSignature, getSignedHeaders, getSigningKey, getStringToSign, };