import * as pulumi from "@pulumi/pulumi"; import { input as inputs, output as outputs } from "../types"; /** * ## Example Usage * ### S * This is an example of how to create a project data source. * * **Project data source by its id:** * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as vra from "@pulumi/vra"; * * const thisProject = vra_project_my_project.id.apply(id => vra.project.getProject({ * id: id, * })); * ``` * * **Project data source filter by name:** * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as vra from "@pulumi/vra"; * * const test_project = vra_project_my_project.name.apply(name => vra.project.getProject({ * name: name, * })); * ``` * * A project data source supports the following arguments: */ export declare function getProject(args?: GetProjectArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getProject. */ export interface GetProjectArgs { /** * Administrator users or groups associated with the project. Only administrators can manage project's configuration. */ administratorRoles?: inputs.project.GetProjectAdministratorRole[]; /** * A list of administrator users associated with the project. Only administrators can manage project's configuration. */ administrators?: string[]; /** * A list of storage, network and extensibility constraints to be applied when provisioning through this project. */ constraints?: inputs.project.GetProjectConstraints; /** * The project custom properties which are added to all requests in this project. */ customProperties?: { [key: string]: any; }; /** * A human-friendly description. */ description?: string; /** * The id of the image profile instance. */ id?: string; /** * The naming template to be used for resources provisioned in this project. */ machineNamingTemplate?: string; /** * Member users or groups associated with the project. */ memberRoles?: inputs.project.GetProjectMemberRole[]; /** * A list of member users associated with the project. */ members?: string[]; /** * A human-friendly name used as an identifier in APIs that support this option. */ name?: string; /** * The timeout that should be used for Blueprint operations and Provisioning tasks. The timeout is in seconds. */ operationTimeout?: number; /** * The placement policy that will be applied when selecting a cloud zone for provisioning. Must be one of `DEFAULT` or `SPREAD`. */ placementPolicy?: string; /** * The id of the organization this entity belongs to. */ sharedResources?: boolean; /** * Viewer users or groups associated with the project. */ viewerRoles?: inputs.project.GetProjectViewerRole[]; /** * A list of viewer users associated with the project. */ viewers?: string[]; /** * A list of configurations for zone assignment to a project. */ zoneAssignments?: inputs.project.GetProjectZoneAssignment[]; } /** * A collection of values returned by getProject. */ export interface GetProjectResult { readonly administratorRoles?: outputs.project.GetProjectAdministratorRole[]; readonly administrators: string[]; readonly constraints?: outputs.project.GetProjectConstraints; readonly customProperties?: { [key: string]: any; }; readonly description: string; readonly id: string; readonly machineNamingTemplate?: string; readonly memberRoles?: outputs.project.GetProjectMemberRole[]; readonly members: string[]; readonly name: string; readonly operationTimeout?: number; readonly placementPolicy?: string; readonly sharedResources: boolean; readonly viewerRoles?: outputs.project.GetProjectViewerRole[]; readonly viewers: string[]; readonly zoneAssignments?: outputs.project.GetProjectZoneAssignment[]; } export declare function getProjectOutput(args?: GetProjectOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output; /** * A collection of arguments for invoking getProject. */ export interface GetProjectOutputArgs { /** * 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. */ 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 id of the image profile instance. */ id?: 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. */ 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 Blueprint operations and Provisioning tasks. The timeout is 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; /** * The id of the organization this entity belongs to. */ sharedResources?: pulumi.Input; /** * Viewer users or groups associated with the project. */ viewerRoles?: pulumi.Input[]>; /** * A list of viewer users associated with the project. */ viewers?: pulumi.Input[]>; /** * A list of configurations for zone assignment to a project. */ zoneAssignments?: pulumi.Input[]>; }