export interface ConnectAttachmentOptions {
    /** The protocol used for the attachment connection. */
    Protocol?: 'GRE' | 'NO_ENCAP';
}
export interface Tag {
    /** The tag key. Constraints: Maximum length of 128 characters. */
    Key?: string;
    /** The tag value. Constraints: Maximum length of 256 characters. */
    Value?: string;
}
export interface BgpOptions {
    /** The Peer ASN of the BGP. */
    PeerAsn?: number;
}
export interface AWSLocation {
    /** The Zone that the device is located in. Specify the ID of an Availability Zone, Local Zone, Wavelength Zone, or an Outpost. */
    Zone?: string;
    /** The Amazon Resource Name (ARN) of the subnet that the device is located in. */
    SubnetArn?: string;
}
export interface Location {
    /** The physical address. */
    Address?: string;
    /** The latitude. */
    Latitude?: string;
    /** The longitude. */
    Longitude?: string;
}
export interface Bandwidth {
    /** Upload speed in Mbps. */
    UploadSpeed?: number;
    /** Download speed in Mbps. */
    DownloadSpeed?: number;
}
export interface VpcOptions {
    /** Indicates whether IPv6 is supported. */
    Ipv6Support?: boolean;
    /** Indicates whether appliance mode is supported. If enabled, traffic flow between a source and destination use the same Availability Zone for the VPC attachment for the lifetime of that flow. The defaul */
    ApplianceModeSupport?: boolean;
    /** Indicates whether DNS is supported. */
    DnsSupport?: boolean;
    /** Indicates whether security group referencing is enabled for this VPC attachment. The default is true. However, at the core network policy-level the default is set to false. */
    SecurityGroupReferencingSupport?: boolean;
}
export interface CoreNetworkSegmentEdgeIdentifier {
    /** The ID of a core network. */
    CoreNetworkId?: string;
    /** The name of the segment edge. */
    SegmentName?: string;
    /** The Region where the segment edge is located. */
    EdgeLocation?: string;
}
export interface CoreNetworkNetworkFunctionGroupIdentifier {
    /** The ID of the core network. */
    CoreNetworkId?: string;
    /** The network function group name. */
    NetworkFunctionGroupName?: string;
    /** The location for the core network edge. */
    EdgeLocation?: string;
}
export interface RouteTableIdentifier {
    /** The ARN of the transit gateway route table for the attachment request. For example, "TransitGatewayRouteTableArn": "arn:aws:ec2:us-west-2:123456789012:transit-gateway-route-table/tgw-rtb-9876543210123 */
    TransitGatewayRouteTableArn?: string;
    /** The segment edge in a core network. */
    CoreNetworkSegmentEdge?: CoreNetworkSegmentEdgeIdentifier;
    /** The route table identifier associated with the network function group. */
    CoreNetworkNetworkFunctionGroup?: CoreNetworkNetworkFunctionGroupIdentifier;
}
export interface RouteAnalysisEndpointOptionsSpecification {
    /** The ARN of the transit gateway attachment. */
    TransitGatewayAttachmentArn?: string;
    /** The IP address. */
    IpAddress?: string;
}
export interface AcceptAttachmentInput {
    /** The ID of the attachment. */
    AttachmentId: string;
}
export interface AssociateConnectPeerInput {
    /** The ID of the Connect peer. */
    ConnectPeerId: string;
    /** The ID of the device. */
    DeviceId: string;
    /** The ID of your global network. */
    GlobalNetworkId: string;
    /** The ID of the link. */
    LinkId?: string;
}
export interface AssociateCustomerGatewayInput {
    /** The Amazon Resource Name (ARN) of the customer gateway. */
    CustomerGatewayArn: string;
    /** The ID of the device. */
    DeviceId: string;
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The ID of the link. */
    LinkId?: string;
}
export interface AssociateLinkInput {
    /** The ID of the device. */
    DeviceId: string;
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The ID of the link. */
    LinkId: string;
}
export interface AssociateTransitGatewayConnectPeerInput {
    /** The ID of the device. */
    DeviceId: string;
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The Amazon Resource Name (ARN) of the Connect peer. */
    TransitGatewayConnectPeerArn: string;
    /** The ID of the link. */
    LinkId?: string;
}
export interface CreateConnectAttachmentInput {
    /** The ID of a core network where you want to create the attachment. */
    CoreNetworkId: string;
    /** The Region where the edge is located. */
    EdgeLocation: string;
    /** Options for creating an attachment. */
    Options: ConnectAttachmentOptions;
    /** The ID of the attachment between the two connections. */
    TransportAttachmentId: string;
    /** The client token associated with the request. */
    ClientToken?: string;
    /** The routing policy label to apply to the Connect attachment for traffic routing decisions. */
    RoutingPolicyLabel?: string;
    /** The list of key-value tags associated with the request. */
    Tags?: Tag[];
}
export interface CreateConnectionInput {
    /** The ID of the second device in the connection. */
    ConnectedDeviceId: string;
    /** The ID of the first device in the connection. */
    DeviceId: string;
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The ID of the link for the second device. */
    ConnectedLinkId?: string;
    /** A description of the connection. Length Constraints: Maximum length of 256 characters. */
    Description?: string;
    /** The ID of the link for the first device. */
    LinkId?: string;
    /** The tags to apply to the resource during creation. */
    Tags?: Tag[];
}
export interface CreateConnectPeerInput {
    /** The ID of the connection attachment. */
    ConnectAttachmentId: string;
    /** The Connect peer address. */
    PeerAddress: string;
    /** The Connect peer BGP options. This only applies only when the protocol is GRE. */
    BgpOptions?: BgpOptions;
    /** The client token associated with the request. */
    ClientToken?: string;
    /** A Connect peer core network address. This only applies only when the protocol is GRE. */
    CoreNetworkAddress?: string;
    /** The inside IP addresses used for BGP peering. */
    InsideCidrBlocks?: string[];
    /** The subnet ARN for the Connect peer. This only applies only when the protocol is NO_ENCAP. */
    SubnetArn?: string;
    /** The tags associated with the peer request. */
    Tags?: Tag[];
}
export interface CreateCoreNetworkInput {
    /** The ID of the global network that a core network will be a part of. */
    GlobalNetworkId: string;
    /** The client token associated with a core network request. */
    ClientToken?: string;
    /** The description of a core network. */
    Description?: string;
    /** The policy document for creating a core network. */
    PolicyDocument?: string;
    /** Key-value tags associated with a core network request. */
    Tags?: Tag[];
}
export interface CreateCoreNetworkPrefixListAssociationInput {
    /** The ID of the core network to associate with the prefix list. */
    CoreNetworkId: string;
    /** An optional alias for the prefix list association. */
    PrefixListAlias: string;
    /** The ARN of the prefix list to associate with the core network. */
    PrefixListArn: string;
    /** A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. */
    ClientToken?: string;
}
export interface CreateDeviceInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The Amazon Web Services location of the device, if applicable. For an on-premises device, you can omit this parameter. */
    AWSLocation?: AWSLocation;
    /** A description of the device. Constraints: Maximum length of 256 characters. */
    Description?: string;
    /** The location of the device. */
    Location?: Location;
    /** The model of the device. Constraints: Maximum length of 128 characters. */
    Model?: string;
    /** The serial number of the device. Constraints: Maximum length of 128 characters. */
    SerialNumber?: string;
    /** The ID of the site. */
    SiteId?: string;
    /** The tags to apply to the resource during creation. */
    Tags?: Tag[];
    /** The type of the device. */
    Type?: string;
    /** The vendor of the device. Constraints: Maximum length of 128 characters. */
    Vendor?: string;
}
export interface CreateDirectConnectGatewayAttachmentInput {
    /** The ID of the Cloud WAN core network that the Direct Connect gateway attachment should be attached to. */
    CoreNetworkId: string;
    /** The ARN of the Direct Connect gateway attachment. */
    DirectConnectGatewayArn: string;
    /** One or more core network edge locations that the Direct Connect gateway attachment is associated with. */
    EdgeLocations: string[];
    /** client token */
    ClientToken?: string;
    /** The routing policy label to apply to the Direct Connect Gateway attachment for traffic routing decisions. */
    RoutingPolicyLabel?: string;
    /** The key value tags to apply to the Direct Connect gateway attachment during creation. */
    Tags?: Tag[];
}
export interface CreateGlobalNetworkInput {
    /** A description of the global network. Constraints: Maximum length of 256 characters. */
    Description?: string;
    /** The tags to apply to the resource during creation. */
    Tags?: Tag[];
}
export interface CreateLinkInput {
    /** The upload speed and download speed in Mbps. */
    Bandwidth: Bandwidth;
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The ID of the site. */
    SiteId: string;
    /** A description of the link. Constraints: Maximum length of 256 characters. */
    Description?: string;
    /** The provider of the link. Constraints: Maximum length of 128 characters. Cannot include the following characters: | \ ^ */
    Provider?: string;
    /** The tags to apply to the resource during creation. */
    Tags?: Tag[];
    /** The type of the link. Constraints: Maximum length of 128 characters. Cannot include the following characters: | \ ^ */
    Type?: string;
}
export interface CreateSiteInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** A description of your site. Constraints: Maximum length of 256 characters. */
    Description?: string;
    /** The site location. This information is used for visualization in the Network Manager console. If you specify the address, the latitude and longitude are automatically calculated. Address: The physical */
    Location?: Location;
    /** The tags to apply to the resource during creation. */
    Tags?: Tag[];
}
export interface CreateSiteToSiteVpnAttachmentInput {
    /** The ID of a core network where you're creating a site-to-site VPN attachment. */
    CoreNetworkId: string;
    /** The ARN identifying the VPN attachment. */
    VpnConnectionArn: string;
    /** The client token associated with the request. */
    ClientToken?: string;
    /** The routing policy label to apply to the Site-to-Site VPN attachment for traffic routing decisions. */
    RoutingPolicyLabel?: string;
    /** The tags associated with the request. */
    Tags?: Tag[];
}
export interface CreateTransitGatewayPeeringInput {
    /** The ID of a core network. */
    CoreNetworkId: string;
    /** The ARN of the transit gateway for the peering request. */
    TransitGatewayArn: string;
    /** The client token associated with the request. */
    ClientToken?: string;
    /** The list of key-value tags associated with the request. */
    Tags?: Tag[];
}
export interface CreateTransitGatewayRouteTableAttachmentInput {
    /** The ID of the peer for the */
    PeeringId: string;
    /** The ARN of the transit gateway route table for the attachment request. For example, "TransitGatewayRouteTableArn": "arn:aws:ec2:us-west-2:123456789012:transit-gateway-route-table/tgw-rtb-9876543210123 */
    TransitGatewayRouteTableArn: string;
    /** The client token associated with the request. */
    ClientToken?: string;
    /** The routing policy label to apply to the Transit Gateway route table attachment for traffic routing decisions. */
    RoutingPolicyLabel?: string;
    /** The list of key-value tags associated with the request. */
    Tags?: Tag[];
}
export interface CreateVpcAttachmentInput {
    /** The ID of a core network for the VPC attachment. */
    CoreNetworkId: string;
    /** The subnet ARN of the VPC attachment. */
    SubnetArns: string[];
    /** The ARN of the VPC. */
    VpcArn: string;
    /** The client token associated with the request. */
    ClientToken?: string;
    /** Options for the VPC attachment. */
    Options?: VpcOptions;
    /** The routing policy label to apply to the VPC attachment for traffic routing decisions. */
    RoutingPolicyLabel?: string;
    /** The key-value tags associated with the request. */
    Tags?: Tag[];
}
export interface DeleteAttachmentInput {
    /** The ID of the attachment to delete. */
    AttachmentId: string;
}
export interface DeleteConnectionInput {
    /** The ID of the connection. */
    ConnectionId: string;
    /** The ID of the global network. */
    GlobalNetworkId: string;
}
export interface DeleteConnectPeerInput {
    /** The ID of the deleted Connect peer. */
    ConnectPeerId: string;
}
export interface DeleteCoreNetworkInput {
    /** The network ID of the deleted core network. */
    CoreNetworkId: string;
}
export interface DeleteCoreNetworkPolicyVersionInput {
    /** The ID of a core network for the deleted policy. */
    CoreNetworkId: string;
    /** The version ID of the deleted policy. */
    PolicyVersionId: number;
}
export interface DeleteCoreNetworkPrefixListAssociationInput {
    /** The ID of the core network from which to delete the prefix list association. */
    CoreNetworkId: string;
    /** The ARN of the prefix list to disassociate from the core network. */
    PrefixListArn: string;
}
export interface DeleteDeviceInput {
    /** The ID of the device. */
    DeviceId: string;
    /** The ID of the global network. */
    GlobalNetworkId: string;
}
export interface DeleteGlobalNetworkInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
}
export interface DeleteLinkInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The ID of the link. */
    LinkId: string;
}
export interface DeletePeeringInput {
    /** The ID of the peering connection to delete. */
    PeeringId: string;
}
export interface DeleteResourcePolicyInput {
    /** The ARN of the policy to delete. */
    ResourceArn: string;
}
export interface DeleteSiteInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The ID of the site. */
    SiteId: string;
}
export interface DeregisterTransitGatewayInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The Amazon Resource Name (ARN) of the transit gateway. */
    TransitGatewayArn: string;
}
export interface DescribeGlobalNetworksInput {
    /** The IDs of one or more global networks. The maximum is 10. */
    GlobalNetworkIds?: string[];
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
}
export interface DisassociateConnectPeerInput {
    /** The ID of the Connect peer to disassociate from a device. */
    ConnectPeerId: string;
    /** The ID of the global network. */
    GlobalNetworkId: string;
}
export interface DisassociateCustomerGatewayInput {
    /** The Amazon Resource Name (ARN) of the customer gateway. */
    CustomerGatewayArn: string;
    /** The ID of the global network. */
    GlobalNetworkId: string;
}
export interface DisassociateLinkInput {
    /** The ID of the device. */
    DeviceId: string;
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The ID of the link. */
    LinkId: string;
}
export interface DisassociateTransitGatewayConnectPeerInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The Amazon Resource Name (ARN) of the transit gateway Connect peer. */
    TransitGatewayConnectPeerArn: string;
}
export interface ExecuteCoreNetworkChangeSetInput {
    /** The ID of a core network. */
    CoreNetworkId: string;
    /** The ID of the policy version. */
    PolicyVersionId: number;
}
export interface GetConnectAttachmentInput {
    /** The ID of the attachment. */
    AttachmentId: string;
}
export interface GetConnectionsInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** One or more connection IDs. */
    ConnectionIds?: string[];
    /** The ID of the device. */
    DeviceId?: string;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
}
export interface GetConnectPeerInput {
    /** The ID of the Connect peer. */
    ConnectPeerId: string;
}
export interface GetConnectPeerAssociationsInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The IDs of the Connect peers. */
    ConnectPeerIds?: string[];
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
}
export interface GetCoreNetworkInput {
    /** The ID of a core network. */
    CoreNetworkId: string;
}
export interface GetCoreNetworkChangeEventsInput {
    /** The ID of a core network. */
    CoreNetworkId: string;
    /** The ID of the policy version. */
    PolicyVersionId: number;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
}
export interface GetCoreNetworkChangeSetInput {
    /** The ID of a core network. */
    CoreNetworkId: string;
    /** The ID of the policy version. */
    PolicyVersionId: number;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
}
export interface GetCoreNetworkPolicyInput {
    /** The ID of a core network. */
    CoreNetworkId: string;
    /** The alias of a core network policy */
    Alias?: 'LIVE' | 'LATEST';
    /** The ID of a core network policy version. */
    PolicyVersionId?: number;
}
export interface GetCustomerGatewayAssociationsInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** One or more customer gateway Amazon Resource Names (ARNs). The maximum is 10. */
    CustomerGatewayArns?: string[];
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
}
export interface GetDevicesInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** One or more device IDs. The maximum is 10. */
    DeviceIds?: string[];
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
    /** The ID of the site. */
    SiteId?: string;
}
export interface GetDirectConnectGatewayAttachmentInput {
    /** The ID of the Direct Connect gateway attachment that you want to see details about. */
    AttachmentId: string;
}
export interface GetLinkAssociationsInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The ID of the device. */
    DeviceId?: string;
    /** The ID of the link. */
    LinkId?: string;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
}
export interface GetLinksInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** One or more link IDs. The maximum is 10. */
    LinkIds?: string[];
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
    /** The link provider. */
    Provider?: string;
    /** The ID of the site. */
    SiteId?: string;
    /** The link type. */
    Type?: string;
}
export interface GetNetworkResourceCountsInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
    /** The resource type. The following are the supported resource types for Direct Connect: dxcon dx-gateway dx-vif The following are the supported resource types for Network Manager: attachment connect-pee */
    ResourceType?: string;
}
export interface GetNetworkResourceRelationshipsInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The Amazon Web Services account ID. */
    AccountId?: string;
    /** The Amazon Web Services Region. */
    AwsRegion?: string;
    /** The ID of a core network. */
    CoreNetworkId?: string;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
    /** The ARN of the registered gateway. */
    RegisteredGatewayArn?: string;
    /** The ARN of the gateway. */
    ResourceArn?: string;
    /** The resource type. The following are the supported resource types for Direct Connect: dxcon dx-gateway dx-vif The following are the supported resource types for Network Manager: attachment connect-pee */
    ResourceType?: string;
}
export interface GetNetworkResourcesInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The Amazon Web Services account ID. */
    AccountId?: string;
    /** The Amazon Web Services Region. */
    AwsRegion?: string;
    /** The ID of a core network. */
    CoreNetworkId?: string;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
    /** The ARN of the gateway. */
    RegisteredGatewayArn?: string;
    /** The ARN of the resource. */
    ResourceArn?: string;
    /** The resource type. The following are the supported resource types for Direct Connect: dxcon dx-gateway dx-vif The following are the supported resource types for Network Manager: attachment connect-pee */
    ResourceType?: string;
}
export interface GetNetworkRoutesInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The ID of the route table. */
    RouteTableIdentifier: RouteTableIdentifier;
    /** Filter by route table destination. Possible Values: TRANSIT_GATEWAY_ATTACHMENT_ID, RESOURCE_ID, or RESOURCE_TYPE. */
    DestinationFilters?: Record<string, string[]>;
    /** An exact CIDR block. */
    ExactCidrMatches?: string[];
    /** The most specific route that matches the traffic (longest prefix match). */
    LongestPrefixMatches?: string[];
    /** The IDs of the prefix lists. */
    PrefixListIds?: string[];
    /** The route states. */
    States?: 'ACTIVE' | 'BLACKHOLE'[];
    /** The routes with a subnet that match the specified CIDR filter. */
    SubnetOfMatches?: string[];
    /** The routes with a CIDR that encompasses the CIDR filter. Example: If you specify 10.0.1.0/30, then the result returns 10.0.1.0/29. */
    SupernetOfMatches?: string[];
    /** The route types. */
    Types?: 'PROPAGATED' | 'STATIC'[];
}
export interface GetNetworkTelemetryInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The Amazon Web Services account ID. */
    AccountId?: string;
    /** The Amazon Web Services Region. */
    AwsRegion?: string;
    /** The ID of a core network. */
    CoreNetworkId?: string;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
    /** The ARN of the gateway. */
    RegisteredGatewayArn?: string;
    /** The ARN of the resource. */
    ResourceArn?: string;
    /** The resource type. The following are the supported resource types: connect-peer transit-gateway-connect-peer vpn-connection */
    ResourceType?: string;
}
export interface GetResourcePolicyInput {
    /** The ARN of the resource. */
    ResourceArn: string;
}
export interface GetRouteAnalysisInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The ID of the route analysis. */
    RouteAnalysisId: string;
}
export interface GetSitesInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
    /** One or more site IDs. The maximum is 10. */
    SiteIds?: string[];
}
export interface GetSiteToSiteVpnAttachmentInput {
    /** The ID of the attachment. */
    AttachmentId: string;
}
export interface GetTransitGatewayConnectPeerAssociationsInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
    /** One or more transit gateway Connect peer Amazon Resource Names (ARNs). */
    TransitGatewayConnectPeerArns?: string[];
}
export interface GetTransitGatewayPeeringInput {
    /** The ID of the peering request. */
    PeeringId: string;
}
export interface GetTransitGatewayRegistrationsInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
    /** The Amazon Resource Names (ARNs) of one or more transit gateways. The maximum is 10. */
    TransitGatewayArns?: string[];
}
export interface GetTransitGatewayRouteTableAttachmentInput {
    /** The ID of the transit gateway route table attachment. */
    AttachmentId: string;
}
export interface GetVpcAttachmentInput {
    /** The ID of the attachment. */
    AttachmentId: string;
}
export interface ListAttachmentRoutingPolicyAssociationsInput {
    /** The ID of the core network to list attachment routing policy associations for. */
    CoreNetworkId: string;
    /** The ID of a specific attachment to filter the routing policy associations. */
    AttachmentId?: string;
    /** The maximum number of results to return in a single page. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
}
export interface ListAttachmentsInput {
    /** The type of attachment. */
    AttachmentType?: 'CONNECT' | 'SITE_TO_SITE_VPN' | 'VPC' | 'DIRECT_CONNECT_GATEWAY' | 'TRANSIT_GATEWAY_ROUTE_TABLE';
    /** The ID of a core network. */
    CoreNetworkId?: string;
    /** The Region where the edge is located. */
    EdgeLocation?: string;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
    /** The state of the attachment. */
    State?: 'REJECTED' | 'PENDING_ATTACHMENT_ACCEPTANCE' | 'CREATING' | 'FAILED' | 'AVAILABLE' | 'UPDATING' | 'PENDING_NETWORK_UPDATE' | 'PENDING_TAG_ACCEPTANCE' | 'DELETING';
}
export interface ListConnectPeersInput {
    /** The ID of the attachment. */
    ConnectAttachmentId?: string;
    /** The ID of a core network. */
    CoreNetworkId?: string;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
}
export interface ListCoreNetworkPolicyVersionsInput {
    /** The ID of a core network. */
    CoreNetworkId: string;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
}
export interface ListCoreNetworkPrefixListAssociationsInput {
    /** The ID of the core network to list prefix list associations for. */
    CoreNetworkId: string;
    /** The maximum number of results to return in a single page. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
    /** The ARN of a specific prefix list to filter the associations. */
    PrefixListArn?: string;
}
export interface ListCoreNetworkRoutingInformationInput {
    /** The ID of the core network to retrieve routing information for. */
    CoreNetworkId: string;
    /** The edge location to filter routing information by. */
    EdgeLocation: string;
    /** The name of the segment to filter routing information by. */
    SegmentName: string;
    /** BGP community values to match when filtering routing information. */
    CommunityMatches?: string[];
    /** Exact AS path values to match when filtering routing information. */
    ExactAsPathMatches?: string[];
    /** Local preference values to match when filtering routing information. */
    LocalPreferenceMatches?: string[];
    /** The maximum number of routing information entries to return in a single page. */
    MaxResults?: number;
    /** Multi-Exit Discriminator (MED) values to match when filtering routing information. */
    MedMatches?: string[];
    /** Filters to apply based on next hop information. */
    NextHopFilters?: Record<string, string[]>;
    /** The token for the next page of results. */
    NextToken?: string;
}
export interface ListCoreNetworksInput {
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
}
export interface ListOrganizationServiceAccessStatusInput {
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
}
export interface ListPeeringsInput {
    /** The ID of a core network. */
    CoreNetworkId?: string;
    /** Returns a list edge locations for the */
    EdgeLocation?: string;
    /** The maximum number of results to return. */
    MaxResults?: number;
    /** The token for the next page of results. */
    NextToken?: string;
    /** Returns a list of a peering requests. */
    PeeringType?: 'TRANSIT_GATEWAY';
    /** Returns a list of the peering request states. */
    State?: 'CREATING' | 'FAILED' | 'AVAILABLE' | 'DELETING';
}
export interface ListTagsForResourceInput {
    /** The Amazon Resource Name (ARN) of the resource. */
    ResourceArn: string;
}
export interface PutAttachmentRoutingPolicyLabelInput {
    /** The ID of the attachment to apply the routing policy label to. */
    AttachmentId: string;
    /** The ID of the core network containing the attachment. */
    CoreNetworkId: string;
    /** The routing policy label to apply to the attachment. */
    RoutingPolicyLabel: string;
    /** A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. */
    ClientToken?: string;
}
export interface PutCoreNetworkPolicyInput {
    /** The ID of a core network. */
    CoreNetworkId: string;
    /** The policy document. */
    PolicyDocument: string;
    /** The client token associated with the request. */
    ClientToken?: string;
    /** a core network policy description. */
    Description?: string;
    /** The ID of a core network policy. */
    LatestVersionId?: number;
}
export interface PutResourcePolicyInput {
    /** The JSON resource policy document. */
    PolicyDocument: string;
    /** The ARN of the resource policy. */
    ResourceArn: string;
}
export interface RegisterTransitGatewayInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The Amazon Resource Name (ARN) of the transit gateway. */
    TransitGatewayArn: string;
}
export interface RejectAttachmentInput {
    /** The ID of the attachment. */
    AttachmentId: string;
}
export interface RemoveAttachmentRoutingPolicyLabelInput {
    /** The ID of the attachment to remove the routing policy label from. */
    AttachmentId: string;
    /** The ID of the core network containing the attachment. */
    CoreNetworkId: string;
}
export interface RestoreCoreNetworkPolicyVersionInput {
    /** The ID of a core network. */
    CoreNetworkId: string;
    /** The ID of the policy version to restore. */
    PolicyVersionId: number;
}
export interface StartOrganizationServiceAccessUpdateInput {
    /** The action to take for the update request. This can be either ENABLE or DISABLE. */
    Action: string;
}
export interface StartRouteAnalysisInput {
    /** The destination. */
    Destination: RouteAnalysisEndpointOptionsSpecification;
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The source from which traffic originates. */
    Source: RouteAnalysisEndpointOptionsSpecification;
    /** Indicates whether to analyze the return path. The default is false. */
    IncludeReturnPath?: boolean;
    /** Indicates whether to include the location of middlebox appliances in the route analysis. The default is false. */
    UseMiddleboxes?: boolean;
}
export interface TagResourceInput {
    /** The Amazon Resource Name (ARN) of the resource. */
    ResourceArn: string;
    /** The tags to apply to the specified resource. */
    Tags: Tag[];
}
export interface UntagResourceInput {
    /** The Amazon Resource Name (ARN) of the resource. */
    ResourceArn: string;
    /** The tag keys to remove from the specified resource. */
    TagKeys: string[];
}
export interface UpdateConnectionInput {
    /** The ID of the connection. */
    ConnectionId: string;
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The ID of the link for the second device in the connection. */
    ConnectedLinkId?: string;
    /** A description of the connection. Length Constraints: Maximum length of 256 characters. */
    Description?: string;
    /** The ID of the link for the first device in the connection. */
    LinkId?: string;
}
export interface UpdateCoreNetworkInput {
    /** The ID of a core network. */
    CoreNetworkId: string;
    /** The description of the update. */
    Description?: string;
}
export interface UpdateDeviceInput {
    /** The ID of the device. */
    DeviceId: string;
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The Amazon Web Services location of the device, if applicable. For an on-premises device, you can omit this parameter. */
    AWSLocation?: AWSLocation;
    /** A description of the device. Constraints: Maximum length of 256 characters. */
    Description?: string;
    Location?: Location;
    /** The model of the device. Constraints: Maximum length of 128 characters. */
    Model?: string;
    /** The serial number of the device. Constraints: Maximum length of 128 characters. */
    SerialNumber?: string;
    /** The ID of the site. */
    SiteId?: string;
    /** The type of the device. */
    Type?: string;
    /** The vendor of the device. Constraints: Maximum length of 128 characters. */
    Vendor?: string;
}
export interface UpdateDirectConnectGatewayAttachmentInput {
    /** The ID of the Direct Connect gateway attachment for the updated edge locations. */
    AttachmentId: string;
    /** One or more edge locations to update for the Direct Connect gateway attachment. The updated array of edge locations overwrites the previous array of locations. EdgeLocations is only used for Direct Co */
    EdgeLocations?: string[];
}
export interface UpdateGlobalNetworkInput {
    /** The ID of your global network. */
    GlobalNetworkId: string;
    /** A description of the global network. Constraints: Maximum length of 256 characters. */
    Description?: string;
}
export interface UpdateLinkInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The ID of the link. */
    LinkId: string;
    /** The upload and download speed in Mbps. */
    Bandwidth?: Bandwidth;
    /** A description of the link. Constraints: Maximum length of 256 characters. */
    Description?: string;
    /** The provider of the link. Constraints: Maximum length of 128 characters. */
    Provider?: string;
    /** The type of the link. Constraints: Maximum length of 128 characters. */
    Type?: string;
}
export interface UpdateNetworkResourceMetadataInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The resource metadata. */
    Metadata: Record<string, string>;
    /** The ARN of the resource. */
    ResourceArn: string;
}
export interface UpdateSiteInput {
    /** The ID of the global network. */
    GlobalNetworkId: string;
    /** The ID of your site. */
    SiteId: string;
    /** A description of your site. Constraints: Maximum length of 256 characters. */
    Description?: string;
    /** The site location: Address: The physical address of the site. Latitude: The latitude of the site. Longitude: The longitude of the site. */
    Location?: Location;
}
export interface UpdateVpcAttachmentInput {
    /** The ID of the attachment. */
    AttachmentId: string;
    /** Adds a subnet ARN to the VPC attachment. */
    AddSubnetArns?: string[];
    /** Additional options for updating the VPC attachment. */
    Options?: VpcOptions;
    /** Removes a subnet ARN from the attachment. */
    RemoveSubnetArns?: string[];
}
/** NetworkManager service binding for Step Functions SDK integrations. */
export declare class NetworkManager {
    constructor();
    acceptAttachment<T>(params: AcceptAttachmentInput): Promise<T>;
    associateConnectPeer<T>(params: AssociateConnectPeerInput): Promise<T>;
    associateCustomerGateway<T>(params: AssociateCustomerGatewayInput): Promise<T>;
    associateLink<T>(params: AssociateLinkInput): Promise<T>;
    associateTransitGatewayConnectPeer<T>(params: AssociateTransitGatewayConnectPeerInput): Promise<T>;
    createConnectAttachment<T>(params: CreateConnectAttachmentInput): Promise<T>;
    createConnection<T>(params: CreateConnectionInput): Promise<T>;
    createConnectPeer<T>(params: CreateConnectPeerInput): Promise<T>;
    createCoreNetwork<T>(params: CreateCoreNetworkInput): Promise<T>;
    createCoreNetworkPrefixListAssociation<T>(params: CreateCoreNetworkPrefixListAssociationInput): Promise<T>;
    createDevice<T>(params: CreateDeviceInput): Promise<T>;
    createDirectConnectGatewayAttachment<T>(params: CreateDirectConnectGatewayAttachmentInput): Promise<T>;
    createGlobalNetwork<T>(params: CreateGlobalNetworkInput): Promise<T>;
    createLink<T>(params: CreateLinkInput): Promise<T>;
    createSite<T>(params: CreateSiteInput): Promise<T>;
    createSiteToSiteVpnAttachment<T>(params: CreateSiteToSiteVpnAttachmentInput): Promise<T>;
    createTransitGatewayPeering<T>(params: CreateTransitGatewayPeeringInput): Promise<T>;
    createTransitGatewayRouteTableAttachment<T>(params: CreateTransitGatewayRouteTableAttachmentInput): Promise<T>;
    createVpcAttachment<T>(params: CreateVpcAttachmentInput): Promise<T>;
    deleteAttachment<T>(params: DeleteAttachmentInput): Promise<T>;
    deleteConnection<T>(params: DeleteConnectionInput): Promise<T>;
    deleteConnectPeer<T>(params: DeleteConnectPeerInput): Promise<T>;
    deleteCoreNetwork<T>(params: DeleteCoreNetworkInput): Promise<T>;
    deleteCoreNetworkPolicyVersion<T>(params: DeleteCoreNetworkPolicyVersionInput): Promise<T>;
    deleteCoreNetworkPrefixListAssociation<T>(params: DeleteCoreNetworkPrefixListAssociationInput): Promise<T>;
    deleteDevice<T>(params: DeleteDeviceInput): Promise<T>;
    deleteGlobalNetwork<T>(params: DeleteGlobalNetworkInput): Promise<T>;
    deleteLink<T>(params: DeleteLinkInput): Promise<T>;
    deletePeering<T>(params: DeletePeeringInput): Promise<T>;
    deleteResourcePolicy<T>(params: DeleteResourcePolicyInput): Promise<T>;
    deleteSite<T>(params: DeleteSiteInput): Promise<T>;
    deregisterTransitGateway<T>(params: DeregisterTransitGatewayInput): Promise<T>;
    describeGlobalNetworks<T>(params: DescribeGlobalNetworksInput): Promise<T>;
    disassociateConnectPeer<T>(params: DisassociateConnectPeerInput): Promise<T>;
    disassociateCustomerGateway<T>(params: DisassociateCustomerGatewayInput): Promise<T>;
    disassociateLink<T>(params: DisassociateLinkInput): Promise<T>;
    disassociateTransitGatewayConnectPeer<T>(params: DisassociateTransitGatewayConnectPeerInput): Promise<T>;
    executeCoreNetworkChangeSet<T>(params: ExecuteCoreNetworkChangeSetInput): Promise<T>;
    getConnectAttachment<T>(params: GetConnectAttachmentInput): Promise<T>;
    getConnections<T>(params: GetConnectionsInput): Promise<T>;
    getConnectPeer<T>(params: GetConnectPeerInput): Promise<T>;
    getConnectPeerAssociations<T>(params: GetConnectPeerAssociationsInput): Promise<T>;
    getCoreNetwork<T>(params: GetCoreNetworkInput): Promise<T>;
    getCoreNetworkChangeEvents<T>(params: GetCoreNetworkChangeEventsInput): Promise<T>;
    getCoreNetworkChangeSet<T>(params: GetCoreNetworkChangeSetInput): Promise<T>;
    getCoreNetworkPolicy<T>(params: GetCoreNetworkPolicyInput): Promise<T>;
    getCustomerGatewayAssociations<T>(params: GetCustomerGatewayAssociationsInput): Promise<T>;
    getDevices<T>(params: GetDevicesInput): Promise<T>;
    getDirectConnectGatewayAttachment<T>(params: GetDirectConnectGatewayAttachmentInput): Promise<T>;
    getLinkAssociations<T>(params: GetLinkAssociationsInput): Promise<T>;
    getLinks<T>(params: GetLinksInput): Promise<T>;
    getNetworkResourceCounts<T>(params: GetNetworkResourceCountsInput): Promise<T>;
    getNetworkResourceRelationships<T>(params: GetNetworkResourceRelationshipsInput): Promise<T>;
    getNetworkResources<T>(params: GetNetworkResourcesInput): Promise<T>;
    getNetworkRoutes<T>(params: GetNetworkRoutesInput): Promise<T>;
    getNetworkTelemetry<T>(params: GetNetworkTelemetryInput): Promise<T>;
    getResourcePolicy<T>(params: GetResourcePolicyInput): Promise<T>;
    getRouteAnalysis<T>(params: GetRouteAnalysisInput): Promise<T>;
    getSites<T>(params: GetSitesInput): Promise<T>;
    getSiteToSiteVpnAttachment<T>(params: GetSiteToSiteVpnAttachmentInput): Promise<T>;
    getTransitGatewayConnectPeerAssociations<T>(params: GetTransitGatewayConnectPeerAssociationsInput): Promise<T>;
    getTransitGatewayPeering<T>(params: GetTransitGatewayPeeringInput): Promise<T>;
    getTransitGatewayRegistrations<T>(params: GetTransitGatewayRegistrationsInput): Promise<T>;
    getTransitGatewayRouteTableAttachment<T>(params: GetTransitGatewayRouteTableAttachmentInput): Promise<T>;
    getVpcAttachment<T>(params: GetVpcAttachmentInput): Promise<T>;
    listAttachmentRoutingPolicyAssociations<T>(params: ListAttachmentRoutingPolicyAssociationsInput): Promise<T>;
    listAttachments<T>(params: ListAttachmentsInput): Promise<T>;
    listConnectPeers<T>(params: ListConnectPeersInput): Promise<T>;
    listCoreNetworkPolicyVersions<T>(params: ListCoreNetworkPolicyVersionsInput): Promise<T>;
    listCoreNetworkPrefixListAssociations<T>(params: ListCoreNetworkPrefixListAssociationsInput): Promise<T>;
    listCoreNetworkRoutingInformation<T>(params: ListCoreNetworkRoutingInformationInput): Promise<T>;
    listCoreNetworks<T>(params: ListCoreNetworksInput): Promise<T>;
    listOrganizationServiceAccessStatus<T>(params: ListOrganizationServiceAccessStatusInput): Promise<T>;
    listPeerings<T>(params: ListPeeringsInput): Promise<T>;
    listTagsForResource<T>(params: ListTagsForResourceInput): Promise<T>;
    putAttachmentRoutingPolicyLabel<T>(params: PutAttachmentRoutingPolicyLabelInput): Promise<T>;
    putCoreNetworkPolicy<T>(params: PutCoreNetworkPolicyInput): Promise<T>;
    putResourcePolicy<T>(params: PutResourcePolicyInput): Promise<T>;
    registerTransitGateway<T>(params: RegisterTransitGatewayInput): Promise<T>;
    rejectAttachment<T>(params: RejectAttachmentInput): Promise<T>;
    removeAttachmentRoutingPolicyLabel<T>(params: RemoveAttachmentRoutingPolicyLabelInput): Promise<T>;
    restoreCoreNetworkPolicyVersion<T>(params: RestoreCoreNetworkPolicyVersionInput): Promise<T>;
    startOrganizationServiceAccessUpdate<T>(params: StartOrganizationServiceAccessUpdateInput): Promise<T>;
    startRouteAnalysis<T>(params: StartRouteAnalysisInput): Promise<T>;
    tagResource<T>(params: TagResourceInput): Promise<T>;
    untagResource<T>(params: UntagResourceInput): Promise<T>;
    updateConnection<T>(params: UpdateConnectionInput): Promise<T>;
    updateCoreNetwork<T>(params: UpdateCoreNetworkInput): Promise<T>;
    updateDevice<T>(params: UpdateDeviceInput): Promise<T>;
    updateDirectConnectGatewayAttachment<T>(params: UpdateDirectConnectGatewayAttachmentInput): Promise<T>;
    updateGlobalNetwork<T>(params: UpdateGlobalNetworkInput): Promise<T>;
    updateLink<T>(params: UpdateLinkInput): Promise<T>;
    updateNetworkResourceMetadata<T>(params: UpdateNetworkResourceMetadataInput): Promise<T>;
    updateSite<T>(params: UpdateSiteInput): Promise<T>;
    updateVpcAttachment<T>(params: UpdateVpcAttachmentInput): Promise<T>;
}
//# sourceMappingURL=NetworkManager.d.ts.map