pubsubtopic

package
v14.21.0 Latest Latest
Warning

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

Go to latest
Published: Feb 25, 2025 License: MPL-2.0 Imports: 7 Imported by: 0

README

google_pubsub_topic

Refer to the Terraform Registry for docs: google_pubsub_topic.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewPubsubTopicIngestionDataSourceSettingsAwsKinesisOutputReference_Override

func NewPubsubTopicIngestionDataSourceSettingsAwsKinesisOutputReference_Override(p PubsubTopicIngestionDataSourceSettingsAwsKinesisOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewPubsubTopicIngestionDataSourceSettingsAwsMskOutputReference_Override added in v14.18.0

func NewPubsubTopicIngestionDataSourceSettingsAwsMskOutputReference_Override(p PubsubTopicIngestionDataSourceSettingsAwsMskOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewPubsubTopicIngestionDataSourceSettingsAzureEventHubsOutputReference_Override added in v14.17.0

func NewPubsubTopicIngestionDataSourceSettingsAzureEventHubsOutputReference_Override(p PubsubTopicIngestionDataSourceSettingsAzureEventHubsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewPubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormatOutputReference_Override added in v14.5.0

func NewPubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormatOutputReference_Override(p PubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormatOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewPubsubTopicIngestionDataSourceSettingsCloudStorageOutputReference_Override added in v14.5.0

func NewPubsubTopicIngestionDataSourceSettingsCloudStorageOutputReference_Override(p PubsubTopicIngestionDataSourceSettingsCloudStorageOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewPubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormatOutputReference_Override added in v14.5.0

func NewPubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormatOutputReference_Override(p PubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormatOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewPubsubTopicIngestionDataSourceSettingsCloudStorageTextFormatOutputReference_Override added in v14.5.0

func NewPubsubTopicIngestionDataSourceSettingsCloudStorageTextFormatOutputReference_Override(p PubsubTopicIngestionDataSourceSettingsCloudStorageTextFormatOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewPubsubTopicIngestionDataSourceSettingsConfluentCloudOutputReference_Override added in v14.18.0

func NewPubsubTopicIngestionDataSourceSettingsConfluentCloudOutputReference_Override(p PubsubTopicIngestionDataSourceSettingsConfluentCloudOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewPubsubTopicIngestionDataSourceSettingsOutputReference_Override

func NewPubsubTopicIngestionDataSourceSettingsOutputReference_Override(p PubsubTopicIngestionDataSourceSettingsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewPubsubTopicIngestionDataSourceSettingsPlatformLogsSettingsOutputReference_Override added in v14.5.0

func NewPubsubTopicIngestionDataSourceSettingsPlatformLogsSettingsOutputReference_Override(p PubsubTopicIngestionDataSourceSettingsPlatformLogsSettingsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewPubsubTopicMessageStoragePolicyOutputReference_Override

func NewPubsubTopicMessageStoragePolicyOutputReference_Override(p PubsubTopicMessageStoragePolicyOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewPubsubTopicSchemaSettingsOutputReference_Override

func NewPubsubTopicSchemaSettingsOutputReference_Override(p PubsubTopicSchemaSettingsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewPubsubTopicTimeoutsOutputReference_Override

func NewPubsubTopicTimeoutsOutputReference_Override(p PubsubTopicTimeoutsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewPubsubTopic_Override

func NewPubsubTopic_Override(p PubsubTopic, scope constructs.Construct, id *string, config *PubsubTopicConfig)

Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic google_pubsub_topic} Resource.

func PubsubTopic_GenerateConfigForImport

func PubsubTopic_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource

Generates CDKTF code for importing a PubsubTopic resource upon running "cdktf plan <stack-name>".

func PubsubTopic_IsConstruct

func PubsubTopic_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 PubsubTopic_IsTerraformElement

func PubsubTopic_IsTerraformElement(x interface{}) *bool

Experimental.

func PubsubTopic_IsTerraformResource

func PubsubTopic_IsTerraformResource(x interface{}) *bool

Experimental.

func PubsubTopic_TfResourceType

func PubsubTopic_TfResourceType() *string

Types

type PubsubTopic

type PubsubTopic interface {
	cdktf.TerraformResource
	// Experimental.
	CdktfStack() cdktf.TerraformStack
	// Experimental.
	Connection() interface{}
	// Experimental.
	SetConnection(val interface{})
	// Experimental.
	ConstructNodeMetadata() *map[string]interface{}
	// Experimental.
	Count() interface{}
	// Experimental.
	SetCount(val interface{})
	// Experimental.
	DependsOn() *[]*string
	// Experimental.
	SetDependsOn(val *[]*string)
	EffectiveLabels() cdktf.StringMap
	// Experimental.
	ForEach() cdktf.ITerraformIterator
	// Experimental.
	SetForEach(val cdktf.ITerraformIterator)
	// Experimental.
	Fqn() *string
	// Experimental.
	FriendlyUniqueId() *string
	Id() *string
	SetId(val *string)
	IdInput() *string
	IngestionDataSourceSettings() PubsubTopicIngestionDataSourceSettingsOutputReference
	IngestionDataSourceSettingsInput() *PubsubTopicIngestionDataSourceSettings
	KmsKeyName() *string
	SetKmsKeyName(val *string)
	KmsKeyNameInput() *string
	Labels() *map[string]*string
	SetLabels(val *map[string]*string)
	LabelsInput() *map[string]*string
	// Experimental.
	Lifecycle() *cdktf.TerraformResourceLifecycle
	// Experimental.
	SetLifecycle(val *cdktf.TerraformResourceLifecycle)
	MessageRetentionDuration() *string
	SetMessageRetentionDuration(val *string)
	MessageRetentionDurationInput() *string
	MessageStoragePolicy() PubsubTopicMessageStoragePolicyOutputReference
	MessageStoragePolicyInput() *PubsubTopicMessageStoragePolicy
	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{})
	// Experimental.
	RawOverrides() interface{}
	SchemaSettings() PubsubTopicSchemaSettingsOutputReference
	SchemaSettingsInput() *PubsubTopicSchemaSettings
	// Experimental.
	TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
	TerraformLabels() cdktf.StringMap
	// Experimental.
	TerraformMetaArguments() *map[string]interface{}
	// Experimental.
	TerraformResourceType() *string
	Timeouts() PubsubTopicTimeoutsOutputReference
	TimeoutsInput() interface{}
	// Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move.
	// Experimental.
	AddMoveTarget(moveTarget *string)
	// 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.
	HasResourceMove() interface{}
	// Experimental.
	ImportFrom(id *string, provider cdktf.TerraformProvider)
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Move the resource corresponding to "id" to this resource.
	//
	// Note that the resource being moved from must be marked as moved using it's instance function.
	// Experimental.
	MoveFromId(id *string)
	// Moves this resource to the target resource given by moveTarget.
	// Experimental.
	MoveTo(moveTarget *string, index interface{})
	// Moves this resource to the resource corresponding to "id".
	// Experimental.
	MoveToId(id *string)
	// Overrides the auto-generated logical ID with a specific ID.
	// Experimental.
	OverrideLogicalId(newLogicalId *string)
	PutIngestionDataSourceSettings(value *PubsubTopicIngestionDataSourceSettings)
	PutMessageStoragePolicy(value *PubsubTopicMessageStoragePolicy)
	PutSchemaSettings(value *PubsubTopicSchemaSettings)
	PutTimeouts(value *PubsubTopicTimeouts)
	ResetId()
	ResetIngestionDataSourceSettings()
	ResetKmsKeyName()
	ResetLabels()
	ResetMessageRetentionDuration()
	ResetMessageStoragePolicy()
	// Resets a previously passed logical Id to use the auto-generated logical id again.
	// Experimental.
	ResetOverrideLogicalId()
	ResetProject()
	ResetSchemaSettings()
	ResetTimeouts()
	SynthesizeAttributes() *map[string]interface{}
	SynthesizeHclAttributes() *map[string]interface{}
	// Experimental.
	ToHclTerraform() 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/6.22.0/docs/resources/pubsub_topic google_pubsub_topic}.

func NewPubsubTopic

func NewPubsubTopic(scope constructs.Construct, id *string, config *PubsubTopicConfig) PubsubTopic

Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic google_pubsub_topic} Resource.

type PubsubTopicConfig

type PubsubTopicConfig 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"`
	// Name of the topic.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#name PubsubTopic#name}
	Name *string `field:"required" json:"name" yaml:"name"`
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#id PubsubTopic#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"`
	// ingestion_data_source_settings block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#ingestion_data_source_settings PubsubTopic#ingestion_data_source_settings}
	IngestionDataSourceSettings *PubsubTopicIngestionDataSourceSettings `field:"optional" json:"ingestionDataSourceSettings" yaml:"ingestionDataSourceSettings"`
	// The resource name of the Cloud KMS CryptoKey to be used to protect access to messages published on this topic.
	//
	// Your project's PubSub service account
	// ('service-{{PROJECT_NUMBER}}@gcp-sa-pubsub.iam.gserviceaccount.com') must have
	// 'roles/cloudkms.cryptoKeyEncrypterDecrypter' to use this feature.
	// The expected format is 'projects/* /locations/* /keyRings/* /cryptoKeys/*'
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#kms_key_name PubsubTopic#kms_key_name}
	//
	// Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
	KmsKeyName *string `field:"optional" json:"kmsKeyName" yaml:"kmsKeyName"`
	// A set of key/value label pairs to assign to this Topic.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field 'effective_labels' for all of the labels present on the resource.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#labels PubsubTopic#labels}
	Labels *map[string]*string `field:"optional" json:"labels" yaml:"labels"`
	// Indicates the minimum duration to retain a message after it is published to the topic.
	//
	// If this field is set, messages published to the topic in
	// the last messageRetentionDuration are always available to subscribers.
	// For instance, it allows any attached subscription to seek to a timestamp
	// that is up to messageRetentionDuration in the past. If this field is not
	// set, message retention is controlled by settings on individual subscriptions.
	// The rotation period has the format of a decimal number, followed by the
	// letter 's' (seconds). Cannot be more than 31 days or less than 10 minutes.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#message_retention_duration PubsubTopic#message_retention_duration}
	MessageRetentionDuration *string `field:"optional" json:"messageRetentionDuration" yaml:"messageRetentionDuration"`
	// message_storage_policy block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#message_storage_policy PubsubTopic#message_storage_policy}
	MessageStoragePolicy *PubsubTopicMessageStoragePolicy `field:"optional" json:"messageStoragePolicy" yaml:"messageStoragePolicy"`
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#project PubsubTopic#project}.
	Project *string `field:"optional" json:"project" yaml:"project"`
	// schema_settings block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#schema_settings PubsubTopic#schema_settings}
	SchemaSettings *PubsubTopicSchemaSettings `field:"optional" json:"schemaSettings" yaml:"schemaSettings"`
	// timeouts block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#timeouts PubsubTopic#timeouts}
	Timeouts *PubsubTopicTimeouts `field:"optional" json:"timeouts" yaml:"timeouts"`
}

type PubsubTopicIngestionDataSourceSettings

type PubsubTopicIngestionDataSourceSettings struct {
	// aws_kinesis block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#aws_kinesis PubsubTopic#aws_kinesis}
	AwsKinesis *PubsubTopicIngestionDataSourceSettingsAwsKinesis `field:"optional" json:"awsKinesis" yaml:"awsKinesis"`
	// aws_msk block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#aws_msk PubsubTopic#aws_msk}
	AwsMsk *PubsubTopicIngestionDataSourceSettingsAwsMsk `field:"optional" json:"awsMsk" yaml:"awsMsk"`
	// azure_event_hubs block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#azure_event_hubs PubsubTopic#azure_event_hubs}
	AzureEventHubs *PubsubTopicIngestionDataSourceSettingsAzureEventHubs `field:"optional" json:"azureEventHubs" yaml:"azureEventHubs"`
	// cloud_storage block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#cloud_storage PubsubTopic#cloud_storage}
	CloudStorage *PubsubTopicIngestionDataSourceSettingsCloudStorage `field:"optional" json:"cloudStorage" yaml:"cloudStorage"`
	// confluent_cloud block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#confluent_cloud PubsubTopic#confluent_cloud}
	ConfluentCloud *PubsubTopicIngestionDataSourceSettingsConfluentCloud `field:"optional" json:"confluentCloud" yaml:"confluentCloud"`
	// platform_logs_settings block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#platform_logs_settings PubsubTopic#platform_logs_settings}
	PlatformLogsSettings *PubsubTopicIngestionDataSourceSettingsPlatformLogsSettings `field:"optional" json:"platformLogsSettings" yaml:"platformLogsSettings"`
}

type PubsubTopicIngestionDataSourceSettingsAwsKinesis

type PubsubTopicIngestionDataSourceSettingsAwsKinesis struct {
	// AWS role ARN to be used for Federated Identity authentication with Kinesis.
	//
	// Check the Pub/Sub docs for how to set up this role and the
	// required permissions that need to be attached to it.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#aws_role_arn PubsubTopic#aws_role_arn}
	AwsRoleArn *string `field:"required" json:"awsRoleArn" yaml:"awsRoleArn"`
	// The Kinesis consumer ARN to used for ingestion in Enhanced Fan-Out mode.
	//
	// The consumer must be already
	// created and ready to be used.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#consumer_arn PubsubTopic#consumer_arn}
	ConsumerArn *string `field:"required" json:"consumerArn" yaml:"consumerArn"`
	// The GCP service account to be used for Federated Identity authentication with Kinesis (via a 'AssumeRoleWithWebIdentity' call for the provided role).
	//
	// The 'awsRoleArn' must be set up with 'accounts.google.com:sub'
	// equals to this service account number.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#gcp_service_account PubsubTopic#gcp_service_account}
	GcpServiceAccount *string `field:"required" json:"gcpServiceAccount" yaml:"gcpServiceAccount"`
	// The Kinesis stream ARN to ingest data from.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#stream_arn PubsubTopic#stream_arn}
	StreamArn *string `field:"required" json:"streamArn" yaml:"streamArn"`
}

type PubsubTopicIngestionDataSourceSettingsAwsKinesisOutputReference

type PubsubTopicIngestionDataSourceSettingsAwsKinesisOutputReference interface {
	cdktf.ComplexObject
	AwsRoleArn() *string
	SetAwsRoleArn(val *string)
	AwsRoleArnInput() *string
	// 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)
	ConsumerArn() *string
	SetConsumerArn(val *string)
	ConsumerArnInput() *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
	GcpServiceAccount() *string
	SetGcpServiceAccount(val *string)
	GcpServiceAccountInput() *string
	InternalValue() *PubsubTopicIngestionDataSourceSettingsAwsKinesis
	SetInternalValue(val *PubsubTopicIngestionDataSourceSettingsAwsKinesis)
	StreamArn() *string
	SetStreamArn(val *string)
	StreamArnInput() *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
	// 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 NewPubsubTopicIngestionDataSourceSettingsAwsKinesisOutputReference

func NewPubsubTopicIngestionDataSourceSettingsAwsKinesisOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicIngestionDataSourceSettingsAwsKinesisOutputReference

type PubsubTopicIngestionDataSourceSettingsAwsMsk added in v14.18.0

type PubsubTopicIngestionDataSourceSettingsAwsMsk struct {
	// AWS role ARN to be used for Federated Identity authentication with MSK.
	//
	// Check the Pub/Sub docs for how to set up this role and the
	// required permissions that need to be attached to it.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#aws_role_arn PubsubTopic#aws_role_arn}
	AwsRoleArn *string `field:"required" json:"awsRoleArn" yaml:"awsRoleArn"`
	// ARN that uniquely identifies the MSK cluster.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#cluster_arn PubsubTopic#cluster_arn}
	ClusterArn *string `field:"required" json:"clusterArn" yaml:"clusterArn"`
	// The GCP service account to be used for Federated Identity authentication with MSK (via a 'AssumeRoleWithWebIdentity' call for the provided role).
	//
	// The 'awsRoleArn' must be set up with 'accounts.google.com:sub'
	// equals to this service account number.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#gcp_service_account PubsubTopic#gcp_service_account}
	GcpServiceAccount *string `field:"required" json:"gcpServiceAccount" yaml:"gcpServiceAccount"`
	// The name of the MSK topic that Pub/Sub will import from.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#topic PubsubTopic#topic}
	Topic *string `field:"required" json:"topic" yaml:"topic"`
}

type PubsubTopicIngestionDataSourceSettingsAwsMskOutputReference added in v14.18.0

type PubsubTopicIngestionDataSourceSettingsAwsMskOutputReference interface {
	cdktf.ComplexObject
	AwsRoleArn() *string
	SetAwsRoleArn(val *string)
	AwsRoleArnInput() *string
	ClusterArn() *string
	SetClusterArn(val *string)
	ClusterArnInput() *string
	// 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
	GcpServiceAccount() *string
	SetGcpServiceAccount(val *string)
	GcpServiceAccountInput() *string
	InternalValue() *PubsubTopicIngestionDataSourceSettingsAwsMsk
	SetInternalValue(val *PubsubTopicIngestionDataSourceSettingsAwsMsk)
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	Topic() *string
	SetTopic(val *string)
	TopicInput() *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
	// 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 NewPubsubTopicIngestionDataSourceSettingsAwsMskOutputReference added in v14.18.0

func NewPubsubTopicIngestionDataSourceSettingsAwsMskOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicIngestionDataSourceSettingsAwsMskOutputReference

type PubsubTopicIngestionDataSourceSettingsAzureEventHubs added in v14.17.0

type PubsubTopicIngestionDataSourceSettingsAzureEventHubs struct {
	// The Azure event hub client ID to use for ingestion.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#client_id PubsubTopic#client_id}
	ClientId *string `field:"optional" json:"clientId" yaml:"clientId"`
	// The Azure event hub to ingest data from.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#event_hub PubsubTopic#event_hub}
	EventHub *string `field:"optional" json:"eventHub" yaml:"eventHub"`
	// The GCP service account to be used for Federated Identity authentication with Azure (via a 'AssumeRoleWithWebIdentity' call for the provided role).
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#gcp_service_account PubsubTopic#gcp_service_account}
	GcpServiceAccount *string `field:"optional" json:"gcpServiceAccount" yaml:"gcpServiceAccount"`
	// The Azure event hub namespace to ingest data from.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#namespace PubsubTopic#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
	// The name of the resource group within an Azure subscription.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#resource_group PubsubTopic#resource_group}
	ResourceGroup *string `field:"optional" json:"resourceGroup" yaml:"resourceGroup"`
	// The Azure event hub subscription ID to use for ingestion.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#subscription_id PubsubTopic#subscription_id}
	SubscriptionId *string `field:"optional" json:"subscriptionId" yaml:"subscriptionId"`
	// The Azure event hub tenant ID to use for ingestion.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#tenant_id PubsubTopic#tenant_id}
	TenantId *string `field:"optional" json:"tenantId" yaml:"tenantId"`
}

type PubsubTopicIngestionDataSourceSettingsAzureEventHubsOutputReference added in v14.17.0

type PubsubTopicIngestionDataSourceSettingsAzureEventHubsOutputReference interface {
	cdktf.ComplexObject
	ClientId() *string
	SetClientId(val *string)
	ClientIdInput() *string
	// 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
	EventHub() *string
	SetEventHub(val *string)
	EventHubInput() *string
	// Experimental.
	Fqn() *string
	GcpServiceAccount() *string
	SetGcpServiceAccount(val *string)
	GcpServiceAccountInput() *string
	InternalValue() *PubsubTopicIngestionDataSourceSettingsAzureEventHubs
	SetInternalValue(val *PubsubTopicIngestionDataSourceSettingsAzureEventHubs)
	Namespace() *string
	SetNamespace(val *string)
	NamespaceInput() *string
	ResourceGroup() *string
	SetResourceGroup(val *string)
	ResourceGroupInput() *string
	SubscriptionId() *string
	SetSubscriptionId(val *string)
	SubscriptionIdInput() *string
	TenantId() *string
	SetTenantId(val *string)
	TenantIdInput() *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
	ResetClientId()
	ResetEventHub()
	ResetGcpServiceAccount()
	ResetNamespace()
	ResetResourceGroup()
	ResetSubscriptionId()
	ResetTenantId()
	// 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 NewPubsubTopicIngestionDataSourceSettingsAzureEventHubsOutputReference added in v14.17.0

func NewPubsubTopicIngestionDataSourceSettingsAzureEventHubsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicIngestionDataSourceSettingsAzureEventHubsOutputReference

type PubsubTopicIngestionDataSourceSettingsCloudStorage added in v14.5.0

type PubsubTopicIngestionDataSourceSettingsCloudStorage struct {
	// Cloud Storage bucket. The bucket name must be without any prefix like "gs://". See the bucket naming requirements: https://cloud.google.com/storage/docs/buckets#naming.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#bucket PubsubTopic#bucket}
	Bucket *string `field:"required" json:"bucket" yaml:"bucket"`
	// avro_format block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#avro_format PubsubTopic#avro_format}
	AvroFormat *PubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormat `field:"optional" json:"avroFormat" yaml:"avroFormat"`
	// Glob pattern used to match objects that will be ingested.
	//
	// If unset, all
	// objects will be ingested. See the supported patterns:
	// https://cloud.google.com/storage/docs/json_api/v1/objects/list#list-objects-and-prefixes-using-glob
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#match_glob PubsubTopic#match_glob}
	MatchGlob *string `field:"optional" json:"matchGlob" yaml:"matchGlob"`
	// The timestamp set in RFC3339 text format.
	//
	// If set, only objects with a
	// larger or equal timestamp will be ingested. Unset by default, meaning
	// all objects will be ingested.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#minimum_object_create_time PubsubTopic#minimum_object_create_time}
	MinimumObjectCreateTime *string `field:"optional" json:"minimumObjectCreateTime" yaml:"minimumObjectCreateTime"`
	// pubsub_avro_format block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#pubsub_avro_format PubsubTopic#pubsub_avro_format}
	PubsubAvroFormat *PubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormat `field:"optional" json:"pubsubAvroFormat" yaml:"pubsubAvroFormat"`
	// text_format block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#text_format PubsubTopic#text_format}
	TextFormat *PubsubTopicIngestionDataSourceSettingsCloudStorageTextFormat `field:"optional" json:"textFormat" yaml:"textFormat"`
}

type PubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormat added in v14.5.0

type PubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormat struct {
}

type PubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormatOutputReference added in v14.5.0

type PubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormatOutputReference 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() *PubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormat
	SetInternalValue(val *PubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormat)
	// 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 NewPubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormatOutputReference added in v14.5.0

func NewPubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormatOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormatOutputReference

type PubsubTopicIngestionDataSourceSettingsCloudStorageOutputReference added in v14.5.0

type PubsubTopicIngestionDataSourceSettingsCloudStorageOutputReference interface {
	cdktf.ComplexObject
	AvroFormat() PubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormatOutputReference
	AvroFormatInput() *PubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormat
	Bucket() *string
	SetBucket(val *string)
	BucketInput() *string
	// 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() *PubsubTopicIngestionDataSourceSettingsCloudStorage
	SetInternalValue(val *PubsubTopicIngestionDataSourceSettingsCloudStorage)
	MatchGlob() *string
	SetMatchGlob(val *string)
	MatchGlobInput() *string
	MinimumObjectCreateTime() *string
	SetMinimumObjectCreateTime(val *string)
	MinimumObjectCreateTimeInput() *string
	PubsubAvroFormat() PubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormatOutputReference
	PubsubAvroFormatInput() *PubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormat
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	TextFormat() PubsubTopicIngestionDataSourceSettingsCloudStorageTextFormatOutputReference
	TextFormatInput() *PubsubTopicIngestionDataSourceSettingsCloudStorageTextFormat
	// 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
	PutAvroFormat(value *PubsubTopicIngestionDataSourceSettingsCloudStorageAvroFormat)
	PutPubsubAvroFormat(value *PubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormat)
	PutTextFormat(value *PubsubTopicIngestionDataSourceSettingsCloudStorageTextFormat)
	ResetAvroFormat()
	ResetMatchGlob()
	ResetMinimumObjectCreateTime()
	ResetPubsubAvroFormat()
	ResetTextFormat()
	// 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 NewPubsubTopicIngestionDataSourceSettingsCloudStorageOutputReference added in v14.5.0

func NewPubsubTopicIngestionDataSourceSettingsCloudStorageOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicIngestionDataSourceSettingsCloudStorageOutputReference

type PubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormat added in v14.5.0

type PubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormat struct {
}

type PubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormatOutputReference added in v14.5.0

type PubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormatOutputReference 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() *PubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormat
	SetInternalValue(val *PubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormat)
	// 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 NewPubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormatOutputReference added in v14.5.0

func NewPubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormatOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicIngestionDataSourceSettingsCloudStoragePubsubAvroFormatOutputReference

type PubsubTopicIngestionDataSourceSettingsCloudStorageTextFormat added in v14.5.0

type PubsubTopicIngestionDataSourceSettingsCloudStorageTextFormat struct {
	// The delimiter to use when using the 'text' format.
	//
	// Each line of text as
	// specified by the delimiter will be set to the 'data' field of a Pub/Sub
	// message. When unset, '\n' is used.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#delimiter PubsubTopic#delimiter}
	Delimiter *string `field:"optional" json:"delimiter" yaml:"delimiter"`
}

type PubsubTopicIngestionDataSourceSettingsCloudStorageTextFormatOutputReference added in v14.5.0

type PubsubTopicIngestionDataSourceSettingsCloudStorageTextFormatOutputReference 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
	Delimiter() *string
	SetDelimiter(val *string)
	DelimiterInput() *string
	// Experimental.
	Fqn() *string
	InternalValue() *PubsubTopicIngestionDataSourceSettingsCloudStorageTextFormat
	SetInternalValue(val *PubsubTopicIngestionDataSourceSettingsCloudStorageTextFormat)
	// 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
	ResetDelimiter()
	// 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 NewPubsubTopicIngestionDataSourceSettingsCloudStorageTextFormatOutputReference added in v14.5.0

func NewPubsubTopicIngestionDataSourceSettingsCloudStorageTextFormatOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicIngestionDataSourceSettingsCloudStorageTextFormatOutputReference

type PubsubTopicIngestionDataSourceSettingsConfluentCloud added in v14.18.0

type PubsubTopicIngestionDataSourceSettingsConfluentCloud struct {
	// The Confluent Cloud bootstrap server. The format is url:port.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#bootstrap_server PubsubTopic#bootstrap_server}
	BootstrapServer *string `field:"required" json:"bootstrapServer" yaml:"bootstrapServer"`
	// The GCP service account to be used for Federated Identity authentication with Confluent Cloud.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#gcp_service_account PubsubTopic#gcp_service_account}
	GcpServiceAccount *string `field:"required" json:"gcpServiceAccount" yaml:"gcpServiceAccount"`
	// Identity pool ID to be used for Federated Identity authentication with Confluent Cloud.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#identity_pool_id PubsubTopic#identity_pool_id}
	IdentityPoolId *string `field:"required" json:"identityPoolId" yaml:"identityPoolId"`
	// Name of the Confluent Cloud topic that Pub/Sub will import from.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#topic PubsubTopic#topic}
	Topic *string `field:"required" json:"topic" yaml:"topic"`
	// The Confluent Cloud cluster ID.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#cluster_id PubsubTopic#cluster_id}
	ClusterId *string `field:"optional" json:"clusterId" yaml:"clusterId"`
}

type PubsubTopicIngestionDataSourceSettingsConfluentCloudOutputReference added in v14.18.0

type PubsubTopicIngestionDataSourceSettingsConfluentCloudOutputReference interface {
	cdktf.ComplexObject
	BootstrapServer() *string
	SetBootstrapServer(val *string)
	BootstrapServerInput() *string
	ClusterId() *string
	SetClusterId(val *string)
	ClusterIdInput() *string
	// 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
	GcpServiceAccount() *string
	SetGcpServiceAccount(val *string)
	GcpServiceAccountInput() *string
	IdentityPoolId() *string
	SetIdentityPoolId(val *string)
	IdentityPoolIdInput() *string
	InternalValue() *PubsubTopicIngestionDataSourceSettingsConfluentCloud
	SetInternalValue(val *PubsubTopicIngestionDataSourceSettingsConfluentCloud)
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	Topic() *string
	SetTopic(val *string)
	TopicInput() *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
	ResetClusterId()
	// 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 NewPubsubTopicIngestionDataSourceSettingsConfluentCloudOutputReference added in v14.18.0

func NewPubsubTopicIngestionDataSourceSettingsConfluentCloudOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicIngestionDataSourceSettingsConfluentCloudOutputReference

type PubsubTopicIngestionDataSourceSettingsOutputReference

type PubsubTopicIngestionDataSourceSettingsOutputReference interface {
	cdktf.ComplexObject
	AwsKinesis() PubsubTopicIngestionDataSourceSettingsAwsKinesisOutputReference
	AwsKinesisInput() *PubsubTopicIngestionDataSourceSettingsAwsKinesis
	AwsMsk() PubsubTopicIngestionDataSourceSettingsAwsMskOutputReference
	AwsMskInput() *PubsubTopicIngestionDataSourceSettingsAwsMsk
	AzureEventHubs() PubsubTopicIngestionDataSourceSettingsAzureEventHubsOutputReference
	AzureEventHubsInput() *PubsubTopicIngestionDataSourceSettingsAzureEventHubs
	CloudStorage() PubsubTopicIngestionDataSourceSettingsCloudStorageOutputReference
	CloudStorageInput() *PubsubTopicIngestionDataSourceSettingsCloudStorage
	// 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)
	ConfluentCloud() PubsubTopicIngestionDataSourceSettingsConfluentCloudOutputReference
	ConfluentCloudInput() *PubsubTopicIngestionDataSourceSettingsConfluentCloud
	// 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() *PubsubTopicIngestionDataSourceSettings
	SetInternalValue(val *PubsubTopicIngestionDataSourceSettings)
	PlatformLogsSettings() PubsubTopicIngestionDataSourceSettingsPlatformLogsSettingsOutputReference
	PlatformLogsSettingsInput() *PubsubTopicIngestionDataSourceSettingsPlatformLogsSettings
	// 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
	PutAwsKinesis(value *PubsubTopicIngestionDataSourceSettingsAwsKinesis)
	PutAwsMsk(value *PubsubTopicIngestionDataSourceSettingsAwsMsk)
	PutAzureEventHubs(value *PubsubTopicIngestionDataSourceSettingsAzureEventHubs)
	PutCloudStorage(value *PubsubTopicIngestionDataSourceSettingsCloudStorage)
	PutConfluentCloud(value *PubsubTopicIngestionDataSourceSettingsConfluentCloud)
	PutPlatformLogsSettings(value *PubsubTopicIngestionDataSourceSettingsPlatformLogsSettings)
	ResetAwsKinesis()
	ResetAwsMsk()
	ResetAzureEventHubs()
	ResetCloudStorage()
	ResetConfluentCloud()
	ResetPlatformLogsSettings()
	// 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 NewPubsubTopicIngestionDataSourceSettingsOutputReference

func NewPubsubTopicIngestionDataSourceSettingsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicIngestionDataSourceSettingsOutputReference

type PubsubTopicIngestionDataSourceSettingsPlatformLogsSettings added in v14.5.0

type PubsubTopicIngestionDataSourceSettingsPlatformLogsSettings struct {
	// The minimum severity level of Platform Logs that will be written.
	//
	// If unspecified,
	// no Platform Logs will be written. Default value: "SEVERITY_UNSPECIFIED" Possible values: ["SEVERITY_UNSPECIFIED", "DISABLED", "DEBUG", "INFO", "WARNING", "ERROR"]
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#severity PubsubTopic#severity}
	Severity *string `field:"optional" json:"severity" yaml:"severity"`
}

type PubsubTopicIngestionDataSourceSettingsPlatformLogsSettingsOutputReference added in v14.5.0

type PubsubTopicIngestionDataSourceSettingsPlatformLogsSettingsOutputReference 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() *PubsubTopicIngestionDataSourceSettingsPlatformLogsSettings
	SetInternalValue(val *PubsubTopicIngestionDataSourceSettingsPlatformLogsSettings)
	Severity() *string
	SetSeverity(val *string)
	SeverityInput() *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
	ResetSeverity()
	// 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 NewPubsubTopicIngestionDataSourceSettingsPlatformLogsSettingsOutputReference added in v14.5.0

func NewPubsubTopicIngestionDataSourceSettingsPlatformLogsSettingsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicIngestionDataSourceSettingsPlatformLogsSettingsOutputReference

type PubsubTopicMessageStoragePolicy

type PubsubTopicMessageStoragePolicy struct {
	// A list of IDs of GCP regions where messages that are published to the topic may be persisted in storage.
	//
	// Messages published by
	// publishers running in non-allowed GCP regions (or running outside
	// of GCP altogether) will be routed for storage in one of the
	// allowed regions. An empty list means that no regions are allowed,
	// and is not a valid configuration.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#allowed_persistence_regions PubsubTopic#allowed_persistence_regions}
	AllowedPersistenceRegions *[]*string `field:"required" json:"allowedPersistenceRegions" yaml:"allowedPersistenceRegions"`
	// If true, 'allowedPersistenceRegions' is also used to enforce in-transit guarantees for messages.
	//
	// That is, Pub/Sub will fail topics.publish
	// operations on this topic and subscribe operations on any subscription
	// attached to this topic in any region that is not in 'allowedPersistenceRegions'.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#enforce_in_transit PubsubTopic#enforce_in_transit}
	EnforceInTransit interface{} `field:"optional" json:"enforceInTransit" yaml:"enforceInTransit"`
}

type PubsubTopicMessageStoragePolicyOutputReference

type PubsubTopicMessageStoragePolicyOutputReference interface {
	cdktf.ComplexObject
	AllowedPersistenceRegions() *[]*string
	SetAllowedPersistenceRegions(val *[]*string)
	AllowedPersistenceRegionsInput() *[]*string
	// 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
	EnforceInTransit() interface{}
	SetEnforceInTransit(val interface{})
	EnforceInTransitInput() interface{}
	// Experimental.
	Fqn() *string
	InternalValue() *PubsubTopicMessageStoragePolicy
	SetInternalValue(val *PubsubTopicMessageStoragePolicy)
	// 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
	ResetEnforceInTransit()
	// 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 NewPubsubTopicMessageStoragePolicyOutputReference

func NewPubsubTopicMessageStoragePolicyOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicMessageStoragePolicyOutputReference

type PubsubTopicSchemaSettings

type PubsubTopicSchemaSettings struct {
	// The name of the schema that messages published should be validated against.
	//
	// Format is projects/{project}/schemas/{schema}.
	// The value of this field will be _deleted-schema_
	// if the schema has been deleted.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#schema PubsubTopic#schema}
	Schema *string `field:"required" json:"schema" yaml:"schema"`
	// The encoding of messages validated against schema. Default value: "ENCODING_UNSPECIFIED" Possible values: ["ENCODING_UNSPECIFIED", "JSON", "BINARY"].
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#encoding PubsubTopic#encoding}
	Encoding *string `field:"optional" json:"encoding" yaml:"encoding"`
}

type PubsubTopicSchemaSettingsOutputReference

type PubsubTopicSchemaSettingsOutputReference 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
	Encoding() *string
	SetEncoding(val *string)
	EncodingInput() *string
	// Experimental.
	Fqn() *string
	InternalValue() *PubsubTopicSchemaSettings
	SetInternalValue(val *PubsubTopicSchemaSettings)
	Schema() *string
	SetSchema(val *string)
	SchemaInput() *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
	ResetEncoding()
	// 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 NewPubsubTopicSchemaSettingsOutputReference

func NewPubsubTopicSchemaSettingsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicSchemaSettingsOutputReference

type PubsubTopicTimeouts

type PubsubTopicTimeouts struct {
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#create PubsubTopic#create}.
	Create *string `field:"optional" json:"create" yaml:"create"`
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#delete PubsubTopic#delete}.
	Delete *string `field:"optional" json:"delete" yaml:"delete"`
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.22.0/docs/resources/pubsub_topic#update PubsubTopic#update}.
	Update *string `field:"optional" json:"update" yaml:"update"`
}

type PubsubTopicTimeoutsOutputReference

type PubsubTopicTimeoutsOutputReference 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
	Delete() *string
	SetDelete(val *string)
	DeleteInput() *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)
	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()
	ResetDelete()
	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 NewPubsubTopicTimeoutsOutputReference

func NewPubsubTopicTimeoutsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicTimeoutsOutputReference

Source Files

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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