import * as pulumi from "@pulumi/pulumi"; import * as types from "./types"; /** * Role management policy * * Uses Azure REST API version 2024-09-01-preview. In version 2.x of the Azure Native provider, it used API version 2024-09-01-preview. * * Other available API versions: 2020-10-01, 2020-10-01-preview, 2024-02-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 RoleManagementPolicy extends pulumi.CustomResource { /** * Get an existing RoleManagementPolicy 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): RoleManagementPolicy; /** @internal */ static readonly __pulumiType = "azure-native:authorization:RoleManagementPolicy"; /** * Returns true if the given object is an instance of RoleManagementPolicy. 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 RoleManagementPolicy; /** * The Azure API version of the resource. */ readonly azureApiVersion: pulumi.Output; /** * The role management policy description. */ readonly description: pulumi.Output; /** * The role management policy display name. */ readonly displayName: pulumi.Output; /** * The readonly computed rule applied to the policy. */ readonly effectiveRules: pulumi.Output<(types.outputs.RoleManagementPolicyApprovalRuleResponse | types.outputs.RoleManagementPolicyAuthenticationContextRuleResponse | types.outputs.RoleManagementPolicyEnablementRuleResponse | types.outputs.RoleManagementPolicyExpirationRuleResponse | types.outputs.RoleManagementPolicyNotificationRuleResponse | types.outputs.RoleManagementPolicyPimOnlyModeRuleResponse)[]>; /** * The role management policy is default policy. */ readonly isOrganizationDefault: pulumi.Output; /** * The name of the entity last modified it */ readonly lastModifiedBy: pulumi.Output; /** * The last modified date time. */ readonly lastModifiedDateTime: pulumi.Output; /** * The role management policy name. */ readonly name: pulumi.Output; /** * Additional properties of scope */ readonly policyProperties: pulumi.Output; /** * The rule applied to the policy. */ readonly rules: pulumi.Output<(types.outputs.RoleManagementPolicyApprovalRuleResponse | types.outputs.RoleManagementPolicyAuthenticationContextRuleResponse | types.outputs.RoleManagementPolicyEnablementRuleResponse | types.outputs.RoleManagementPolicyExpirationRuleResponse | types.outputs.RoleManagementPolicyNotificationRuleResponse | types.outputs.RoleManagementPolicyPimOnlyModeRuleResponse)[] | undefined>; /** * The role management policy scope. */ readonly scope: pulumi.Output; /** * The role management policy type. */ readonly type: pulumi.Output; /** * Create a RoleManagementPolicy 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: RoleManagementPolicyArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a RoleManagementPolicy resource. */ export interface RoleManagementPolicyArgs { /** * The role management policy description. */ description?: pulumi.Input; /** * The role management policy display name. */ displayName?: pulumi.Input; /** * The role management policy is default policy. */ isOrganizationDefault?: pulumi.Input; /** * The name (guid) of the role management policy to upsert. */ roleManagementPolicyName?: pulumi.Input; /** * The rule applied to the policy. */ rules?: pulumi.Input[]>; /** * The role management policy scope. */ scope: pulumi.Input; }