import { HandlerExecutionContext, HttpAuthScheme, HttpAuthSchemeParameters, HttpAuthSchemeParametersProvider, HttpAuthSchemeProvider, IdentityProviderConfig, SelectedHttpAuthScheme, SerializeMiddleware, SMITHY_CONTEXT_KEY } from "@smithy/types"; /** * @internal */ export interface PreviouslyResolved { httpAuthSchemes: HttpAuthScheme[]; httpAuthSchemeProvider: HttpAuthSchemeProvider; } /** * @internal */ interface HttpAuthSchemeMiddlewareOptions { httpAuthSchemeParametersProvider: HttpAuthSchemeParametersProvider; identityProviderConfigProvider: (config: TConfig) => Promise; } /** * @internal */ interface HttpAuthSchemeMiddlewareSmithyContext extends Record { selectedHttpAuthScheme?: SelectedHttpAuthScheme; } /** * @internal */ interface HttpAuthSchemeMiddlewareHandlerExecutionContext extends HandlerExecutionContext { [SMITHY_CONTEXT_KEY]?: HttpAuthSchemeMiddlewareSmithyContext; } /** * @internal */ export declare const httpAuthSchemeMiddleware: (config: TConfig & PreviouslyResolved, mwOptions: HttpAuthSchemeMiddlewareOptions) => SerializeMiddleware; export {};