import * as pulumi from "@pulumi/pulumi"; import * as enums from "../../types/enums"; /** * Creates a new Attribute definition in the parent consent store. */ export declare class AttributeDefinition extends pulumi.CustomResource { /** * Get an existing AttributeDefinition 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): AttributeDefinition; /** * Returns true if the given object is an instance of AttributeDefinition. 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 AttributeDefinition; /** * Possible values for the attribute. The number of allowed values must not exceed 500. An empty list is invalid. The list can only be expanded after creation. */ readonly allowedValues: pulumi.Output; /** * Required. The ID of the Attribute definition to create. The string must match the following regex: `_a-zA-Z{0,255}` and must not be a reserved keyword within the Common Expression Language as listed on https://github.com/google/cel-spec/blob/master/doc/langdef.md. */ readonly attributeDefinitionId: pulumi.Output; /** * The category of the attribute. The value of this field cannot be changed after creation. */ readonly category: pulumi.Output; /** * Optional. Default values of the attribute in Consents. If no default values are specified, it defaults to an empty value. */ readonly consentDefaultValues: pulumi.Output; readonly consentStoreId: pulumi.Output; /** * Optional. Default value of the attribute in User data mappings. If no default value is specified, it defaults to an empty value. This field is only applicable to attributes of the category `RESOURCE`. */ readonly dataMappingDefaultValue: pulumi.Output; readonly datasetId: pulumi.Output; /** * Optional. A description of the attribute. */ readonly description: pulumi.Output; readonly location: pulumi.Output; /** * Resource name of the Attribute definition, of the form `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentStores/{consent_store_id}/attributeDefinitions/{attribute_definition_id}`. Cannot be changed after creation. */ readonly name: pulumi.Output; readonly project: pulumi.Output; /** * Create a AttributeDefinition 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: AttributeDefinitionArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a AttributeDefinition resource. */ export interface AttributeDefinitionArgs { /** * Possible values for the attribute. The number of allowed values must not exceed 500. An empty list is invalid. The list can only be expanded after creation. */ allowedValues: pulumi.Input[]>; /** * Required. The ID of the Attribute definition to create. The string must match the following regex: `_a-zA-Z{0,255}` and must not be a reserved keyword within the Common Expression Language as listed on https://github.com/google/cel-spec/blob/master/doc/langdef.md. */ attributeDefinitionId: pulumi.Input; /** * The category of the attribute. The value of this field cannot be changed after creation. */ category: pulumi.Input; /** * Optional. Default values of the attribute in Consents. If no default values are specified, it defaults to an empty value. */ consentDefaultValues?: pulumi.Input[]>; consentStoreId: pulumi.Input; /** * Optional. Default value of the attribute in User data mappings. If no default value is specified, it defaults to an empty value. This field is only applicable to attributes of the category `RESOURCE`. */ dataMappingDefaultValue?: pulumi.Input; datasetId: pulumi.Input; /** * Optional. A description of the attribute. */ description?: pulumi.Input; location?: pulumi.Input; /** * Resource name of the Attribute definition, of the form `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentStores/{consent_store_id}/attributeDefinitions/{attribute_definition_id}`. Cannot be changed after creation. */ name?: pulumi.Input; project?: pulumi.Input; }