import * as pulumi from "@pulumi/pulumi"; /** * Manages a Network Manager Management Group Connection which may cross tenants. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as azure from "@pulumi/azure"; * * const example = new azure.management.Group("example", {}); * const alt = azure.core.getSubscription({ * subscriptionId: "00000000-0000-0000-0000-000000000000", * }); * const exampleGroupSubscriptionAssociation = new azure.management.GroupSubscriptionAssociation("example", { * managementGroupId: example.id, * subscriptionId: alt.then(alt => alt.id), * }); * const current = azure.core.getSubscription({}); * const currentGetClientConfig = azure.core.getClientConfig({}); * const networkContributor = new azure.authorization.Assignment("network_contributor", { * scope: example.id, * roleDefinitionName: "Network Contributor", * principalId: currentGetClientConfig.then(currentGetClientConfig => currentGetClientConfig.objectId), * }); * const exampleResourceGroup = new azure.core.ResourceGroup("example", { * name: "example-resources", * location: "West Europe", * }); * const exampleNetworkManager = new azure.network.NetworkManager("example", { * name: "example-networkmanager", * location: exampleResourceGroup.location, * resourceGroupName: exampleResourceGroup.name, * scope: { * subscriptionIds: [current.then(current => current.id)], * }, * scopeAccesses: ["SecurityAdmin"], * }); * const exampleNetworkManagerManagementGroupConnection = new azure.network.NetworkManagerManagementGroupConnection("example", { * name: "example-nmmgc", * managementGroupId: example.id, * networkManagerId: exampleNetworkManager.id, * description: "example", * }, { * dependsOn: [networkContributor], * }); * ``` * * ## API Providers * * * This resource uses the following Azure API Providers: * * * `Microsoft.Management` - 2025-01-01 * * ## Import * * Network Manager Management Group Connection can be imported using the `resource id`, e.g. * * ```sh * $ pulumi import azure:network/networkManagerManagementGroupConnection:NetworkManagerManagementGroupConnection example /providers/Microsoft.Management/managementGroups/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/networkManagerConnections/networkManagerConnection1 * ``` */ export declare class NetworkManagerManagementGroupConnection extends pulumi.CustomResource { /** * Get an existing NetworkManagerManagementGroupConnection resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: NetworkManagerManagementGroupConnectionState, opts?: pulumi.CustomResourceOptions): NetworkManagerManagementGroupConnection; /** * Returns true if the given object is an instance of NetworkManagerManagementGroupConnection. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is NetworkManagerManagementGroupConnection; /** * The Connection state of the Network Manager Management Group Connection. */ readonly connectionState: pulumi.Output; /** * A description of the Network Manager Management Group Connection. */ readonly description: pulumi.Output; /** * Specifies the ID of the target Management Group. Changing this forces a new resource to be created. */ readonly managementGroupId: pulumi.Output; /** * Specifies the name which should be used for this Network Manager Management Group Connection. Changing this forces a new Network Manager Management Group Connection to be created. */ readonly name: pulumi.Output; /** * Specifies the ID of the Network Manager which the Management Group is connected to. Changing this forces a new resource to be created. */ readonly networkManagerId: pulumi.Output; /** * Create a NetworkManagerManagementGroupConnection resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: NetworkManagerManagementGroupConnectionArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering NetworkManagerManagementGroupConnection resources. */ export interface NetworkManagerManagementGroupConnectionState { /** * The Connection state of the Network Manager Management Group Connection. */ connectionState?: pulumi.Input; /** * A description of the Network Manager Management Group Connection. */ description?: pulumi.Input; /** * Specifies the ID of the target Management Group. Changing this forces a new resource to be created. */ managementGroupId?: pulumi.Input; /** * Specifies the name which should be used for this Network Manager Management Group Connection. Changing this forces a new Network Manager Management Group Connection to be created. */ name?: pulumi.Input; /** * Specifies the ID of the Network Manager which the Management Group is connected to. Changing this forces a new resource to be created. */ networkManagerId?: pulumi.Input; } /** * The set of arguments for constructing a NetworkManagerManagementGroupConnection resource. */ export interface NetworkManagerManagementGroupConnectionArgs { /** * A description of the Network Manager Management Group Connection. */ description?: pulumi.Input; /** * Specifies the ID of the target Management Group. Changing this forces a new resource to be created. */ managementGroupId: pulumi.Input; /** * Specifies the name which should be used for this Network Manager Management Group Connection. Changing this forces a new Network Manager Management Group Connection to be created. */ name?: pulumi.Input; /** * Specifies the ID of the Network Manager which the Management Group is connected to. Changing this forces a new resource to be created. */ networkManagerId: pulumi.Input; }