import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Manages a Logic App Integration Account Agreement. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as azure from "@pulumi/azure"; * import * as std from "@pulumi/std"; * * const example = new azure.core.ResourceGroup("example", { * name: "example-resources", * location: "West Europe", * }); * const test = new azure.logicapps.IntegrationAccount("test", { * name: "example-ia", * location: example.location, * resourceGroupName: example.name, * skuName: "Standard", * }); * const host = new azure.logicapps.IntegrationAccountPartner("host", { * name: "example-hostpartner", * resourceGroupName: example.name, * integrationAccountName: test.name, * businessIdentities: [{ * qualifier: "AS2Identity", * value: "FabrikamNY", * }], * }); * const guest = new azure.logicapps.IntegrationAccountPartner("guest", { * name: "example-guestpartner", * resourceGroupName: example.name, * integrationAccountName: test.name, * businessIdentities: [{ * qualifier: "AS2Identity", * value: "FabrikamDC", * }], * }); * const testIntegrationAccountAgreement = new azure.logicapps.IntegrationAccountAgreement("test", { * name: "example-agreement", * resourceGroupName: example.name, * integrationAccountName: test.name, * agreementType: "AS2", * hostPartnerName: host.name, * guestPartnerName: guest.name, * content: std.file({ * input: "testdata/integration_account_agreement_content_as2.json", * }).then(invoke => invoke.result), * hostIdentity: { * qualifier: "AS2Identity", * value: "FabrikamNY", * }, * guestIdentity: { * qualifier: "AS2Identity", * value: "FabrikamDC", * }, * }); * ``` * * ## API Providers * * * This resource uses the following Azure API Providers: * * * `Microsoft.Logic` - 2019-05-01 * * ## Import * * Logic App Integration Account Agreements can be imported using the `resource id`, e.g. * * ```sh * $ pulumi import azure:logicapps/integrationAccountAgreement:IntegrationAccountAgreement example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Logic/integrationAccounts/account1/agreements/agreement1 * ``` */ export declare class IntegrationAccountAgreement extends pulumi.CustomResource { /** * Get an existing IntegrationAccountAgreement 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?: IntegrationAccountAgreementState, opts?: pulumi.CustomResourceOptions): IntegrationAccountAgreement; /** * Returns true if the given object is an instance of IntegrationAccountAgreement. 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 IntegrationAccountAgreement; /** * The type of the Logic App Integration Account Agreement. Possible values are `AS2`, `X12` and `Edifact`. */ readonly agreementType: pulumi.Output; /** * The content of the Logic App Integration Account Agreement. */ readonly content: pulumi.Output; /** * A `guestIdentity` block as documented below. */ readonly guestIdentity: pulumi.Output; /** * The name of the guest Logic App Integration Account Partner. */ readonly guestPartnerName: pulumi.Output; /** * A `hostIdentity` block as documented below. */ readonly hostIdentity: pulumi.Output; /** * The name of the host Logic App Integration Account Partner. */ readonly hostPartnerName: pulumi.Output; /** * The name of the Logic App Integration Account. Changing this forces a new resource to be created. */ readonly integrationAccountName: pulumi.Output; /** * The metadata of the Logic App Integration Account Agreement. */ readonly metadata: pulumi.Output<{ [key: string]: string; } | undefined>; /** * The name which should be used for this Logic App Integration Account Agreement. Changing this forces a new resource to be created. */ readonly name: pulumi.Output; /** * The name of the Resource Group where the Logic App Integration Account Agreement should exist. Changing this forces a new resource to be created. */ readonly resourceGroupName: pulumi.Output; /** * Create a IntegrationAccountAgreement 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: IntegrationAccountAgreementArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering IntegrationAccountAgreement resources. */ export interface IntegrationAccountAgreementState { /** * The type of the Logic App Integration Account Agreement. Possible values are `AS2`, `X12` and `Edifact`. */ agreementType?: pulumi.Input; /** * The content of the Logic App Integration Account Agreement. */ content?: pulumi.Input; /** * A `guestIdentity` block as documented below. */ guestIdentity?: pulumi.Input; /** * The name of the guest Logic App Integration Account Partner. */ guestPartnerName?: pulumi.Input; /** * A `hostIdentity` block as documented below. */ hostIdentity?: pulumi.Input; /** * The name of the host Logic App Integration Account Partner. */ hostPartnerName?: pulumi.Input; /** * The name of the Logic App Integration Account. Changing this forces a new resource to be created. */ integrationAccountName?: pulumi.Input; /** * The metadata of the Logic App Integration Account Agreement. */ metadata?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * The name which should be used for this Logic App Integration Account Agreement. Changing this forces a new resource to be created. */ name?: pulumi.Input; /** * The name of the Resource Group where the Logic App Integration Account Agreement should exist. Changing this forces a new resource to be created. */ resourceGroupName?: pulumi.Input; } /** * The set of arguments for constructing a IntegrationAccountAgreement resource. */ export interface IntegrationAccountAgreementArgs { /** * The type of the Logic App Integration Account Agreement. Possible values are `AS2`, `X12` and `Edifact`. */ agreementType: pulumi.Input; /** * The content of the Logic App Integration Account Agreement. */ content: pulumi.Input; /** * A `guestIdentity` block as documented below. */ guestIdentity: pulumi.Input; /** * The name of the guest Logic App Integration Account Partner. */ guestPartnerName: pulumi.Input; /** * A `hostIdentity` block as documented below. */ hostIdentity: pulumi.Input; /** * The name of the host Logic App Integration Account Partner. */ hostPartnerName: pulumi.Input; /** * The name of the Logic App Integration Account. Changing this forces a new resource to be created. */ integrationAccountName: pulumi.Input; /** * The metadata of the Logic App Integration Account Agreement. */ metadata?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * The name which should be used for this Logic App Integration Account Agreement. Changing this forces a new resource to be created. */ name?: pulumi.Input; /** * The name of the Resource Group where the Logic App Integration Account Agreement should exist. Changing this forces a new resource to be created. */ resourceGroupName: pulumi.Input; }