import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../types/output"; /** * Use this data source to access information about an existing Virtual Network Gateway Connection. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as azure from "@pulumi/azure"; * * const example = azure.network.getGatewayConnection({ * name: "production", * resourceGroupName: "networking", * }); * export const virtualNetworkGatewayConnectionId = example.then(example => example.id); * ``` * * ## API Providers * * * This data source uses the following Azure API Providers: * * * `Microsoft.Network` - 2025-01-01 */ export declare function getGatewayConnection(args: GetGatewayConnectionArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getGatewayConnection. */ export interface GetGatewayConnectionArgs { /** * Specifies the name of the Virtual Network Gateway Connection. */ name: string; /** * Specifies the name of the resource group the Virtual Network Gateway Connection is located in. */ resourceGroupName: string; } /** * A collection of values returned by getGatewayConnection. */ export interface GetGatewayConnectionResult { /** * The authorization key associated with the * Express Route Circuit. This field is present only if the type is an * ExpressRoute connection. */ readonly authorizationKey: string; readonly connectionProtocol: string; /** * The dead peer detection timeout of this connection in seconds. */ readonly dpdTimeoutSeconds: number; readonly egressBytesTransferred: number; /** * If `true`, BGP (Border Gateway Protocol) is enabled * for this connection. */ readonly enableBgp: boolean; /** * The ID of the Express Route Circuit * (i.e. when `type` is `ExpressRoute`). */ readonly expressRouteCircuitId: string; /** * If `true`, data packets will bypass ExpressRoute Gateway for data forwarding. This is only valid for ExpressRoute connections. */ readonly expressRouteGatewayBypass: boolean; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; readonly ingressBytesTransferred: number; /** * (Optional) A `ipsecPolicy` block which is documented below. * Only a single policy can be defined for a connection. For details on * custom policies refer to [the relevant section in the Azure documentation](https://docs.microsoft.com/azure/vpn-gateway/vpn-gateway-ipsecikepolicy-rm-powershell). */ readonly ipsecPolicies: outputs.network.GetGatewayConnectionIpsecPolicy[]; /** * Use private local Azure IP for the connection. */ readonly localAzureIpAddressEnabled: boolean; /** * The ID of the local network gateway * when a Site-to-Site connection (i.e. when `type` is `IPsec`). */ readonly localNetworkGatewayId: string; /** * The location/region where the connection is * located. */ readonly location: string; readonly name: string; /** * The ID of the peer virtual * network gateway when a VNet-to-VNet connection (i.e. when `type` * is `Vnet2Vnet`). */ readonly peerVirtualNetworkGatewayId: string; /** * If `true`, data packets will bypass the Express Route gateway when accessing private-links. * This is only valid for ExpressRoute connections, on the conditions described in [the relevant section in the Azure documentation](https://learn.microsoft.com/en-us/azure/expressroute/expressroute-howto-linkvnet-arm#fastpath-virtual-network-peering-user-defined-routes-udrs-and-private-link-support-for-expressroute-direct-connections) */ readonly privateLinkFastPathEnabled: boolean; readonly resourceGroupName: string; readonly resourceGuid: string; /** * The routing weight. */ readonly routingWeight: number; /** * The shared IPSec key. */ readonly sharedKey: string; /** * A mapping of tags to assign to the resource. */ readonly tags: { [key: string]: string; }; /** * One or more `trafficSelectorPolicy` blocks which are documented below. * A `trafficSelectorPolicy` allows to specify a traffic selector policy proposal to be used in a virtual network gateway connection. * For details about traffic selectors refer to [the relevant section in the Azure documentation](https://docs.microsoft.com/azure/vpn-gateway/vpn-gateway-connect-multiple-policybased-rm-ps). */ readonly trafficSelectorPolicies: outputs.network.GetGatewayConnectionTrafficSelectorPolicy[]; /** * The type of connection. Valid options are `IPsec` * (Site-to-Site), `ExpressRoute` (ExpressRoute), and `Vnet2Vnet` (VNet-to-VNet). */ readonly type: string; /** * If `true`, policy-based traffic * selectors are enabled for this connection. Enabling policy-based traffic * selectors requires an `ipsecPolicy` block. */ readonly usePolicyBasedTrafficSelectors: boolean; /** * The ID of the Virtual Network Gateway * in which the connection is created. */ readonly virtualNetworkGatewayId: string; } /** * Use this data source to access information about an existing Virtual Network Gateway Connection. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as azure from "@pulumi/azure"; * * const example = azure.network.getGatewayConnection({ * name: "production", * resourceGroupName: "networking", * }); * export const virtualNetworkGatewayConnectionId = example.then(example => example.id); * ``` * * ## API Providers * * * This data source uses the following Azure API Providers: * * * `Microsoft.Network` - 2025-01-01 */ export declare function getGatewayConnectionOutput(args: GetGatewayConnectionOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getGatewayConnection. */ export interface GetGatewayConnectionOutputArgs { /** * Specifies the name of the Virtual Network Gateway Connection. */ name: pulumi.Input; /** * Specifies the name of the resource group the Virtual Network Gateway Connection is located in. */ resourceGroupName: pulumi.Input; }