v1beta2

package
v1.13.0-rc.0 Latest Latest
Warning

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

Go to latest
Published: Aug 22, 2024 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=firehose.aws.upbound.io +versionName=v1beta2

Index

Constants

View Source
const (
	CRDGroup   = "firehose.aws.upbound.io"
	CRDVersion = "v1beta2"
)

Package type metadata.

Variables

View Source
var (
	DeliveryStream_Kind             = "DeliveryStream"
	DeliveryStream_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: DeliveryStream_Kind}.String()
	DeliveryStream_KindAPIVersion   = DeliveryStream_Kind + "." + CRDGroupVersion.String()
	DeliveryStream_GroupVersionKind = CRDGroupVersion.WithKind(DeliveryStream_Kind)
)

Repository type metadata.

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type AuthenticationConfigurationInitParameters

type AuthenticationConfigurationInitParameters struct {

	// The type of connectivity used to access the Amazon MSK cluster. Valid values: PUBLIC, PRIVATE.
	Connectivity *string `json:"connectivity,omitempty" tf:"connectivity,omitempty"`

	// The ARN of the role used to access the Amazon MSK cluster.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*AuthenticationConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationConfigurationInitParameters.

func (*AuthenticationConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AuthenticationConfigurationObservation

type AuthenticationConfigurationObservation struct {

	// The type of connectivity used to access the Amazon MSK cluster. Valid values: PUBLIC, PRIVATE.
	Connectivity *string `json:"connectivity,omitempty" tf:"connectivity,omitempty"`

	// The ARN of the role used to access the Amazon MSK cluster.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*AuthenticationConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationConfigurationObservation.

func (*AuthenticationConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AuthenticationConfigurationParameters

type AuthenticationConfigurationParameters struct {

	// The type of connectivity used to access the Amazon MSK cluster. Valid values: PUBLIC, PRIVATE.
	// +kubebuilder:validation:Optional
	Connectivity *string `json:"connectivity" tf:"connectivity,omitempty"`

	// The ARN of the role used to access the Amazon MSK cluster.
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn" tf:"role_arn,omitempty"`
}

func (*AuthenticationConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationConfigurationParameters.

func (*AuthenticationConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudwatchLoggingOptionsInitParameters

type CloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*CloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudwatchLoggingOptionsInitParameters.

func (*CloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudwatchLoggingOptionsObservation

type CloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*CloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudwatchLoggingOptionsObservation.

func (*CloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudwatchLoggingOptionsParameters

type CloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*CloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudwatchLoggingOptionsParameters.

func (*CloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CommonAttributesInitParameters

type CommonAttributesInitParameters struct {

	// The name of the HTTP endpoint common attribute.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The value of the HTTP endpoint common attribute.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*CommonAttributesInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonAttributesInitParameters.

func (*CommonAttributesInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CommonAttributesObservation

type CommonAttributesObservation struct {

	// The name of the HTTP endpoint common attribute.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The value of the HTTP endpoint common attribute.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*CommonAttributesObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonAttributesObservation.

func (*CommonAttributesObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CommonAttributesParameters

type CommonAttributesParameters struct {

	// The name of the HTTP endpoint common attribute.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// The value of the HTTP endpoint common attribute.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*CommonAttributesParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonAttributesParameters.

func (*CommonAttributesParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataFormatConversionConfigurationInitParameters

type DataFormatConversionConfigurationInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the deserializer that you want Kinesis Data Firehose to use to convert the format of your data from JSON. See input_format_configuration block below for details.
	InputFormatConfiguration *InputFormatConfigurationInitParameters `json:"inputFormatConfiguration,omitempty" tf:"input_format_configuration,omitempty"`

	// Specifies the serializer that you want Kinesis Data Firehose to use to convert the format of your data to the Parquet or ORC format. See output_format_configuration block below for details.
	OutputFormatConfiguration *OutputFormatConfigurationInitParameters `json:"outputFormatConfiguration,omitempty" tf:"output_format_configuration,omitempty"`

	// Specifies the AWS Glue Data Catalog table that contains the column information. See schema_configuration block below for details.
	SchemaConfiguration *SchemaConfigurationInitParameters `json:"schemaConfiguration,omitempty" tf:"schema_configuration,omitempty"`
}

func (*DataFormatConversionConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataFormatConversionConfigurationInitParameters.

func (*DataFormatConversionConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataFormatConversionConfigurationObservation

type DataFormatConversionConfigurationObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the deserializer that you want Kinesis Data Firehose to use to convert the format of your data from JSON. See input_format_configuration block below for details.
	InputFormatConfiguration *InputFormatConfigurationObservation `json:"inputFormatConfiguration,omitempty" tf:"input_format_configuration,omitempty"`

	// Specifies the serializer that you want Kinesis Data Firehose to use to convert the format of your data to the Parquet or ORC format. See output_format_configuration block below for details.
	OutputFormatConfiguration *OutputFormatConfigurationObservation `json:"outputFormatConfiguration,omitempty" tf:"output_format_configuration,omitempty"`

	// Specifies the AWS Glue Data Catalog table that contains the column information. See schema_configuration block below for details.
	SchemaConfiguration *SchemaConfigurationObservation `json:"schemaConfiguration,omitempty" tf:"schema_configuration,omitempty"`
}

func (*DataFormatConversionConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataFormatConversionConfigurationObservation.

func (*DataFormatConversionConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataFormatConversionConfigurationParameters

type DataFormatConversionConfigurationParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the deserializer that you want Kinesis Data Firehose to use to convert the format of your data from JSON. See input_format_configuration block below for details.
	// +kubebuilder:validation:Optional
	InputFormatConfiguration *InputFormatConfigurationParameters `json:"inputFormatConfiguration" tf:"input_format_configuration,omitempty"`

	// Specifies the serializer that you want Kinesis Data Firehose to use to convert the format of your data to the Parquet or ORC format. See output_format_configuration block below for details.
	// +kubebuilder:validation:Optional
	OutputFormatConfiguration *OutputFormatConfigurationParameters `json:"outputFormatConfiguration" tf:"output_format_configuration,omitempty"`

	// Specifies the AWS Glue Data Catalog table that contains the column information. See schema_configuration block below for details.
	// +kubebuilder:validation:Optional
	SchemaConfiguration *SchemaConfigurationParameters `json:"schemaConfiguration" tf:"schema_configuration,omitempty"`
}

func (*DataFormatConversionConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataFormatConversionConfigurationParameters.

func (*DataFormatConversionConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DeliveryStream

type DeliveryStream struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.destination) || (has(self.initProvider) && has(self.initProvider.destination))",message="spec.forProvider.destination is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	Spec   DeliveryStreamSpec   `json:"spec"`
	Status DeliveryStreamStatus `json:"status,omitempty"`
}

DeliveryStream is the Schema for the DeliveryStreams API. Provides a AWS Kinesis Firehose Delivery Stream +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}

func (*DeliveryStream) DeepCopy

func (in *DeliveryStream) DeepCopy() *DeliveryStream

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryStream.

func (*DeliveryStream) DeepCopyInto

func (in *DeliveryStream) DeepCopyInto(out *DeliveryStream)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DeliveryStream) DeepCopyObject

func (in *DeliveryStream) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*DeliveryStream) GetCondition

func (mg *DeliveryStream) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this DeliveryStream.

func (*DeliveryStream) GetConnectionDetailsMapping

func (tr *DeliveryStream) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this DeliveryStream

func (*DeliveryStream) GetDeletionPolicy

func (mg *DeliveryStream) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this DeliveryStream.

func (*DeliveryStream) GetID

func (tr *DeliveryStream) GetID() string

GetID returns ID of underlying Terraform resource of this DeliveryStream

func (*DeliveryStream) GetInitParameters

func (tr *DeliveryStream) GetInitParameters() (map[string]any, error)

GetInitParameters of this DeliveryStream

func (*DeliveryStream) GetManagementPolicies

func (mg *DeliveryStream) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this DeliveryStream.

func (*DeliveryStream) GetMergedParameters

func (tr *DeliveryStream) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this DeliveryStream

func (*DeliveryStream) GetObservation

func (tr *DeliveryStream) GetObservation() (map[string]any, error)

GetObservation of this DeliveryStream

func (*DeliveryStream) GetParameters

func (tr *DeliveryStream) GetParameters() (map[string]any, error)

GetParameters of this DeliveryStream

func (*DeliveryStream) GetProviderConfigReference

func (mg *DeliveryStream) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this DeliveryStream.

func (*DeliveryStream) GetPublishConnectionDetailsTo

func (mg *DeliveryStream) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this DeliveryStream.

func (*DeliveryStream) GetTerraformResourceType

func (mg *DeliveryStream) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this DeliveryStream

func (*DeliveryStream) GetTerraformSchemaVersion

func (tr *DeliveryStream) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*DeliveryStream) GetWriteConnectionSecretToReference

func (mg *DeliveryStream) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this DeliveryStream.

func (*DeliveryStream) Hub

func (tr *DeliveryStream) Hub()

Hub marks this type as a conversion hub.

func (*DeliveryStream) LateInitialize

func (tr *DeliveryStream) LateInitialize(attrs []byte) (bool, error)

LateInitialize this DeliveryStream using its observed tfState. returns True if there are any spec changes for the resource.

func (*DeliveryStream) ResolveReferences

func (mg *DeliveryStream) ResolveReferences(
	ctx context.Context, c client.Reader) error

func (*DeliveryStream) SetConditions

func (mg *DeliveryStream) SetConditions(c ...xpv1.Condition)

SetConditions of this DeliveryStream.

func (*DeliveryStream) SetDeletionPolicy

func (mg *DeliveryStream) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this DeliveryStream.

func (*DeliveryStream) SetManagementPolicies

func (mg *DeliveryStream) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this DeliveryStream.

func (*DeliveryStream) SetObservation

func (tr *DeliveryStream) SetObservation(obs map[string]any) error

SetObservation for this DeliveryStream

func (*DeliveryStream) SetParameters

func (tr *DeliveryStream) SetParameters(params map[string]any) error

SetParameters for this DeliveryStream

func (*DeliveryStream) SetProviderConfigReference

func (mg *DeliveryStream) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this DeliveryStream.

func (*DeliveryStream) SetPublishConnectionDetailsTo

func (mg *DeliveryStream) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this DeliveryStream.

func (*DeliveryStream) SetWriteConnectionSecretToReference

func (mg *DeliveryStream) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this DeliveryStream.

type DeliveryStreamInitParameters

type DeliveryStreamInitParameters struct {

	// –  This is the destination to where the data is delivered. The only options are s3 (Deprecated, use extended_s3 instead), extended_s3, redshift, elasticsearch, splunk, http_endpoint, opensearch, opensearchserverless and snowflake.
	Destination *string `json:"destination,omitempty" tf:"destination,omitempty"`

	DestinationID *string `json:"destinationId,omitempty" tf:"destination_id,omitempty"`

	// Configuration options when destination is elasticsearch. See elasticsearch_configuration block below for details.
	ElasticsearchConfiguration *ElasticsearchConfigurationInitParameters `json:"elasticsearchConfiguration,omitempty" tf:"elasticsearch_configuration,omitempty"`

	// Enhanced configuration options for the s3 destination. See extended_s3_configuration block below for details.
	ExtendedS3Configuration *ExtendedS3ConfigurationInitParameters `json:"extendedS3Configuration,omitempty" tf:"extended_s3_configuration,omitempty"`

	// Configuration options when destination is http_endpoint. Requires the user to also specify an s3_configuration block.  See http_endpoint_configuration block below for details.
	HTTPEndpointConfiguration *HTTPEndpointConfigurationInitParameters `json:"httpEndpointConfiguration,omitempty" tf:"http_endpoint_configuration,omitempty"`

	// The stream and role Amazon Resource Names (ARNs) for a Kinesis data stream used as the source for a delivery stream. See kinesis_source_configuration block below for details.
	KinesisSourceConfiguration *KinesisSourceConfigurationInitParameters `json:"kinesisSourceConfiguration,omitempty" tf:"kinesis_source_configuration,omitempty"`

	// The configuration for the Amazon MSK cluster to be used as the source for a delivery stream. See msk_source_configuration block below for details.
	MskSourceConfiguration *MskSourceConfigurationInitParameters `json:"mskSourceConfiguration,omitempty" tf:"msk_source_configuration,omitempty"`

	// A name to identify the stream. This is unique to the AWS account and region the Stream is created in. When using for WAF logging, name must be prefixed with aws-waf-logs-. See AWS Documentation for more details.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Configuration options when destination is opensearch. See opensearch_configuration block below for details.
	OpensearchConfiguration *OpensearchConfigurationInitParameters `json:"opensearchConfiguration,omitempty" tf:"opensearch_configuration,omitempty"`

	// Configuration options when destination is opensearchserverless. See opensearchserverless_configuration block below for details.
	OpensearchserverlessConfiguration *OpensearchserverlessConfigurationInitParameters `json:"opensearchserverlessConfiguration,omitempty" tf:"opensearchserverless_configuration,omitempty"`

	// Configuration options when destination is redshift. Requires the user to also specify an s3_configuration block. See redshift_configuration block below for details.
	RedshiftConfiguration *RedshiftConfigurationInitParameters `json:"redshiftConfiguration,omitempty" tf:"redshift_configuration,omitempty"`

	// Encrypt at rest options. See server_side_encryption block below for details.
	ServerSideEncryption *ServerSideEncryptionInitParameters `json:"serverSideEncryption,omitempty" tf:"server_side_encryption,omitempty"`

	// Configuration options when destination is snowflake. See snowflake_configuration block below for details.
	SnowflakeConfiguration *SnowflakeConfigurationInitParameters `json:"snowflakeConfiguration,omitempty" tf:"snowflake_configuration,omitempty"`

	// Configuration options when destination is splunk. See splunk_configuration block below for details.
	SplunkConfiguration *SplunkConfigurationInitParameters `json:"splunkConfiguration,omitempty" tf:"splunk_configuration,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Specifies the table version for the output data schema. Defaults to LATEST.
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*DeliveryStreamInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryStreamInitParameters.

func (*DeliveryStreamInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DeliveryStreamList

type DeliveryStreamList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []DeliveryStream `json:"items"`
}

DeliveryStreamList contains a list of DeliveryStreams

func (*DeliveryStreamList) DeepCopy

func (in *DeliveryStreamList) DeepCopy() *DeliveryStreamList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryStreamList.

func (*DeliveryStreamList) DeepCopyInto

func (in *DeliveryStreamList) DeepCopyInto(out *DeliveryStreamList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DeliveryStreamList) DeepCopyObject

func (in *DeliveryStreamList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*DeliveryStreamList) GetItems

func (l *DeliveryStreamList) GetItems() []resource.Managed

GetItems of this DeliveryStreamList.

type DeliveryStreamObservation

type DeliveryStreamObservation struct {

	// The Amazon Resource Name (ARN) specifying the Stream
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// –  This is the destination to where the data is delivered. The only options are s3 (Deprecated, use extended_s3 instead), extended_s3, redshift, elasticsearch, splunk, http_endpoint, opensearch, opensearchserverless and snowflake.
	Destination *string `json:"destination,omitempty" tf:"destination,omitempty"`

	DestinationID *string `json:"destinationId,omitempty" tf:"destination_id,omitempty"`

	// Configuration options when destination is elasticsearch. See elasticsearch_configuration block below for details.
	ElasticsearchConfiguration *ElasticsearchConfigurationObservation `json:"elasticsearchConfiguration,omitempty" tf:"elasticsearch_configuration,omitempty"`

	// Enhanced configuration options for the s3 destination. See extended_s3_configuration block below for details.
	ExtendedS3Configuration *ExtendedS3ConfigurationObservation `json:"extendedS3Configuration,omitempty" tf:"extended_s3_configuration,omitempty"`

	// Configuration options when destination is http_endpoint. Requires the user to also specify an s3_configuration block.  See http_endpoint_configuration block below for details.
	HTTPEndpointConfiguration *HTTPEndpointConfigurationObservation `json:"httpEndpointConfiguration,omitempty" tf:"http_endpoint_configuration,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The stream and role Amazon Resource Names (ARNs) for a Kinesis data stream used as the source for a delivery stream. See kinesis_source_configuration block below for details.
	KinesisSourceConfiguration *KinesisSourceConfigurationObservation `json:"kinesisSourceConfiguration,omitempty" tf:"kinesis_source_configuration,omitempty"`

	// The configuration for the Amazon MSK cluster to be used as the source for a delivery stream. See msk_source_configuration block below for details.
	MskSourceConfiguration *MskSourceConfigurationObservation `json:"mskSourceConfiguration,omitempty" tf:"msk_source_configuration,omitempty"`

	// A name to identify the stream. This is unique to the AWS account and region the Stream is created in. When using for WAF logging, name must be prefixed with aws-waf-logs-. See AWS Documentation for more details.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Configuration options when destination is opensearch. See opensearch_configuration block below for details.
	OpensearchConfiguration *OpensearchConfigurationObservation `json:"opensearchConfiguration,omitempty" tf:"opensearch_configuration,omitempty"`

	// Configuration options when destination is opensearchserverless. See opensearchserverless_configuration block below for details.
	OpensearchserverlessConfiguration *OpensearchserverlessConfigurationObservation `json:"opensearchserverlessConfiguration,omitempty" tf:"opensearchserverless_configuration,omitempty"`

	// Configuration options when destination is redshift. Requires the user to also specify an s3_configuration block. See redshift_configuration block below for details.
	RedshiftConfiguration *RedshiftConfigurationObservation `json:"redshiftConfiguration,omitempty" tf:"redshift_configuration,omitempty"`

	// Encrypt at rest options. See server_side_encryption block below for details.
	ServerSideEncryption *ServerSideEncryptionObservation `json:"serverSideEncryption,omitempty" tf:"server_side_encryption,omitempty"`

	// Configuration options when destination is snowflake. See snowflake_configuration block below for details.
	SnowflakeConfiguration *SnowflakeConfigurationObservation `json:"snowflakeConfiguration,omitempty" tf:"snowflake_configuration,omitempty"`

	// Configuration options when destination is splunk. See splunk_configuration block below for details.
	SplunkConfiguration *SplunkConfigurationObservation `json:"splunkConfiguration,omitempty" tf:"splunk_configuration,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
	// +mapType=granular
	TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`

	// Specifies the table version for the output data schema. Defaults to LATEST.
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*DeliveryStreamObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryStreamObservation.

func (*DeliveryStreamObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DeliveryStreamParameters

type DeliveryStreamParameters struct {

	// –  This is the destination to where the data is delivered. The only options are s3 (Deprecated, use extended_s3 instead), extended_s3, redshift, elasticsearch, splunk, http_endpoint, opensearch, opensearchserverless and snowflake.
	// +kubebuilder:validation:Optional
	Destination *string `json:"destination,omitempty" tf:"destination,omitempty"`

	// +kubebuilder:validation:Optional
	DestinationID *string `json:"destinationId,omitempty" tf:"destination_id,omitempty"`

	// Configuration options when destination is elasticsearch. See elasticsearch_configuration block below for details.
	// +kubebuilder:validation:Optional
	ElasticsearchConfiguration *ElasticsearchConfigurationParameters `json:"elasticsearchConfiguration,omitempty" tf:"elasticsearch_configuration,omitempty"`

	// Enhanced configuration options for the s3 destination. See extended_s3_configuration block below for details.
	// +kubebuilder:validation:Optional
	ExtendedS3Configuration *ExtendedS3ConfigurationParameters `json:"extendedS3Configuration,omitempty" tf:"extended_s3_configuration,omitempty"`

	// Configuration options when destination is http_endpoint. Requires the user to also specify an s3_configuration block.  See http_endpoint_configuration block below for details.
	// +kubebuilder:validation:Optional
	HTTPEndpointConfiguration *HTTPEndpointConfigurationParameters `json:"httpEndpointConfiguration,omitempty" tf:"http_endpoint_configuration,omitempty"`

	// The stream and role Amazon Resource Names (ARNs) for a Kinesis data stream used as the source for a delivery stream. See kinesis_source_configuration block below for details.
	// +kubebuilder:validation:Optional
	KinesisSourceConfiguration *KinesisSourceConfigurationParameters `json:"kinesisSourceConfiguration,omitempty" tf:"kinesis_source_configuration,omitempty"`

	// The configuration for the Amazon MSK cluster to be used as the source for a delivery stream. See msk_source_configuration block below for details.
	// +kubebuilder:validation:Optional
	MskSourceConfiguration *MskSourceConfigurationParameters `json:"mskSourceConfiguration,omitempty" tf:"msk_source_configuration,omitempty"`

	// A name to identify the stream. This is unique to the AWS account and region the Stream is created in. When using for WAF logging, name must be prefixed with aws-waf-logs-. See AWS Documentation for more details.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Configuration options when destination is opensearch. See opensearch_configuration block below for details.
	// +kubebuilder:validation:Optional
	OpensearchConfiguration *OpensearchConfigurationParameters `json:"opensearchConfiguration,omitempty" tf:"opensearch_configuration,omitempty"`

	// Configuration options when destination is opensearchserverless. See opensearchserverless_configuration block below for details.
	// +kubebuilder:validation:Optional
	OpensearchserverlessConfiguration *OpensearchserverlessConfigurationParameters `json:"opensearchserverlessConfiguration,omitempty" tf:"opensearchserverless_configuration,omitempty"`

	// Configuration options when destination is redshift. Requires the user to also specify an s3_configuration block. See redshift_configuration block below for details.
	// +kubebuilder:validation:Optional
	RedshiftConfiguration *RedshiftConfigurationParameters `json:"redshiftConfiguration,omitempty" tf:"redshift_configuration,omitempty"`

	// If you don't specify an AWS Region, the default is the current region.
	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// Encrypt at rest options. See server_side_encryption block below for details.
	// +kubebuilder:validation:Optional
	ServerSideEncryption *ServerSideEncryptionParameters `json:"serverSideEncryption,omitempty" tf:"server_side_encryption,omitempty"`

	// Configuration options when destination is snowflake. See snowflake_configuration block below for details.
	// +kubebuilder:validation:Optional
	SnowflakeConfiguration *SnowflakeConfigurationParameters `json:"snowflakeConfiguration,omitempty" tf:"snowflake_configuration,omitempty"`

	// Configuration options when destination is splunk. See splunk_configuration block below for details.
	// +kubebuilder:validation:Optional
	SplunkConfiguration *SplunkConfigurationParameters `json:"splunkConfiguration,omitempty" tf:"splunk_configuration,omitempty"`

	// Key-value map of resource tags.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Specifies the table version for the output data schema. Defaults to LATEST.
	// +kubebuilder:validation:Optional
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*DeliveryStreamParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryStreamParameters.

func (*DeliveryStreamParameters) DeepCopyInto

func (in *DeliveryStreamParameters) DeepCopyInto(out *DeliveryStreamParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DeliveryStreamSpec

type DeliveryStreamSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     DeliveryStreamParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider DeliveryStreamInitParameters `json:"initProvider,omitempty"`
}

DeliveryStreamSpec defines the desired state of DeliveryStream

func (*DeliveryStreamSpec) DeepCopy

func (in *DeliveryStreamSpec) DeepCopy() *DeliveryStreamSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryStreamSpec.

func (*DeliveryStreamSpec) DeepCopyInto

func (in *DeliveryStreamSpec) DeepCopyInto(out *DeliveryStreamSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DeliveryStreamStatus

type DeliveryStreamStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        DeliveryStreamObservation `json:"atProvider,omitempty"`
}

DeliveryStreamStatus defines the observed state of DeliveryStream.

func (*DeliveryStreamStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryStreamStatus.

func (*DeliveryStreamStatus) DeepCopyInto

func (in *DeliveryStreamStatus) DeepCopyInto(out *DeliveryStreamStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DeserializerInitParameters

type DeserializerInitParameters struct {

	// Specifies the native Hive / HCatalog JsonSerDe. More details below. See hive_json_ser_de block below for details.
	HiveJSONSerDe *HiveJSONSerDeInitParameters `json:"hiveJsonSerDe,omitempty" tf:"hive_json_ser_de,omitempty"`

	// Specifies the OpenX SerDe. See open_x_json_ser_de block below for details.
	OpenXJSONSerDe *OpenXJSONSerDeInitParameters `json:"openXJsonSerDe,omitempty" tf:"open_x_json_ser_de,omitempty"`
}

func (*DeserializerInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeserializerInitParameters.

func (*DeserializerInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DeserializerObservation

type DeserializerObservation struct {

	// Specifies the native Hive / HCatalog JsonSerDe. More details below. See hive_json_ser_de block below for details.
	HiveJSONSerDe *HiveJSONSerDeObservation `json:"hiveJsonSerDe,omitempty" tf:"hive_json_ser_de,omitempty"`

	// Specifies the OpenX SerDe. See open_x_json_ser_de block below for details.
	OpenXJSONSerDe *OpenXJSONSerDeObservation `json:"openXJsonSerDe,omitempty" tf:"open_x_json_ser_de,omitempty"`
}

func (*DeserializerObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeserializerObservation.

func (*DeserializerObservation) DeepCopyInto

func (in *DeserializerObservation) DeepCopyInto(out *DeserializerObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DeserializerParameters

type DeserializerParameters struct {

	// Specifies the native Hive / HCatalog JsonSerDe. More details below. See hive_json_ser_de block below for details.
	// +kubebuilder:validation:Optional
	HiveJSONSerDe *HiveJSONSerDeParameters `json:"hiveJsonSerDe,omitempty" tf:"hive_json_ser_de,omitempty"`

	// Specifies the OpenX SerDe. See open_x_json_ser_de block below for details.
	// +kubebuilder:validation:Optional
	OpenXJSONSerDe *OpenXJSONSerDeParameters `json:"openXJsonSerDe,omitempty" tf:"open_x_json_ser_de,omitempty"`
}

func (*DeserializerParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeserializerParameters.

func (*DeserializerParameters) DeepCopyInto

func (in *DeserializerParameters) DeepCopyInto(out *DeserializerParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DocumentIDOptionsInitParameters

type DocumentIDOptionsInitParameters struct {

	// The method for setting up document ID. Valid values: FIREHOSE_DEFAULT, NO_DOCUMENT_ID.
	DefaultDocumentIDFormat *string `json:"defaultDocumentIdFormat,omitempty" tf:"default_document_id_format,omitempty"`
}

func (*DocumentIDOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DocumentIDOptionsInitParameters.

func (*DocumentIDOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DocumentIDOptionsObservation

type DocumentIDOptionsObservation struct {

	// The method for setting up document ID. Valid values: FIREHOSE_DEFAULT, NO_DOCUMENT_ID.
	DefaultDocumentIDFormat *string `json:"defaultDocumentIdFormat,omitempty" tf:"default_document_id_format,omitempty"`
}

func (*DocumentIDOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DocumentIDOptionsObservation.

func (*DocumentIDOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DocumentIDOptionsParameters

type DocumentIDOptionsParameters struct {

	// The method for setting up document ID. Valid values: FIREHOSE_DEFAULT, NO_DOCUMENT_ID.
	// +kubebuilder:validation:Optional
	DefaultDocumentIDFormat *string `json:"defaultDocumentIdFormat" tf:"default_document_id_format,omitempty"`
}

func (*DocumentIDOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DocumentIDOptionsParameters.

func (*DocumentIDOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DynamicPartitioningConfigurationInitParameters

type DynamicPartitioningConfigurationInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// After an initial failure to deliver to Splunk, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`
}

func (*DynamicPartitioningConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DynamicPartitioningConfigurationInitParameters.

func (*DynamicPartitioningConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DynamicPartitioningConfigurationObservation

type DynamicPartitioningConfigurationObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// After an initial failure to deliver to Splunk, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`
}

func (*DynamicPartitioningConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DynamicPartitioningConfigurationObservation.

func (*DynamicPartitioningConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DynamicPartitioningConfigurationParameters

type DynamicPartitioningConfigurationParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// After an initial failure to deliver to Splunk, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	// +kubebuilder:validation:Optional
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`
}

func (*DynamicPartitioningConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DynamicPartitioningConfigurationParameters.

func (*DynamicPartitioningConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ElasticsearchConfigurationInitParameters

type ElasticsearchConfigurationInitParameters struct {

	// Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination.  The default value is 300s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *CloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The endpoint to use when communicating with the cluster. Conflicts with domain_arn.
	ClusterEndpoint *string `json:"clusterEndpoint,omitempty" tf:"cluster_endpoint,omitempty"`

	// The ARN of the Amazon ES domain.  The pattern needs to be arn:.*.  Conflicts with cluster_endpoint.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elasticsearch/v1beta2.Domain
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	DomainArn *string `json:"domainArn,omitempty" tf:"domain_arn,omitempty"`

	// Reference to a Domain in elasticsearch to populate domainArn.
	// +kubebuilder:validation:Optional
	DomainArnRef *v1.Reference `json:"domainArnRef,omitempty" tf:"-"`

	// Selector for a Domain in elasticsearch to populate domainArn.
	// +kubebuilder:validation:Optional
	DomainArnSelector *v1.Selector `json:"domainArnSelector,omitempty" tf:"-"`

	// The Elasticsearch index name.
	IndexName *string `json:"indexName,omitempty" tf:"index_name,omitempty"`

	// The Elasticsearch index rotation period.  Index rotation appends a timestamp to the IndexName to facilitate expiration of old data.  Valid values are NoRotation, OneHour, OneDay, OneWeek, and OneMonth.  The default value is OneDay.
	IndexRotationPeriod *string `json:"indexRotationPeriod,omitempty" tf:"index_rotation_period,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	ProcessingConfiguration *ProcessingConfigurationInitParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to Amazon Elasticsearch, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon ES Configuration API and for indexing documents.  The IAM role must have permission for DescribeElasticsearchDomain, DescribeElasticsearchDomains, and DescribeElasticsearchDomainConfig.  The pattern needs to be arn:.*.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedDocumentsOnly and AllDocuments.  Default value is FailedDocumentsOnly.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	S3Configuration *S3ConfigurationInitParameters `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`

	// The Elasticsearch type name with maximum length of 100 characters.
	TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"`

	// The VPC configuration for the delivery stream to connect to Elastic Search associated with the VPC. See vpc_config block below for details.
	VPCConfig *VPCConfigInitParameters `json:"vpcConfig,omitempty" tf:"vpc_config,omitempty"`
}

func (*ElasticsearchConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchConfigurationInitParameters.

func (*ElasticsearchConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ElasticsearchConfigurationObservation

type ElasticsearchConfigurationObservation struct {

	// Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination.  The default value is 300s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *CloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The endpoint to use when communicating with the cluster. Conflicts with domain_arn.
	ClusterEndpoint *string `json:"clusterEndpoint,omitempty" tf:"cluster_endpoint,omitempty"`

	// The ARN of the Amazon ES domain.  The pattern needs to be arn:.*.  Conflicts with cluster_endpoint.
	DomainArn *string `json:"domainArn,omitempty" tf:"domain_arn,omitempty"`

	// The Elasticsearch index name.
	IndexName *string `json:"indexName,omitempty" tf:"index_name,omitempty"`

	// The Elasticsearch index rotation period.  Index rotation appends a timestamp to the IndexName to facilitate expiration of old data.  Valid values are NoRotation, OneHour, OneDay, OneWeek, and OneMonth.  The default value is OneDay.
	IndexRotationPeriod *string `json:"indexRotationPeriod,omitempty" tf:"index_rotation_period,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	ProcessingConfiguration *ProcessingConfigurationObservation `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to Amazon Elasticsearch, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon ES Configuration API and for indexing documents.  The IAM role must have permission for DescribeElasticsearchDomain, DescribeElasticsearchDomains, and DescribeElasticsearchDomainConfig.  The pattern needs to be arn:.*.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedDocumentsOnly and AllDocuments.  Default value is FailedDocumentsOnly.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	S3Configuration *S3ConfigurationObservation `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`

	// The Elasticsearch type name with maximum length of 100 characters.
	TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"`

	// The VPC configuration for the delivery stream to connect to Elastic Search associated with the VPC. See vpc_config block below for details.
	VPCConfig *VPCConfigObservation `json:"vpcConfig,omitempty" tf:"vpc_config,omitempty"`
}

func (*ElasticsearchConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchConfigurationObservation.

func (*ElasticsearchConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ElasticsearchConfigurationParameters

type ElasticsearchConfigurationParameters struct {

	// Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination.  The default value is 300s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *CloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The endpoint to use when communicating with the cluster. Conflicts with domain_arn.
	// +kubebuilder:validation:Optional
	ClusterEndpoint *string `json:"clusterEndpoint,omitempty" tf:"cluster_endpoint,omitempty"`

	// The ARN of the Amazon ES domain.  The pattern needs to be arn:.*.  Conflicts with cluster_endpoint.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elasticsearch/v1beta2.Domain
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	DomainArn *string `json:"domainArn,omitempty" tf:"domain_arn,omitempty"`

	// Reference to a Domain in elasticsearch to populate domainArn.
	// +kubebuilder:validation:Optional
	DomainArnRef *v1.Reference `json:"domainArnRef,omitempty" tf:"-"`

	// Selector for a Domain in elasticsearch to populate domainArn.
	// +kubebuilder:validation:Optional
	DomainArnSelector *v1.Selector `json:"domainArnSelector,omitempty" tf:"-"`

	// The Elasticsearch index name.
	// +kubebuilder:validation:Optional
	IndexName *string `json:"indexName" tf:"index_name,omitempty"`

	// The Elasticsearch index rotation period.  Index rotation appends a timestamp to the IndexName to facilitate expiration of old data.  Valid values are NoRotation, OneHour, OneDay, OneWeek, and OneMonth.  The default value is OneDay.
	// +kubebuilder:validation:Optional
	IndexRotationPeriod *string `json:"indexRotationPeriod,omitempty" tf:"index_rotation_period,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	// +kubebuilder:validation:Optional
	ProcessingConfiguration *ProcessingConfigurationParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to Amazon Elasticsearch, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	// +kubebuilder:validation:Optional
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon ES Configuration API and for indexing documents.  The IAM role must have permission for DescribeElasticsearchDomain, DescribeElasticsearchDomains, and DescribeElasticsearchDomainConfig.  The pattern needs to be arn:.*.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedDocumentsOnly and AllDocuments.  Default value is FailedDocumentsOnly.
	// +kubebuilder:validation:Optional
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	// +kubebuilder:validation:Optional
	S3Configuration *S3ConfigurationParameters `json:"s3Configuration" tf:"s3_configuration,omitempty"`

	// The Elasticsearch type name with maximum length of 100 characters.
	// +kubebuilder:validation:Optional
	TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"`

	// The VPC configuration for the delivery stream to connect to Elastic Search associated with the VPC. See vpc_config block below for details.
	// +kubebuilder:validation:Optional
	VPCConfig *VPCConfigParameters `json:"vpcConfig,omitempty" tf:"vpc_config,omitempty"`
}

func (*ElasticsearchConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchConfigurationParameters.

func (*ElasticsearchConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExtendedS3ConfigurationCloudwatchLoggingOptionsInitParameters

type ExtendedS3ConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*ExtendedS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedS3ConfigurationCloudwatchLoggingOptionsInitParameters.

func (*ExtendedS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExtendedS3ConfigurationCloudwatchLoggingOptionsObservation

type ExtendedS3ConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*ExtendedS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedS3ConfigurationCloudwatchLoggingOptionsObservation.

func (*ExtendedS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExtendedS3ConfigurationCloudwatchLoggingOptionsParameters

type ExtendedS3ConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*ExtendedS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedS3ConfigurationCloudwatchLoggingOptionsParameters.

func (*ExtendedS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExtendedS3ConfigurationInitParameters

type ExtendedS3ConfigurationInitParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *ExtendedS3ConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// The time zone you prefer. Valid values are UTC or a non-3-letter IANA time zones (for example, America/Los_Angeles). Default value is UTC.
	CustomTimeZone *string `json:"customTimeZone,omitempty" tf:"custom_time_zone,omitempty"`

	// Nested argument for the serializer, deserializer, and schema for converting data from the JSON format to the Parquet or ORC format before writing it to Amazon S3. See data_format_conversion_configuration block below for details.
	DataFormatConversionConfiguration *DataFormatConversionConfigurationInitParameters `json:"dataFormatConversionConfiguration,omitempty" tf:"data_format_conversion_configuration,omitempty"`

	// The configuration for dynamic partitioning. Required when using dynamic partitioning. See dynamic_partitioning_configuration block below for details.
	DynamicPartitioningConfiguration *DynamicPartitioningConfigurationInitParameters `json:"dynamicPartitioningConfiguration,omitempty" tf:"dynamic_partitioning_configuration,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// The file extension to override the default file extension (for example, .json).
	FileExtension *string `json:"fileExtension,omitempty" tf:"file_extension,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	ProcessingConfiguration *ExtendedS3ConfigurationProcessingConfigurationInitParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// The configuration for backup in Amazon S3. Required if s3_backup_mode is Enabled. Supports the same fields as s3_configuration object.
	S3BackupConfiguration *S3BackupConfigurationInitParameters `json:"s3BackupConfiguration,omitempty" tf:"s3_backup_configuration,omitempty"`

	// The Amazon S3 backup mode.  Valid values are Disabled and Enabled.  Default value is Disabled.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`
}

func (*ExtendedS3ConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedS3ConfigurationInitParameters.

func (*ExtendedS3ConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExtendedS3ConfigurationObservation

type ExtendedS3ConfigurationObservation struct {

	// The ARN of the S3 bucket
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *ExtendedS3ConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// The time zone you prefer. Valid values are UTC or a non-3-letter IANA time zones (for example, America/Los_Angeles). Default value is UTC.
	CustomTimeZone *string `json:"customTimeZone,omitempty" tf:"custom_time_zone,omitempty"`

	// Nested argument for the serializer, deserializer, and schema for converting data from the JSON format to the Parquet or ORC format before writing it to Amazon S3. See data_format_conversion_configuration block below for details.
	DataFormatConversionConfiguration *DataFormatConversionConfigurationObservation `json:"dataFormatConversionConfiguration,omitempty" tf:"data_format_conversion_configuration,omitempty"`

	// The configuration for dynamic partitioning. Required when using dynamic partitioning. See dynamic_partitioning_configuration block below for details.
	DynamicPartitioningConfiguration *DynamicPartitioningConfigurationObservation `json:"dynamicPartitioningConfiguration,omitempty" tf:"dynamic_partitioning_configuration,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// The file extension to override the default file extension (for example, .json).
	FileExtension *string `json:"fileExtension,omitempty" tf:"file_extension,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	ProcessingConfiguration *ExtendedS3ConfigurationProcessingConfigurationObservation `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// The configuration for backup in Amazon S3. Required if s3_backup_mode is Enabled. Supports the same fields as s3_configuration object.
	S3BackupConfiguration *S3BackupConfigurationObservation `json:"s3BackupConfiguration,omitempty" tf:"s3_backup_configuration,omitempty"`

	// The Amazon S3 backup mode.  Valid values are Disabled and Enabled.  Default value is Disabled.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`
}

func (*ExtendedS3ConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedS3ConfigurationObservation.

func (*ExtendedS3ConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExtendedS3ConfigurationParameters

type ExtendedS3ConfigurationParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *ExtendedS3ConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	// +kubebuilder:validation:Optional
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// The time zone you prefer. Valid values are UTC or a non-3-letter IANA time zones (for example, America/Los_Angeles). Default value is UTC.
	// +kubebuilder:validation:Optional
	CustomTimeZone *string `json:"customTimeZone,omitempty" tf:"custom_time_zone,omitempty"`

	// Nested argument for the serializer, deserializer, and schema for converting data from the JSON format to the Parquet or ORC format before writing it to Amazon S3. See data_format_conversion_configuration block below for details.
	// +kubebuilder:validation:Optional
	DataFormatConversionConfiguration *DataFormatConversionConfigurationParameters `json:"dataFormatConversionConfiguration,omitempty" tf:"data_format_conversion_configuration,omitempty"`

	// The configuration for dynamic partitioning. Required when using dynamic partitioning. See dynamic_partitioning_configuration block below for details.
	// +kubebuilder:validation:Optional
	DynamicPartitioningConfiguration *DynamicPartitioningConfigurationParameters `json:"dynamicPartitioningConfiguration,omitempty" tf:"dynamic_partitioning_configuration,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	// +kubebuilder:validation:Optional
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// The file extension to override the default file extension (for example, .json).
	// +kubebuilder:validation:Optional
	FileExtension *string `json:"fileExtension,omitempty" tf:"file_extension,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	// +kubebuilder:validation:Optional
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	// +kubebuilder:validation:Optional
	ProcessingConfiguration *ExtendedS3ConfigurationProcessingConfigurationParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// The configuration for backup in Amazon S3. Required if s3_backup_mode is Enabled. Supports the same fields as s3_configuration object.
	// +kubebuilder:validation:Optional
	S3BackupConfiguration *S3BackupConfigurationParameters `json:"s3BackupConfiguration,omitempty" tf:"s3_backup_configuration,omitempty"`

	// The Amazon S3 backup mode.  Valid values are Disabled and Enabled.  Default value is Disabled.
	// +kubebuilder:validation:Optional
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`
}

func (*ExtendedS3ConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedS3ConfigurationParameters.

func (*ExtendedS3ConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExtendedS3ConfigurationProcessingConfigurationInitParameters

type ExtendedS3ConfigurationProcessingConfigurationInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []ProcessingConfigurationProcessorsInitParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*ExtendedS3ConfigurationProcessingConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedS3ConfigurationProcessingConfigurationInitParameters.

func (*ExtendedS3ConfigurationProcessingConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExtendedS3ConfigurationProcessingConfigurationObservation

type ExtendedS3ConfigurationProcessingConfigurationObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []ProcessingConfigurationProcessorsObservation `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*ExtendedS3ConfigurationProcessingConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedS3ConfigurationProcessingConfigurationObservation.

func (*ExtendedS3ConfigurationProcessingConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExtendedS3ConfigurationProcessingConfigurationParameters

type ExtendedS3ConfigurationProcessingConfigurationParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	// +kubebuilder:validation:Optional
	Processors []ProcessingConfigurationProcessorsParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*ExtendedS3ConfigurationProcessingConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedS3ConfigurationProcessingConfigurationParameters.

func (*ExtendedS3ConfigurationProcessingConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationCloudwatchLoggingOptionsInitParameters

type HTTPEndpointConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*HTTPEndpointConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationCloudwatchLoggingOptionsInitParameters.

func (*HTTPEndpointConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationCloudwatchLoggingOptionsObservation

type HTTPEndpointConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*HTTPEndpointConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationCloudwatchLoggingOptionsObservation.

func (*HTTPEndpointConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationCloudwatchLoggingOptionsParameters

type HTTPEndpointConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*HTTPEndpointConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationCloudwatchLoggingOptionsParameters.

func (*HTTPEndpointConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationInitParameters

type HTTPEndpointConfigurationInitParameters struct {

	// The access key required for Kinesis Firehose to authenticate with the HTTP endpoint selected as the destination.
	AccessKeySecretRef *v1.SecretKeySelector `json:"accessKeySecretRef,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds, before delivering it to the destination. The default value is 300 (5 minutes).
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs, before delivering it to the destination. The default value is 5.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *HTTPEndpointConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The HTTP endpoint name.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	ProcessingConfiguration *HTTPEndpointConfigurationProcessingConfigurationInitParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// The request configuration.  See request_configuration block below for details.
	RequestConfiguration *RequestConfigurationInitParameters `json:"requestConfiguration,omitempty" tf:"request_configuration,omitempty"`

	// Total amount of seconds Firehose spends on retries. This duration starts after the initial attempt fails, It does not include the time periods during which Firehose waits for acknowledgment from the specified destination after each attempt. Valid values between 0 and 7200. Default is 300.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// Kinesis Data Firehose uses this IAM role for all the permissions that the delivery stream needs. The pattern needs to be arn:.*.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedDataOnly and AllData.  Default value is FailedDataOnly.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	S3Configuration *HTTPEndpointConfigurationS3ConfigurationInitParameters `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`

	// The HTTP endpoint URL to which Kinesis Firehose sends your data.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*HTTPEndpointConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationInitParameters.

func (*HTTPEndpointConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationObservation

type HTTPEndpointConfigurationObservation struct {

	// Buffer incoming data for the specified period of time, in seconds, before delivering it to the destination. The default value is 300 (5 minutes).
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs, before delivering it to the destination. The default value is 5.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *HTTPEndpointConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The HTTP endpoint name.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	ProcessingConfiguration *HTTPEndpointConfigurationProcessingConfigurationObservation `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// The request configuration.  See request_configuration block below for details.
	RequestConfiguration *RequestConfigurationObservation `json:"requestConfiguration,omitempty" tf:"request_configuration,omitempty"`

	// Total amount of seconds Firehose spends on retries. This duration starts after the initial attempt fails, It does not include the time periods during which Firehose waits for acknowledgment from the specified destination after each attempt. Valid values between 0 and 7200. Default is 300.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// Kinesis Data Firehose uses this IAM role for all the permissions that the delivery stream needs. The pattern needs to be arn:.*.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedDataOnly and AllData.  Default value is FailedDataOnly.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	S3Configuration *HTTPEndpointConfigurationS3ConfigurationObservation `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`

	// The HTTP endpoint URL to which Kinesis Firehose sends your data.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*HTTPEndpointConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationObservation.

func (*HTTPEndpointConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationParameters

type HTTPEndpointConfigurationParameters struct {

	// The access key required for Kinesis Firehose to authenticate with the HTTP endpoint selected as the destination.
	// +kubebuilder:validation:Optional
	AccessKeySecretRef *v1.SecretKeySelector `json:"accessKeySecretRef,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds, before delivering it to the destination. The default value is 300 (5 minutes).
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs, before delivering it to the destination. The default value is 5.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *HTTPEndpointConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The HTTP endpoint name.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	// +kubebuilder:validation:Optional
	ProcessingConfiguration *HTTPEndpointConfigurationProcessingConfigurationParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// The request configuration.  See request_configuration block below for details.
	// +kubebuilder:validation:Optional
	RequestConfiguration *RequestConfigurationParameters `json:"requestConfiguration,omitempty" tf:"request_configuration,omitempty"`

	// Total amount of seconds Firehose spends on retries. This duration starts after the initial attempt fails, It does not include the time periods during which Firehose waits for acknowledgment from the specified destination after each attempt. Valid values between 0 and 7200. Default is 300.
	// +kubebuilder:validation:Optional
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// Kinesis Data Firehose uses this IAM role for all the permissions that the delivery stream needs. The pattern needs to be arn:.*.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedDataOnly and AllData.  Default value is FailedDataOnly.
	// +kubebuilder:validation:Optional
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	// +kubebuilder:validation:Optional
	S3Configuration *HTTPEndpointConfigurationS3ConfigurationParameters `json:"s3Configuration" tf:"s3_configuration,omitempty"`

	// The HTTP endpoint URL to which Kinesis Firehose sends your data.
	// +kubebuilder:validation:Optional
	URL *string `json:"url" tf:"url,omitempty"`
}

func (*HTTPEndpointConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationParameters.

func (*HTTPEndpointConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationProcessingConfigurationInitParameters

type HTTPEndpointConfigurationProcessingConfigurationInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []HTTPEndpointConfigurationProcessingConfigurationProcessorsInitParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*HTTPEndpointConfigurationProcessingConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationProcessingConfigurationInitParameters.

func (*HTTPEndpointConfigurationProcessingConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationProcessingConfigurationObservation

type HTTPEndpointConfigurationProcessingConfigurationObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []HTTPEndpointConfigurationProcessingConfigurationProcessorsObservation `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*HTTPEndpointConfigurationProcessingConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationProcessingConfigurationObservation.

func (*HTTPEndpointConfigurationProcessingConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationProcessingConfigurationParameters

type HTTPEndpointConfigurationProcessingConfigurationParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	// +kubebuilder:validation:Optional
	Processors []HTTPEndpointConfigurationProcessingConfigurationProcessorsParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*HTTPEndpointConfigurationProcessingConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationProcessingConfigurationParameters.

func (*HTTPEndpointConfigurationProcessingConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationProcessingConfigurationProcessorsInitParameters

type HTTPEndpointConfigurationProcessingConfigurationProcessorsInitParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []ProcessingConfigurationProcessorsParametersInitParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*HTTPEndpointConfigurationProcessingConfigurationProcessorsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationProcessingConfigurationProcessorsInitParameters.

func (*HTTPEndpointConfigurationProcessingConfigurationProcessorsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationProcessingConfigurationProcessorsObservation

type HTTPEndpointConfigurationProcessingConfigurationProcessorsObservation struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []ProcessingConfigurationProcessorsParametersObservation `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*HTTPEndpointConfigurationProcessingConfigurationProcessorsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationProcessingConfigurationProcessorsObservation.

func (*HTTPEndpointConfigurationProcessingConfigurationProcessorsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationProcessingConfigurationProcessorsParameters

type HTTPEndpointConfigurationProcessingConfigurationProcessorsParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	// +kubebuilder:validation:Optional
	Parameters []ProcessingConfigurationProcessorsParametersParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*HTTPEndpointConfigurationProcessingConfigurationProcessorsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationProcessingConfigurationProcessorsParameters.

func (*HTTPEndpointConfigurationProcessingConfigurationProcessorsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters

type HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters.

func (*HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation

type HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation.

func (*HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters

type HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters.

func (*HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationS3ConfigurationInitParameters

type HTTPEndpointConfigurationS3ConfigurationInitParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*HTTPEndpointConfigurationS3ConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationS3ConfigurationInitParameters.

func (*HTTPEndpointConfigurationS3ConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationS3ConfigurationObservation

type HTTPEndpointConfigurationS3ConfigurationObservation struct {

	// The ARN of the S3 bucket
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*HTTPEndpointConfigurationS3ConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationS3ConfigurationObservation.

func (*HTTPEndpointConfigurationS3ConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPEndpointConfigurationS3ConfigurationParameters

type HTTPEndpointConfigurationS3ConfigurationParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *HTTPEndpointConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	// +kubebuilder:validation:Optional
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	// +kubebuilder:validation:Optional
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	// +kubebuilder:validation:Optional
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*HTTPEndpointConfigurationS3ConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPEndpointConfigurationS3ConfigurationParameters.

func (*HTTPEndpointConfigurationS3ConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HiveJSONSerDeInitParameters

type HiveJSONSerDeInitParameters struct {

	// A list of how you want Kinesis Data Firehose to parse the date and time stamps that may be present in your input data JSON. To specify these format strings, follow the pattern syntax of JodaTime's DateTimeFormat format strings. For more information, see Class DateTimeFormat. You can also use the special value millis to parse time stamps in epoch milliseconds. If you don't specify a format, Kinesis Data Firehose uses java.sql.Timestamp::valueOf by default.
	TimestampFormats []*string `json:"timestampFormats,omitempty" tf:"timestamp_formats,omitempty"`
}

func (*HiveJSONSerDeInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HiveJSONSerDeInitParameters.

func (*HiveJSONSerDeInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HiveJSONSerDeObservation

type HiveJSONSerDeObservation struct {

	// A list of how you want Kinesis Data Firehose to parse the date and time stamps that may be present in your input data JSON. To specify these format strings, follow the pattern syntax of JodaTime's DateTimeFormat format strings. For more information, see Class DateTimeFormat. You can also use the special value millis to parse time stamps in epoch milliseconds. If you don't specify a format, Kinesis Data Firehose uses java.sql.Timestamp::valueOf by default.
	TimestampFormats []*string `json:"timestampFormats,omitempty" tf:"timestamp_formats,omitempty"`
}

func (*HiveJSONSerDeObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HiveJSONSerDeObservation.

func (*HiveJSONSerDeObservation) DeepCopyInto

func (in *HiveJSONSerDeObservation) DeepCopyInto(out *HiveJSONSerDeObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HiveJSONSerDeParameters

type HiveJSONSerDeParameters struct {

	// A list of how you want Kinesis Data Firehose to parse the date and time stamps that may be present in your input data JSON. To specify these format strings, follow the pattern syntax of JodaTime's DateTimeFormat format strings. For more information, see Class DateTimeFormat. You can also use the special value millis to parse time stamps in epoch milliseconds. If you don't specify a format, Kinesis Data Firehose uses java.sql.Timestamp::valueOf by default.
	// +kubebuilder:validation:Optional
	TimestampFormats []*string `json:"timestampFormats,omitempty" tf:"timestamp_formats,omitempty"`
}

func (*HiveJSONSerDeParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HiveJSONSerDeParameters.

func (*HiveJSONSerDeParameters) DeepCopyInto

func (in *HiveJSONSerDeParameters) DeepCopyInto(out *HiveJSONSerDeParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InputFormatConfigurationInitParameters

type InputFormatConfigurationInitParameters struct {

	// Specifies which deserializer to use. You can choose either the Apache Hive JSON SerDe or the OpenX JSON SerDe. See deserializer block below for details.
	Deserializer *DeserializerInitParameters `json:"deserializer,omitempty" tf:"deserializer,omitempty"`
}

func (*InputFormatConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InputFormatConfigurationInitParameters.

func (*InputFormatConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InputFormatConfigurationObservation

type InputFormatConfigurationObservation struct {

	// Specifies which deserializer to use. You can choose either the Apache Hive JSON SerDe or the OpenX JSON SerDe. See deserializer block below for details.
	Deserializer *DeserializerObservation `json:"deserializer,omitempty" tf:"deserializer,omitempty"`
}

func (*InputFormatConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InputFormatConfigurationObservation.

func (*InputFormatConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InputFormatConfigurationParameters

type InputFormatConfigurationParameters struct {

	// Specifies which deserializer to use. You can choose either the Apache Hive JSON SerDe or the OpenX JSON SerDe. See deserializer block below for details.
	// +kubebuilder:validation:Optional
	Deserializer *DeserializerParameters `json:"deserializer" tf:"deserializer,omitempty"`
}

func (*InputFormatConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InputFormatConfigurationParameters.

func (*InputFormatConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type KinesisSourceConfigurationInitParameters

type KinesisSourceConfigurationInitParameters struct {

	// The kinesis stream used as the source of the firehose delivery stream.
	KinesisStreamArn *string `json:"kinesisStreamArn,omitempty" tf:"kinesis_stream_arn,omitempty"`

	// The ARN of the role that provides access to the source Kinesis stream.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*KinesisSourceConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KinesisSourceConfigurationInitParameters.

func (*KinesisSourceConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type KinesisSourceConfigurationObservation

type KinesisSourceConfigurationObservation struct {

	// The kinesis stream used as the source of the firehose delivery stream.
	KinesisStreamArn *string `json:"kinesisStreamArn,omitempty" tf:"kinesis_stream_arn,omitempty"`

	// The ARN of the role that provides access to the source Kinesis stream.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*KinesisSourceConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KinesisSourceConfigurationObservation.

func (*KinesisSourceConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type KinesisSourceConfigurationParameters

type KinesisSourceConfigurationParameters struct {

	// The kinesis stream used as the source of the firehose delivery stream.
	// +kubebuilder:validation:Optional
	KinesisStreamArn *string `json:"kinesisStreamArn" tf:"kinesis_stream_arn,omitempty"`

	// The ARN of the role that provides access to the source Kinesis stream.
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn" tf:"role_arn,omitempty"`
}

func (*KinesisSourceConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KinesisSourceConfigurationParameters.

func (*KinesisSourceConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MskSourceConfigurationInitParameters

type MskSourceConfigurationInitParameters struct {

	// The authentication configuration of the Amazon MSK cluster. See authentication_configuration block below for details.
	AuthenticationConfiguration *AuthenticationConfigurationInitParameters `json:"authenticationConfiguration,omitempty" tf:"authentication_configuration,omitempty"`

	// The ARN of the Amazon MSK cluster.
	MskClusterArn *string `json:"mskClusterArn,omitempty" tf:"msk_cluster_arn,omitempty"`

	// The topic name within the Amazon MSK cluster.
	TopicName *string `json:"topicName,omitempty" tf:"topic_name,omitempty"`
}

func (*MskSourceConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MskSourceConfigurationInitParameters.

func (*MskSourceConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MskSourceConfigurationObservation

type MskSourceConfigurationObservation struct {

	// The authentication configuration of the Amazon MSK cluster. See authentication_configuration block below for details.
	AuthenticationConfiguration *AuthenticationConfigurationObservation `json:"authenticationConfiguration,omitempty" tf:"authentication_configuration,omitempty"`

	// The ARN of the Amazon MSK cluster.
	MskClusterArn *string `json:"mskClusterArn,omitempty" tf:"msk_cluster_arn,omitempty"`

	// The topic name within the Amazon MSK cluster.
	TopicName *string `json:"topicName,omitempty" tf:"topic_name,omitempty"`
}

func (*MskSourceConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MskSourceConfigurationObservation.

func (*MskSourceConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MskSourceConfigurationParameters

type MskSourceConfigurationParameters struct {

	// The authentication configuration of the Amazon MSK cluster. See authentication_configuration block below for details.
	// +kubebuilder:validation:Optional
	AuthenticationConfiguration *AuthenticationConfigurationParameters `json:"authenticationConfiguration" tf:"authentication_configuration,omitempty"`

	// The ARN of the Amazon MSK cluster.
	// +kubebuilder:validation:Optional
	MskClusterArn *string `json:"mskClusterArn" tf:"msk_cluster_arn,omitempty"`

	// The topic name within the Amazon MSK cluster.
	// +kubebuilder:validation:Optional
	TopicName *string `json:"topicName" tf:"topic_name,omitempty"`
}

func (*MskSourceConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MskSourceConfigurationParameters.

func (*MskSourceConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpenXJSONSerDeInitParameters

type OpenXJSONSerDeInitParameters struct {

	// When set to true, which is the default, Kinesis Data Firehose converts JSON keys to lowercase before deserializing them.
	CaseInsensitive *bool `json:"caseInsensitive,omitempty" tf:"case_insensitive,omitempty"`

	// A map of column names to JSON keys that aren't identical to the column names. This is useful when the JSON contains keys that are Hive keywords. For example, timestamp is a Hive keyword. If you have a JSON key named timestamp, set this parameter to { ts = "timestamp" } to map this key to a column named ts.
	// +mapType=granular
	ColumnToJSONKeyMappings map[string]*string `json:"columnToJsonKeyMappings,omitempty" tf:"column_to_json_key_mappings,omitempty"`

	// When set to true, specifies that the names of the keys include dots and that you want Kinesis Data Firehose to replace them with underscores. This is useful because Apache Hive does not allow dots in column names. For example, if the JSON contains a key whose name is "a.b", you can define the column name to be "a_b" when using this option. Defaults to false.
	ConvertDotsInJSONKeysToUnderscores *bool `json:"convertDotsInJsonKeysToUnderscores,omitempty" tf:"convert_dots_in_json_keys_to_underscores,omitempty"`
}

func (*OpenXJSONSerDeInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenXJSONSerDeInitParameters.

func (*OpenXJSONSerDeInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpenXJSONSerDeObservation

type OpenXJSONSerDeObservation struct {

	// When set to true, which is the default, Kinesis Data Firehose converts JSON keys to lowercase before deserializing them.
	CaseInsensitive *bool `json:"caseInsensitive,omitempty" tf:"case_insensitive,omitempty"`

	// A map of column names to JSON keys that aren't identical to the column names. This is useful when the JSON contains keys that are Hive keywords. For example, timestamp is a Hive keyword. If you have a JSON key named timestamp, set this parameter to { ts = "timestamp" } to map this key to a column named ts.
	// +mapType=granular
	ColumnToJSONKeyMappings map[string]*string `json:"columnToJsonKeyMappings,omitempty" tf:"column_to_json_key_mappings,omitempty"`

	// When set to true, specifies that the names of the keys include dots and that you want Kinesis Data Firehose to replace them with underscores. This is useful because Apache Hive does not allow dots in column names. For example, if the JSON contains a key whose name is "a.b", you can define the column name to be "a_b" when using this option. Defaults to false.
	ConvertDotsInJSONKeysToUnderscores *bool `json:"convertDotsInJsonKeysToUnderscores,omitempty" tf:"convert_dots_in_json_keys_to_underscores,omitempty"`
}

func (*OpenXJSONSerDeObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenXJSONSerDeObservation.

func (*OpenXJSONSerDeObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpenXJSONSerDeParameters

type OpenXJSONSerDeParameters struct {

	// When set to true, which is the default, Kinesis Data Firehose converts JSON keys to lowercase before deserializing them.
	// +kubebuilder:validation:Optional
	CaseInsensitive *bool `json:"caseInsensitive,omitempty" tf:"case_insensitive,omitempty"`

	// A map of column names to JSON keys that aren't identical to the column names. This is useful when the JSON contains keys that are Hive keywords. For example, timestamp is a Hive keyword. If you have a JSON key named timestamp, set this parameter to { ts = "timestamp" } to map this key to a column named ts.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	ColumnToJSONKeyMappings map[string]*string `json:"columnToJsonKeyMappings,omitempty" tf:"column_to_json_key_mappings,omitempty"`

	// When set to true, specifies that the names of the keys include dots and that you want Kinesis Data Firehose to replace them with underscores. This is useful because Apache Hive does not allow dots in column names. For example, if the JSON contains a key whose name is "a.b", you can define the column name to be "a_b" when using this option. Defaults to false.
	// +kubebuilder:validation:Optional
	ConvertDotsInJSONKeysToUnderscores *bool `json:"convertDotsInJsonKeysToUnderscores,omitempty" tf:"convert_dots_in_json_keys_to_underscores,omitempty"`
}

func (*OpenXJSONSerDeParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenXJSONSerDeParameters.

func (*OpenXJSONSerDeParameters) DeepCopyInto

func (in *OpenXJSONSerDeParameters) DeepCopyInto(out *OpenXJSONSerDeParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationCloudwatchLoggingOptionsInitParameters

type OpensearchConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*OpensearchConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationCloudwatchLoggingOptionsInitParameters.

func (*OpensearchConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationCloudwatchLoggingOptionsObservation

type OpensearchConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*OpensearchConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationCloudwatchLoggingOptionsObservation.

func (*OpensearchConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationCloudwatchLoggingOptionsParameters

type OpensearchConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*OpensearchConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationCloudwatchLoggingOptionsParameters.

func (*OpensearchConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationInitParameters

type OpensearchConfigurationInitParameters struct {

	// Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination.  The default value is 300s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *OpensearchConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The endpoint to use when communicating with the cluster. Conflicts with domain_arn.
	ClusterEndpoint *string `json:"clusterEndpoint,omitempty" tf:"cluster_endpoint,omitempty"`

	// The method for setting up document ID. See [document_id_options block] below for details.
	DocumentIDOptions *DocumentIDOptionsInitParameters `json:"documentIdOptions,omitempty" tf:"document_id_options,omitempty"`

	// The ARN of the Amazon ES domain.  The pattern needs to be arn:.*.  Conflicts with cluster_endpoint.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/opensearch/v1beta2.Domain
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	DomainArn *string `json:"domainArn,omitempty" tf:"domain_arn,omitempty"`

	// Reference to a Domain in opensearch to populate domainArn.
	// +kubebuilder:validation:Optional
	DomainArnRef *v1.Reference `json:"domainArnRef,omitempty" tf:"-"`

	// Selector for a Domain in opensearch to populate domainArn.
	// +kubebuilder:validation:Optional
	DomainArnSelector *v1.Selector `json:"domainArnSelector,omitempty" tf:"-"`

	// The OpenSearch index name.
	IndexName *string `json:"indexName,omitempty" tf:"index_name,omitempty"`

	// The OpenSearch index rotation period.  Index rotation appends a timestamp to the IndexName to facilitate expiration of old data.  Valid values are NoRotation, OneHour, OneDay, OneWeek, and OneMonth.  The default value is OneDay.
	IndexRotationPeriod *string `json:"indexRotationPeriod,omitempty" tf:"index_rotation_period,omitempty"`

	// The data processing configuration. See processing_configuration block below for details.
	ProcessingConfiguration *OpensearchConfigurationProcessingConfigurationInitParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to Amazon OpenSearch, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon ES Configuration API and for indexing documents.  The IAM role must have permission for DescribeDomain, DescribeDomains, and DescribeDomainConfig.  The pattern needs to be arn:.*.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedDocumentsOnly and AllDocuments.  Default value is FailedDocumentsOnly.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	S3Configuration *OpensearchConfigurationS3ConfigurationInitParameters `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`

	// The Elasticsearch type name with maximum length of 100 characters. Types are deprecated in OpenSearch_1.1. TypeName must be empty.
	TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"`

	// The VPC configuration for the delivery stream to connect to OpenSearch associated with the VPC. See vpc_config block below for details.
	VPCConfig *OpensearchConfigurationVPCConfigInitParameters `json:"vpcConfig,omitempty" tf:"vpc_config,omitempty"`
}

func (*OpensearchConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationInitParameters.

func (*OpensearchConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationObservation

type OpensearchConfigurationObservation struct {

	// Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination.  The default value is 300s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *OpensearchConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The endpoint to use when communicating with the cluster. Conflicts with domain_arn.
	ClusterEndpoint *string `json:"clusterEndpoint,omitempty" tf:"cluster_endpoint,omitempty"`

	// The method for setting up document ID. See [document_id_options block] below for details.
	DocumentIDOptions *DocumentIDOptionsObservation `json:"documentIdOptions,omitempty" tf:"document_id_options,omitempty"`

	// The ARN of the Amazon ES domain.  The pattern needs to be arn:.*.  Conflicts with cluster_endpoint.
	DomainArn *string `json:"domainArn,omitempty" tf:"domain_arn,omitempty"`

	// The OpenSearch index name.
	IndexName *string `json:"indexName,omitempty" tf:"index_name,omitempty"`

	// The OpenSearch index rotation period.  Index rotation appends a timestamp to the IndexName to facilitate expiration of old data.  Valid values are NoRotation, OneHour, OneDay, OneWeek, and OneMonth.  The default value is OneDay.
	IndexRotationPeriod *string `json:"indexRotationPeriod,omitempty" tf:"index_rotation_period,omitempty"`

	// The data processing configuration. See processing_configuration block below for details.
	ProcessingConfiguration *OpensearchConfigurationProcessingConfigurationObservation `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to Amazon OpenSearch, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon ES Configuration API and for indexing documents.  The IAM role must have permission for DescribeDomain, DescribeDomains, and DescribeDomainConfig.  The pattern needs to be arn:.*.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedDocumentsOnly and AllDocuments.  Default value is FailedDocumentsOnly.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	S3Configuration *OpensearchConfigurationS3ConfigurationObservation `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`

	// The Elasticsearch type name with maximum length of 100 characters. Types are deprecated in OpenSearch_1.1. TypeName must be empty.
	TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"`

	// The VPC configuration for the delivery stream to connect to OpenSearch associated with the VPC. See vpc_config block below for details.
	VPCConfig *OpensearchConfigurationVPCConfigObservation `json:"vpcConfig,omitempty" tf:"vpc_config,omitempty"`
}

func (*OpensearchConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationObservation.

func (*OpensearchConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationParameters

type OpensearchConfigurationParameters struct {

	// Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination.  The default value is 300s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *OpensearchConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The endpoint to use when communicating with the cluster. Conflicts with domain_arn.
	// +kubebuilder:validation:Optional
	ClusterEndpoint *string `json:"clusterEndpoint,omitempty" tf:"cluster_endpoint,omitempty"`

	// The method for setting up document ID. See [document_id_options block] below for details.
	// +kubebuilder:validation:Optional
	DocumentIDOptions *DocumentIDOptionsParameters `json:"documentIdOptions,omitempty" tf:"document_id_options,omitempty"`

	// The ARN of the Amazon ES domain.  The pattern needs to be arn:.*.  Conflicts with cluster_endpoint.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/opensearch/v1beta2.Domain
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	DomainArn *string `json:"domainArn,omitempty" tf:"domain_arn,omitempty"`

	// Reference to a Domain in opensearch to populate domainArn.
	// +kubebuilder:validation:Optional
	DomainArnRef *v1.Reference `json:"domainArnRef,omitempty" tf:"-"`

	// Selector for a Domain in opensearch to populate domainArn.
	// +kubebuilder:validation:Optional
	DomainArnSelector *v1.Selector `json:"domainArnSelector,omitempty" tf:"-"`

	// The OpenSearch index name.
	// +kubebuilder:validation:Optional
	IndexName *string `json:"indexName" tf:"index_name,omitempty"`

	// The OpenSearch index rotation period.  Index rotation appends a timestamp to the IndexName to facilitate expiration of old data.  Valid values are NoRotation, OneHour, OneDay, OneWeek, and OneMonth.  The default value is OneDay.
	// +kubebuilder:validation:Optional
	IndexRotationPeriod *string `json:"indexRotationPeriod,omitempty" tf:"index_rotation_period,omitempty"`

	// The data processing configuration. See processing_configuration block below for details.
	// +kubebuilder:validation:Optional
	ProcessingConfiguration *OpensearchConfigurationProcessingConfigurationParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to Amazon OpenSearch, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	// +kubebuilder:validation:Optional
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon ES Configuration API and for indexing documents.  The IAM role must have permission for DescribeDomain, DescribeDomains, and DescribeDomainConfig.  The pattern needs to be arn:.*.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedDocumentsOnly and AllDocuments.  Default value is FailedDocumentsOnly.
	// +kubebuilder:validation:Optional
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	// +kubebuilder:validation:Optional
	S3Configuration *OpensearchConfigurationS3ConfigurationParameters `json:"s3Configuration" tf:"s3_configuration,omitempty"`

	// The Elasticsearch type name with maximum length of 100 characters. Types are deprecated in OpenSearch_1.1. TypeName must be empty.
	// +kubebuilder:validation:Optional
	TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"`

	// The VPC configuration for the delivery stream to connect to OpenSearch associated with the VPC. See vpc_config block below for details.
	// +kubebuilder:validation:Optional
	VPCConfig *OpensearchConfigurationVPCConfigParameters `json:"vpcConfig,omitempty" tf:"vpc_config,omitempty"`
}

func (*OpensearchConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationParameters.

func (*OpensearchConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationProcessingConfigurationInitParameters

type OpensearchConfigurationProcessingConfigurationInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []OpensearchConfigurationProcessingConfigurationProcessorsInitParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*OpensearchConfigurationProcessingConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationProcessingConfigurationInitParameters.

func (*OpensearchConfigurationProcessingConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationProcessingConfigurationObservation

type OpensearchConfigurationProcessingConfigurationObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []OpensearchConfigurationProcessingConfigurationProcessorsObservation `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*OpensearchConfigurationProcessingConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationProcessingConfigurationObservation.

func (*OpensearchConfigurationProcessingConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationProcessingConfigurationParameters

type OpensearchConfigurationProcessingConfigurationParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	// +kubebuilder:validation:Optional
	Processors []OpensearchConfigurationProcessingConfigurationProcessorsParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*OpensearchConfigurationProcessingConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationProcessingConfigurationParameters.

func (*OpensearchConfigurationProcessingConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationProcessingConfigurationProcessorsInitParameters

type OpensearchConfigurationProcessingConfigurationProcessorsInitParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []OpensearchConfigurationProcessingConfigurationProcessorsParametersInitParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*OpensearchConfigurationProcessingConfigurationProcessorsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationProcessingConfigurationProcessorsInitParameters.

func (*OpensearchConfigurationProcessingConfigurationProcessorsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationProcessingConfigurationProcessorsObservation

type OpensearchConfigurationProcessingConfigurationProcessorsObservation struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []OpensearchConfigurationProcessingConfigurationProcessorsParametersObservation `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*OpensearchConfigurationProcessingConfigurationProcessorsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationProcessingConfigurationProcessorsObservation.

func (*OpensearchConfigurationProcessingConfigurationProcessorsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationProcessingConfigurationProcessorsParameters

type OpensearchConfigurationProcessingConfigurationProcessorsParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	// +kubebuilder:validation:Optional
	Parameters []OpensearchConfigurationProcessingConfigurationProcessorsParametersParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*OpensearchConfigurationProcessingConfigurationProcessorsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationProcessingConfigurationProcessorsParameters.

func (*OpensearchConfigurationProcessingConfigurationProcessorsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationProcessingConfigurationProcessorsParametersInitParameters

type OpensearchConfigurationProcessingConfigurationProcessorsParametersInitParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*OpensearchConfigurationProcessingConfigurationProcessorsParametersInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationProcessingConfigurationProcessorsParametersInitParameters.

func (*OpensearchConfigurationProcessingConfigurationProcessorsParametersInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationProcessingConfigurationProcessorsParametersObservation

type OpensearchConfigurationProcessingConfigurationProcessorsParametersObservation struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*OpensearchConfigurationProcessingConfigurationProcessorsParametersObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationProcessingConfigurationProcessorsParametersObservation.

func (*OpensearchConfigurationProcessingConfigurationProcessorsParametersObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationProcessingConfigurationProcessorsParametersParameters

type OpensearchConfigurationProcessingConfigurationProcessorsParametersParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	ParameterName *string `json:"parameterName" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	// +kubebuilder:validation:Optional
	ParameterValue *string `json:"parameterValue" tf:"parameter_value,omitempty"`
}

func (*OpensearchConfigurationProcessingConfigurationProcessorsParametersParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationProcessingConfigurationProcessorsParametersParameters.

func (*OpensearchConfigurationProcessingConfigurationProcessorsParametersParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters

type OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters.

func (*OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation

type OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation.

func (*OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters

type OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters.

func (*OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationS3ConfigurationInitParameters

type OpensearchConfigurationS3ConfigurationInitParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*OpensearchConfigurationS3ConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationS3ConfigurationInitParameters.

func (*OpensearchConfigurationS3ConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationS3ConfigurationObservation

type OpensearchConfigurationS3ConfigurationObservation struct {

	// The ARN of the S3 bucket
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*OpensearchConfigurationS3ConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationS3ConfigurationObservation.

func (*OpensearchConfigurationS3ConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationS3ConfigurationParameters

type OpensearchConfigurationS3ConfigurationParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *OpensearchConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	// +kubebuilder:validation:Optional
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	// +kubebuilder:validation:Optional
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	// +kubebuilder:validation:Optional
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*OpensearchConfigurationS3ConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationS3ConfigurationParameters.

func (*OpensearchConfigurationS3ConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationVPCConfigInitParameters

type OpensearchConfigurationVPCConfigInitParameters struct {

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// A list of security group IDs to associate with Kinesis Firehose.
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// A list of subnet IDs to associate with Kinesis Firehose.
	// +listType=set
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`
}

func (*OpensearchConfigurationVPCConfigInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationVPCConfigInitParameters.

func (*OpensearchConfigurationVPCConfigInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationVPCConfigObservation

type OpensearchConfigurationVPCConfigObservation struct {

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// A list of security group IDs to associate with Kinesis Firehose.
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// A list of subnet IDs to associate with Kinesis Firehose.
	// +listType=set
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`
}

func (*OpensearchConfigurationVPCConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationVPCConfigObservation.

func (*OpensearchConfigurationVPCConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchConfigurationVPCConfigParameters

type OpensearchConfigurationVPCConfigParameters struct {

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// A list of security group IDs to associate with Kinesis Firehose.
	// +kubebuilder:validation:Optional
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds" tf:"security_group_ids,omitempty"`

	// A list of subnet IDs to associate with Kinesis Firehose.
	// +kubebuilder:validation:Optional
	// +listType=set
	SubnetIds []*string `json:"subnetIds" tf:"subnet_ids,omitempty"`
}

func (*OpensearchConfigurationVPCConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationVPCConfigParameters.

func (*OpensearchConfigurationVPCConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationCloudwatchLoggingOptionsInitParameters

type OpensearchserverlessConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*OpensearchserverlessConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationCloudwatchLoggingOptionsInitParameters.

func (*OpensearchserverlessConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationCloudwatchLoggingOptionsObservation

type OpensearchserverlessConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*OpensearchserverlessConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationCloudwatchLoggingOptionsObservation.

func (*OpensearchserverlessConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationCloudwatchLoggingOptionsParameters

type OpensearchserverlessConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*OpensearchserverlessConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationCloudwatchLoggingOptionsParameters.

func (*OpensearchserverlessConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationInitParameters

type OpensearchserverlessConfigurationInitParameters struct {

	// Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination.  The default value is 300s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *OpensearchserverlessConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The endpoint to use when communicating with the collection in the Serverless offering for Amazon OpenSearch Service.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/opensearchserverless/v1beta1.Collection
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("collection_endpoint",true)
	CollectionEndpoint *string `json:"collectionEndpoint,omitempty" tf:"collection_endpoint,omitempty"`

	// Reference to a Collection in opensearchserverless to populate collectionEndpoint.
	// +kubebuilder:validation:Optional
	CollectionEndpointRef *v1.Reference `json:"collectionEndpointRef,omitempty" tf:"-"`

	// Selector for a Collection in opensearchserverless to populate collectionEndpoint.
	// +kubebuilder:validation:Optional
	CollectionEndpointSelector *v1.Selector `json:"collectionEndpointSelector,omitempty" tf:"-"`

	// The Serverless offering for Amazon OpenSearch Service index name.
	IndexName *string `json:"indexName,omitempty" tf:"index_name,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	ProcessingConfiguration *OpensearchserverlessConfigurationProcessingConfigurationInitParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to the Serverless offering for Amazon OpenSearch Service, the total amount of time, in seconds between 0 to 7200, during which Kinesis Data Firehose retries delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Serverless offering for Amazon OpenSearch Service Configuration API and for indexing documents.  The pattern needs to be arn:.*.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedDocumentsOnly and AllDocuments.  Default value is FailedDocumentsOnly.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	S3Configuration *OpensearchserverlessConfigurationS3ConfigurationInitParameters `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`

	// The VPC configuration for the delivery stream to connect to OpenSearch Serverless associated with the VPC. See vpc_config block below for details.
	VPCConfig *OpensearchserverlessConfigurationVPCConfigInitParameters `json:"vpcConfig,omitempty" tf:"vpc_config,omitempty"`
}

func (*OpensearchserverlessConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationInitParameters.

func (*OpensearchserverlessConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationObservation

type OpensearchserverlessConfigurationObservation struct {

	// Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination.  The default value is 300s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *OpensearchserverlessConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The endpoint to use when communicating with the collection in the Serverless offering for Amazon OpenSearch Service.
	CollectionEndpoint *string `json:"collectionEndpoint,omitempty" tf:"collection_endpoint,omitempty"`

	// The Serverless offering for Amazon OpenSearch Service index name.
	IndexName *string `json:"indexName,omitempty" tf:"index_name,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	ProcessingConfiguration *OpensearchserverlessConfigurationProcessingConfigurationObservation `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to the Serverless offering for Amazon OpenSearch Service, the total amount of time, in seconds between 0 to 7200, during which Kinesis Data Firehose retries delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Serverless offering for Amazon OpenSearch Service Configuration API and for indexing documents.  The pattern needs to be arn:.*.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedDocumentsOnly and AllDocuments.  Default value is FailedDocumentsOnly.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	S3Configuration *OpensearchserverlessConfigurationS3ConfigurationObservation `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`

	// The VPC configuration for the delivery stream to connect to OpenSearch Serverless associated with the VPC. See vpc_config block below for details.
	VPCConfig *OpensearchserverlessConfigurationVPCConfigObservation `json:"vpcConfig,omitempty" tf:"vpc_config,omitempty"`
}

func (*OpensearchserverlessConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationObservation.

func (*OpensearchserverlessConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationParameters

type OpensearchserverlessConfigurationParameters struct {

	// Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination.  The default value is 300s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *OpensearchserverlessConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The endpoint to use when communicating with the collection in the Serverless offering for Amazon OpenSearch Service.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/opensearchserverless/v1beta1.Collection
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("collection_endpoint",true)
	// +kubebuilder:validation:Optional
	CollectionEndpoint *string `json:"collectionEndpoint,omitempty" tf:"collection_endpoint,omitempty"`

	// Reference to a Collection in opensearchserverless to populate collectionEndpoint.
	// +kubebuilder:validation:Optional
	CollectionEndpointRef *v1.Reference `json:"collectionEndpointRef,omitempty" tf:"-"`

	// Selector for a Collection in opensearchserverless to populate collectionEndpoint.
	// +kubebuilder:validation:Optional
	CollectionEndpointSelector *v1.Selector `json:"collectionEndpointSelector,omitempty" tf:"-"`

	// The Serverless offering for Amazon OpenSearch Service index name.
	// +kubebuilder:validation:Optional
	IndexName *string `json:"indexName" tf:"index_name,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	// +kubebuilder:validation:Optional
	ProcessingConfiguration *OpensearchserverlessConfigurationProcessingConfigurationParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to the Serverless offering for Amazon OpenSearch Service, the total amount of time, in seconds between 0 to 7200, during which Kinesis Data Firehose retries delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	// +kubebuilder:validation:Optional
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Serverless offering for Amazon OpenSearch Service Configuration API and for indexing documents.  The pattern needs to be arn:.*.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedDocumentsOnly and AllDocuments.  Default value is FailedDocumentsOnly.
	// +kubebuilder:validation:Optional
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	// +kubebuilder:validation:Optional
	S3Configuration *OpensearchserverlessConfigurationS3ConfigurationParameters `json:"s3Configuration" tf:"s3_configuration,omitempty"`

	// The VPC configuration for the delivery stream to connect to OpenSearch Serverless associated with the VPC. See vpc_config block below for details.
	// +kubebuilder:validation:Optional
	VPCConfig *OpensearchserverlessConfigurationVPCConfigParameters `json:"vpcConfig,omitempty" tf:"vpc_config,omitempty"`
}

func (*OpensearchserverlessConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationParameters.

func (*OpensearchserverlessConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationProcessingConfigurationInitParameters

type OpensearchserverlessConfigurationProcessingConfigurationInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []OpensearchserverlessConfigurationProcessingConfigurationProcessorsInitParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*OpensearchserverlessConfigurationProcessingConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationProcessingConfigurationInitParameters.

func (*OpensearchserverlessConfigurationProcessingConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationProcessingConfigurationObservation

type OpensearchserverlessConfigurationProcessingConfigurationObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []OpensearchserverlessConfigurationProcessingConfigurationProcessorsObservation `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*OpensearchserverlessConfigurationProcessingConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationProcessingConfigurationObservation.

func (*OpensearchserverlessConfigurationProcessingConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationProcessingConfigurationParameters

type OpensearchserverlessConfigurationProcessingConfigurationParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	// +kubebuilder:validation:Optional
	Processors []OpensearchserverlessConfigurationProcessingConfigurationProcessorsParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*OpensearchserverlessConfigurationProcessingConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationProcessingConfigurationParameters.

func (*OpensearchserverlessConfigurationProcessingConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationProcessingConfigurationProcessorsInitParameters

type OpensearchserverlessConfigurationProcessingConfigurationProcessorsInitParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersInitParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*OpensearchserverlessConfigurationProcessingConfigurationProcessorsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationProcessingConfigurationProcessorsInitParameters.

func (*OpensearchserverlessConfigurationProcessingConfigurationProcessorsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationProcessingConfigurationProcessorsObservation

type OpensearchserverlessConfigurationProcessingConfigurationProcessorsObservation struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersObservation `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*OpensearchserverlessConfigurationProcessingConfigurationProcessorsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationProcessingConfigurationProcessorsObservation.

func (*OpensearchserverlessConfigurationProcessingConfigurationProcessorsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationProcessingConfigurationProcessorsParameters

type OpensearchserverlessConfigurationProcessingConfigurationProcessorsParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	// +kubebuilder:validation:Optional
	Parameters []OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*OpensearchserverlessConfigurationProcessingConfigurationProcessorsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationProcessingConfigurationProcessorsParameters.

func (*OpensearchserverlessConfigurationProcessingConfigurationProcessorsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersInitParameters

type OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersInitParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersInitParameters.

func (*OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersObservation

type OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersObservation struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersObservation.

func (*OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersParameters

type OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	ParameterName *string `json:"parameterName" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	// +kubebuilder:validation:Optional
	ParameterValue *string `json:"parameterValue" tf:"parameter_value,omitempty"`
}

func (*OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersParameters.

func (*OpensearchserverlessConfigurationProcessingConfigurationProcessorsParametersParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters

type OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters.

func (*OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation

type OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation.

func (*OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters

type OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters.

func (*OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationS3ConfigurationInitParameters

type OpensearchserverlessConfigurationS3ConfigurationInitParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*OpensearchserverlessConfigurationS3ConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationS3ConfigurationInitParameters.

func (*OpensearchserverlessConfigurationS3ConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationS3ConfigurationObservation

type OpensearchserverlessConfigurationS3ConfigurationObservation struct {

	// The ARN of the S3 bucket
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*OpensearchserverlessConfigurationS3ConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationS3ConfigurationObservation.

func (*OpensearchserverlessConfigurationS3ConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationS3ConfigurationParameters

type OpensearchserverlessConfigurationS3ConfigurationParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *OpensearchserverlessConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	// +kubebuilder:validation:Optional
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	// +kubebuilder:validation:Optional
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	// +kubebuilder:validation:Optional
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*OpensearchserverlessConfigurationS3ConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationS3ConfigurationParameters.

func (*OpensearchserverlessConfigurationS3ConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationVPCConfigInitParameters

type OpensearchserverlessConfigurationVPCConfigInitParameters struct {

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// A list of security group IDs to associate with Kinesis Firehose.
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// A list of subnet IDs to associate with Kinesis Firehose.
	// +listType=set
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`
}

func (*OpensearchserverlessConfigurationVPCConfigInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationVPCConfigInitParameters.

func (*OpensearchserverlessConfigurationVPCConfigInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationVPCConfigObservation

type OpensearchserverlessConfigurationVPCConfigObservation struct {

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// A list of security group IDs to associate with Kinesis Firehose.
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// A list of subnet IDs to associate with Kinesis Firehose.
	// +listType=set
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`
}

func (*OpensearchserverlessConfigurationVPCConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationVPCConfigObservation.

func (*OpensearchserverlessConfigurationVPCConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpensearchserverlessConfigurationVPCConfigParameters

type OpensearchserverlessConfigurationVPCConfigParameters struct {

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn" tf:"role_arn,omitempty"`

	// A list of security group IDs to associate with Kinesis Firehose.
	// +kubebuilder:validation:Optional
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds" tf:"security_group_ids,omitempty"`

	// A list of subnet IDs to associate with Kinesis Firehose.
	// +kubebuilder:validation:Optional
	// +listType=set
	SubnetIds []*string `json:"subnetIds" tf:"subnet_ids,omitempty"`
}

func (*OpensearchserverlessConfigurationVPCConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchserverlessConfigurationVPCConfigParameters.

func (*OpensearchserverlessConfigurationVPCConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrcSerDeInitParameters

type OrcSerDeInitParameters struct {

	// The Hadoop Distributed File System (HDFS) block size. This is useful if you intend to copy the data from Amazon S3 to HDFS before querying. The default is 256 MiB and the minimum is 64 MiB. Kinesis Data Firehose uses this value for padding calculations.
	BlockSizeBytes *float64 `json:"blockSizeBytes,omitempty" tf:"block_size_bytes,omitempty"`

	// A list of column names for which you want Kinesis Data Firehose to create bloom filters.
	BloomFilterColumns []*string `json:"bloomFilterColumns,omitempty" tf:"bloom_filter_columns,omitempty"`

	// The Bloom filter false positive probability (FPP). The lower the FPP, the bigger the Bloom filter. The default value is 0.05, the minimum is 0, and the maximum is 1.
	BloomFilterFalsePositiveProbability *float64 `json:"bloomFilterFalsePositiveProbability,omitempty" tf:"bloom_filter_false_positive_probability,omitempty"`

	// The compression code to use over data blocks. The possible values are UNCOMPRESSED, SNAPPY, and GZIP, with the default being SNAPPY. Use SNAPPY for higher decompression speed. Use GZIP if the compression ratio is more important than speed.
	Compression *string `json:"compression,omitempty" tf:"compression,omitempty"`

	// A float that represents the fraction of the total number of non-null rows. To turn off dictionary encoding, set this fraction to a number that is less than the number of distinct keys in a dictionary. To always use dictionary encoding, set this threshold to 1.
	DictionaryKeyThreshold *float64 `json:"dictionaryKeyThreshold,omitempty" tf:"dictionary_key_threshold,omitempty"`

	// Set this to true to indicate that you want stripes to be padded to the HDFS block boundaries. This is useful if you intend to copy the data from Amazon S3 to HDFS before querying. The default is false.
	EnablePadding *bool `json:"enablePadding,omitempty" tf:"enable_padding,omitempty"`

	// The version of the file to write. The possible values are V0_11 and V0_12. The default is V0_12.
	FormatVersion *string `json:"formatVersion,omitempty" tf:"format_version,omitempty"`

	// A float between 0 and 1 that defines the tolerance for block padding as a decimal fraction of stripe size. The default value is 0.05, which means 5 percent of stripe size. For the default values of 64 MiB ORC stripes and 256 MiB HDFS blocks, the default block padding tolerance of 5 percent reserves a maximum of 3.2 MiB for padding within the 256 MiB block. In such a case, if the available size within the block is more than 3.2 MiB, a new, smaller stripe is inserted to fit within that space. This ensures that no stripe crosses block boundaries and causes remote reads within a node-local task. Kinesis Data Firehose ignores this parameter when enable_padding is false.
	PaddingTolerance *float64 `json:"paddingTolerance,omitempty" tf:"padding_tolerance,omitempty"`

	// The number of rows between index entries. The default is 10000 and the minimum is 1000.
	RowIndexStride *float64 `json:"rowIndexStride,omitempty" tf:"row_index_stride,omitempty"`

	// The number of bytes in each stripe. The default is 64 MiB and the minimum is 8 MiB.
	StripeSizeBytes *float64 `json:"stripeSizeBytes,omitempty" tf:"stripe_size_bytes,omitempty"`
}

func (*OrcSerDeInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrcSerDeInitParameters.

func (*OrcSerDeInitParameters) DeepCopyInto

func (in *OrcSerDeInitParameters) DeepCopyInto(out *OrcSerDeInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrcSerDeObservation

type OrcSerDeObservation struct {

	// The Hadoop Distributed File System (HDFS) block size. This is useful if you intend to copy the data from Amazon S3 to HDFS before querying. The default is 256 MiB and the minimum is 64 MiB. Kinesis Data Firehose uses this value for padding calculations.
	BlockSizeBytes *float64 `json:"blockSizeBytes,omitempty" tf:"block_size_bytes,omitempty"`

	// A list of column names for which you want Kinesis Data Firehose to create bloom filters.
	BloomFilterColumns []*string `json:"bloomFilterColumns,omitempty" tf:"bloom_filter_columns,omitempty"`

	// The Bloom filter false positive probability (FPP). The lower the FPP, the bigger the Bloom filter. The default value is 0.05, the minimum is 0, and the maximum is 1.
	BloomFilterFalsePositiveProbability *float64 `json:"bloomFilterFalsePositiveProbability,omitempty" tf:"bloom_filter_false_positive_probability,omitempty"`

	// The compression code to use over data blocks. The possible values are UNCOMPRESSED, SNAPPY, and GZIP, with the default being SNAPPY. Use SNAPPY for higher decompression speed. Use GZIP if the compression ratio is more important than speed.
	Compression *string `json:"compression,omitempty" tf:"compression,omitempty"`

	// A float that represents the fraction of the total number of non-null rows. To turn off dictionary encoding, set this fraction to a number that is less than the number of distinct keys in a dictionary. To always use dictionary encoding, set this threshold to 1.
	DictionaryKeyThreshold *float64 `json:"dictionaryKeyThreshold,omitempty" tf:"dictionary_key_threshold,omitempty"`

	// Set this to true to indicate that you want stripes to be padded to the HDFS block boundaries. This is useful if you intend to copy the data from Amazon S3 to HDFS before querying. The default is false.
	EnablePadding *bool `json:"enablePadding,omitempty" tf:"enable_padding,omitempty"`

	// The version of the file to write. The possible values are V0_11 and V0_12. The default is V0_12.
	FormatVersion *string `json:"formatVersion,omitempty" tf:"format_version,omitempty"`

	// A float between 0 and 1 that defines the tolerance for block padding as a decimal fraction of stripe size. The default value is 0.05, which means 5 percent of stripe size. For the default values of 64 MiB ORC stripes and 256 MiB HDFS blocks, the default block padding tolerance of 5 percent reserves a maximum of 3.2 MiB for padding within the 256 MiB block. In such a case, if the available size within the block is more than 3.2 MiB, a new, smaller stripe is inserted to fit within that space. This ensures that no stripe crosses block boundaries and causes remote reads within a node-local task. Kinesis Data Firehose ignores this parameter when enable_padding is false.
	PaddingTolerance *float64 `json:"paddingTolerance,omitempty" tf:"padding_tolerance,omitempty"`

	// The number of rows between index entries. The default is 10000 and the minimum is 1000.
	RowIndexStride *float64 `json:"rowIndexStride,omitempty" tf:"row_index_stride,omitempty"`

	// The number of bytes in each stripe. The default is 64 MiB and the minimum is 8 MiB.
	StripeSizeBytes *float64 `json:"stripeSizeBytes,omitempty" tf:"stripe_size_bytes,omitempty"`
}

func (*OrcSerDeObservation) DeepCopy

func (in *OrcSerDeObservation) DeepCopy() *OrcSerDeObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrcSerDeObservation.

func (*OrcSerDeObservation) DeepCopyInto

func (in *OrcSerDeObservation) DeepCopyInto(out *OrcSerDeObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrcSerDeParameters

type OrcSerDeParameters struct {

	// The Hadoop Distributed File System (HDFS) block size. This is useful if you intend to copy the data from Amazon S3 to HDFS before querying. The default is 256 MiB and the minimum is 64 MiB. Kinesis Data Firehose uses this value for padding calculations.
	// +kubebuilder:validation:Optional
	BlockSizeBytes *float64 `json:"blockSizeBytes,omitempty" tf:"block_size_bytes,omitempty"`

	// A list of column names for which you want Kinesis Data Firehose to create bloom filters.
	// +kubebuilder:validation:Optional
	BloomFilterColumns []*string `json:"bloomFilterColumns,omitempty" tf:"bloom_filter_columns,omitempty"`

	// The Bloom filter false positive probability (FPP). The lower the FPP, the bigger the Bloom filter. The default value is 0.05, the minimum is 0, and the maximum is 1.
	// +kubebuilder:validation:Optional
	BloomFilterFalsePositiveProbability *float64 `json:"bloomFilterFalsePositiveProbability,omitempty" tf:"bloom_filter_false_positive_probability,omitempty"`

	// The compression code to use over data blocks. The possible values are UNCOMPRESSED, SNAPPY, and GZIP, with the default being SNAPPY. Use SNAPPY for higher decompression speed. Use GZIP if the compression ratio is more important than speed.
	// +kubebuilder:validation:Optional
	Compression *string `json:"compression,omitempty" tf:"compression,omitempty"`

	// A float that represents the fraction of the total number of non-null rows. To turn off dictionary encoding, set this fraction to a number that is less than the number of distinct keys in a dictionary. To always use dictionary encoding, set this threshold to 1.
	// +kubebuilder:validation:Optional
	DictionaryKeyThreshold *float64 `json:"dictionaryKeyThreshold,omitempty" tf:"dictionary_key_threshold,omitempty"`

	// Set this to true to indicate that you want stripes to be padded to the HDFS block boundaries. This is useful if you intend to copy the data from Amazon S3 to HDFS before querying. The default is false.
	// +kubebuilder:validation:Optional
	EnablePadding *bool `json:"enablePadding,omitempty" tf:"enable_padding,omitempty"`

	// The version of the file to write. The possible values are V0_11 and V0_12. The default is V0_12.
	// +kubebuilder:validation:Optional
	FormatVersion *string `json:"formatVersion,omitempty" tf:"format_version,omitempty"`

	// A float between 0 and 1 that defines the tolerance for block padding as a decimal fraction of stripe size. The default value is 0.05, which means 5 percent of stripe size. For the default values of 64 MiB ORC stripes and 256 MiB HDFS blocks, the default block padding tolerance of 5 percent reserves a maximum of 3.2 MiB for padding within the 256 MiB block. In such a case, if the available size within the block is more than 3.2 MiB, a new, smaller stripe is inserted to fit within that space. This ensures that no stripe crosses block boundaries and causes remote reads within a node-local task. Kinesis Data Firehose ignores this parameter when enable_padding is false.
	// +kubebuilder:validation:Optional
	PaddingTolerance *float64 `json:"paddingTolerance,omitempty" tf:"padding_tolerance,omitempty"`

	// The number of rows between index entries. The default is 10000 and the minimum is 1000.
	// +kubebuilder:validation:Optional
	RowIndexStride *float64 `json:"rowIndexStride,omitempty" tf:"row_index_stride,omitempty"`

	// The number of bytes in each stripe. The default is 64 MiB and the minimum is 8 MiB.
	// +kubebuilder:validation:Optional
	StripeSizeBytes *float64 `json:"stripeSizeBytes,omitempty" tf:"stripe_size_bytes,omitempty"`
}

func (*OrcSerDeParameters) DeepCopy

func (in *OrcSerDeParameters) DeepCopy() *OrcSerDeParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrcSerDeParameters.

func (*OrcSerDeParameters) DeepCopyInto

func (in *OrcSerDeParameters) DeepCopyInto(out *OrcSerDeParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OutputFormatConfigurationInitParameters

type OutputFormatConfigurationInitParameters struct {

	// Specifies which serializer to use. You can choose either the ORC SerDe or the Parquet SerDe. See serializer block below for details.
	Serializer *SerializerInitParameters `json:"serializer,omitempty" tf:"serializer,omitempty"`
}

func (*OutputFormatConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputFormatConfigurationInitParameters.

func (*OutputFormatConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OutputFormatConfigurationObservation

type OutputFormatConfigurationObservation struct {

	// Specifies which serializer to use. You can choose either the ORC SerDe or the Parquet SerDe. See serializer block below for details.
	Serializer *SerializerObservation `json:"serializer,omitempty" tf:"serializer,omitempty"`
}

func (*OutputFormatConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputFormatConfigurationObservation.

func (*OutputFormatConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OutputFormatConfigurationParameters

type OutputFormatConfigurationParameters struct {

	// Specifies which serializer to use. You can choose either the ORC SerDe or the Parquet SerDe. See serializer block below for details.
	// +kubebuilder:validation:Optional
	Serializer *SerializerParameters `json:"serializer" tf:"serializer,omitempty"`
}

func (*OutputFormatConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputFormatConfigurationParameters.

func (*OutputFormatConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ParametersInitParameters

type ParametersInitParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*ParametersInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParametersInitParameters.

func (*ParametersInitParameters) DeepCopyInto

func (in *ParametersInitParameters) DeepCopyInto(out *ParametersInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ParametersObservation

type ParametersObservation struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*ParametersObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParametersObservation.

func (*ParametersObservation) DeepCopyInto

func (in *ParametersObservation) DeepCopyInto(out *ParametersObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ParametersParameters

type ParametersParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	ParameterName *string `json:"parameterName" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	// +kubebuilder:validation:Optional
	ParameterValue *string `json:"parameterValue" tf:"parameter_value,omitempty"`
}

func (*ParametersParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParametersParameters.

func (*ParametersParameters) DeepCopyInto

func (in *ParametersParameters) DeepCopyInto(out *ParametersParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ParquetSerDeInitParameters

type ParquetSerDeInitParameters struct {

	// The Hadoop Distributed File System (HDFS) block size. This is useful if you intend to copy the data from Amazon S3 to HDFS before querying. The default is 256 MiB and the minimum is 64 MiB. Kinesis Data Firehose uses this value for padding calculations.
	BlockSizeBytes *float64 `json:"blockSizeBytes,omitempty" tf:"block_size_bytes,omitempty"`

	// The compression code to use over data blocks. The possible values are UNCOMPRESSED, SNAPPY, and GZIP, with the default being SNAPPY. Use SNAPPY for higher decompression speed. Use GZIP if the compression ratio is more important than speed.
	Compression *string `json:"compression,omitempty" tf:"compression,omitempty"`

	// Indicates whether to enable dictionary compression.
	EnableDictionaryCompression *bool `json:"enableDictionaryCompression,omitempty" tf:"enable_dictionary_compression,omitempty"`

	// The maximum amount of padding to apply. This is useful if you intend to copy the data from Amazon S3 to HDFS before querying. The default is 0.
	MaxPaddingBytes *float64 `json:"maxPaddingBytes,omitempty" tf:"max_padding_bytes,omitempty"`

	// The Parquet page size. Column chunks are divided into pages. A page is conceptually an indivisible unit (in terms of compression and encoding). The minimum value is 64 KiB and the default is 1 MiB.
	PageSizeBytes *float64 `json:"pageSizeBytes,omitempty" tf:"page_size_bytes,omitempty"`

	// Indicates the version of row format to output. The possible values are V1 and V2. The default is V1.
	WriterVersion *string `json:"writerVersion,omitempty" tf:"writer_version,omitempty"`
}

func (*ParquetSerDeInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParquetSerDeInitParameters.

func (*ParquetSerDeInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ParquetSerDeObservation

type ParquetSerDeObservation struct {

	// The Hadoop Distributed File System (HDFS) block size. This is useful if you intend to copy the data from Amazon S3 to HDFS before querying. The default is 256 MiB and the minimum is 64 MiB. Kinesis Data Firehose uses this value for padding calculations.
	BlockSizeBytes *float64 `json:"blockSizeBytes,omitempty" tf:"block_size_bytes,omitempty"`

	// The compression code to use over data blocks. The possible values are UNCOMPRESSED, SNAPPY, and GZIP, with the default being SNAPPY. Use SNAPPY for higher decompression speed. Use GZIP if the compression ratio is more important than speed.
	Compression *string `json:"compression,omitempty" tf:"compression,omitempty"`

	// Indicates whether to enable dictionary compression.
	EnableDictionaryCompression *bool `json:"enableDictionaryCompression,omitempty" tf:"enable_dictionary_compression,omitempty"`

	// The maximum amount of padding to apply. This is useful if you intend to copy the data from Amazon S3 to HDFS before querying. The default is 0.
	MaxPaddingBytes *float64 `json:"maxPaddingBytes,omitempty" tf:"max_padding_bytes,omitempty"`

	// The Parquet page size. Column chunks are divided into pages. A page is conceptually an indivisible unit (in terms of compression and encoding). The minimum value is 64 KiB and the default is 1 MiB.
	PageSizeBytes *float64 `json:"pageSizeBytes,omitempty" tf:"page_size_bytes,omitempty"`

	// Indicates the version of row format to output. The possible values are V1 and V2. The default is V1.
	WriterVersion *string `json:"writerVersion,omitempty" tf:"writer_version,omitempty"`
}

func (*ParquetSerDeObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParquetSerDeObservation.

func (*ParquetSerDeObservation) DeepCopyInto

func (in *ParquetSerDeObservation) DeepCopyInto(out *ParquetSerDeObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ParquetSerDeParameters

type ParquetSerDeParameters struct {

	// The Hadoop Distributed File System (HDFS) block size. This is useful if you intend to copy the data from Amazon S3 to HDFS before querying. The default is 256 MiB and the minimum is 64 MiB. Kinesis Data Firehose uses this value for padding calculations.
	// +kubebuilder:validation:Optional
	BlockSizeBytes *float64 `json:"blockSizeBytes,omitempty" tf:"block_size_bytes,omitempty"`

	// The compression code to use over data blocks. The possible values are UNCOMPRESSED, SNAPPY, and GZIP, with the default being SNAPPY. Use SNAPPY for higher decompression speed. Use GZIP if the compression ratio is more important than speed.
	// +kubebuilder:validation:Optional
	Compression *string `json:"compression,omitempty" tf:"compression,omitempty"`

	// Indicates whether to enable dictionary compression.
	// +kubebuilder:validation:Optional
	EnableDictionaryCompression *bool `json:"enableDictionaryCompression,omitempty" tf:"enable_dictionary_compression,omitempty"`

	// The maximum amount of padding to apply. This is useful if you intend to copy the data from Amazon S3 to HDFS before querying. The default is 0.
	// +kubebuilder:validation:Optional
	MaxPaddingBytes *float64 `json:"maxPaddingBytes,omitempty" tf:"max_padding_bytes,omitempty"`

	// The Parquet page size. Column chunks are divided into pages. A page is conceptually an indivisible unit (in terms of compression and encoding). The minimum value is 64 KiB and the default is 1 MiB.
	// +kubebuilder:validation:Optional
	PageSizeBytes *float64 `json:"pageSizeBytes,omitempty" tf:"page_size_bytes,omitempty"`

	// Indicates the version of row format to output. The possible values are V1 and V2. The default is V1.
	// +kubebuilder:validation:Optional
	WriterVersion *string `json:"writerVersion,omitempty" tf:"writer_version,omitempty"`
}

func (*ParquetSerDeParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParquetSerDeParameters.

func (*ParquetSerDeParameters) DeepCopyInto

func (in *ParquetSerDeParameters) DeepCopyInto(out *ParquetSerDeParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessingConfigurationInitParameters

type ProcessingConfigurationInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []ProcessorsInitParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*ProcessingConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessingConfigurationInitParameters.

func (*ProcessingConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessingConfigurationObservation

type ProcessingConfigurationObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []ProcessorsObservation `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*ProcessingConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessingConfigurationObservation.

func (*ProcessingConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessingConfigurationParameters

type ProcessingConfigurationParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	// +kubebuilder:validation:Optional
	Processors []ProcessorsParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*ProcessingConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessingConfigurationParameters.

func (*ProcessingConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessingConfigurationProcessorsInitParameters

type ProcessingConfigurationProcessorsInitParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []ProcessorsParametersInitParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*ProcessingConfigurationProcessorsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessingConfigurationProcessorsInitParameters.

func (*ProcessingConfigurationProcessorsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessingConfigurationProcessorsObservation

type ProcessingConfigurationProcessorsObservation struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []ProcessorsParametersObservation `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*ProcessingConfigurationProcessorsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessingConfigurationProcessorsObservation.

func (*ProcessingConfigurationProcessorsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessingConfigurationProcessorsParameters

type ProcessingConfigurationProcessorsParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	// +kubebuilder:validation:Optional
	Parameters []ProcessorsParametersParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*ProcessingConfigurationProcessorsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessingConfigurationProcessorsParameters.

func (*ProcessingConfigurationProcessorsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessingConfigurationProcessorsParametersInitParameters

type ProcessingConfigurationProcessorsParametersInitParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*ProcessingConfigurationProcessorsParametersInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessingConfigurationProcessorsParametersInitParameters.

func (*ProcessingConfigurationProcessorsParametersInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessingConfigurationProcessorsParametersObservation

type ProcessingConfigurationProcessorsParametersObservation struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*ProcessingConfigurationProcessorsParametersObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessingConfigurationProcessorsParametersObservation.

func (*ProcessingConfigurationProcessorsParametersObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessingConfigurationProcessorsParametersParameters

type ProcessingConfigurationProcessorsParametersParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	ParameterName *string `json:"parameterName" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	// +kubebuilder:validation:Optional
	ParameterValue *string `json:"parameterValue" tf:"parameter_value,omitempty"`
}

func (*ProcessingConfigurationProcessorsParametersParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessingConfigurationProcessorsParametersParameters.

func (*ProcessingConfigurationProcessorsParametersParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessorsInitParameters

type ProcessorsInitParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []ParametersInitParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*ProcessorsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessorsInitParameters.

func (*ProcessorsInitParameters) DeepCopyInto

func (in *ProcessorsInitParameters) DeepCopyInto(out *ProcessorsInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessorsObservation

type ProcessorsObservation struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []ParametersObservation `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*ProcessorsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessorsObservation.

func (*ProcessorsObservation) DeepCopyInto

func (in *ProcessorsObservation) DeepCopyInto(out *ProcessorsObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessorsParameters

type ProcessorsParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	// +kubebuilder:validation:Optional
	Parameters []ParametersParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*ProcessorsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessorsParameters.

func (*ProcessorsParameters) DeepCopyInto

func (in *ProcessorsParameters) DeepCopyInto(out *ProcessorsParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessorsParametersInitParameters

type ProcessorsParametersInitParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*ProcessorsParametersInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessorsParametersInitParameters.

func (*ProcessorsParametersInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessorsParametersObservation

type ProcessorsParametersObservation struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*ProcessorsParametersObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessorsParametersObservation.

func (*ProcessorsParametersObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProcessorsParametersParameters

type ProcessorsParametersParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	ParameterName *string `json:"parameterName" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	// +kubebuilder:validation:Optional
	ParameterValue *string `json:"parameterValue" tf:"parameter_value,omitempty"`
}

func (*ProcessorsParametersParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessorsParametersParameters.

func (*ProcessorsParametersParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationCloudwatchLoggingOptionsInitParameters

type RedshiftConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*RedshiftConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationCloudwatchLoggingOptionsInitParameters.

func (*RedshiftConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationCloudwatchLoggingOptionsObservation

type RedshiftConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*RedshiftConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationCloudwatchLoggingOptionsObservation.

func (*RedshiftConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationCloudwatchLoggingOptionsParameters

type RedshiftConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*RedshiftConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationCloudwatchLoggingOptionsParameters.

func (*RedshiftConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationInitParameters

type RedshiftConfigurationInitParameters struct {

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *RedshiftConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The jdbcurl of the redshift cluster.
	ClusterJdbcurl *string `json:"clusterJdbcurl,omitempty" tf:"cluster_jdbcurl,omitempty"`

	// Copy options for copying the data from the s3 intermediate bucket into redshift, for example to change the default delimiter. For valid values, see the AWS documentation
	CopyOptions *string `json:"copyOptions,omitempty" tf:"copy_options,omitempty"`

	// The data table columns that will be targeted by the copy command.
	DataTableColumns *string `json:"dataTableColumns,omitempty" tf:"data_table_columns,omitempty"`

	// The name of the table in the redshift cluster that the s3 bucket will copy to.
	DataTableName *string `json:"dataTableName,omitempty" tf:"data_table_name,omitempty"`

	// The password for the username above.
	PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"`

	// The data processing configuration.  See processing_configuration block below for details.
	ProcessingConfiguration *RedshiftConfigurationProcessingConfigurationInitParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// The length of time during which Firehose retries delivery after a failure, starting from the initial request and including the first attempt. The default value is 3600 seconds (60 minutes). Firehose does not retry if the value of DurationInSeconds is 0 (zero) or if the first delivery attempt takes longer than the current value.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The arn of the role the stream assumes.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// The configuration for backup in Amazon S3. Required if s3_backup_mode is Enabled. Supports the same fields as s3_configuration object.
	S3BackupConfiguration *RedshiftConfigurationS3BackupConfigurationInitParameters `json:"s3BackupConfiguration,omitempty" tf:"s3_backup_configuration,omitempty"`

	// The Amazon S3 backup mode.  Valid values are Disabled and Enabled.  Default value is Disabled.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration below for details.
	S3Configuration *RedshiftConfigurationS3ConfigurationInitParameters `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`

	// The username that the firehose delivery stream will assume. It is strongly recommended that the username and password provided is used exclusively for Amazon Kinesis Firehose purposes, and that the permissions for the account are restricted for Amazon Redshift INSERT permissions.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*RedshiftConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationInitParameters.

func (*RedshiftConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationObservation

type RedshiftConfigurationObservation struct {

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *RedshiftConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The jdbcurl of the redshift cluster.
	ClusterJdbcurl *string `json:"clusterJdbcurl,omitempty" tf:"cluster_jdbcurl,omitempty"`

	// Copy options for copying the data from the s3 intermediate bucket into redshift, for example to change the default delimiter. For valid values, see the AWS documentation
	CopyOptions *string `json:"copyOptions,omitempty" tf:"copy_options,omitempty"`

	// The data table columns that will be targeted by the copy command.
	DataTableColumns *string `json:"dataTableColumns,omitempty" tf:"data_table_columns,omitempty"`

	// The name of the table in the redshift cluster that the s3 bucket will copy to.
	DataTableName *string `json:"dataTableName,omitempty" tf:"data_table_name,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	ProcessingConfiguration *RedshiftConfigurationProcessingConfigurationObservation `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// The length of time during which Firehose retries delivery after a failure, starting from the initial request and including the first attempt. The default value is 3600 seconds (60 minutes). Firehose does not retry if the value of DurationInSeconds is 0 (zero) or if the first delivery attempt takes longer than the current value.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The arn of the role the stream assumes.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// The configuration for backup in Amazon S3. Required if s3_backup_mode is Enabled. Supports the same fields as s3_configuration object.
	S3BackupConfiguration *RedshiftConfigurationS3BackupConfigurationObservation `json:"s3BackupConfiguration,omitempty" tf:"s3_backup_configuration,omitempty"`

	// The Amazon S3 backup mode.  Valid values are Disabled and Enabled.  Default value is Disabled.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration below for details.
	S3Configuration *RedshiftConfigurationS3ConfigurationObservation `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`

	// The username that the firehose delivery stream will assume. It is strongly recommended that the username and password provided is used exclusively for Amazon Kinesis Firehose purposes, and that the permissions for the account are restricted for Amazon Redshift INSERT permissions.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*RedshiftConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationObservation.

func (*RedshiftConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationParameters

type RedshiftConfigurationParameters struct {

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *RedshiftConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The jdbcurl of the redshift cluster.
	// +kubebuilder:validation:Optional
	ClusterJdbcurl *string `json:"clusterJdbcurl" tf:"cluster_jdbcurl,omitempty"`

	// Copy options for copying the data from the s3 intermediate bucket into redshift, for example to change the default delimiter. For valid values, see the AWS documentation
	// +kubebuilder:validation:Optional
	CopyOptions *string `json:"copyOptions,omitempty" tf:"copy_options,omitempty"`

	// The data table columns that will be targeted by the copy command.
	// +kubebuilder:validation:Optional
	DataTableColumns *string `json:"dataTableColumns,omitempty" tf:"data_table_columns,omitempty"`

	// The name of the table in the redshift cluster that the s3 bucket will copy to.
	// +kubebuilder:validation:Optional
	DataTableName *string `json:"dataTableName" tf:"data_table_name,omitempty"`

	// The password for the username above.
	// +kubebuilder:validation:Optional
	PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"`

	// The data processing configuration.  See processing_configuration block below for details.
	// +kubebuilder:validation:Optional
	ProcessingConfiguration *RedshiftConfigurationProcessingConfigurationParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// The length of time during which Firehose retries delivery after a failure, starting from the initial request and including the first attempt. The default value is 3600 seconds (60 minutes). Firehose does not retry if the value of DurationInSeconds is 0 (zero) or if the first delivery attempt takes longer than the current value.
	// +kubebuilder:validation:Optional
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The arn of the role the stream assumes.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// The configuration for backup in Amazon S3. Required if s3_backup_mode is Enabled. Supports the same fields as s3_configuration object.
	// +kubebuilder:validation:Optional
	S3BackupConfiguration *RedshiftConfigurationS3BackupConfigurationParameters `json:"s3BackupConfiguration,omitempty" tf:"s3_backup_configuration,omitempty"`

	// The Amazon S3 backup mode.  Valid values are Disabled and Enabled.  Default value is Disabled.
	// +kubebuilder:validation:Optional
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration below for details.
	// +kubebuilder:validation:Optional
	S3Configuration *RedshiftConfigurationS3ConfigurationParameters `json:"s3Configuration" tf:"s3_configuration,omitempty"`

	// The username that the firehose delivery stream will assume. It is strongly recommended that the username and password provided is used exclusively for Amazon Kinesis Firehose purposes, and that the permissions for the account are restricted for Amazon Redshift INSERT permissions.
	// +kubebuilder:validation:Optional
	Username *string `json:"username" tf:"username,omitempty"`
}

func (*RedshiftConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationParameters.

func (*RedshiftConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationProcessingConfigurationInitParameters

type RedshiftConfigurationProcessingConfigurationInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []RedshiftConfigurationProcessingConfigurationProcessorsInitParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*RedshiftConfigurationProcessingConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationProcessingConfigurationInitParameters.

func (*RedshiftConfigurationProcessingConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationProcessingConfigurationObservation

type RedshiftConfigurationProcessingConfigurationObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []RedshiftConfigurationProcessingConfigurationProcessorsObservation `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*RedshiftConfigurationProcessingConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationProcessingConfigurationObservation.

func (*RedshiftConfigurationProcessingConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationProcessingConfigurationParameters

type RedshiftConfigurationProcessingConfigurationParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	// +kubebuilder:validation:Optional
	Processors []RedshiftConfigurationProcessingConfigurationProcessorsParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*RedshiftConfigurationProcessingConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationProcessingConfigurationParameters.

func (*RedshiftConfigurationProcessingConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationProcessingConfigurationProcessorsInitParameters

type RedshiftConfigurationProcessingConfigurationProcessorsInitParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []RedshiftConfigurationProcessingConfigurationProcessorsParametersInitParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*RedshiftConfigurationProcessingConfigurationProcessorsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationProcessingConfigurationProcessorsInitParameters.

func (*RedshiftConfigurationProcessingConfigurationProcessorsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationProcessingConfigurationProcessorsObservation

type RedshiftConfigurationProcessingConfigurationProcessorsObservation struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []RedshiftConfigurationProcessingConfigurationProcessorsParametersObservation `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*RedshiftConfigurationProcessingConfigurationProcessorsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationProcessingConfigurationProcessorsObservation.

func (*RedshiftConfigurationProcessingConfigurationProcessorsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationProcessingConfigurationProcessorsParameters

type RedshiftConfigurationProcessingConfigurationProcessorsParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	// +kubebuilder:validation:Optional
	Parameters []RedshiftConfigurationProcessingConfigurationProcessorsParametersParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*RedshiftConfigurationProcessingConfigurationProcessorsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationProcessingConfigurationProcessorsParameters.

func (*RedshiftConfigurationProcessingConfigurationProcessorsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationProcessingConfigurationProcessorsParametersInitParameters

type RedshiftConfigurationProcessingConfigurationProcessorsParametersInitParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*RedshiftConfigurationProcessingConfigurationProcessorsParametersInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationProcessingConfigurationProcessorsParametersInitParameters.

func (*RedshiftConfigurationProcessingConfigurationProcessorsParametersInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationProcessingConfigurationProcessorsParametersObservation

type RedshiftConfigurationProcessingConfigurationProcessorsParametersObservation struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*RedshiftConfigurationProcessingConfigurationProcessorsParametersObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationProcessingConfigurationProcessorsParametersObservation.

func (*RedshiftConfigurationProcessingConfigurationProcessorsParametersObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationProcessingConfigurationProcessorsParametersParameters

type RedshiftConfigurationProcessingConfigurationProcessorsParametersParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	ParameterName *string `json:"parameterName" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	// +kubebuilder:validation:Optional
	ParameterValue *string `json:"parameterValue" tf:"parameter_value,omitempty"`
}

func (*RedshiftConfigurationProcessingConfigurationProcessorsParametersParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationProcessingConfigurationProcessorsParametersParameters.

func (*RedshiftConfigurationProcessingConfigurationProcessorsParametersParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsInitParameters

type RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsInitParameters.

func (*RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsObservation

type RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsObservation.

func (*RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsParameters

type RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsParameters.

func (*RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationS3BackupConfigurationInitParameters

type RedshiftConfigurationS3BackupConfigurationInitParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*RedshiftConfigurationS3BackupConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationS3BackupConfigurationInitParameters.

func (*RedshiftConfigurationS3BackupConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationS3BackupConfigurationObservation

type RedshiftConfigurationS3BackupConfigurationObservation struct {

	// The ARN of the S3 bucket
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*RedshiftConfigurationS3BackupConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationS3BackupConfigurationObservation.

func (*RedshiftConfigurationS3BackupConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationS3BackupConfigurationParameters

type RedshiftConfigurationS3BackupConfigurationParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *RedshiftConfigurationS3BackupConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	// +kubebuilder:validation:Optional
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	// +kubebuilder:validation:Optional
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	// +kubebuilder:validation:Optional
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*RedshiftConfigurationS3BackupConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationS3BackupConfigurationParameters.

func (*RedshiftConfigurationS3BackupConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters

type RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters.

func (*RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation

type RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation.

func (*RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters

type RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters.

func (*RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationS3ConfigurationInitParameters

type RedshiftConfigurationS3ConfigurationInitParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*RedshiftConfigurationS3ConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationS3ConfigurationInitParameters.

func (*RedshiftConfigurationS3ConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationS3ConfigurationObservation

type RedshiftConfigurationS3ConfigurationObservation struct {

	// The ARN of the S3 bucket
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*RedshiftConfigurationS3ConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationS3ConfigurationObservation.

func (*RedshiftConfigurationS3ConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RedshiftConfigurationS3ConfigurationParameters

type RedshiftConfigurationS3ConfigurationParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *RedshiftConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	// +kubebuilder:validation:Optional
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	// +kubebuilder:validation:Optional
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	// +kubebuilder:validation:Optional
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*RedshiftConfigurationS3ConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedshiftConfigurationS3ConfigurationParameters.

func (*RedshiftConfigurationS3ConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RequestConfigurationInitParameters

type RequestConfigurationInitParameters struct {

	// Describes the metadata sent to the HTTP endpoint destination. See common_attributes block below for details.
	CommonAttributes []CommonAttributesInitParameters `json:"commonAttributes,omitempty" tf:"common_attributes,omitempty"`

	// Kinesis Data Firehose uses the content encoding to compress the body of a request before sending the request to the destination. Valid values are NONE and GZIP.  Default value is NONE.
	ContentEncoding *string `json:"contentEncoding,omitempty" tf:"content_encoding,omitempty"`
}

func (*RequestConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestConfigurationInitParameters.

func (*RequestConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RequestConfigurationObservation

type RequestConfigurationObservation struct {

	// Describes the metadata sent to the HTTP endpoint destination. See common_attributes block below for details.
	CommonAttributes []CommonAttributesObservation `json:"commonAttributes,omitempty" tf:"common_attributes,omitempty"`

	// Kinesis Data Firehose uses the content encoding to compress the body of a request before sending the request to the destination. Valid values are NONE and GZIP.  Default value is NONE.
	ContentEncoding *string `json:"contentEncoding,omitempty" tf:"content_encoding,omitempty"`
}

func (*RequestConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestConfigurationObservation.

func (*RequestConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RequestConfigurationParameters

type RequestConfigurationParameters struct {

	// Describes the metadata sent to the HTTP endpoint destination. See common_attributes block below for details.
	// +kubebuilder:validation:Optional
	CommonAttributes []CommonAttributesParameters `json:"commonAttributes,omitempty" tf:"common_attributes,omitempty"`

	// Kinesis Data Firehose uses the content encoding to compress the body of a request before sending the request to the destination. Valid values are NONE and GZIP.  Default value is NONE.
	// +kubebuilder:validation:Optional
	ContentEncoding *string `json:"contentEncoding,omitempty" tf:"content_encoding,omitempty"`
}

func (*RequestConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestConfigurationParameters.

func (*RequestConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type S3BackupConfigurationCloudwatchLoggingOptionsInitParameters

type S3BackupConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*S3BackupConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3BackupConfigurationCloudwatchLoggingOptionsInitParameters.

func (*S3BackupConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type S3BackupConfigurationCloudwatchLoggingOptionsObservation

type S3BackupConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*S3BackupConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3BackupConfigurationCloudwatchLoggingOptionsObservation.

func (*S3BackupConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type S3BackupConfigurationCloudwatchLoggingOptionsParameters

type S3BackupConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*S3BackupConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3BackupConfigurationCloudwatchLoggingOptionsParameters.

func (*S3BackupConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type S3BackupConfigurationInitParameters

type S3BackupConfigurationInitParameters struct {

	// The ARN of the S3 bucket
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *S3BackupConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*S3BackupConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3BackupConfigurationInitParameters.

func (*S3BackupConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type S3BackupConfigurationObservation

type S3BackupConfigurationObservation struct {

	// The ARN of the S3 bucket
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *S3BackupConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*S3BackupConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3BackupConfigurationObservation.

func (*S3BackupConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type S3BackupConfigurationParameters

type S3BackupConfigurationParameters struct {

	// The ARN of the S3 bucket
	// +kubebuilder:validation:Optional
	BucketArn *string `json:"bucketArn" tf:"bucket_arn,omitempty"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *S3BackupConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	// +kubebuilder:validation:Optional
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	// +kubebuilder:validation:Optional
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	// +kubebuilder:validation:Optional
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn" tf:"role_arn,omitempty"`
}

func (*S3BackupConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3BackupConfigurationParameters.

func (*S3BackupConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type S3ConfigurationCloudwatchLoggingOptionsInitParameters

type S3ConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*S3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3ConfigurationCloudwatchLoggingOptionsInitParameters.

func (*S3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type S3ConfigurationCloudwatchLoggingOptionsObservation

type S3ConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*S3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3ConfigurationCloudwatchLoggingOptionsObservation.

func (*S3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type S3ConfigurationCloudwatchLoggingOptionsParameters

type S3ConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*S3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3ConfigurationCloudwatchLoggingOptionsParameters.

func (*S3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type S3ConfigurationInitParameters

type S3ConfigurationInitParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *S3ConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*S3ConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3ConfigurationInitParameters.

func (*S3ConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type S3ConfigurationObservation

type S3ConfigurationObservation struct {

	// The ARN of the S3 bucket
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *S3ConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*S3ConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3ConfigurationObservation.

func (*S3ConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type S3ConfigurationParameters

type S3ConfigurationParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *S3ConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	// +kubebuilder:validation:Optional
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	// +kubebuilder:validation:Optional
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	// +kubebuilder:validation:Optional
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*S3ConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3ConfigurationParameters.

func (*S3ConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SchemaConfigurationInitParameters

type SchemaConfigurationInitParameters struct {

	// The ID of the AWS Glue Data Catalog. If you don't supply this, the AWS account ID is used by default.
	CatalogID *string `json:"catalogId,omitempty" tf:"catalog_id,omitempty"`

	// Specifies the name of the AWS Glue database that contains the schema for the output data.
	DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// Specifies the AWS Glue table that contains the column information that constitutes your data schema.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/glue/v1beta2.CatalogTable
	TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"`

	// Reference to a CatalogTable in glue to populate tableName.
	// +kubebuilder:validation:Optional
	TableNameRef *v1.Reference `json:"tableNameRef,omitempty" tf:"-"`

	// Selector for a CatalogTable in glue to populate tableName.
	// +kubebuilder:validation:Optional
	TableNameSelector *v1.Selector `json:"tableNameSelector,omitempty" tf:"-"`

	// Specifies the table version for the output data schema. Defaults to LATEST.
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*SchemaConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchemaConfigurationInitParameters.

func (*SchemaConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SchemaConfigurationObservation

type SchemaConfigurationObservation struct {

	// The ID of the AWS Glue Data Catalog. If you don't supply this, the AWS account ID is used by default.
	CatalogID *string `json:"catalogId,omitempty" tf:"catalog_id,omitempty"`

	// Specifies the name of the AWS Glue database that contains the schema for the output data.
	DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"`

	// If you don't specify an AWS Region, the default is the current region.
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Specifies the AWS Glue table that contains the column information that constitutes your data schema.
	TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"`

	// Specifies the table version for the output data schema. Defaults to LATEST.
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*SchemaConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchemaConfigurationObservation.

func (*SchemaConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SchemaConfigurationParameters

type SchemaConfigurationParameters struct {

	// The ID of the AWS Glue Data Catalog. If you don't supply this, the AWS account ID is used by default.
	// +kubebuilder:validation:Optional
	CatalogID *string `json:"catalogId,omitempty" tf:"catalog_id,omitempty"`

	// Specifies the name of the AWS Glue database that contains the schema for the output data.
	// +kubebuilder:validation:Optional
	DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"`

	// If you don't specify an AWS Region, the default is the current region.
	// +kubebuilder:validation:Optional
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// Specifies the AWS Glue table that contains the column information that constitutes your data schema.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/glue/v1beta2.CatalogTable
	// +kubebuilder:validation:Optional
	TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"`

	// Reference to a CatalogTable in glue to populate tableName.
	// +kubebuilder:validation:Optional
	TableNameRef *v1.Reference `json:"tableNameRef,omitempty" tf:"-"`

	// Selector for a CatalogTable in glue to populate tableName.
	// +kubebuilder:validation:Optional
	TableNameSelector *v1.Selector `json:"tableNameSelector,omitempty" tf:"-"`

	// Specifies the table version for the output data schema. Defaults to LATEST.
	// +kubebuilder:validation:Optional
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*SchemaConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchemaConfigurationParameters.

func (*SchemaConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SerializerInitParameters

type SerializerInitParameters struct {

	// Specifies converting data to the ORC format before storing it in Amazon S3. For more information, see Apache ORC. See orc_ser_de block below for details.
	OrcSerDe *OrcSerDeInitParameters `json:"orcSerDe,omitempty" tf:"orc_ser_de,omitempty"`

	// Specifies converting data to the Parquet format before storing it in Amazon S3. For more information, see Apache Parquet. More details below.
	ParquetSerDe *ParquetSerDeInitParameters `json:"parquetSerDe,omitempty" tf:"parquet_ser_de,omitempty"`
}

func (*SerializerInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SerializerInitParameters.

func (*SerializerInitParameters) DeepCopyInto

func (in *SerializerInitParameters) DeepCopyInto(out *SerializerInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SerializerObservation

type SerializerObservation struct {

	// Specifies converting data to the ORC format before storing it in Amazon S3. For more information, see Apache ORC. See orc_ser_de block below for details.
	OrcSerDe *OrcSerDeObservation `json:"orcSerDe,omitempty" tf:"orc_ser_de,omitempty"`

	// Specifies converting data to the Parquet format before storing it in Amazon S3. For more information, see Apache Parquet. More details below.
	ParquetSerDe *ParquetSerDeObservation `json:"parquetSerDe,omitempty" tf:"parquet_ser_de,omitempty"`
}

func (*SerializerObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SerializerObservation.

func (*SerializerObservation) DeepCopyInto

func (in *SerializerObservation) DeepCopyInto(out *SerializerObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SerializerParameters

type SerializerParameters struct {

	// Specifies converting data to the ORC format before storing it in Amazon S3. For more information, see Apache ORC. See orc_ser_de block below for details.
	// +kubebuilder:validation:Optional
	OrcSerDe *OrcSerDeParameters `json:"orcSerDe,omitempty" tf:"orc_ser_de,omitempty"`

	// Specifies converting data to the Parquet format before storing it in Amazon S3. For more information, see Apache Parquet. More details below.
	// +kubebuilder:validation:Optional
	ParquetSerDe *ParquetSerDeParameters `json:"parquetSerDe,omitempty" tf:"parquet_ser_de,omitempty"`
}

func (*SerializerParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SerializerParameters.

func (*SerializerParameters) DeepCopyInto

func (in *SerializerParameters) DeepCopyInto(out *SerializerParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServerSideEncryptionInitParameters

type ServerSideEncryptionInitParameters struct {

	// Whether to enable encryption at rest. Default is false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Amazon Resource Name (ARN) of the encryption key. Required when key_type is CUSTOMER_MANAGED_CMK.
	KeyArn *string `json:"keyArn,omitempty" tf:"key_arn,omitempty"`

	// Type of encryption key. Default is AWS_OWNED_CMK. Valid values are AWS_OWNED_CMK and CUSTOMER_MANAGED_CMK
	KeyType *string `json:"keyType,omitempty" tf:"key_type,omitempty"`
}

func (*ServerSideEncryptionInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerSideEncryptionInitParameters.

func (*ServerSideEncryptionInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServerSideEncryptionObservation

type ServerSideEncryptionObservation struct {

	// Whether to enable encryption at rest. Default is false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Amazon Resource Name (ARN) of the encryption key. Required when key_type is CUSTOMER_MANAGED_CMK.
	KeyArn *string `json:"keyArn,omitempty" tf:"key_arn,omitempty"`

	// Type of encryption key. Default is AWS_OWNED_CMK. Valid values are AWS_OWNED_CMK and CUSTOMER_MANAGED_CMK
	KeyType *string `json:"keyType,omitempty" tf:"key_type,omitempty"`
}

func (*ServerSideEncryptionObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerSideEncryptionObservation.

func (*ServerSideEncryptionObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServerSideEncryptionParameters

type ServerSideEncryptionParameters struct {

	// Whether to enable encryption at rest. Default is false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Amazon Resource Name (ARN) of the encryption key. Required when key_type is CUSTOMER_MANAGED_CMK.
	// +kubebuilder:validation:Optional
	KeyArn *string `json:"keyArn,omitempty" tf:"key_arn,omitempty"`

	// Type of encryption key. Default is AWS_OWNED_CMK. Valid values are AWS_OWNED_CMK and CUSTOMER_MANAGED_CMK
	// +kubebuilder:validation:Optional
	KeyType *string `json:"keyType,omitempty" tf:"key_type,omitempty"`
}

func (*ServerSideEncryptionParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerSideEncryptionParameters.

func (*ServerSideEncryptionParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationCloudwatchLoggingOptionsInitParameters

type SnowflakeConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*SnowflakeConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationCloudwatchLoggingOptionsInitParameters.

func (*SnowflakeConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationCloudwatchLoggingOptionsObservation

type SnowflakeConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*SnowflakeConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationCloudwatchLoggingOptionsObservation.

func (*SnowflakeConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationCloudwatchLoggingOptionsParameters

type SnowflakeConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*SnowflakeConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationCloudwatchLoggingOptionsParameters.

func (*SnowflakeConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationInitParameters

type SnowflakeConfigurationInitParameters struct {

	// The URL of the Snowflake account. Format: https://[account_identifier].snowflakecomputing.com.
	AccountURL *string `json:"accountUrl,omitempty" tf:"account_url,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *SnowflakeConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The name of the content column.
	ContentColumnName *string `json:"contentColumnName,omitempty" tf:"content_column_name,omitempty"`

	// The data loading option.
	DataLoadingOption *string `json:"dataLoadingOption,omitempty" tf:"data_loading_option,omitempty"`

	// The Snowflake database name.
	Database *string `json:"database,omitempty" tf:"database,omitempty"`

	// The passphrase for the private key.
	KeyPassphraseSecretRef *v1.SecretKeySelector `json:"keyPassphraseSecretRef,omitempty" tf:"-"`

	// The name of the metadata column.
	MetadataColumnName *string `json:"metadataColumnName,omitempty" tf:"metadata_column_name,omitempty"`

	// The private key for authentication.
	PrivateKeySecretRef v1.SecretKeySelector `json:"privateKeySecretRef" tf:"-"`

	// The processing configuration. See processing_configuration block below for details.
	ProcessingConfiguration *SnowflakeConfigurationProcessingConfigurationInitParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to Snowflake, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 60s.  There will be no retry if the value is 0.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The ARN of the IAM role.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// The S3 backup mode.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 configuration. See s3_configuration block below for details.
	S3Configuration *SnowflakeConfigurationS3ConfigurationInitParameters `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`

	// The Snowflake schema name.
	Schema *string `json:"schema,omitempty" tf:"schema,omitempty"`

	// The configuration for Snowflake role.
	SnowflakeRoleConfiguration *SnowflakeRoleConfigurationInitParameters `json:"snowflakeRoleConfiguration,omitempty" tf:"snowflake_role_configuration,omitempty"`

	// The VPC configuration for Snowflake.
	SnowflakeVPCConfiguration *SnowflakeVPCConfigurationInitParameters `json:"snowflakeVpcConfiguration,omitempty" tf:"snowflake_vpc_configuration,omitempty"`

	// The Snowflake table name.
	Table *string `json:"table,omitempty" tf:"table,omitempty"`

	// The user for authentication.
	User *string `json:"user,omitempty" tf:"user,omitempty"`
}

func (*SnowflakeConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationInitParameters.

func (*SnowflakeConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationObservation

type SnowflakeConfigurationObservation struct {

	// The URL of the Snowflake account. Format: https://[account_identifier].snowflakecomputing.com.
	AccountURL *string `json:"accountUrl,omitempty" tf:"account_url,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *SnowflakeConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The name of the content column.
	ContentColumnName *string `json:"contentColumnName,omitempty" tf:"content_column_name,omitempty"`

	// The data loading option.
	DataLoadingOption *string `json:"dataLoadingOption,omitempty" tf:"data_loading_option,omitempty"`

	// The Snowflake database name.
	Database *string `json:"database,omitempty" tf:"database,omitempty"`

	// The name of the metadata column.
	MetadataColumnName *string `json:"metadataColumnName,omitempty" tf:"metadata_column_name,omitempty"`

	// The processing configuration. See processing_configuration block below for details.
	ProcessingConfiguration *SnowflakeConfigurationProcessingConfigurationObservation `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to Snowflake, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 60s.  There will be no retry if the value is 0.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The ARN of the IAM role.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// The S3 backup mode.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 configuration. See s3_configuration block below for details.
	S3Configuration *SnowflakeConfigurationS3ConfigurationObservation `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`

	// The Snowflake schema name.
	Schema *string `json:"schema,omitempty" tf:"schema,omitempty"`

	// The configuration for Snowflake role.
	SnowflakeRoleConfiguration *SnowflakeRoleConfigurationObservation `json:"snowflakeRoleConfiguration,omitempty" tf:"snowflake_role_configuration,omitempty"`

	// The VPC configuration for Snowflake.
	SnowflakeVPCConfiguration *SnowflakeVPCConfigurationObservation `json:"snowflakeVpcConfiguration,omitempty" tf:"snowflake_vpc_configuration,omitempty"`

	// The Snowflake table name.
	Table *string `json:"table,omitempty" tf:"table,omitempty"`

	// The user for authentication.
	User *string `json:"user,omitempty" tf:"user,omitempty"`
}

func (*SnowflakeConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationObservation.

func (*SnowflakeConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationParameters

type SnowflakeConfigurationParameters struct {

	// The URL of the Snowflake account. Format: https://[account_identifier].snowflakecomputing.com.
	// +kubebuilder:validation:Optional
	AccountURL *string `json:"accountUrl" tf:"account_url,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *SnowflakeConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The name of the content column.
	// +kubebuilder:validation:Optional
	ContentColumnName *string `json:"contentColumnName,omitempty" tf:"content_column_name,omitempty"`

	// The data loading option.
	// +kubebuilder:validation:Optional
	DataLoadingOption *string `json:"dataLoadingOption,omitempty" tf:"data_loading_option,omitempty"`

	// The Snowflake database name.
	// +kubebuilder:validation:Optional
	Database *string `json:"database" tf:"database,omitempty"`

	// The passphrase for the private key.
	// +kubebuilder:validation:Optional
	KeyPassphraseSecretRef *v1.SecretKeySelector `json:"keyPassphraseSecretRef,omitempty" tf:"-"`

	// The name of the metadata column.
	// +kubebuilder:validation:Optional
	MetadataColumnName *string `json:"metadataColumnName,omitempty" tf:"metadata_column_name,omitempty"`

	// The private key for authentication.
	// +kubebuilder:validation:Optional
	PrivateKeySecretRef v1.SecretKeySelector `json:"privateKeySecretRef" tf:"-"`

	// The processing configuration. See processing_configuration block below for details.
	// +kubebuilder:validation:Optional
	ProcessingConfiguration *SnowflakeConfigurationProcessingConfigurationParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to Snowflake, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 60s.  There will be no retry if the value is 0.
	// +kubebuilder:validation:Optional
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// The ARN of the IAM role.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// The S3 backup mode.
	// +kubebuilder:validation:Optional
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 configuration. See s3_configuration block below for details.
	// +kubebuilder:validation:Optional
	S3Configuration *SnowflakeConfigurationS3ConfigurationParameters `json:"s3Configuration" tf:"s3_configuration,omitempty"`

	// The Snowflake schema name.
	// +kubebuilder:validation:Optional
	Schema *string `json:"schema" tf:"schema,omitempty"`

	// The configuration for Snowflake role.
	// +kubebuilder:validation:Optional
	SnowflakeRoleConfiguration *SnowflakeRoleConfigurationParameters `json:"snowflakeRoleConfiguration,omitempty" tf:"snowflake_role_configuration,omitempty"`

	// The VPC configuration for Snowflake.
	// +kubebuilder:validation:Optional
	SnowflakeVPCConfiguration *SnowflakeVPCConfigurationParameters `json:"snowflakeVpcConfiguration,omitempty" tf:"snowflake_vpc_configuration,omitempty"`

	// The Snowflake table name.
	// +kubebuilder:validation:Optional
	Table *string `json:"table" tf:"table,omitempty"`

	// The user for authentication.
	// +kubebuilder:validation:Optional
	User *string `json:"user" tf:"user,omitempty"`
}

func (*SnowflakeConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationParameters.

func (*SnowflakeConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationProcessingConfigurationInitParameters

type SnowflakeConfigurationProcessingConfigurationInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []SnowflakeConfigurationProcessingConfigurationProcessorsInitParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*SnowflakeConfigurationProcessingConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationProcessingConfigurationInitParameters.

func (*SnowflakeConfigurationProcessingConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationProcessingConfigurationObservation

type SnowflakeConfigurationProcessingConfigurationObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []SnowflakeConfigurationProcessingConfigurationProcessorsObservation `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*SnowflakeConfigurationProcessingConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationProcessingConfigurationObservation.

func (*SnowflakeConfigurationProcessingConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationProcessingConfigurationParameters

type SnowflakeConfigurationProcessingConfigurationParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	// +kubebuilder:validation:Optional
	Processors []SnowflakeConfigurationProcessingConfigurationProcessorsParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*SnowflakeConfigurationProcessingConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationProcessingConfigurationParameters.

func (*SnowflakeConfigurationProcessingConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationProcessingConfigurationProcessorsInitParameters

type SnowflakeConfigurationProcessingConfigurationProcessorsInitParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []SnowflakeConfigurationProcessingConfigurationProcessorsParametersInitParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*SnowflakeConfigurationProcessingConfigurationProcessorsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationProcessingConfigurationProcessorsInitParameters.

func (*SnowflakeConfigurationProcessingConfigurationProcessorsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationProcessingConfigurationProcessorsObservation

type SnowflakeConfigurationProcessingConfigurationProcessorsObservation struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []SnowflakeConfigurationProcessingConfigurationProcessorsParametersObservation `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*SnowflakeConfigurationProcessingConfigurationProcessorsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationProcessingConfigurationProcessorsObservation.

func (*SnowflakeConfigurationProcessingConfigurationProcessorsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationProcessingConfigurationProcessorsParameters

type SnowflakeConfigurationProcessingConfigurationProcessorsParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	// +kubebuilder:validation:Optional
	Parameters []SnowflakeConfigurationProcessingConfigurationProcessorsParametersParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*SnowflakeConfigurationProcessingConfigurationProcessorsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationProcessingConfigurationProcessorsParameters.

func (*SnowflakeConfigurationProcessingConfigurationProcessorsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationProcessingConfigurationProcessorsParametersInitParameters

type SnowflakeConfigurationProcessingConfigurationProcessorsParametersInitParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*SnowflakeConfigurationProcessingConfigurationProcessorsParametersInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationProcessingConfigurationProcessorsParametersInitParameters.

func (*SnowflakeConfigurationProcessingConfigurationProcessorsParametersInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationProcessingConfigurationProcessorsParametersObservation

type SnowflakeConfigurationProcessingConfigurationProcessorsParametersObservation struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*SnowflakeConfigurationProcessingConfigurationProcessorsParametersObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationProcessingConfigurationProcessorsParametersObservation.

func (*SnowflakeConfigurationProcessingConfigurationProcessorsParametersObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationProcessingConfigurationProcessorsParametersParameters

type SnowflakeConfigurationProcessingConfigurationProcessorsParametersParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	ParameterName *string `json:"parameterName" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	// +kubebuilder:validation:Optional
	ParameterValue *string `json:"parameterValue" tf:"parameter_value,omitempty"`
}

func (*SnowflakeConfigurationProcessingConfigurationProcessorsParametersParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationProcessingConfigurationProcessorsParametersParameters.

func (*SnowflakeConfigurationProcessingConfigurationProcessorsParametersParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters

type SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters.

func (*SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation

type SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation.

func (*SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters

type SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters.

func (*SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationS3ConfigurationInitParameters

type SnowflakeConfigurationS3ConfigurationInitParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*SnowflakeConfigurationS3ConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationS3ConfigurationInitParameters.

func (*SnowflakeConfigurationS3ConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationS3ConfigurationObservation

type SnowflakeConfigurationS3ConfigurationObservation struct {

	// The ARN of the S3 bucket
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*SnowflakeConfigurationS3ConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationS3ConfigurationObservation.

func (*SnowflakeConfigurationS3ConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeConfigurationS3ConfigurationParameters

type SnowflakeConfigurationS3ConfigurationParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *SnowflakeConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	// +kubebuilder:validation:Optional
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	// +kubebuilder:validation:Optional
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	// +kubebuilder:validation:Optional
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*SnowflakeConfigurationS3ConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeConfigurationS3ConfigurationParameters.

func (*SnowflakeConfigurationS3ConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeRoleConfigurationInitParameters

type SnowflakeRoleConfigurationInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The Snowflake role.
	SnowflakeRole *string `json:"snowflakeRole,omitempty" tf:"snowflake_role,omitempty"`
}

func (*SnowflakeRoleConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeRoleConfigurationInitParameters.

func (*SnowflakeRoleConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeRoleConfigurationObservation

type SnowflakeRoleConfigurationObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The Snowflake role.
	SnowflakeRole *string `json:"snowflakeRole,omitempty" tf:"snowflake_role,omitempty"`
}

func (*SnowflakeRoleConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeRoleConfigurationObservation.

func (*SnowflakeRoleConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeRoleConfigurationParameters

type SnowflakeRoleConfigurationParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The Snowflake role.
	// +kubebuilder:validation:Optional
	SnowflakeRole *string `json:"snowflakeRole,omitempty" tf:"snowflake_role,omitempty"`
}

func (*SnowflakeRoleConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeRoleConfigurationParameters.

func (*SnowflakeRoleConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeVPCConfigurationInitParameters

type SnowflakeVPCConfigurationInitParameters struct {

	// The VPCE ID for Firehose to privately connect with Snowflake.
	PrivateLinkVpceID *string `json:"privateLinkVpceId,omitempty" tf:"private_link_vpce_id,omitempty"`
}

func (*SnowflakeVPCConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeVPCConfigurationInitParameters.

func (*SnowflakeVPCConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeVPCConfigurationObservation

type SnowflakeVPCConfigurationObservation struct {

	// The VPCE ID for Firehose to privately connect with Snowflake.
	PrivateLinkVpceID *string `json:"privateLinkVpceId,omitempty" tf:"private_link_vpce_id,omitempty"`
}

func (*SnowflakeVPCConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeVPCConfigurationObservation.

func (*SnowflakeVPCConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowflakeVPCConfigurationParameters

type SnowflakeVPCConfigurationParameters struct {

	// The VPCE ID for Firehose to privately connect with Snowflake.
	// +kubebuilder:validation:Optional
	PrivateLinkVpceID *string `json:"privateLinkVpceId" tf:"private_link_vpce_id,omitempty"`
}

func (*SnowflakeVPCConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowflakeVPCConfigurationParameters.

func (*SnowflakeVPCConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationCloudwatchLoggingOptionsInitParameters

type SplunkConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*SplunkConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationCloudwatchLoggingOptionsInitParameters.

func (*SplunkConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationCloudwatchLoggingOptionsObservation

type SplunkConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*SplunkConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationCloudwatchLoggingOptionsObservation.

func (*SplunkConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationCloudwatchLoggingOptionsParameters

type SplunkConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*SplunkConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationCloudwatchLoggingOptionsParameters.

func (*SplunkConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationInitParameters

type SplunkConfigurationInitParameters struct {

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *SplunkConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The amount of time, in seconds between 180 and 600, that Kinesis Firehose waits to receive an acknowledgment from Splunk after it sends it data.
	HecAcknowledgmentTimeout *float64 `json:"hecAcknowledgmentTimeout,omitempty" tf:"hec_acknowledgment_timeout,omitempty"`

	// The HTTP Event Collector (HEC) endpoint to which Kinesis Firehose sends your data.
	HecEndpoint *string `json:"hecEndpoint,omitempty" tf:"hec_endpoint,omitempty"`

	// The HEC endpoint type. Valid values are Raw or Event. The default value is Raw.
	HecEndpointType *string `json:"hecEndpointType,omitempty" tf:"hec_endpoint_type,omitempty"`

	// The GUID that you obtain from your Splunk cluster when you create a new HEC endpoint.
	HecTokenSecretRef v1.SecretKeySelector `json:"hecTokenSecretRef" tf:"-"`

	// The data processing configuration.  See processing_configuration block below for details.
	ProcessingConfiguration *SplunkConfigurationProcessingConfigurationInitParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to Splunk, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedEventsOnly and AllEvents.  Default value is FailedEventsOnly.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	S3Configuration *SplunkConfigurationS3ConfigurationInitParameters `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`
}

func (*SplunkConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationInitParameters.

func (*SplunkConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationObservation

type SplunkConfigurationObservation struct {

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *SplunkConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The amount of time, in seconds between 180 and 600, that Kinesis Firehose waits to receive an acknowledgment from Splunk after it sends it data.
	HecAcknowledgmentTimeout *float64 `json:"hecAcknowledgmentTimeout,omitempty" tf:"hec_acknowledgment_timeout,omitempty"`

	// The HTTP Event Collector (HEC) endpoint to which Kinesis Firehose sends your data.
	HecEndpoint *string `json:"hecEndpoint,omitempty" tf:"hec_endpoint,omitempty"`

	// The HEC endpoint type. Valid values are Raw or Event. The default value is Raw.
	HecEndpointType *string `json:"hecEndpointType,omitempty" tf:"hec_endpoint_type,omitempty"`

	// The data processing configuration.  See processing_configuration block below for details.
	ProcessingConfiguration *SplunkConfigurationProcessingConfigurationObservation `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to Splunk, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedEventsOnly and AllEvents.  Default value is FailedEventsOnly.
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	S3Configuration *SplunkConfigurationS3ConfigurationObservation `json:"s3Configuration,omitempty" tf:"s3_configuration,omitempty"`
}

func (*SplunkConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationObservation.

func (*SplunkConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationParameters

type SplunkConfigurationParameters struct {

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *SplunkConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The amount of time, in seconds between 180 and 600, that Kinesis Firehose waits to receive an acknowledgment from Splunk after it sends it data.
	// +kubebuilder:validation:Optional
	HecAcknowledgmentTimeout *float64 `json:"hecAcknowledgmentTimeout,omitempty" tf:"hec_acknowledgment_timeout,omitempty"`

	// The HTTP Event Collector (HEC) endpoint to which Kinesis Firehose sends your data.
	// +kubebuilder:validation:Optional
	HecEndpoint *string `json:"hecEndpoint" tf:"hec_endpoint,omitempty"`

	// The HEC endpoint type. Valid values are Raw or Event. The default value is Raw.
	// +kubebuilder:validation:Optional
	HecEndpointType *string `json:"hecEndpointType,omitempty" tf:"hec_endpoint_type,omitempty"`

	// The GUID that you obtain from your Splunk cluster when you create a new HEC endpoint.
	// +kubebuilder:validation:Optional
	HecTokenSecretRef v1.SecretKeySelector `json:"hecTokenSecretRef" tf:"-"`

	// The data processing configuration.  See processing_configuration block below for details.
	// +kubebuilder:validation:Optional
	ProcessingConfiguration *SplunkConfigurationProcessingConfigurationParameters `json:"processingConfiguration,omitempty" tf:"processing_configuration,omitempty"`

	// After an initial failure to deliver to Splunk, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt).  After this time has elapsed, the failed documents are written to Amazon S3.  The default value is 300s.  There will be no retry if the value is 0.
	// +kubebuilder:validation:Optional
	RetryDuration *float64 `json:"retryDuration,omitempty" tf:"retry_duration,omitempty"`

	// Defines how documents should be delivered to Amazon S3.  Valid values are FailedEventsOnly and AllEvents.  Default value is FailedEventsOnly.
	// +kubebuilder:validation:Optional
	S3BackupMode *string `json:"s3BackupMode,omitempty" tf:"s3_backup_mode,omitempty"`

	// The S3 Configuration. See s3_configuration block below for details.
	// +kubebuilder:validation:Optional
	S3Configuration *SplunkConfigurationS3ConfigurationParameters `json:"s3Configuration" tf:"s3_configuration,omitempty"`
}

func (*SplunkConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationParameters.

func (*SplunkConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationProcessingConfigurationInitParameters

type SplunkConfigurationProcessingConfigurationInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []SplunkConfigurationProcessingConfigurationProcessorsInitParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*SplunkConfigurationProcessingConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationProcessingConfigurationInitParameters.

func (*SplunkConfigurationProcessingConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationProcessingConfigurationObservation

type SplunkConfigurationProcessingConfigurationObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	Processors []SplunkConfigurationProcessingConfigurationProcessorsObservation `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*SplunkConfigurationProcessingConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationProcessingConfigurationObservation.

func (*SplunkConfigurationProcessingConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationProcessingConfigurationParameters

type SplunkConfigurationProcessingConfigurationParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the data processors as multiple blocks. See processors block below for details.
	// +kubebuilder:validation:Optional
	Processors []SplunkConfigurationProcessingConfigurationProcessorsParameters `json:"processors,omitempty" tf:"processors,omitempty"`
}

func (*SplunkConfigurationProcessingConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationProcessingConfigurationParameters.

func (*SplunkConfigurationProcessingConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationProcessingConfigurationProcessorsInitParameters

type SplunkConfigurationProcessingConfigurationProcessorsInitParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []SplunkConfigurationProcessingConfigurationProcessorsParametersInitParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*SplunkConfigurationProcessingConfigurationProcessorsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationProcessingConfigurationProcessorsInitParameters.

func (*SplunkConfigurationProcessingConfigurationProcessorsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationProcessingConfigurationProcessorsObservation

type SplunkConfigurationProcessingConfigurationProcessorsObservation struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	Parameters []SplunkConfigurationProcessingConfigurationProcessorsParametersObservation `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*SplunkConfigurationProcessingConfigurationProcessorsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationProcessingConfigurationProcessorsObservation.

func (*SplunkConfigurationProcessingConfigurationProcessorsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationProcessingConfigurationProcessorsParameters

type SplunkConfigurationProcessingConfigurationProcessorsParameters struct {

	// Specifies the processor parameters as multiple blocks. See parameters block below for details.
	// +kubebuilder:validation:Optional
	Parameters []SplunkConfigurationProcessingConfigurationProcessorsParametersParameters `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// The type of processor. Valid Values: RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*SplunkConfigurationProcessingConfigurationProcessorsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationProcessingConfigurationProcessorsParameters.

func (*SplunkConfigurationProcessingConfigurationProcessorsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationProcessingConfigurationProcessorsParametersInitParameters

type SplunkConfigurationProcessingConfigurationProcessorsParametersInitParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*SplunkConfigurationProcessingConfigurationProcessorsParametersInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationProcessingConfigurationProcessorsParametersInitParameters.

func (*SplunkConfigurationProcessingConfigurationProcessorsParametersInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationProcessingConfigurationProcessorsParametersObservation

type SplunkConfigurationProcessingConfigurationProcessorsParametersObservation struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	ParameterName *string `json:"parameterName,omitempty" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	ParameterValue *string `json:"parameterValue,omitempty" tf:"parameter_value,omitempty"`
}

func (*SplunkConfigurationProcessingConfigurationProcessorsParametersObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationProcessingConfigurationProcessorsParametersObservation.

func (*SplunkConfigurationProcessingConfigurationProcessorsParametersObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationProcessingConfigurationProcessorsParametersParameters

type SplunkConfigurationProcessingConfigurationProcessorsParametersParameters struct {

	// Parameter name. Valid Values: LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter. Validation is done against AWS SDK constants; so that values not explicitly listed may also work.
	// +kubebuilder:validation:Optional
	ParameterName *string `json:"parameterName" tf:"parameter_name,omitempty"`

	// Parameter value. Must be between 1 and 512 length (inclusive). When providing a Lambda ARN, you should specify the resource version as well.
	// +kubebuilder:validation:Optional
	ParameterValue *string `json:"parameterValue" tf:"parameter_value,omitempty"`
}

func (*SplunkConfigurationProcessingConfigurationProcessorsParametersParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationProcessingConfigurationProcessorsParametersParameters.

func (*SplunkConfigurationProcessingConfigurationProcessorsParametersParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters

type SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters.

func (*SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation

type SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation struct {

	// Enables or disables the logging. Defaults to false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation.

func (*SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters

type SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters struct {

	// Enables or disables the logging. Defaults to false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The CloudWatch group name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogGroupName *string `json:"logGroupName,omitempty" tf:"log_group_name,omitempty"`

	// The CloudWatch log stream name for logging. This value is required if enabled is true.
	// +kubebuilder:validation:Optional
	LogStreamName *string `json:"logStreamName,omitempty" tf:"log_stream_name,omitempty"`
}

func (*SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters.

func (*SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationS3ConfigurationInitParameters

type SplunkConfigurationS3ConfigurationInitParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsInitParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*SplunkConfigurationS3ConfigurationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationS3ConfigurationInitParameters.

func (*SplunkConfigurationS3ConfigurationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationS3ConfigurationObservation

type SplunkConfigurationS3ConfigurationObservation struct {

	// The ARN of the S3 bucket
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	CloudwatchLoggingOptions *SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsObservation `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*SplunkConfigurationS3ConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationS3ConfigurationObservation.

func (*SplunkConfigurationS3ConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SplunkConfigurationS3ConfigurationParameters

type SplunkConfigurationS3ConfigurationParameters struct {

	// The ARN of the S3 bucket
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	BucketArn *string `json:"bucketArn,omitempty" tf:"bucket_arn,omitempty"`

	// Reference to a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnRef *v1.Reference `json:"bucketArnRef,omitempty" tf:"-"`

	// Selector for a Bucket in s3 to populate bucketArn.
	// +kubebuilder:validation:Optional
	BucketArnSelector *v1.Selector `json:"bucketArnSelector,omitempty" tf:"-"`

	// Buffer incoming data for the specified period of time, in seconds between 0 to 60, before delivering it to the destination.  The default value is 60s.
	// +kubebuilder:validation:Optional
	BufferingInterval *float64 `json:"bufferingInterval,omitempty" tf:"buffering_interval,omitempty"`

	// Buffer incoming data to the specified size, in MBs between 1 to 5, before delivering it to the destination.  The default value is 5MB.
	// +kubebuilder:validation:Optional
	BufferingSize *float64 `json:"bufferingSize,omitempty" tf:"buffering_size,omitempty"`

	// The CloudWatch Logging Options for the delivery stream. See cloudwatch_logging_options block below for details.
	// +kubebuilder:validation:Optional
	CloudwatchLoggingOptions *SplunkConfigurationS3ConfigurationCloudwatchLoggingOptionsParameters `json:"cloudwatchLoggingOptions,omitempty" tf:"cloudwatch_logging_options,omitempty"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED. Other supported values are GZIP, ZIP, Snappy, & HADOOP_SNAPPY.
	// +kubebuilder:validation:Optional
	CompressionFormat *string `json:"compressionFormat,omitempty" tf:"compression_format,omitempty"`

	// Prefix added to failed records before writing them to S3. Not currently supported for redshift destination. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see Custom Prefixes for Amazon S3 Objects.
	// +kubebuilder:validation:Optional
	ErrorOutputPrefix *string `json:"errorOutputPrefix,omitempty" tf:"error_output_prefix,omitempty"`

	// Specifies the KMS key ARN the stream will use to encrypt data. If not set, no encryption will
	// be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket
	// +kubebuilder:validation:Optional
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*SplunkConfigurationS3ConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SplunkConfigurationS3ConfigurationParameters.

func (*SplunkConfigurationS3ConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VPCConfigInitParameters

type VPCConfigInitParameters struct {

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// A list of security group IDs to associate with Kinesis Firehose.
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// A list of subnet IDs to associate with Kinesis Firehose.
	// +listType=set
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`
}

func (*VPCConfigInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPCConfigInitParameters.

func (*VPCConfigInitParameters) DeepCopyInto

func (in *VPCConfigInitParameters) DeepCopyInto(out *VPCConfigInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VPCConfigObservation

type VPCConfigObservation struct {

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// A list of security group IDs to associate with Kinesis Firehose.
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// A list of subnet IDs to associate with Kinesis Firehose.
	// +listType=set
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`
}

func (*VPCConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPCConfigObservation.

func (*VPCConfigObservation) DeepCopyInto

func (in *VPCConfigObservation) DeepCopyInto(out *VPCConfigObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VPCConfigParameters

type VPCConfigParameters struct {

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon EC2 configuration API and for creating network interfaces. Make sure role has necessary IAM permissions
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// A list of security group IDs to associate with Kinesis Firehose.
	// +kubebuilder:validation:Optional
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds" tf:"security_group_ids,omitempty"`

	// A list of subnet IDs to associate with Kinesis Firehose.
	// +kubebuilder:validation:Optional
	// +listType=set
	SubnetIds []*string `json:"subnetIds" tf:"subnet_ids,omitempty"`
}

func (*VPCConfigParameters) DeepCopy

func (in *VPCConfigParameters) DeepCopy() *VPCConfigParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPCConfigParameters.

func (*VPCConfigParameters) DeepCopyInto

func (in *VPCConfigParameters) DeepCopyInto(out *VPCConfigParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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