import { Request, DirectConnect as AWSDirectConnect } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSDirectConnect> = AWSDirectConnect[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSDirectConnect, Extras> = AWSDirectConnect[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class DirectConnect {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "directconnect";
    readonly global: false;
    readonly category: "Networking and Content Delivery";
    readonly topLevelCalls: readonly ["describeConnections", "describeInterconnects", "describeLocations", "describeVirtualGateways", "describeVirtualInterfaces"];
    acceptDirectConnectGatewayAssociationProposal: (params: ParamsFrom<'acceptDirectConnectGatewayAssociationProposal', Record<string, never>>) => Promise<ReturnTypeFrom<'acceptDirectConnectGatewayAssociationProposal'>>;
    allocateConnectionOnInterconnect: (params: ParamsFrom<'allocateConnectionOnInterconnect', Record<string, never>>) => Promise<ReturnTypeFrom<'allocateConnectionOnInterconnect'>>;
    allocateHostedConnection: (params: ParamsFrom<'allocateHostedConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'allocateHostedConnection'>>;
    allocatePrivateVirtualInterface: (params: ParamsFrom<'allocatePrivateVirtualInterface', Record<string, never>>) => Promise<ReturnTypeFrom<'allocatePrivateVirtualInterface'>>;
    allocatePublicVirtualInterface: (params: ParamsFrom<'allocatePublicVirtualInterface', Record<string, never>>) => Promise<ReturnTypeFrom<'allocatePublicVirtualInterface'>>;
    allocateTransitVirtualInterface: (params: ParamsFrom<'allocateTransitVirtualInterface', Record<string, never>>) => Promise<ReturnTypeFrom<'allocateTransitVirtualInterface'>>;
    associateConnectionWithLag: (params: ParamsFrom<'associateConnectionWithLag', Record<string, never>>) => Promise<ReturnTypeFrom<'associateConnectionWithLag'>>;
    associateHostedConnection: (params: ParamsFrom<'associateHostedConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'associateHostedConnection'>>;
    associateMacSecKey: (params: ParamsFrom<'associateMacSecKey', Record<string, never>>) => Promise<ReturnTypeFrom<'associateMacSecKey'>>;
    associateVirtualInterface: (params: ParamsFrom<'associateVirtualInterface', Record<string, never>>) => Promise<ReturnTypeFrom<'associateVirtualInterface'>>;
    confirmConnection: (params: ParamsFrom<'confirmConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'confirmConnection'>>;
    confirmCustomerAgreement: (params: ParamsFrom<'confirmCustomerAgreement', Record<string, never>>) => Promise<ReturnTypeFrom<'confirmCustomerAgreement'>>;
    confirmPrivateVirtualInterface: (params: ParamsFrom<'confirmPrivateVirtualInterface', Record<string, never>>) => Promise<ReturnTypeFrom<'confirmPrivateVirtualInterface'>>;
    confirmPublicVirtualInterface: (params: ParamsFrom<'confirmPublicVirtualInterface', Record<string, never>>) => Promise<ReturnTypeFrom<'confirmPublicVirtualInterface'>>;
    confirmTransitVirtualInterface: (params: ParamsFrom<'confirmTransitVirtualInterface', Record<string, never>>) => Promise<ReturnTypeFrom<'confirmTransitVirtualInterface'>>;
    createBGPPeer: (params: ParamsFrom<'createBGPPeer', Record<string, never>>) => Promise<ReturnTypeFrom<'createBGPPeer'>>;
    createConnection: (params: ParamsFrom<'createConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'createConnection'>>;
    createDirectConnectGateway: (params: ParamsFrom<'createDirectConnectGateway', Record<string, never>>) => Promise<ReturnTypeFrom<'createDirectConnectGateway'>>;
    createDirectConnectGatewayAssociation: (params: ParamsFrom<'createDirectConnectGatewayAssociation', Record<string, never>>) => Promise<ReturnTypeFrom<'createDirectConnectGatewayAssociation'>>;
    createDirectConnectGatewayAssociationProposal: (params: ParamsFrom<'createDirectConnectGatewayAssociationProposal', Record<string, never>>) => Promise<ReturnTypeFrom<'createDirectConnectGatewayAssociationProposal'>>;
    createInterconnect: (params: ParamsFrom<'createInterconnect', Record<string, never>>) => Promise<ReturnTypeFrom<'createInterconnect'>>;
    createLag: (params: ParamsFrom<'createLag', Record<string, never>>) => Promise<ReturnTypeFrom<'createLag'>>;
    createPrivateVirtualInterface: (params: ParamsFrom<'createPrivateVirtualInterface', Record<string, never>>) => Promise<ReturnTypeFrom<'createPrivateVirtualInterface'>>;
    createPublicVirtualInterface: (params: ParamsFrom<'createPublicVirtualInterface', Record<string, never>>) => Promise<ReturnTypeFrom<'createPublicVirtualInterface'>>;
    createTransitVirtualInterface: (params: ParamsFrom<'createTransitVirtualInterface', Record<string, never>>) => Promise<ReturnTypeFrom<'createTransitVirtualInterface'>>;
    deleteBGPPeer: (params: ParamsFrom<'deleteBGPPeer', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteBGPPeer'>>;
    deleteConnection: (params: ParamsFrom<'deleteConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteConnection'>>;
    deleteDirectConnectGateway: (params: ParamsFrom<'deleteDirectConnectGateway', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteDirectConnectGateway'>>;
    deleteDirectConnectGatewayAssociation: (params: ParamsFrom<'deleteDirectConnectGatewayAssociation', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteDirectConnectGatewayAssociation'>>;
    deleteDirectConnectGatewayAssociationProposal: (params: ParamsFrom<'deleteDirectConnectGatewayAssociationProposal', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteDirectConnectGatewayAssociationProposal'>>;
    deleteInterconnect: (params: ParamsFrom<'deleteInterconnect', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteInterconnect'>>;
    deleteLag: (params: ParamsFrom<'deleteLag', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteLag'>>;
    deleteVirtualInterface: (params: ParamsFrom<'deleteVirtualInterface', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteVirtualInterface'>>;
    describeConnectionLoa: (params: ParamsFrom<'describeConnectionLoa', Record<string, never>>) => Promise<ReturnTypeFrom<'describeConnectionLoa'>>;
    describeConnections: (params: ParamsFrom<'describeConnections', Record<string, never>>) => Promise<ReturnTypeFrom<'describeConnections'>>;
    describeConnectionsOnInterconnect: (params: ParamsFrom<'describeConnectionsOnInterconnect', Record<string, never>>) => Promise<ReturnTypeFrom<'describeConnectionsOnInterconnect'>>;
    describeCustomerMetadata: (params: ParamsFrom<'describeCustomerMetadata', Record<string, never>>) => Promise<ReturnTypeFrom<'describeCustomerMetadata'>>;
    describeDirectConnectGatewayAssociationProposals: (params: ParamsFrom<'describeDirectConnectGatewayAssociationProposals', Record<string, never>>) => Promise<ReturnTypeFrom<'describeDirectConnectGatewayAssociationProposals'>>;
    describeDirectConnectGatewayAssociations: (params: ParamsFrom<'describeDirectConnectGatewayAssociations', Record<string, never>>) => Promise<ReturnTypeFrom<'describeDirectConnectGatewayAssociations'>>;
    describeDirectConnectGatewayAttachments: (params: ParamsFrom<'describeDirectConnectGatewayAttachments', Record<string, never>>) => Promise<ReturnTypeFrom<'describeDirectConnectGatewayAttachments'>>;
    describeDirectConnectGateways: (params: ParamsFrom<'describeDirectConnectGateways', Record<string, never>>) => Promise<ReturnTypeFrom<'describeDirectConnectGateways'>>;
    describeHostedConnections: (params: ParamsFrom<'describeHostedConnections', Record<string, never>>) => Promise<ReturnTypeFrom<'describeHostedConnections'>>;
    describeInterconnectLoa: (params: ParamsFrom<'describeInterconnectLoa', Record<string, never>>) => Promise<ReturnTypeFrom<'describeInterconnectLoa'>>;
    describeInterconnects: (params: ParamsFrom<'describeInterconnects', Record<string, never>>) => Promise<ReturnTypeFrom<'describeInterconnects'>>;
    describeLags: (params: ParamsFrom<'describeLags', Record<string, never>>) => Promise<ReturnTypeFrom<'describeLags'>>;
    describeLoa: (params: ParamsFrom<'describeLoa', Record<string, never>>) => Promise<ReturnTypeFrom<'describeLoa'>>;
    describeLocations: (params: ParamsFrom<'describeLocations', Record<string, never>>) => Promise<ReturnTypeFrom<'describeLocations'>>;
    describeRouterConfiguration: (params: ParamsFrom<'describeRouterConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'describeRouterConfiguration'>>;
    describeTags: (params: ParamsFrom<'describeTags', Record<string, never>>) => Promise<ReturnTypeFrom<'describeTags'>>;
    describeVirtualGateways: (params: ParamsFrom<'describeVirtualGateways', Record<string, never>>) => Promise<ReturnTypeFrom<'describeVirtualGateways'>>;
    describeVirtualInterfaces: (params: ParamsFrom<'describeVirtualInterfaces', Record<string, never>>) => Promise<ReturnTypeFrom<'describeVirtualInterfaces'>>;
    disassociateConnectionFromLag: (params: ParamsFrom<'disassociateConnectionFromLag', Record<string, never>>) => Promise<ReturnTypeFrom<'disassociateConnectionFromLag'>>;
    disassociateMacSecKey: (params: ParamsFrom<'disassociateMacSecKey', Record<string, never>>) => Promise<ReturnTypeFrom<'disassociateMacSecKey'>>;
    listVirtualInterfaceTestHistory: (params: ParamsFrom<'listVirtualInterfaceTestHistory', Record<string, never>>) => Promise<ReturnTypeFrom<'listVirtualInterfaceTestHistory'>>;
    startBgpFailoverTest: (params: ParamsFrom<'startBgpFailoverTest', Record<string, never>>) => Promise<ReturnTypeFrom<'startBgpFailoverTest'>>;
    stopBgpFailoverTest: (params: ParamsFrom<'stopBgpFailoverTest', Record<string, never>>) => Promise<ReturnTypeFrom<'stopBgpFailoverTest'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateConnection: (params: ParamsFrom<'updateConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'updateConnection'>>;
    updateDirectConnectGateway: (params: ParamsFrom<'updateDirectConnectGateway', Record<string, never>>) => Promise<ReturnTypeFrom<'updateDirectConnectGateway'>>;
    updateDirectConnectGatewayAssociation: (params: ParamsFrom<'updateDirectConnectGatewayAssociation', Record<string, never>>) => Promise<ReturnTypeFrom<'updateDirectConnectGatewayAssociation'>>;
    updateLag: (params: ParamsFrom<'updateLag', Record<string, never>>) => Promise<ReturnTypeFrom<'updateLag'>>;
    updateVirtualInterfaceAttributes: (params: ParamsFrom<'updateVirtualInterfaceAttributes', Record<string, never>>) => Promise<ReturnTypeFrom<'updateVirtualInterfaceAttributes'>>;
    static fromClient(client: AWSDirectConnect): DirectConnect;
    static client(options?: AWSDirectConnect.Types.ClientConfiguration): DirectConnect;
}
export {};
