import type { AwsCredentialIdentity, AwsCredentialIdentityProvider, HttpAuthScheme } from "@smithy/types"; import type { AccountHttpAuthSchemeProvider } from "./httpAuthSchemeProvider"; /** * @internal */ export interface HttpAuthExtensionConfiguration { setHttpAuthScheme(httpAuthScheme: HttpAuthScheme): void; httpAuthSchemes(): HttpAuthScheme[]; setHttpAuthSchemeProvider(httpAuthSchemeProvider: AccountHttpAuthSchemeProvider): void; httpAuthSchemeProvider(): AccountHttpAuthSchemeProvider; setCredentials(credentials: AwsCredentialIdentity | AwsCredentialIdentityProvider): void; credentials(): AwsCredentialIdentity | AwsCredentialIdentityProvider | undefined; } /** * @internal */ export type HttpAuthRuntimeConfig = Partial<{ httpAuthSchemes: HttpAuthScheme[]; httpAuthSchemeProvider: AccountHttpAuthSchemeProvider; credentials: AwsCredentialIdentity | AwsCredentialIdentityProvider; }>; /** * @internal */ export declare const getHttpAuthExtensionConfiguration: (runtimeConfig: HttpAuthRuntimeConfig) => HttpAuthExtensionConfiguration; /** * @internal */ export declare const resolveHttpAuthRuntimeConfig: (config: HttpAuthExtensionConfiguration) => HttpAuthRuntimeConfig;