import { AwsSdkSigV4AuthInputConfig, AwsSdkSigV4AuthResolvedConfig, AwsSdkSigV4PreviouslyResolved, } from "@aws-sdk/core/httpAuthSchemes"; import { HandlerExecutionContext, HttpAuthScheme, HttpAuthSchemeParameters, HttpAuthSchemeParametersProvider, HttpAuthSchemeProvider, Provider, } from "@smithy/types"; import { ControlTowerClientResolvedConfig } from "../ControlTowerClient"; export interface ControlTowerHttpAuthSchemeParameters extends HttpAuthSchemeParameters { region?: string; } export interface ControlTowerHttpAuthSchemeParametersProvider extends HttpAuthSchemeParametersProvider< ControlTowerClientResolvedConfig, HandlerExecutionContext, ControlTowerHttpAuthSchemeParameters, object > {} export declare const defaultControlTowerHttpAuthSchemeParametersProvider: ( config: ControlTowerClientResolvedConfig, context: HandlerExecutionContext, input: object, ) => Promise; export interface ControlTowerHttpAuthSchemeProvider extends HttpAuthSchemeProvider {} export declare const defaultControlTowerHttpAuthSchemeProvider: ControlTowerHttpAuthSchemeProvider; export interface HttpAuthSchemeInputConfig extends AwsSdkSigV4AuthInputConfig { authSchemePreference?: string[] | Provider; httpAuthSchemes?: HttpAuthScheme[]; httpAuthSchemeProvider?: ControlTowerHttpAuthSchemeProvider; } export interface HttpAuthSchemeResolvedConfig extends AwsSdkSigV4AuthResolvedConfig { readonly authSchemePreference: Provider; readonly httpAuthSchemes: HttpAuthScheme[]; readonly httpAuthSchemeProvider: ControlTowerHttpAuthSchemeProvider; } export declare const resolveHttpAuthSchemeConfig: ( config: T & HttpAuthSchemeInputConfig & AwsSdkSigV4PreviouslyResolved, ) => T & HttpAuthSchemeResolvedConfig;