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