import * as pulumi from "@pulumi/pulumi"; /** * Resource for managing an AWS User Notifications Organizational Unit Association. This resource associates an organizational unit with a notification configuration. * * ## Example Usage * * ### Basic Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * import * as time from "@pulumi/time"; * * const example = aws.organizations.getOrganization({}); * const exampleNotificationConfiguration = new aws.notifications.NotificationConfiguration("example", { * name: "example-notification-config", * description: "Example notification configuration", * }); * const exampleOrganizationalUnit = new aws.organizations.OrganizationalUnit("example", { * name: "example-ou", * parentId: example.then(example => example.roots?.[0]?.id), * }); * // Allow time for organizational unit creation to propagate * const wait = new time.index.Sleep("wait", {createDuration: "5s"}, { * dependsOn: [ * exampleOrganizationalUnit, * exampleNotificationConfiguration, * ], * }); * const exampleOrganizationalUnitAssociation = new aws.notifications.OrganizationalUnitAssociation("example", { * organizationalUnitId: exampleOrganizationalUnit.id, * notificationConfigurationArn: exampleNotificationConfiguration.arn, * }, { * dependsOn: [wait], * }); * ``` * * ### Associate with Organization Root * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = aws.organizations.getOrganization({}); * const exampleNotificationConfiguration = new aws.notifications.NotificationConfiguration("example", { * name: "example-notification-config", * description: "Example notification configuration", * }); * const exampleOrganizationalUnitAssociation = new aws.notifications.OrganizationalUnitAssociation("example", { * organizationalUnitId: example.then(example => example.roots?.[0]?.id), * notificationConfigurationArn: exampleNotificationConfiguration.arn, * }); * ``` * * ## Import * * Using `pulumi import`, import User Notifications Organizational Unit Association using the `notification_configuration_arn,organizational_unit_id` format. For example: * * ```sh * $ pulumi import aws:notifications/organizationalUnitAssociation:OrganizationalUnitAssociation example arn:aws:notifications:us-west-2:123456789012:configuration:example-notification-config,ou-1234-12345678 * ``` */ export declare class OrganizationalUnitAssociation extends pulumi.CustomResource { /** * Get an existing OrganizationalUnitAssociation 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?: OrganizationalUnitAssociationState, opts?: pulumi.CustomResourceOptions): OrganizationalUnitAssociation; /** * Returns true if the given object is an instance of OrganizationalUnitAssociation. 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 OrganizationalUnitAssociation; /** * ARN of the notification configuration to associate the organizational unit with. */ readonly notificationConfigurationArn: pulumi.Output; /** * ID of the organizational unit or ID of the root to associate with the notification configuration. Can be a root ID (e.g., `r-1234`), or an organization ID (e.g., `o-1234567890`). */ readonly organizationalUnitId: pulumi.Output; /** * Create a OrganizationalUnitAssociation 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: OrganizationalUnitAssociationArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering OrganizationalUnitAssociation resources. */ export interface OrganizationalUnitAssociationState { /** * ARN of the notification configuration to associate the organizational unit with. */ notificationConfigurationArn?: pulumi.Input; /** * ID of the organizational unit or ID of the root to associate with the notification configuration. Can be a root ID (e.g., `r-1234`), or an organization ID (e.g., `o-1234567890`). */ organizationalUnitId?: pulumi.Input; } /** * The set of arguments for constructing a OrganizationalUnitAssociation resource. */ export interface OrganizationalUnitAssociationArgs { /** * ARN of the notification configuration to associate the organizational unit with. */ notificationConfigurationArn: pulumi.Input; /** * ID of the organizational unit or ID of the root to associate with the notification configuration. Can be a root ID (e.g., `r-1234`), or an organization ID (e.g., `o-1234567890`). */ organizationalUnitId: pulumi.Input; } //# sourceMappingURL=organizationalUnitAssociation.d.ts.map