import * as pulumi from "@pulumi/pulumi"; import * as types from "./types"; /** * The policy exemption. * * Uses Azure REST API version 2022-07-01-preview. In version 2.x of the Azure Native provider, it used API version 2022-07-01-preview. * * Other available API versions: 2020-07-01-preview, 2024-12-01-preview, 2025-12-01-preview. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native authorization [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details. */ export declare class PolicyExemption extends pulumi.CustomResource { /** * Get an existing PolicyExemption 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 opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): PolicyExemption; /** @internal */ static readonly __pulumiType = "azure-native:authorization:PolicyExemption"; /** * Returns true if the given object is an instance of PolicyExemption. 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 PolicyExemption; /** * The option whether validate the exemption is at or under the assignment scope. */ readonly assignmentScopeValidation: pulumi.Output; /** * The Azure API version of the resource. */ readonly azureApiVersion: pulumi.Output; /** * The description of the policy exemption. */ readonly description: pulumi.Output; /** * The display name of the policy exemption. */ readonly displayName: pulumi.Output; /** * The policy exemption category. Possible values are Waiver and Mitigated. */ readonly exemptionCategory: pulumi.Output; /** * The expiration date and time (in UTC ISO 8601 format yyyy-MM-ddTHH:mm:ssZ) of the policy exemption. */ readonly expiresOn: pulumi.Output; /** * The policy exemption metadata. Metadata is an open ended object and is typically a collection of key value pairs. */ readonly metadata: pulumi.Output; /** * The name of the policy exemption. */ readonly name: pulumi.Output; /** * The ID of the policy assignment that is being exempted. */ readonly policyAssignmentId: pulumi.Output; /** * The policy definition reference ID list when the associated policy assignment is an assignment of a policy set definition. */ readonly policyDefinitionReferenceIds: pulumi.Output; /** * The resource selector list to filter policies by resource properties. */ readonly resourceSelectors: pulumi.Output; /** * Azure Resource Manager metadata containing createdBy and modifiedBy information. */ readonly systemData: pulumi.Output; /** * The type of the resource (Microsoft.Authorization/policyExemptions). */ readonly type: pulumi.Output; /** * Create a PolicyExemption 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: PolicyExemptionArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a PolicyExemption resource. */ export interface PolicyExemptionArgs { /** * The option whether validate the exemption is at or under the assignment scope. */ assignmentScopeValidation?: pulumi.Input; /** * The description of the policy exemption. */ description?: pulumi.Input; /** * The display name of the policy exemption. */ displayName?: pulumi.Input; /** * The policy exemption category. Possible values are Waiver and Mitigated. */ exemptionCategory: pulumi.Input; /** * The expiration date and time (in UTC ISO 8601 format yyyy-MM-ddTHH:mm:ssZ) of the policy exemption. */ expiresOn?: pulumi.Input; /** * The policy exemption metadata. Metadata is an open ended object and is typically a collection of key value pairs. */ metadata?: any; /** * The ID of the policy assignment that is being exempted. */ policyAssignmentId: pulumi.Input; /** * The policy definition reference ID list when the associated policy assignment is an assignment of a policy set definition. */ policyDefinitionReferenceIds?: pulumi.Input[]>; /** * The name of the policy exemption to delete. */ policyExemptionName?: pulumi.Input; /** * The resource selector list to filter policies by resource properties. */ resourceSelectors?: pulumi.Input[]>; /** * The scope of the policy exemption. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}'), resource group (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', or resource (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}' */ scope: pulumi.Input; }