import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * Provides a resource to create an access control policy based on the input parameters. * * ## Example Usage * * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as nutanix from "@pierskarsenbarg/nutanix"; * * const test = new nutanix.AccessControlPolicy("test", { * name: "NAME OF ACCESS CONTROL POLICY", * description: "DESCRIPTION OF THE ACCESS CONTROL POLICY", * roleReference: { * kind: "role", * uuid: "UUID of role", * }, * userReferenceLists: [{ * uuid: "UUID of User existent", * name: "admin", * }], * contextFilterLists: [{ * entityFilterExpressionLists: [ * { * operator: "IN", * leftHandSideEntityType: "cluster", * rightHandSide: { * uuidLists: ["00058ef8-c31c-f0bc-0000-000000007b23"], * }, * }, * { * operator: "IN", * leftHandSideEntityType: "image", * rightHandSide: { * collection: "ALL", * }, * }, * { * operator: "IN", * leftHandSideEntityType: "category", * rightHandSide: { * collection: "ALL", * }, * }, * { * operator: "IN", * leftHandSideEntityType: "marketplace_item", * rightHandSide: { * collection: "SELF_OWNED", * }, * }, * { * operator: "IN", * leftHandSideEntityType: "app_task", * rightHandSide: { * collection: "SELF_OWNED", * }, * }, * { * operator: "IN", * leftHandSideEntityType: "app_variable", * rightHandSide: { * collection: "SELF_OWNED", * }, * }, * ], * }], * }); * ``` * */ export declare class AccessControlPolicy extends pulumi.CustomResource { /** * Get an existing AccessControlPolicy 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?: AccessControlPolicyState, opts?: pulumi.CustomResourceOptions): AccessControlPolicy; /** * Returns true if the given object is an instance of AccessControlPolicy. 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 AccessControlPolicy; /** * The version of the API. */ readonly apiVersion: pulumi.Output; /** * - (Optional) Categories for the Access Control Policy. */ readonly categories: pulumi.Output; readonly contextFilterLists: pulumi.Output; /** * - (Optional) The description of Access Control Policy. */ readonly description: pulumi.Output; /** * - The Access Control Policy kind metadata. */ readonly metadata: pulumi.Output<{ [key: string]: string; }>; /** * - (Optional) Name of the Access Control Policy. */ readonly name: pulumi.Output; /** * - (Optional) The reference to a user. */ readonly ownerReference: pulumi.Output; /** * - (Required) The reference to a role. */ readonly roleReference: pulumi.Output; /** * - The state of the Access Control Policy. */ readonly state: pulumi.Output; /** * - (Optional) The User group(s) being assigned a given role. */ readonly userGroupReferenceLists: pulumi.Output; /** * - (Optional) The User(s) being assigned a given role. */ readonly userReferenceLists: pulumi.Output; /** * Create a AccessControlPolicy 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: AccessControlPolicyArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering AccessControlPolicy resources. */ export interface AccessControlPolicyState { /** * The version of the API. */ apiVersion?: pulumi.Input; /** * - (Optional) Categories for the Access Control Policy. */ categories?: pulumi.Input[] | undefined>; contextFilterLists?: pulumi.Input[] | undefined>; /** * - (Optional) The description of Access Control Policy. */ description?: pulumi.Input; /** * - The Access Control Policy kind metadata. */ metadata?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * - (Optional) Name of the Access Control Policy. */ name?: pulumi.Input; /** * - (Optional) The reference to a user. */ ownerReference?: pulumi.Input; /** * - (Required) The reference to a role. */ roleReference?: pulumi.Input; /** * - The state of the Access Control Policy. */ state?: pulumi.Input; /** * - (Optional) The User group(s) being assigned a given role. */ userGroupReferenceLists?: pulumi.Input[] | undefined>; /** * - (Optional) The User(s) being assigned a given role. */ userReferenceLists?: pulumi.Input[] | undefined>; } /** * The set of arguments for constructing a AccessControlPolicy resource. */ export interface AccessControlPolicyArgs { /** * - (Optional) Categories for the Access Control Policy. */ categories?: pulumi.Input[] | undefined>; contextFilterLists?: pulumi.Input[] | undefined>; /** * - (Optional) The description of Access Control Policy. */ description?: pulumi.Input; /** * - (Optional) Name of the Access Control Policy. */ name?: pulumi.Input; /** * - (Optional) The reference to a user. */ ownerReference?: pulumi.Input; /** * - (Required) The reference to a role. */ roleReference: pulumi.Input; /** * - (Optional) The User group(s) being assigned a given role. */ userGroupReferenceLists?: pulumi.Input[] | undefined>; /** * - (Optional) The User(s) being assigned a given role. */ userReferenceLists?: pulumi.Input[] | undefined>; } //# sourceMappingURL=accessControlPolicy.d.ts.map