storagebucket

package
v9.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 27, 2023 License: MPL-2.0 Imports: 7 Imported by: 0

README

google_storage_bucket

Refer to the Terraform Registory for docs: google_storage_bucket.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewStorageBucketAutoclassOutputReference_Override

func NewStorageBucketAutoclassOutputReference_Override(s StorageBucketAutoclassOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewStorageBucketCorsList_Override

func NewStorageBucketCorsList_Override(s StorageBucketCorsList, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool)

func NewStorageBucketCorsOutputReference_Override

func NewStorageBucketCorsOutputReference_Override(s StorageBucketCorsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool)

func NewStorageBucketCustomPlacementConfigOutputReference_Override

func NewStorageBucketCustomPlacementConfigOutputReference_Override(s StorageBucketCustomPlacementConfigOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewStorageBucketEncryptionOutputReference_Override

func NewStorageBucketEncryptionOutputReference_Override(s StorageBucketEncryptionOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewStorageBucketLifecycleRuleActionOutputReference_Override

func NewStorageBucketLifecycleRuleActionOutputReference_Override(s StorageBucketLifecycleRuleActionOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewStorageBucketLifecycleRuleConditionOutputReference_Override

func NewStorageBucketLifecycleRuleConditionOutputReference_Override(s StorageBucketLifecycleRuleConditionOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewStorageBucketLifecycleRuleList_Override

func NewStorageBucketLifecycleRuleList_Override(s StorageBucketLifecycleRuleList, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool)

func NewStorageBucketLifecycleRuleOutputReference_Override

func NewStorageBucketLifecycleRuleOutputReference_Override(s StorageBucketLifecycleRuleOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool)

func NewStorageBucketLoggingOutputReference_Override

func NewStorageBucketLoggingOutputReference_Override(s StorageBucketLoggingOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewStorageBucketRetentionPolicyOutputReference_Override

func NewStorageBucketRetentionPolicyOutputReference_Override(s StorageBucketRetentionPolicyOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewStorageBucketTimeoutsOutputReference_Override

func NewStorageBucketTimeoutsOutputReference_Override(s StorageBucketTimeoutsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewStorageBucketVersioningOutputReference_Override

func NewStorageBucketVersioningOutputReference_Override(s StorageBucketVersioningOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewStorageBucketWebsiteOutputReference_Override

func NewStorageBucketWebsiteOutputReference_Override(s StorageBucketWebsiteOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewStorageBucket_Override

func NewStorageBucket_Override(s StorageBucket, scope constructs.Construct, id *string, config *StorageBucketConfig)

Create a new {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket google_storage_bucket} Resource.

func StorageBucket_IsConstruct

func StorageBucket_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.

Returns: true if `x` is an object created from a class which extends `Construct`.

func StorageBucket_IsTerraformElement

func StorageBucket_IsTerraformElement(x interface{}) *bool

Experimental.

func StorageBucket_IsTerraformResource

func StorageBucket_IsTerraformResource(x interface{}) *bool

Experimental.

func StorageBucket_TfResourceType

func StorageBucket_TfResourceType() *string

Types

type StorageBucket

type StorageBucket interface {
	cdktf.TerraformResource
	Autoclass() StorageBucketAutoclassOutputReference
	AutoclassInput() *StorageBucketAutoclass
	// Experimental.
	CdktfStack() cdktf.TerraformStack
	// Experimental.
	Connection() interface{}
	// Experimental.
	SetConnection(val interface{})
	// Experimental.
	ConstructNodeMetadata() *map[string]interface{}
	Cors() StorageBucketCorsList
	CorsInput() interface{}
	// Experimental.
	Count() interface{}
	// Experimental.
	SetCount(val interface{})
	CustomPlacementConfig() StorageBucketCustomPlacementConfigOutputReference
	CustomPlacementConfigInput() *StorageBucketCustomPlacementConfig
	DefaultEventBasedHold() interface{}
	SetDefaultEventBasedHold(val interface{})
	DefaultEventBasedHoldInput() interface{}
	// Experimental.
	DependsOn() *[]*string
	// Experimental.
	SetDependsOn(val *[]*string)
	Encryption() StorageBucketEncryptionOutputReference
	EncryptionInput() *StorageBucketEncryption
	ForceDestroy() interface{}
	SetForceDestroy(val interface{})
	ForceDestroyInput() interface{}
	// Experimental.
	ForEach() cdktf.ITerraformIterator
	// Experimental.
	SetForEach(val cdktf.ITerraformIterator)
	// Experimental.
	Fqn() *string
	// Experimental.
	FriendlyUniqueId() *string
	Id() *string
	SetId(val *string)
	IdInput() *string
	Labels() *map[string]*string
	SetLabels(val *map[string]*string)
	LabelsInput() *map[string]*string
	// Experimental.
	Lifecycle() *cdktf.TerraformResourceLifecycle
	// Experimental.
	SetLifecycle(val *cdktf.TerraformResourceLifecycle)
	LifecycleRule() StorageBucketLifecycleRuleList
	LifecycleRuleInput() interface{}
	Location() *string
	SetLocation(val *string)
	LocationInput() *string
	Logging() StorageBucketLoggingOutputReference
	LoggingInput() *StorageBucketLogging
	Name() *string
	SetName(val *string)
	NameInput() *string
	// The tree node.
	Node() constructs.Node
	Project() *string
	SetProject(val *string)
	ProjectInput() *string
	// Experimental.
	Provider() cdktf.TerraformProvider
	// Experimental.
	SetProvider(val cdktf.TerraformProvider)
	// Experimental.
	Provisioners() *[]interface{}
	// Experimental.
	SetProvisioners(val *[]interface{})
	PublicAccessPrevention() *string
	SetPublicAccessPrevention(val *string)
	PublicAccessPreventionInput() *string
	// Experimental.
	RawOverrides() interface{}
	RequesterPays() interface{}
	SetRequesterPays(val interface{})
	RequesterPaysInput() interface{}
	RetentionPolicy() StorageBucketRetentionPolicyOutputReference
	RetentionPolicyInput() *StorageBucketRetentionPolicy
	SelfLink() *string
	StorageClass() *string
	SetStorageClass(val *string)
	StorageClassInput() *string
	// Experimental.
	TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
	// Experimental.
	TerraformMetaArguments() *map[string]interface{}
	// Experimental.
	TerraformResourceType() *string
	Timeouts() StorageBucketTimeoutsOutputReference
	TimeoutsInput() interface{}
	UniformBucketLevelAccess() interface{}
	SetUniformBucketLevelAccess(val interface{})
	UniformBucketLevelAccessInput() interface{}
	Url() *string
	Versioning() StorageBucketVersioningOutputReference
	VersioningInput() *StorageBucketVersioning
	Website() StorageBucketWebsiteOutputReference
	WebsiteInput() *StorageBucketWebsite
	// Experimental.
	AddOverride(path *string, value interface{})
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Overrides the auto-generated logical ID with a specific ID.
	// Experimental.
	OverrideLogicalId(newLogicalId *string)
	PutAutoclass(value *StorageBucketAutoclass)
	PutCors(value interface{})
	PutCustomPlacementConfig(value *StorageBucketCustomPlacementConfig)
	PutEncryption(value *StorageBucketEncryption)
	PutLifecycleRule(value interface{})
	PutLogging(value *StorageBucketLogging)
	PutRetentionPolicy(value *StorageBucketRetentionPolicy)
	PutTimeouts(value *StorageBucketTimeouts)
	PutVersioning(value *StorageBucketVersioning)
	PutWebsite(value *StorageBucketWebsite)
	ResetAutoclass()
	ResetCors()
	ResetCustomPlacementConfig()
	ResetDefaultEventBasedHold()
	ResetEncryption()
	ResetForceDestroy()
	ResetId()
	ResetLabels()
	ResetLifecycleRule()
	ResetLogging()
	// Resets a previously passed logical Id to use the auto-generated logical id again.
	// Experimental.
	ResetOverrideLogicalId()
	ResetProject()
	ResetPublicAccessPrevention()
	ResetRequesterPays()
	ResetRetentionPolicy()
	ResetStorageClass()
	ResetTimeouts()
	ResetUniformBucketLevelAccess()
	ResetVersioning()
	ResetWebsite()
	SynthesizeAttributes() *map[string]interface{}
	// Experimental.
	ToMetadata() interface{}
	// Returns a string representation of this construct.
	ToString() *string
	// Adds this resource to the terraform JSON output.
	// Experimental.
	ToTerraform() interface{}
}

Represents a {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket google_storage_bucket}.

func NewStorageBucket

func NewStorageBucket(scope constructs.Construct, id *string, config *StorageBucketConfig) StorageBucket

Create a new {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket google_storage_bucket} Resource.

type StorageBucketAutoclass

type StorageBucketAutoclass struct {
	// While set to true, autoclass automatically transitions objects in your bucket to appropriate storage classes based on each object's access pattern.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#enabled StorageBucket#enabled}
	Enabled interface{} `field:"required" json:"enabled" yaml:"enabled"`
}

type StorageBucketAutoclassOutputReference

type StorageBucketAutoclassOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	Enabled() interface{}
	SetEnabled(val interface{})
	EnabledInput() interface{}
	// Experimental.
	Fqn() *string
	InternalValue() *StorageBucketAutoclass
	SetInternalValue(val *StorageBucketAutoclass)
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketAutoclassOutputReference

func NewStorageBucketAutoclassOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) StorageBucketAutoclassOutputReference

type StorageBucketConfig

type StorageBucketConfig struct {
	// Experimental.
	Connection interface{} `field:"optional" json:"connection" yaml:"connection"`
	// Experimental.
	Count interface{} `field:"optional" json:"count" yaml:"count"`
	// Experimental.
	DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"`
	// Experimental.
	ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"`
	// Experimental.
	Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"`
	// Experimental.
	Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"`
	// Experimental.
	Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"`
	// The Google Cloud Storage location.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#location StorageBucket#location}
	Location *string `field:"required" json:"location" yaml:"location"`
	// The name of the bucket.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#name StorageBucket#name}
	Name *string `field:"required" json:"name" yaml:"name"`
	// autoclass block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#autoclass StorageBucket#autoclass}
	Autoclass *StorageBucketAutoclass `field:"optional" json:"autoclass" yaml:"autoclass"`
	// cors block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#cors StorageBucket#cors}
	Cors interface{} `field:"optional" json:"cors" yaml:"cors"`
	// custom_placement_config block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#custom_placement_config StorageBucket#custom_placement_config}
	CustomPlacementConfig *StorageBucketCustomPlacementConfig `field:"optional" json:"customPlacementConfig" yaml:"customPlacementConfig"`
	// Whether or not to automatically apply an eventBasedHold to new objects added to the bucket.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#default_event_based_hold StorageBucket#default_event_based_hold}
	DefaultEventBasedHold interface{} `field:"optional" json:"defaultEventBasedHold" yaml:"defaultEventBasedHold"`
	// encryption block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#encryption StorageBucket#encryption}
	Encryption *StorageBucketEncryption `field:"optional" json:"encryption" yaml:"encryption"`
	// When deleting a bucket, this boolean option will delete all contained objects.
	//
	// If you try to delete a bucket that contains objects, Terraform will fail that run.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#force_destroy StorageBucket#force_destroy}
	ForceDestroy interface{} `field:"optional" json:"forceDestroy" yaml:"forceDestroy"`
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#id StorageBucket#id}.
	//
	// Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
	// If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
	Id *string `field:"optional" json:"id" yaml:"id"`
	// A set of key/value label pairs to assign to the bucket.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#labels StorageBucket#labels}
	Labels *map[string]*string `field:"optional" json:"labels" yaml:"labels"`
	// lifecycle_rule block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#lifecycle_rule StorageBucket#lifecycle_rule}
	LifecycleRule interface{} `field:"optional" json:"lifecycleRule" yaml:"lifecycleRule"`
	// logging block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#logging StorageBucket#logging}
	Logging *StorageBucketLogging `field:"optional" json:"logging" yaml:"logging"`
	// The ID of the project in which the resource belongs.
	//
	// If it is not provided, the provider project is used.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#project StorageBucket#project}
	Project *string `field:"optional" json:"project" yaml:"project"`
	// Prevents public access to a bucket.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#public_access_prevention StorageBucket#public_access_prevention}
	PublicAccessPrevention *string `field:"optional" json:"publicAccessPrevention" yaml:"publicAccessPrevention"`
	// Enables Requester Pays on a storage bucket.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#requester_pays StorageBucket#requester_pays}
	RequesterPays interface{} `field:"optional" json:"requesterPays" yaml:"requesterPays"`
	// retention_policy block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#retention_policy StorageBucket#retention_policy}
	RetentionPolicy *StorageBucketRetentionPolicy `field:"optional" json:"retentionPolicy" yaml:"retentionPolicy"`
	// The Storage Class of the new bucket. Supported values include: STANDARD, MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#storage_class StorageBucket#storage_class}
	StorageClass *string `field:"optional" json:"storageClass" yaml:"storageClass"`
	// timeouts block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#timeouts StorageBucket#timeouts}
	Timeouts *StorageBucketTimeouts `field:"optional" json:"timeouts" yaml:"timeouts"`
	// Enables uniform bucket-level access on a bucket.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#uniform_bucket_level_access StorageBucket#uniform_bucket_level_access}
	UniformBucketLevelAccess interface{} `field:"optional" json:"uniformBucketLevelAccess" yaml:"uniformBucketLevelAccess"`
	// versioning block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#versioning StorageBucket#versioning}
	Versioning *StorageBucketVersioning `field:"optional" json:"versioning" yaml:"versioning"`
	// website block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#website StorageBucket#website}
	Website *StorageBucketWebsite `field:"optional" json:"website" yaml:"website"`
}

type StorageBucketCors

type StorageBucketCors struct {
	// The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#max_age_seconds StorageBucket#max_age_seconds}
	MaxAgeSeconds *float64 `field:"optional" json:"maxAgeSeconds" yaml:"maxAgeSeconds"`
	// The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#method StorageBucket#method}
	Method *[]*string `field:"optional" json:"method" yaml:"method"`
	// The list of Origins eligible to receive CORS response headers.
	//
	// Note: "*" is permitted in the list of origins, and means "any Origin".
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#origin StorageBucket#origin}
	Origin *[]*string `field:"optional" json:"origin" yaml:"origin"`
	// The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#response_header StorageBucket#response_header}
	ResponseHeader *[]*string `field:"optional" json:"responseHeader" yaml:"responseHeader"`
}

type StorageBucketCorsList

type StorageBucketCorsList interface {
	cdktf.ComplexList
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	// The attribute on the parent resource this class is referencing.
	TerraformAttribute() *string
	SetTerraformAttribute(val *string)
	// The parent resource.
	TerraformResource() cdktf.IInterpolatingParent
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
	WrapsSet() *bool
	SetWrapsSet(val *bool)
	// Experimental.
	ComputeFqn() *string
	Get(index *float64) StorageBucketCorsOutputReference
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketCorsList

func NewStorageBucketCorsList(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool) StorageBucketCorsList

type StorageBucketCorsOutputReference

type StorageBucketCorsOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	MaxAgeSeconds() *float64
	SetMaxAgeSeconds(val *float64)
	MaxAgeSecondsInput() *float64
	Method() *[]*string
	SetMethod(val *[]*string)
	MethodInput() *[]*string
	Origin() *[]*string
	SetOrigin(val *[]*string)
	OriginInput() *[]*string
	ResponseHeader() *[]*string
	SetResponseHeader(val *[]*string)
	ResponseHeaderInput() *[]*string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetMaxAgeSeconds()
	ResetMethod()
	ResetOrigin()
	ResetResponseHeader()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketCorsOutputReference

func NewStorageBucketCorsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool) StorageBucketCorsOutputReference

type StorageBucketCustomPlacementConfig

type StorageBucketCustomPlacementConfig struct {
	// The list of individual regions that comprise a dual-region bucket.
	//
	// See the docs for a list of acceptable regions. Note: If any of the data_locations changes, it will recreate the bucket.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#data_locations StorageBucket#data_locations}
	DataLocations *[]*string `field:"required" json:"dataLocations" yaml:"dataLocations"`
}

type StorageBucketCustomPlacementConfigOutputReference

type StorageBucketCustomPlacementConfigOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	DataLocations() *[]*string
	SetDataLocations(val *[]*string)
	DataLocationsInput() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *StorageBucketCustomPlacementConfig
	SetInternalValue(val *StorageBucketCustomPlacementConfig)
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketCustomPlacementConfigOutputReference

func NewStorageBucketCustomPlacementConfigOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) StorageBucketCustomPlacementConfigOutputReference

type StorageBucketEncryption

type StorageBucketEncryption struct {
	// A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.
	//
	// You must pay attention to whether the crypto key is available in the location that this bucket is created in. See the docs for more details.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#default_kms_key_name StorageBucket#default_kms_key_name}
	DefaultKmsKeyName *string `field:"required" json:"defaultKmsKeyName" yaml:"defaultKmsKeyName"`
}

type StorageBucketEncryptionOutputReference

type StorageBucketEncryptionOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	DefaultKmsKeyName() *string
	SetDefaultKmsKeyName(val *string)
	DefaultKmsKeyNameInput() *string
	// Experimental.
	Fqn() *string
	InternalValue() *StorageBucketEncryption
	SetInternalValue(val *StorageBucketEncryption)
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketEncryptionOutputReference

func NewStorageBucketEncryptionOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) StorageBucketEncryptionOutputReference

type StorageBucketLifecycleRule

type StorageBucketLifecycleRule struct {
	// action block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#action StorageBucket#action}
	Action *StorageBucketLifecycleRuleAction `field:"required" json:"action" yaml:"action"`
	// condition block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#condition StorageBucket#condition}
	Condition *StorageBucketLifecycleRuleCondition `field:"required" json:"condition" yaml:"condition"`
}

type StorageBucketLifecycleRuleAction

type StorageBucketLifecycleRuleAction struct {
	// The type of the action of this Lifecycle Rule. Supported values include: Delete, SetStorageClass and AbortIncompleteMultipartUpload.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#type StorageBucket#type}
	Type *string `field:"required" json:"type" yaml:"type"`
	// The target Storage Class of objects affected by this Lifecycle Rule. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#storage_class StorageBucket#storage_class}
	StorageClass *string `field:"optional" json:"storageClass" yaml:"storageClass"`
}

type StorageBucketLifecycleRuleActionOutputReference

type StorageBucketLifecycleRuleActionOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *StorageBucketLifecycleRuleAction
	SetInternalValue(val *StorageBucketLifecycleRuleAction)
	StorageClass() *string
	SetStorageClass(val *string)
	StorageClassInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	Type() *string
	SetType(val *string)
	TypeInput() *string
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetStorageClass()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketLifecycleRuleActionOutputReference

func NewStorageBucketLifecycleRuleActionOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) StorageBucketLifecycleRuleActionOutputReference

type StorageBucketLifecycleRuleCondition

type StorageBucketLifecycleRuleCondition struct {
	// Minimum age of an object in days to satisfy this condition.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#age StorageBucket#age}
	Age *float64 `field:"optional" json:"age" yaml:"age"`
	// Creation date of an object in RFC 3339 (e.g. 2017-06-13) to satisfy this condition.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#created_before StorageBucket#created_before}
	CreatedBefore *string `field:"optional" json:"createdBefore" yaml:"createdBefore"`
	// Creation date of an object in RFC 3339 (e.g. 2017-06-13) to satisfy this condition.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#custom_time_before StorageBucket#custom_time_before}
	CustomTimeBefore *string `field:"optional" json:"customTimeBefore" yaml:"customTimeBefore"`
	// Number of days elapsed since the user-specified timestamp set on an object.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#days_since_custom_time StorageBucket#days_since_custom_time}
	DaysSinceCustomTime *float64 `field:"optional" json:"daysSinceCustomTime" yaml:"daysSinceCustomTime"`
	// Number of days elapsed since the noncurrent timestamp of an object. This 						condition is relevant only for versioned objects.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#days_since_noncurrent_time StorageBucket#days_since_noncurrent_time}
	DaysSinceNoncurrentTime *float64 `field:"optional" json:"daysSinceNoncurrentTime" yaml:"daysSinceNoncurrentTime"`
	// One or more matching name prefixes to satisfy this condition.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#matches_prefix StorageBucket#matches_prefix}
	MatchesPrefix *[]*string `field:"optional" json:"matchesPrefix" yaml:"matchesPrefix"`
	// Storage Class of objects to satisfy this condition. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, DURABLE_REDUCED_AVAILABILITY.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#matches_storage_class StorageBucket#matches_storage_class}
	MatchesStorageClass *[]*string `field:"optional" json:"matchesStorageClass" yaml:"matchesStorageClass"`
	// One or more matching name suffixes to satisfy this condition.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#matches_suffix StorageBucket#matches_suffix}
	MatchesSuffix *[]*string `field:"optional" json:"matchesSuffix" yaml:"matchesSuffix"`
	// Creation date of an object in RFC 3339 (e.g. 2017-06-13) to satisfy this condition.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#noncurrent_time_before StorageBucket#noncurrent_time_before}
	NoncurrentTimeBefore *string `field:"optional" json:"noncurrentTimeBefore" yaml:"noncurrentTimeBefore"`
	// Relevant only for versioned objects. The number of newer versions of an object to satisfy this condition.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#num_newer_versions StorageBucket#num_newer_versions}
	NumNewerVersions *float64 `field:"optional" json:"numNewerVersions" yaml:"numNewerVersions"`
	// Match to live and/or archived objects. Unversioned buckets have only live objects. Supported values include: "LIVE", "ARCHIVED", "ANY".
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#with_state StorageBucket#with_state}
	WithState *string `field:"optional" json:"withState" yaml:"withState"`
}

type StorageBucketLifecycleRuleConditionOutputReference

type StorageBucketLifecycleRuleConditionOutputReference interface {
	cdktf.ComplexObject
	Age() *float64
	SetAge(val *float64)
	AgeInput() *float64
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	CreatedBefore() *string
	SetCreatedBefore(val *string)
	CreatedBeforeInput() *string
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	CustomTimeBefore() *string
	SetCustomTimeBefore(val *string)
	CustomTimeBeforeInput() *string
	DaysSinceCustomTime() *float64
	SetDaysSinceCustomTime(val *float64)
	DaysSinceCustomTimeInput() *float64
	DaysSinceNoncurrentTime() *float64
	SetDaysSinceNoncurrentTime(val *float64)
	DaysSinceNoncurrentTimeInput() *float64
	// Experimental.
	Fqn() *string
	InternalValue() *StorageBucketLifecycleRuleCondition
	SetInternalValue(val *StorageBucketLifecycleRuleCondition)
	MatchesPrefix() *[]*string
	SetMatchesPrefix(val *[]*string)
	MatchesPrefixInput() *[]*string
	MatchesStorageClass() *[]*string
	SetMatchesStorageClass(val *[]*string)
	MatchesStorageClassInput() *[]*string
	MatchesSuffix() *[]*string
	SetMatchesSuffix(val *[]*string)
	MatchesSuffixInput() *[]*string
	NoncurrentTimeBefore() *string
	SetNoncurrentTimeBefore(val *string)
	NoncurrentTimeBeforeInput() *string
	NumNewerVersions() *float64
	SetNumNewerVersions(val *float64)
	NumNewerVersionsInput() *float64
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	WithState() *string
	SetWithState(val *string)
	WithStateInput() *string
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetAge()
	ResetCreatedBefore()
	ResetCustomTimeBefore()
	ResetDaysSinceCustomTime()
	ResetDaysSinceNoncurrentTime()
	ResetMatchesPrefix()
	ResetMatchesStorageClass()
	ResetMatchesSuffix()
	ResetNoncurrentTimeBefore()
	ResetNumNewerVersions()
	ResetWithState()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketLifecycleRuleConditionOutputReference

func NewStorageBucketLifecycleRuleConditionOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) StorageBucketLifecycleRuleConditionOutputReference

type StorageBucketLifecycleRuleList

type StorageBucketLifecycleRuleList interface {
	cdktf.ComplexList
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	// The attribute on the parent resource this class is referencing.
	TerraformAttribute() *string
	SetTerraformAttribute(val *string)
	// The parent resource.
	TerraformResource() cdktf.IInterpolatingParent
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
	WrapsSet() *bool
	SetWrapsSet(val *bool)
	// Experimental.
	ComputeFqn() *string
	Get(index *float64) StorageBucketLifecycleRuleOutputReference
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketLifecycleRuleList

func NewStorageBucketLifecycleRuleList(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool) StorageBucketLifecycleRuleList

type StorageBucketLifecycleRuleOutputReference

type StorageBucketLifecycleRuleOutputReference interface {
	cdktf.ComplexObject
	Action() StorageBucketLifecycleRuleActionOutputReference
	ActionInput() *StorageBucketLifecycleRuleAction
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	Condition() StorageBucketLifecycleRuleConditionOutputReference
	ConditionInput() *StorageBucketLifecycleRuleCondition
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	PutAction(value *StorageBucketLifecycleRuleAction)
	PutCondition(value *StorageBucketLifecycleRuleCondition)
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketLifecycleRuleOutputReference

func NewStorageBucketLifecycleRuleOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool) StorageBucketLifecycleRuleOutputReference

type StorageBucketLogging

type StorageBucketLogging struct {
	// The bucket that will receive log objects.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#log_bucket StorageBucket#log_bucket}
	LogBucket *string `field:"required" json:"logBucket" yaml:"logBucket"`
	// The object prefix for log objects.
	//
	// If it's not provided, by default Google Cloud Storage sets this to this bucket's name.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#log_object_prefix StorageBucket#log_object_prefix}
	LogObjectPrefix *string `field:"optional" json:"logObjectPrefix" yaml:"logObjectPrefix"`
}

type StorageBucketLoggingOutputReference

type StorageBucketLoggingOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *StorageBucketLogging
	SetInternalValue(val *StorageBucketLogging)
	LogBucket() *string
	SetLogBucket(val *string)
	LogBucketInput() *string
	LogObjectPrefix() *string
	SetLogObjectPrefix(val *string)
	LogObjectPrefixInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetLogObjectPrefix()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketLoggingOutputReference

func NewStorageBucketLoggingOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) StorageBucketLoggingOutputReference

type StorageBucketRetentionPolicy

type StorageBucketRetentionPolicy struct {
	// The period of time, in seconds, that objects in the bucket must be retained and cannot be deleted, overwritten, or archived.
	//
	// The value must be less than 3,155,760,000 seconds.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#retention_period StorageBucket#retention_period}
	RetentionPeriod *float64 `field:"required" json:"retentionPeriod" yaml:"retentionPeriod"`
	// If set to true, the bucket will be locked and permanently restrict edits to the bucket's retention policy.
	//
	// Caution: Locking a bucket is an irreversible action.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#is_locked StorageBucket#is_locked}
	IsLocked interface{} `field:"optional" json:"isLocked" yaml:"isLocked"`
}

type StorageBucketRetentionPolicyOutputReference

type StorageBucketRetentionPolicyOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *StorageBucketRetentionPolicy
	SetInternalValue(val *StorageBucketRetentionPolicy)
	IsLocked() interface{}
	SetIsLocked(val interface{})
	IsLockedInput() interface{}
	RetentionPeriod() *float64
	SetRetentionPeriod(val *float64)
	RetentionPeriodInput() *float64
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetIsLocked()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketRetentionPolicyOutputReference

func NewStorageBucketRetentionPolicyOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) StorageBucketRetentionPolicyOutputReference

type StorageBucketTimeouts

type StorageBucketTimeouts struct {
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#create StorageBucket#create}.
	Create *string `field:"optional" json:"create" yaml:"create"`
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#read StorageBucket#read}.
	Read *string `field:"optional" json:"read" yaml:"read"`
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#update StorageBucket#update}.
	Update *string `field:"optional" json:"update" yaml:"update"`
}

type StorageBucketTimeoutsOutputReference

type StorageBucketTimeoutsOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	Create() *string
	SetCreate(val *string)
	CreateInput() *string
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	Read() *string
	SetRead(val *string)
	ReadInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	Update() *string
	SetUpdate(val *string)
	UpdateInput() *string
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetCreate()
	ResetRead()
	ResetUpdate()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketTimeoutsOutputReference

func NewStorageBucketTimeoutsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) StorageBucketTimeoutsOutputReference

type StorageBucketVersioning

type StorageBucketVersioning struct {
	// While set to true, versioning is fully enabled for this bucket.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#enabled StorageBucket#enabled}
	Enabled interface{} `field:"required" json:"enabled" yaml:"enabled"`
}

type StorageBucketVersioningOutputReference

type StorageBucketVersioningOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	Enabled() interface{}
	SetEnabled(val interface{})
	EnabledInput() interface{}
	// Experimental.
	Fqn() *string
	InternalValue() *StorageBucketVersioning
	SetInternalValue(val *StorageBucketVersioning)
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketVersioningOutputReference

func NewStorageBucketVersioningOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) StorageBucketVersioningOutputReference

type StorageBucketWebsite

type StorageBucketWebsite struct {
	// Behaves as the bucket's directory index where missing objects are treated as potential directories.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#main_page_suffix StorageBucket#main_page_suffix}
	MainPageSuffix *string `field:"optional" json:"mainPageSuffix" yaml:"mainPageSuffix"`
	// The custom object to return when a requested resource is not found.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/4.84.0/docs/resources/storage_bucket#not_found_page StorageBucket#not_found_page}
	NotFoundPage *string `field:"optional" json:"notFoundPage" yaml:"notFoundPage"`
}

type StorageBucketWebsiteOutputReference

type StorageBucketWebsiteOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *StorageBucketWebsite
	SetInternalValue(val *StorageBucketWebsite)
	MainPageSuffix() *string
	SetMainPageSuffix(val *string)
	MainPageSuffixInput() *string
	NotFoundPage() *string
	SetNotFoundPage(val *string)
	NotFoundPageInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetMainPageSuffix()
	ResetNotFoundPage()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewStorageBucketWebsiteOutputReference

func NewStorageBucketWebsiteOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) StorageBucketWebsiteOutputReference

Source Files

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL