import * as core from "@terrascript/core"; export interface ProvisioningParameterArgs extends core.SchemaArgs { key: string | core.StringOut; value?: string | core.StringOut; } export class ProvisioningParameter extends core.Schema { @core.attr(String) public key!: string | core.StringOut; @core.attr(String) public value?: string | core.StringOut; } export interface ServiceCatalogProvisioningDetailsArgs extends core.SchemaArgs { pathId?: string | core.StringOut; productId: string | core.StringOut; provisioningArtifactId?: string | core.StringOut; provisioningParameter?: | core.Array | core.ArrayOut; } export class ServiceCatalogProvisioningDetails extends core.Schema { @core.attr(String) public pathId?: string | core.StringOut; @core.attr(String) public productId!: string | core.StringOut; @core.attr(String, { computed: true }) public provisioningArtifactId?: string | core.StringOut; @core.attr(ProvisioningParameter, { kind: "array" }) public provisioningParameter?: | core.Array | core.ArrayOut; } export interface ProjectArgs extends core.ResourceArgs { /** * (Optional) A description for the project. */ projectDescription?: string | core.StringOut; /** * (Required) The name of the Project. */ projectName: string | core.StringOut; /** * (Required) The product ID and provisioning artifact ID to provision a service catalog. See [Service * Catalog Provisioning Details](#service-catalog-provisioning-details) below. */ serviceCatalogProvisioningDetails: ServiceCatalogProvisioningDetails; /** * (Optional) A map of tags to assign to the resource. If configured with a provider [`default_tags` co * nfiguration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-co * nfiguration-block) present, tags with matching keys will overwrite those defined at the provider-lev * el. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; } export class Project extends core.Resource { /** * The Amazon Resource Name (ARN) assigned by AWS to this Project. */ @core.attr(String, { computed: true }) public arn!: string | core.StringOut; /** * The name of the Project. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Optional) A description for the project. */ @core.attr(String) public projectDescription?: string | core.StringOut; /** * The ID of the project. */ @core.attr(String, { computed: true }) public projectId!: string | core.StringOut; /** * (Required) The name of the Project. */ @core.attr(String) public projectName!: string | core.StringOut; /** * (Required) The product ID and provisioning artifact ID to provision a service catalog. See [Service * Catalog Provisioning Details](#service-catalog-provisioning-details) below. */ @core.attr(ServiceCatalogProvisioningDetails) public serviceCatalogProvisioningDetails!: ServiceCatalogProvisioningDetails; /** * (Optional) A map of tags to assign to the resource. If configured with a provider [`default_tags` co * nfiguration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-co * nfiguration-block) present, tags with matching keys will overwrite those defined at the provider-lev * el. */ @core.attr(String, { kind: "map" }) public tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ @core.attr(String, { computed: true, kind: "map" }) public tagsAll?: core.Map | core.MapOut; constructor(name: string, args?: ProjectArgs) { super(name, "aws_sagemaker_project", args); } public override getNamespace(): string { return "aws_sagemaker"; } }