import * as pulumi from "@pulumi/pulumi"; import { input as inputs, output as outputs } from "../types"; /** * ## Example Usage */ export declare class Project extends pulumi.CustomResource { /** * Get an existing Project 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?: ProjectState, opts?: pulumi.CustomResourceOptions): Project; /** * Returns true if the given object is an instance of Project. 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 Project; /** * Administrator users or groups associated with the project. Only administrators can manage project's configuration. */ readonly administratorRoles: pulumi.Output; /** * A list of administrator users associated with the project. Only administrators can manage project's configuration. * * @deprecated To specify the type of principal, please refer administrator_roles. */ readonly administrators: pulumi.Output; /** * A list of storage, network, and extensibility constraints to be applied when provisioning through this project. */ readonly constraints: pulumi.Output; /** * The project custom properties which are added to all requests in this project. */ readonly customProperties: pulumi.Output<{ [key: string]: any; } | undefined>; /** * A human-friendly description. */ readonly description: pulumi.Output; /** * The naming template to be used for resources provisioned in this project. */ readonly machineNamingTemplate: pulumi.Output; /** * Member users or groups associated with the project. */ readonly memberRoles: pulumi.Output; /** * A list of member users associated with the project. * * @deprecated To specify the type of principal, please refer member_roles. */ readonly members: pulumi.Output; /** * A human-friendly name used as an identifier in APIs that support this option. */ readonly name: pulumi.Output; /** * The timeout that should be used for cloud template operations and provisioning tasks. The timeout is measured in seconds. */ readonly operationTimeout: pulumi.Output; /** * The placement policy that will be applied when selecting a cloud zone for provisioning. Must be one of `DEFAULT` or `SPREAD`. */ readonly placementPolicy: pulumi.Output; /** * Specifies whether the resources in this projects are shared or not. If not set default will be used. */ readonly sharedResources: pulumi.Output; /** * Viewer users or groups associated with the project. */ readonly viewerRoles: pulumi.Output; /** * A list of viewer users associated with the project. * * @deprecated To specify the type of principal, please refer viewer_roles. */ readonly viewers: pulumi.Output; /** * A list of configurations for zone assignment to a project. */ readonly zoneAssignments: pulumi.Output; /** * Create a Project 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?: ProjectArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Project resources. */ export interface ProjectState { /** * Administrator users or groups associated with the project. Only administrators can manage project's configuration. */ administratorRoles?: pulumi.Input[]>; /** * A list of administrator users associated with the project. Only administrators can manage project's configuration. * * @deprecated To specify the type of principal, please refer administrator_roles. */ administrators?: pulumi.Input[]>; /** * A list of storage, network, and extensibility constraints to be applied when provisioning through this project. */ constraints?: pulumi.Input; /** * The project custom properties which are added to all requests in this project. */ customProperties?: pulumi.Input<{ [key: string]: any; }>; /** * A human-friendly description. */ description?: pulumi.Input; /** * The naming template to be used for resources provisioned in this project. */ machineNamingTemplate?: pulumi.Input; /** * Member users or groups associated with the project. */ memberRoles?: pulumi.Input[]>; /** * A list of member users associated with the project. * * @deprecated To specify the type of principal, please refer member_roles. */ members?: pulumi.Input[]>; /** * A human-friendly name used as an identifier in APIs that support this option. */ name?: pulumi.Input; /** * The timeout that should be used for cloud template operations and provisioning tasks. The timeout is measured in seconds. */ operationTimeout?: pulumi.Input; /** * The placement policy that will be applied when selecting a cloud zone for provisioning. Must be one of `DEFAULT` or `SPREAD`. */ placementPolicy?: pulumi.Input; /** * Specifies whether the resources in this projects are shared or not. If not set default will be used. */ sharedResources?: pulumi.Input; /** * Viewer users or groups associated with the project. */ viewerRoles?: pulumi.Input[]>; /** * A list of viewer users associated with the project. * * @deprecated To specify the type of principal, please refer viewer_roles. */ viewers?: pulumi.Input[]>; /** * A list of configurations for zone assignment to a project. */ zoneAssignments?: pulumi.Input[]>; } /** * The set of arguments for constructing a Project resource. */ export interface ProjectArgs { /** * Administrator users or groups associated with the project. Only administrators can manage project's configuration. */ administratorRoles?: pulumi.Input[]>; /** * A list of administrator users associated with the project. Only administrators can manage project's configuration. * * @deprecated To specify the type of principal, please refer administrator_roles. */ administrators?: pulumi.Input[]>; /** * A list of storage, network, and extensibility constraints to be applied when provisioning through this project. */ constraints?: pulumi.Input; /** * The project custom properties which are added to all requests in this project. */ customProperties?: pulumi.Input<{ [key: string]: any; }>; /** * A human-friendly description. */ description?: pulumi.Input; /** * The naming template to be used for resources provisioned in this project. */ machineNamingTemplate?: pulumi.Input; /** * Member users or groups associated with the project. */ memberRoles?: pulumi.Input[]>; /** * A list of member users associated with the project. * * @deprecated To specify the type of principal, please refer member_roles. */ members?: pulumi.Input[]>; /** * A human-friendly name used as an identifier in APIs that support this option. */ name?: pulumi.Input; /** * The timeout that should be used for cloud template operations and provisioning tasks. The timeout is measured in seconds. */ operationTimeout?: pulumi.Input; /** * The placement policy that will be applied when selecting a cloud zone for provisioning. Must be one of `DEFAULT` or `SPREAD`. */ placementPolicy?: pulumi.Input; /** * Specifies whether the resources in this projects are shared or not. If not set default will be used. */ sharedResources?: pulumi.Input; /** * Viewer users or groups associated with the project. */ viewerRoles?: pulumi.Input[]>; /** * A list of viewer users associated with the project. * * @deprecated To specify the type of principal, please refer viewer_roles. */ viewers?: pulumi.Input[]>; /** * A list of configurations for zone assignment to a project. */ zoneAssignments?: pulumi.Input[]>; }