awsiotfleetwise

package
v2.93.0 Latest Latest
Warning

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

Go to latest
Published: Aug 23, 2023 License: Apache-2.0 Imports: 7 Imported by: 0

README

AWS::IoTFleetWise Construct Library

This module is part of the AWS Cloud Development Kit project.

import iotfleetwise "github.com/aws/aws-cdk-go/awscdk"

There are no official hand-written (L2) constructs for this service yet. Here are some suggestions on how to proceed:

There are no hand-written (L2) constructs for this service yet. However, you can still use the automatically generated L1 constructs, and use this service exactly as you would using CloudFormation directly.

For more information on the resources and properties available for this service, see the CloudFormation documentation for AWS::IoTFleetWise.

(Read the CDK Contributing Guide and submit an RFC if you are interested in contributing to this construct library.)

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CfnCampaign_CFN_RESOURCE_TYPE_NAME

func CfnCampaign_CFN_RESOURCE_TYPE_NAME() *string

func CfnCampaign_IsCfnElement

func CfnCampaign_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnCampaign_IsCfnResource

func CfnCampaign_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnCampaign_IsConstruct

func CfnCampaign_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

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

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

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

func CfnDecoderManifest_CFN_RESOURCE_TYPE_NAME

func CfnDecoderManifest_CFN_RESOURCE_TYPE_NAME() *string

func CfnDecoderManifest_IsCfnElement

func CfnDecoderManifest_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnDecoderManifest_IsCfnResource

func CfnDecoderManifest_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnDecoderManifest_IsConstruct

func CfnDecoderManifest_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

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

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

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

func CfnFleet_CFN_RESOURCE_TYPE_NAME

func CfnFleet_CFN_RESOURCE_TYPE_NAME() *string

func CfnFleet_IsCfnElement

func CfnFleet_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnFleet_IsCfnResource

func CfnFleet_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnFleet_IsConstruct

func CfnFleet_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

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

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

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

func CfnModelManifest_CFN_RESOURCE_TYPE_NAME

func CfnModelManifest_CFN_RESOURCE_TYPE_NAME() *string

func CfnModelManifest_IsCfnElement

func CfnModelManifest_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnModelManifest_IsCfnResource

func CfnModelManifest_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnModelManifest_IsConstruct

func CfnModelManifest_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

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

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

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

func CfnSignalCatalog_CFN_RESOURCE_TYPE_NAME

func CfnSignalCatalog_CFN_RESOURCE_TYPE_NAME() *string

func CfnSignalCatalog_IsCfnElement

func CfnSignalCatalog_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnSignalCatalog_IsCfnResource

func CfnSignalCatalog_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnSignalCatalog_IsConstruct

func CfnSignalCatalog_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

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

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

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

func CfnVehicle_CFN_RESOURCE_TYPE_NAME

func CfnVehicle_CFN_RESOURCE_TYPE_NAME() *string

func CfnVehicle_IsCfnElement

func CfnVehicle_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnVehicle_IsCfnResource

func CfnVehicle_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnVehicle_IsConstruct

func CfnVehicle_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

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

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

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

func NewCfnCampaign_Override

func NewCfnCampaign_Override(c CfnCampaign, scope constructs.Construct, id *string, props *CfnCampaignProps)

func NewCfnDecoderManifest_Override

func NewCfnDecoderManifest_Override(c CfnDecoderManifest, scope constructs.Construct, id *string, props *CfnDecoderManifestProps)

func NewCfnFleet_Override

func NewCfnFleet_Override(c CfnFleet, scope constructs.Construct, id *string, props *CfnFleetProps)

func NewCfnModelManifest_Override

func NewCfnModelManifest_Override(c CfnModelManifest, scope constructs.Construct, id *string, props *CfnModelManifestProps)

func NewCfnSignalCatalog_Override

func NewCfnSignalCatalog_Override(c CfnSignalCatalog, scope constructs.Construct, id *string, props *CfnSignalCatalogProps)

func NewCfnVehicle_Override

func NewCfnVehicle_Override(c CfnVehicle, scope constructs.Construct, id *string, props *CfnVehicleProps)

Types

type CfnCampaign

type CfnCampaign interface {
	awscdk.CfnResource
	awscdk.IInspectable
	awscdk.ITaggable
	// Specifies how to update a campaign.
	//
	// The action can be one of the following:.
	Action() *string
	SetAction(val *string)
	// The Amazon Resource Name (ARN) of the campaign.
	AttrArn() *string
	// The time the campaign was created in seconds since epoch (January 1, 1970 at midnight UTC time).
	AttrCreationTime() *string
	// The last time the campaign was modified.
	AttrLastModificationTime() *string
	// The state of the campaign.
	//
	// The status can be one of: `CREATING` , `WAITING_FOR_APPROVAL` , `RUNNING` , and `SUSPENDED` .
	AttrStatus() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// The data collection scheme associated with the campaign.
	CollectionScheme() interface{}
	SetCollectionScheme(val interface{})
	// (Optional) Whether to compress signals before transmitting data to AWS IoT FleetWise .
	Compression() *string
	SetCompression(val *string)
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// (Optional) The destination where the campaign sends data.
	DataDestinationConfigs() interface{}
	SetDataDestinationConfigs(val interface{})
	// (Optional) A list of vehicle attributes to associate with a campaign.
	DataExtraDimensions() *[]*string
	SetDataExtraDimensions(val *[]*string)
	// (Optional) The description of the campaign.
	Description() *string
	SetDescription(val *string)
	// (Optional) Option for a vehicle to send diagnostic trouble codes to AWS IoT FleetWise .
	DiagnosticsMode() *string
	SetDiagnosticsMode(val *string)
	// (Optional) The time the campaign expires, in seconds since epoch (January 1, 1970 at midnight UTC time).
	ExpiryTime() *string
	SetExpiryTime(val *string)
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The name of a campaign.
	Name() *string
	SetName(val *string)
	// The tree node.
	Node() constructs.Node
	// (Optional) How long (in milliseconds) to collect raw data after a triggering event initiates the collection.
	PostTriggerCollectionDuration() *float64
	SetPostTriggerCollectionDuration(val *float64)
	// (Optional) A number indicating the priority of one campaign over another campaign for a certain vehicle or fleet.
	Priority() *float64
	SetPriority(val *float64)
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The Amazon Resource Name (ARN) of the signal catalog associated with the campaign.
	SignalCatalogArn() *string
	SetSignalCatalogArn(val *string)
	// (Optional) A list of information about signals to collect.
	SignalsToCollect() interface{}
	SetSignalsToCollect(val interface{})
	// (Optional) Whether to store collected data after a vehicle lost a connection with the cloud.
	SpoolingMode() *string
	SetSpoolingMode(val *string)
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// (Optional) The time, in milliseconds, to deliver a campaign after it was approved.
	StartTime() *string
	SetStartTime(val *string)
	// Tag Manager which manages the tags for this resource.
	Tags() awscdk.TagManager
	// (Optional) Metadata that can be used to manage the campaign.
	TagsRaw() *[]*awscdk.CfnTag
	SetTagsRaw(val *[]*awscdk.CfnTag)
	// The Amazon Resource Name (ARN) of a vehicle or fleet to which the campaign is deployed.
	TargetArn() *string
	SetTargetArn(val *string)
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Examines the CloudFormation resource and discloses attributes.
	Inspect(inspector awscdk.TreeInspector)
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

Creates an orchestration of data collection rules.

The AWS IoT FleetWise Edge Agent software running in vehicles uses campaigns to decide how to collect and transfer data to the cloud. You create campaigns in the cloud. After you or your team approve campaigns, AWS IoT FleetWise automatically deploys them to vehicles.

For more information, see [Collect and transfer data with campaigns](https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/campaigns.html) in the *AWS IoT FleetWise Developer Guide* .

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnCampaign := awscdk.Aws_iotfleetwise.NewCfnCampaign(this, jsii.String("MyCfnCampaign"), &CfnCampaignProps{
	Action: jsii.String("action"),
	CollectionScheme: &CollectionSchemeProperty{
		ConditionBasedCollectionScheme: &ConditionBasedCollectionSchemeProperty{
			Expression: jsii.String("expression"),

			// the properties below are optional
			ConditionLanguageVersion: jsii.Number(123),
			MinimumTriggerIntervalMs: jsii.Number(123),
			TriggerMode: jsii.String("triggerMode"),
		},
		TimeBasedCollectionScheme: &TimeBasedCollectionSchemeProperty{
			PeriodMs: jsii.Number(123),
		},
	},
	Name: jsii.String("name"),
	SignalCatalogArn: jsii.String("signalCatalogArn"),
	TargetArn: jsii.String("targetArn"),

	// the properties below are optional
	Compression: jsii.String("compression"),
	DataDestinationConfigs: []interface{}{
		&DataDestinationConfigProperty{
			S3Config: &S3ConfigProperty{
				BucketArn: jsii.String("bucketArn"),

				// the properties below are optional
				DataFormat: jsii.String("dataFormat"),
				Prefix: jsii.String("prefix"),
				StorageCompressionFormat: jsii.String("storageCompressionFormat"),
			},
			TimestreamConfig: &TimestreamConfigProperty{
				ExecutionRoleArn: jsii.String("executionRoleArn"),
				TimestreamTableArn: jsii.String("timestreamTableArn"),
			},
		},
	},
	DataExtraDimensions: []*string{
		jsii.String("dataExtraDimensions"),
	},
	Description: jsii.String("description"),
	DiagnosticsMode: jsii.String("diagnosticsMode"),
	ExpiryTime: jsii.String("expiryTime"),
	PostTriggerCollectionDuration: jsii.Number(123),
	Priority: jsii.Number(123),
	SignalsToCollect: []interface{}{
		&SignalInformationProperty{
			Name: jsii.String("name"),

			// the properties below are optional
			MaxSampleCount: jsii.Number(123),
			MinimumSamplingIntervalMs: jsii.Number(123),
		},
	},
	SpoolingMode: jsii.String("spoolingMode"),
	StartTime: jsii.String("startTime"),
	Tags: []cfnTag{
		&cfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
})

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html

func NewCfnCampaign

func NewCfnCampaign(scope constructs.Construct, id *string, props *CfnCampaignProps) CfnCampaign

type CfnCampaignProps

type CfnCampaignProps struct {
	// Specifies how to update a campaign. The action can be one of the following:.
	//
	// - `APPROVE` - To approve delivering a data collection scheme to vehicles.
	// - `SUSPEND` - To suspend collecting signal data. The campaign is deleted from vehicles and all vehicles in the suspended campaign will stop sending data.
	// - `RESUME` - To reactivate the `SUSPEND` campaign. The campaign is redeployed to all vehicles and the vehicles will resume sending data.
	// - `UPDATE` - To update a campaign.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-action
	//
	Action *string `field:"required" json:"action" yaml:"action"`
	// The data collection scheme associated with the campaign.
	//
	// You can specify a scheme that collects data based on time or an event.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-collectionscheme
	//
	CollectionScheme interface{} `field:"required" json:"collectionScheme" yaml:"collectionScheme"`
	// The name of a campaign.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-name
	//
	Name *string `field:"required" json:"name" yaml:"name"`
	// The Amazon Resource Name (ARN) of the signal catalog associated with the campaign.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-signalcatalogarn
	//
	SignalCatalogArn *string `field:"required" json:"signalCatalogArn" yaml:"signalCatalogArn"`
	// The Amazon Resource Name (ARN) of a vehicle or fleet to which the campaign is deployed.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-targetarn
	//
	TargetArn *string `field:"required" json:"targetArn" yaml:"targetArn"`
	// (Optional) Whether to compress signals before transmitting data to AWS IoT FleetWise .
	//
	// If you don't want to compress the signals, use `OFF` . If it's not specified, `SNAPPY` is used.
	//
	// Default: `SNAPPY`.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-compression
	//
	// Default: - "OFF".
	//
	Compression *string `field:"optional" json:"compression" yaml:"compression"`
	// (Optional) The destination where the campaign sends data.
	//
	// You can choose to send data to be stored in Amazon S3 or Amazon Timestream .
	//
	// Amazon S3 optimizes the cost of data storage and provides additional mechanisms to use vehicle data, such as data lakes, centralized data storage, data processing pipelines, and analytics. AWS IoT FleetWise supports at-least-once file delivery to S3. Your vehicle data is stored on multiple AWS IoT FleetWise servers for redundancy and high availability.
	//
	// You can use Amazon Timestream to access and analyze time series data, and Timestream to query vehicle data so that you can identify trends and patterns.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-datadestinationconfigs
	//
	DataDestinationConfigs interface{} `field:"optional" json:"dataDestinationConfigs" yaml:"dataDestinationConfigs"`
	// (Optional) A list of vehicle attributes to associate with a campaign.
	//
	// Enrich the data with specified vehicle attributes. For example, add `make` and `model` to the campaign, and AWS IoT FleetWise will associate the data with those attributes as dimensions in Amazon Timestream . You can then query the data against `make` and `model` .
	//
	// Default: An empty array.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-dataextradimensions
	//
	DataExtraDimensions *[]*string `field:"optional" json:"dataExtraDimensions" yaml:"dataExtraDimensions"`
	// (Optional) The description of the campaign.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
	// (Optional) Option for a vehicle to send diagnostic trouble codes to AWS IoT FleetWise .
	//
	// If you want to send diagnostic trouble codes, use `SEND_ACTIVE_DTCS` . If it's not specified, `OFF` is used.
	//
	// Default: `OFF`.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-diagnosticsmode
	//
	// Default: - "OFF".
	//
	DiagnosticsMode *string `field:"optional" json:"diagnosticsMode" yaml:"diagnosticsMode"`
	// (Optional) The time the campaign expires, in seconds since epoch (January 1, 1970 at midnight UTC time).
	//
	// Vehicle data isn't collected after the campaign expires.
	//
	// Default: 253402214400 (December 31, 9999, 00:00:00 UTC).
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-expirytime
	//
	// Default: - "253402214400".
	//
	ExpiryTime *string `field:"optional" json:"expiryTime" yaml:"expiryTime"`
	// (Optional) How long (in milliseconds) to collect raw data after a triggering event initiates the collection.
	//
	// If it's not specified, `0` is used.
	//
	// Default: `0`.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-posttriggercollectionduration
	//
	// Default: - 0.
	//
	PostTriggerCollectionDuration *float64 `field:"optional" json:"postTriggerCollectionDuration" yaml:"postTriggerCollectionDuration"`
	// (Optional) A number indicating the priority of one campaign over another campaign for a certain vehicle or fleet.
	//
	// A campaign with the lowest value is deployed to vehicles before any other campaigns. If it's not specified, `0` is used.
	//
	// Default: `0`.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-priority
	//
	// Default: - 0.
	//
	Priority *float64 `field:"optional" json:"priority" yaml:"priority"`
	// (Optional) A list of information about signals to collect.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-signalstocollect
	//
	SignalsToCollect interface{} `field:"optional" json:"signalsToCollect" yaml:"signalsToCollect"`
	// (Optional) Whether to store collected data after a vehicle lost a connection with the cloud.
	//
	// After a connection is re-established, the data is automatically forwarded to AWS IoT FleetWise . If you want to store collected data when a vehicle loses connection with the cloud, use `TO_DISK` . If it's not specified, `OFF` is used.
	//
	// Default: `OFF`.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-spoolingmode
	//
	// Default: - "OFF".
	//
	SpoolingMode *string `field:"optional" json:"spoolingMode" yaml:"spoolingMode"`
	// (Optional) The time, in milliseconds, to deliver a campaign after it was approved.
	//
	// If it's not specified, `0` is used.
	//
	// Default: `0`.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-starttime
	//
	// Default: - "0".
	//
	StartTime *string `field:"optional" json:"startTime" yaml:"startTime"`
	// (Optional) Metadata that can be used to manage the campaign.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-tags
	//
	Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"`
}

Properties for defining a `CfnCampaign`.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnCampaignProps := &CfnCampaignProps{
	Action: jsii.String("action"),
	CollectionScheme: &CollectionSchemeProperty{
		ConditionBasedCollectionScheme: &ConditionBasedCollectionSchemeProperty{
			Expression: jsii.String("expression"),

			// the properties below are optional
			ConditionLanguageVersion: jsii.Number(123),
			MinimumTriggerIntervalMs: jsii.Number(123),
			TriggerMode: jsii.String("triggerMode"),
		},
		TimeBasedCollectionScheme: &TimeBasedCollectionSchemeProperty{
			PeriodMs: jsii.Number(123),
		},
	},
	Name: jsii.String("name"),
	SignalCatalogArn: jsii.String("signalCatalogArn"),
	TargetArn: jsii.String("targetArn"),

	// the properties below are optional
	Compression: jsii.String("compression"),
	DataDestinationConfigs: []interface{}{
		&DataDestinationConfigProperty{
			S3Config: &S3ConfigProperty{
				BucketArn: jsii.String("bucketArn"),

				// the properties below are optional
				DataFormat: jsii.String("dataFormat"),
				Prefix: jsii.String("prefix"),
				StorageCompressionFormat: jsii.String("storageCompressionFormat"),
			},
			TimestreamConfig: &TimestreamConfigProperty{
				ExecutionRoleArn: jsii.String("executionRoleArn"),
				TimestreamTableArn: jsii.String("timestreamTableArn"),
			},
		},
	},
	DataExtraDimensions: []*string{
		jsii.String("dataExtraDimensions"),
	},
	Description: jsii.String("description"),
	DiagnosticsMode: jsii.String("diagnosticsMode"),
	ExpiryTime: jsii.String("expiryTime"),
	PostTriggerCollectionDuration: jsii.Number(123),
	Priority: jsii.Number(123),
	SignalsToCollect: []interface{}{
		&SignalInformationProperty{
			Name: jsii.String("name"),

			// the properties below are optional
			MaxSampleCount: jsii.Number(123),
			MinimumSamplingIntervalMs: jsii.Number(123),
		},
	},
	SpoolingMode: jsii.String("spoolingMode"),
	StartTime: jsii.String("startTime"),
	Tags: []cfnTag{
		&cfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html

type CfnCampaign_CollectionSchemeProperty

type CfnCampaign_CollectionSchemeProperty struct {
	// (Optional) Information about a collection scheme that uses a simple logical expression to recognize what data to collect.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-collectionscheme.html#cfn-iotfleetwise-campaign-collectionscheme-conditionbasedcollectionscheme
	//
	ConditionBasedCollectionScheme interface{} `field:"optional" json:"conditionBasedCollectionScheme" yaml:"conditionBasedCollectionScheme"`
	// (Optional) Information about a collection scheme that uses a time period to decide how often to collect data.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-collectionscheme.html#cfn-iotfleetwise-campaign-collectionscheme-timebasedcollectionscheme
	//
	TimeBasedCollectionScheme interface{} `field:"optional" json:"timeBasedCollectionScheme" yaml:"timeBasedCollectionScheme"`
}

Specifies what data to collect and how often or when to collect it.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

collectionSchemeProperty := &CollectionSchemeProperty{
	ConditionBasedCollectionScheme: &ConditionBasedCollectionSchemeProperty{
		Expression: jsii.String("expression"),

		// the properties below are optional
		ConditionLanguageVersion: jsii.Number(123),
		MinimumTriggerIntervalMs: jsii.Number(123),
		TriggerMode: jsii.String("triggerMode"),
	},
	TimeBasedCollectionScheme: &TimeBasedCollectionSchemeProperty{
		PeriodMs: jsii.Number(123),
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-collectionscheme.html

type CfnCampaign_ConditionBasedCollectionSchemeProperty

type CfnCampaign_ConditionBasedCollectionSchemeProperty struct {
	// The logical expression used to recognize what data to collect.
	//
	// For example, `$variable.Vehicle.OutsideAirTemperature >= 105.0` .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-conditionbasedcollectionscheme.html#cfn-iotfleetwise-campaign-conditionbasedcollectionscheme-expression
	//
	Expression *string `field:"required" json:"expression" yaml:"expression"`
	// (Optional) Specifies the version of the conditional expression language.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-conditionbasedcollectionscheme.html#cfn-iotfleetwise-campaign-conditionbasedcollectionscheme-conditionlanguageversion
	//
	ConditionLanguageVersion *float64 `field:"optional" json:"conditionLanguageVersion" yaml:"conditionLanguageVersion"`
	// (Optional) The minimum duration of time between two triggering events to collect data, in milliseconds.
	//
	// > If a signal changes often, you might want to collect data at a slower rate.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-conditionbasedcollectionscheme.html#cfn-iotfleetwise-campaign-conditionbasedcollectionscheme-minimumtriggerintervalms
	//
	MinimumTriggerIntervalMs *float64 `field:"optional" json:"minimumTriggerIntervalMs" yaml:"minimumTriggerIntervalMs"`
	// (Optional) Whether to collect data for all triggering events ( `ALWAYS` ).
	//
	// Specify ( `RISING_EDGE` ), or specify only when the condition first evaluates to false. For example, triggering on "AirbagDeployed"; Users aren't interested on triggering when the airbag is already exploded; they only care about the change from not deployed => deployed.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-conditionbasedcollectionscheme.html#cfn-iotfleetwise-campaign-conditionbasedcollectionscheme-triggermode
	//
	TriggerMode *string `field:"optional" json:"triggerMode" yaml:"triggerMode"`
}

Information about a collection scheme that uses a simple logical expression to recognize what data to collect.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

conditionBasedCollectionSchemeProperty := &ConditionBasedCollectionSchemeProperty{
	Expression: jsii.String("expression"),

	// the properties below are optional
	ConditionLanguageVersion: jsii.Number(123),
	MinimumTriggerIntervalMs: jsii.Number(123),
	TriggerMode: jsii.String("triggerMode"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-conditionbasedcollectionscheme.html

type CfnCampaign_DataDestinationConfigProperty added in v2.82.0

type CfnCampaign_DataDestinationConfigProperty struct {
	// (Optional) The Amazon S3 bucket where the AWS IoT FleetWise campaign sends data.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-datadestinationconfig.html#cfn-iotfleetwise-campaign-datadestinationconfig-s3config
	//
	S3Config interface{} `field:"optional" json:"s3Config" yaml:"s3Config"`
	// (Optional) The Amazon Timestream table where the campaign sends data.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-datadestinationconfig.html#cfn-iotfleetwise-campaign-datadestinationconfig-timestreamconfig
	//
	TimestreamConfig interface{} `field:"optional" json:"timestreamConfig" yaml:"timestreamConfig"`
}

The destination where the AWS IoT FleetWise campaign sends data.

You can send data to be stored in Amazon S3 or Amazon Timestream .

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

dataDestinationConfigProperty := &DataDestinationConfigProperty{
	S3Config: &S3ConfigProperty{
		BucketArn: jsii.String("bucketArn"),

		// the properties below are optional
		DataFormat: jsii.String("dataFormat"),
		Prefix: jsii.String("prefix"),
		StorageCompressionFormat: jsii.String("storageCompressionFormat"),
	},
	TimestreamConfig: &TimestreamConfigProperty{
		ExecutionRoleArn: jsii.String("executionRoleArn"),
		TimestreamTableArn: jsii.String("timestreamTableArn"),
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-datadestinationconfig.html

type CfnCampaign_S3ConfigProperty added in v2.82.0

type CfnCampaign_S3ConfigProperty struct {
	// The Amazon Resource Name (ARN) of the Amazon S3 bucket.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-s3config.html#cfn-iotfleetwise-campaign-s3config-bucketarn
	//
	BucketArn *string `field:"required" json:"bucketArn" yaml:"bucketArn"`
	// (Optional) Specify the format that files are saved in the Amazon S3 bucket.
	//
	// You can save files in an Apache Parquet or JSON format.
	//
	// - Parquet - Store data in a columnar storage file format. Parquet is optimal for fast data retrieval and can reduce costs. This option is selected by default.
	// - JSON - Store data in a standard text-based JSON file format.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-s3config.html#cfn-iotfleetwise-campaign-s3config-dataformat
	//
	DataFormat *string `field:"optional" json:"dataFormat" yaml:"dataFormat"`
	// (Optional) Enter an S3 bucket prefix.
	//
	// The prefix is the string of characters after the bucket name and before the object name. You can use the prefix to organize data stored in Amazon S3 buckets. For more information, see [Organizing objects using prefixes](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html) in the *Amazon Simple Storage Service User Guide* .
	//
	// By default, AWS IoT FleetWise sets the prefix `processed-data/year=YY/month=MM/date=DD/hour=HH/` (in UTC) to data it delivers to Amazon S3 . You can enter a prefix to append it to this default prefix. For example, if you enter the prefix `vehicles` , the prefix will be `vehicles/processed-data/year=YY/month=MM/date=DD/hour=HH/` .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-s3config.html#cfn-iotfleetwise-campaign-s3config-prefix
	//
	Prefix *string `field:"optional" json:"prefix" yaml:"prefix"`
	// (Optional) By default, stored data is compressed as a .gzip file. Compressed files have a reduced file size, which can optimize the cost of data storage.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-s3config.html#cfn-iotfleetwise-campaign-s3config-storagecompressionformat
	//
	StorageCompressionFormat *string `field:"optional" json:"storageCompressionFormat" yaml:"storageCompressionFormat"`
}

The Amazon S3 bucket where the AWS IoT FleetWise campaign sends data.

Amazon S3 is an object storage service that stores data as objects within buckets. For more information, see [Creating, configuring, and working with Amazon S3 buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html) in the *Amazon Simple Storage Service User Guide* .

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

s3ConfigProperty := &S3ConfigProperty{
	BucketArn: jsii.String("bucketArn"),

	// the properties below are optional
	DataFormat: jsii.String("dataFormat"),
	Prefix: jsii.String("prefix"),
	StorageCompressionFormat: jsii.String("storageCompressionFormat"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-s3config.html

type CfnCampaign_SignalInformationProperty

type CfnCampaign_SignalInformationProperty struct {
	// The name of the signal.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalinformation.html#cfn-iotfleetwise-campaign-signalinformation-name
	//
	Name *string `field:"required" json:"name" yaml:"name"`
	// (Optional) The maximum number of samples to collect.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalinformation.html#cfn-iotfleetwise-campaign-signalinformation-maxsamplecount
	//
	MaxSampleCount *float64 `field:"optional" json:"maxSampleCount" yaml:"maxSampleCount"`
	// (Optional) The minimum duration of time (in milliseconds) between two triggering events to collect data.
	//
	// > If a signal changes often, you might want to collect data at a slower rate.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalinformation.html#cfn-iotfleetwise-campaign-signalinformation-minimumsamplingintervalms
	//
	MinimumSamplingIntervalMs *float64 `field:"optional" json:"minimumSamplingIntervalMs" yaml:"minimumSamplingIntervalMs"`
}

Information about a signal.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

signalInformationProperty := &SignalInformationProperty{
	Name: jsii.String("name"),

	// the properties below are optional
	MaxSampleCount: jsii.Number(123),
	MinimumSamplingIntervalMs: jsii.Number(123),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalinformation.html

type CfnCampaign_TimeBasedCollectionSchemeProperty

type CfnCampaign_TimeBasedCollectionSchemeProperty struct {
	// The time period (in milliseconds) to decide how often to collect data.
	//
	// For example, if the time period is `60000` , the Edge Agent software collects data once every minute.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-timebasedcollectionscheme.html#cfn-iotfleetwise-campaign-timebasedcollectionscheme-periodms
	//
	PeriodMs *float64 `field:"required" json:"periodMs" yaml:"periodMs"`
}

Information about a collection scheme that uses a time period to decide how often to collect data.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

timeBasedCollectionSchemeProperty := &TimeBasedCollectionSchemeProperty{
	PeriodMs: jsii.Number(123),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-timebasedcollectionscheme.html

type CfnCampaign_TimestreamConfigProperty added in v2.82.0

type CfnCampaign_TimestreamConfigProperty struct {
	// The Amazon Resource Name (ARN) of the task execution role that grants AWS IoT FleetWise permission to deliver data to the Amazon Timestream table.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-timestreamconfig.html#cfn-iotfleetwise-campaign-timestreamconfig-executionrolearn
	//
	ExecutionRoleArn *string `field:"required" json:"executionRoleArn" yaml:"executionRoleArn"`
	// The Amazon Resource Name (ARN) of the Amazon Timestream table.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-timestreamconfig.html#cfn-iotfleetwise-campaign-timestreamconfig-timestreamtablearn
	//
	TimestreamTableArn *string `field:"required" json:"timestreamTableArn" yaml:"timestreamTableArn"`
}

The Amazon Timestream table where the AWS IoT FleetWise campaign sends data.

Timestream stores and organizes data to optimize query processing time and to reduce storage costs. For more information, see [Data modeling](https://docs.aws.amazon.com/timestream/latest/developerguide/data-modeling.html) in the *Amazon Timestream Developer Guide* .

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

timestreamConfigProperty := &TimestreamConfigProperty{
	ExecutionRoleArn: jsii.String("executionRoleArn"),
	TimestreamTableArn: jsii.String("timestreamTableArn"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-timestreamconfig.html

type CfnDecoderManifest

type CfnDecoderManifest interface {
	awscdk.CfnResource
	awscdk.IInspectable
	awscdk.ITaggable
	// The Amazon Resource Name (ARN) of the decoder manifest.
	AttrArn() *string
	// The time the decoder manifest was created in seconds since epoch (January 1, 1970 at midnight UTC time).
	AttrCreationTime() *string
	// The time the decoder manifest was last updated in seconds since epoch (January 1, 1970 at midnight UTC time).
	AttrLastModificationTime() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// (Optional) A brief description of the decoder manifest.
	Description() *string
	SetDescription(val *string)
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The Amazon Resource Name (ARN) of a vehicle model (model manifest) associated with the decoder manifest.
	ModelManifestArn() *string
	SetModelManifestArn(val *string)
	// The name of the decoder manifest.
	Name() *string
	SetName(val *string)
	// (Optional) A list of information about available network interfaces.
	NetworkInterfaces() interface{}
	SetNetworkInterfaces(val interface{})
	// The tree node.
	Node() constructs.Node
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// (Optional) A list of information about signal decoders.
	SignalDecoders() interface{}
	SetSignalDecoders(val interface{})
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// (Optional) The state of the decoder manifest.
	Status() *string
	SetStatus(val *string)
	// Tag Manager which manages the tags for this resource.
	Tags() awscdk.TagManager
	// (Optional) Metadata that can be used to manage the decoder manifest.
	TagsRaw() *[]*awscdk.CfnTag
	SetTagsRaw(val *[]*awscdk.CfnTag)
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Examines the CloudFormation resource and discloses attributes.
	Inspect(inspector awscdk.TreeInspector)
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

Creates the decoder manifest associated with a model manifest. To create a decoder manifest, the following must be true:.

- Every signal decoder has a unique name. - Each signal decoder is associated with a network interface. - Each network interface has a unique ID. - The signal decoders are specified in the model manifest.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnDecoderManifest := awscdk.Aws_iotfleetwise.NewCfnDecoderManifest(this, jsii.String("MyCfnDecoderManifest"), &CfnDecoderManifestProps{
	ModelManifestArn: jsii.String("modelManifestArn"),
	Name: jsii.String("name"),

	// the properties below are optional
	Description: jsii.String("description"),
	NetworkInterfaces: []interface{}{
		&NetworkInterfacesItemsProperty{
			InterfaceId: jsii.String("interfaceId"),
			Type: jsii.String("type"),

			// the properties below are optional
			CanInterface: &CanInterfaceProperty{
				Name: jsii.String("name"),

				// the properties below are optional
				ProtocolName: jsii.String("protocolName"),
				ProtocolVersion: jsii.String("protocolVersion"),
			},
			ObdInterface: &ObdInterfaceProperty{
				Name: jsii.String("name"),
				RequestMessageId: jsii.String("requestMessageId"),

				// the properties below are optional
				DtcRequestIntervalSeconds: jsii.String("dtcRequestIntervalSeconds"),
				HasTransmissionEcu: jsii.String("hasTransmissionEcu"),
				ObdStandard: jsii.String("obdStandard"),
				PidRequestIntervalSeconds: jsii.String("pidRequestIntervalSeconds"),
				UseExtendedIds: jsii.String("useExtendedIds"),
			},
		},
	},
	SignalDecoders: []interface{}{
		&SignalDecodersItemsProperty{
			FullyQualifiedName: jsii.String("fullyQualifiedName"),
			InterfaceId: jsii.String("interfaceId"),
			Type: jsii.String("type"),

			// the properties below are optional
			CanSignal: &CanSignalProperty{
				Factor: jsii.String("factor"),
				IsBigEndian: jsii.String("isBigEndian"),
				IsSigned: jsii.String("isSigned"),
				Length: jsii.String("length"),
				MessageId: jsii.String("messageId"),
				Offset: jsii.String("offset"),
				StartBit: jsii.String("startBit"),

				// the properties below are optional
				Name: jsii.String("name"),
			},
			ObdSignal: &ObdSignalProperty{
				ByteLength: jsii.String("byteLength"),
				Offset: jsii.String("offset"),
				Pid: jsii.String("pid"),
				PidResponseLength: jsii.String("pidResponseLength"),
				Scaling: jsii.String("scaling"),
				ServiceMode: jsii.String("serviceMode"),
				StartByte: jsii.String("startByte"),

				// the properties below are optional
				BitMaskLength: jsii.String("bitMaskLength"),
				BitRightShift: jsii.String("bitRightShift"),
			},
		},
	},
	Status: jsii.String("status"),
	Tags: []cfnTag{
		&cfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
})

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html

func NewCfnDecoderManifest

func NewCfnDecoderManifest(scope constructs.Construct, id *string, props *CfnDecoderManifestProps) CfnDecoderManifest

type CfnDecoderManifestProps

type CfnDecoderManifestProps struct {
	// The Amazon Resource Name (ARN) of a vehicle model (model manifest) associated with the decoder manifest.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html#cfn-iotfleetwise-decodermanifest-modelmanifestarn
	//
	ModelManifestArn *string `field:"required" json:"modelManifestArn" yaml:"modelManifestArn"`
	// The name of the decoder manifest.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html#cfn-iotfleetwise-decodermanifest-name
	//
	Name *string `field:"required" json:"name" yaml:"name"`
	// (Optional) A brief description of the decoder manifest.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html#cfn-iotfleetwise-decodermanifest-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
	// (Optional) A list of information about available network interfaces.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html#cfn-iotfleetwise-decodermanifest-networkinterfaces
	//
	NetworkInterfaces interface{} `field:"optional" json:"networkInterfaces" yaml:"networkInterfaces"`
	// (Optional) A list of information about signal decoders.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html#cfn-iotfleetwise-decodermanifest-signaldecoders
	//
	SignalDecoders interface{} `field:"optional" json:"signalDecoders" yaml:"signalDecoders"`
	// (Optional) The state of the decoder manifest.
	//
	// If the status is `ACTIVE` , the decoder manifest can't be edited. If the status is marked `DRAFT` , you can edit the decoder manifest.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html#cfn-iotfleetwise-decodermanifest-status
	//
	// Default: - "DRAFT".
	//
	Status *string `field:"optional" json:"status" yaml:"status"`
	// (Optional) Metadata that can be used to manage the decoder manifest.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html#cfn-iotfleetwise-decodermanifest-tags
	//
	Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"`
}

Properties for defining a `CfnDecoderManifest`.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnDecoderManifestProps := &CfnDecoderManifestProps{
	ModelManifestArn: jsii.String("modelManifestArn"),
	Name: jsii.String("name"),

	// the properties below are optional
	Description: jsii.String("description"),
	NetworkInterfaces: []interface{}{
		&NetworkInterfacesItemsProperty{
			InterfaceId: jsii.String("interfaceId"),
			Type: jsii.String("type"),

			// the properties below are optional
			CanInterface: &CanInterfaceProperty{
				Name: jsii.String("name"),

				// the properties below are optional
				ProtocolName: jsii.String("protocolName"),
				ProtocolVersion: jsii.String("protocolVersion"),
			},
			ObdInterface: &ObdInterfaceProperty{
				Name: jsii.String("name"),
				RequestMessageId: jsii.String("requestMessageId"),

				// the properties below are optional
				DtcRequestIntervalSeconds: jsii.String("dtcRequestIntervalSeconds"),
				HasTransmissionEcu: jsii.String("hasTransmissionEcu"),
				ObdStandard: jsii.String("obdStandard"),
				PidRequestIntervalSeconds: jsii.String("pidRequestIntervalSeconds"),
				UseExtendedIds: jsii.String("useExtendedIds"),
			},
		},
	},
	SignalDecoders: []interface{}{
		&SignalDecodersItemsProperty{
			FullyQualifiedName: jsii.String("fullyQualifiedName"),
			InterfaceId: jsii.String("interfaceId"),
			Type: jsii.String("type"),

			// the properties below are optional
			CanSignal: &CanSignalProperty{
				Factor: jsii.String("factor"),
				IsBigEndian: jsii.String("isBigEndian"),
				IsSigned: jsii.String("isSigned"),
				Length: jsii.String("length"),
				MessageId: jsii.String("messageId"),
				Offset: jsii.String("offset"),
				StartBit: jsii.String("startBit"),

				// the properties below are optional
				Name: jsii.String("name"),
			},
			ObdSignal: &ObdSignalProperty{
				ByteLength: jsii.String("byteLength"),
				Offset: jsii.String("offset"),
				Pid: jsii.String("pid"),
				PidResponseLength: jsii.String("pidResponseLength"),
				Scaling: jsii.String("scaling"),
				ServiceMode: jsii.String("serviceMode"),
				StartByte: jsii.String("startByte"),

				// the properties below are optional
				BitMaskLength: jsii.String("bitMaskLength"),
				BitRightShift: jsii.String("bitRightShift"),
			},
		},
	},
	Status: jsii.String("status"),
	Tags: []cfnTag{
		&cfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html

type CfnDecoderManifest_CanInterfaceProperty

type CfnDecoderManifest_CanInterfaceProperty struct {
	// The unique name of the interface.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-caninterface.html#cfn-iotfleetwise-decodermanifest-caninterface-name
	//
	Name *string `field:"required" json:"name" yaml:"name"`
	// (Optional) The name of the communication protocol for the interface.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-caninterface.html#cfn-iotfleetwise-decodermanifest-caninterface-protocolname
	//
	ProtocolName *string `field:"optional" json:"protocolName" yaml:"protocolName"`
	// (Optional) The version of the communication protocol for the interface.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-caninterface.html#cfn-iotfleetwise-decodermanifest-caninterface-protocolversion
	//
	ProtocolVersion *string `field:"optional" json:"protocolVersion" yaml:"protocolVersion"`
}

A single controller area network (CAN) device interface.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

canInterfaceProperty := &CanInterfaceProperty{
	Name: jsii.String("name"),

	// the properties below are optional
	ProtocolName: jsii.String("protocolName"),
	ProtocolVersion: jsii.String("protocolVersion"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-caninterface.html

type CfnDecoderManifest_CanNetworkInterfaceProperty

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

canNetworkInterfaceProperty := &CanNetworkInterfaceProperty{
	CanInterface: &CanInterfaceProperty{
		Name: jsii.String("name"),

		// the properties below are optional
		ProtocolName: jsii.String("protocolName"),
		ProtocolVersion: jsii.String("protocolVersion"),
	},
	InterfaceId: jsii.String("interfaceId"),
	Type: jsii.String("type"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cannetworkinterface.html

type CfnDecoderManifest_CanSignalDecoderProperty

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

canSignalDecoderProperty := &CanSignalDecoderProperty{
	CanSignal: &CanSignalProperty{
		Factor: jsii.String("factor"),
		IsBigEndian: jsii.String("isBigEndian"),
		IsSigned: jsii.String("isSigned"),
		Length: jsii.String("length"),
		MessageId: jsii.String("messageId"),
		Offset: jsii.String("offset"),
		StartBit: jsii.String("startBit"),

		// the properties below are optional
		Name: jsii.String("name"),
	},
	FullyQualifiedName: jsii.String("fullyQualifiedName"),
	InterfaceId: jsii.String("interfaceId"),
	Type: jsii.String("type"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignaldecoder.html

type CfnDecoderManifest_CanSignalProperty

type CfnDecoderManifest_CanSignalProperty struct {
	// A multiplier used to decode the CAN message.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-factor
	//
	Factor *string `field:"required" json:"factor" yaml:"factor"`
	// Whether the byte ordering of a CAN message is big-endian.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-isbigendian
	//
	IsBigEndian *string `field:"required" json:"isBigEndian" yaml:"isBigEndian"`
	// Whether the message data is specified as a signed value.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-issigned
	//
	IsSigned *string `field:"required" json:"isSigned" yaml:"isSigned"`
	// How many bytes of data are in the message.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-length
	//
	Length *string `field:"required" json:"length" yaml:"length"`
	// The ID of the message.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-messageid
	//
	MessageId *string `field:"required" json:"messageId" yaml:"messageId"`
	// The offset used to calculate the signal value.
	//
	// Combined with factor, the calculation is `value = raw_value * factor + offset` .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-offset
	//
	Offset *string `field:"required" json:"offset" yaml:"offset"`
	// Indicates the beginning of the CAN message.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-startbit
	//
	StartBit *string `field:"required" json:"startBit" yaml:"startBit"`
	// (Optional) The name of the signal.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-name
	//
	Name *string `field:"optional" json:"name" yaml:"name"`
}

(Optional) Information about a single controller area network (CAN) signal and the messages it receives and transmits.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

canSignalProperty := &CanSignalProperty{
	Factor: jsii.String("factor"),
	IsBigEndian: jsii.String("isBigEndian"),
	IsSigned: jsii.String("isSigned"),
	Length: jsii.String("length"),
	MessageId: jsii.String("messageId"),
	Offset: jsii.String("offset"),
	StartBit: jsii.String("startBit"),

	// the properties below are optional
	Name: jsii.String("name"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html

type CfnDecoderManifest_NetworkInterfacesItemsProperty added in v2.55.0

type CfnDecoderManifest_NetworkInterfacesItemsProperty struct {
	// The ID of the network interface.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-networkinterfacesitems.html#cfn-iotfleetwise-decodermanifest-networkinterfacesitems-interfaceid
	//
	InterfaceId *string `field:"required" json:"interfaceId" yaml:"interfaceId"`
	// The network protocol for the vehicle.
	//
	// For example, `CAN_SIGNAL` specifies a protocol that defines how data is communicated between electronic control units (ECUs). `OBD_SIGNAL` specifies a protocol that defines how self-diagnostic data is communicated between ECUs.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-networkinterfacesitems.html#cfn-iotfleetwise-decodermanifest-networkinterfacesitems-type
	//
	Type *string `field:"required" json:"type" yaml:"type"`
	// (Optional) Information about a network interface specified by the Controller Area Network (CAN) protocol.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-networkinterfacesitems.html#cfn-iotfleetwise-decodermanifest-networkinterfacesitems-caninterface
	//
	CanInterface interface{} `field:"optional" json:"canInterface" yaml:"canInterface"`
	// (Optional) Information about a network interface specified by the On-board diagnostic (OBD) II protocol.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-networkinterfacesitems.html#cfn-iotfleetwise-decodermanifest-networkinterfacesitems-obdinterface
	//
	ObdInterface interface{} `field:"optional" json:"obdInterface" yaml:"obdInterface"`
}

(Optional) A list of information about available network interfaces.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

networkInterfacesItemsProperty := &NetworkInterfacesItemsProperty{
	InterfaceId: jsii.String("interfaceId"),
	Type: jsii.String("type"),

	// the properties below are optional
	CanInterface: &CanInterfaceProperty{
		Name: jsii.String("name"),

		// the properties below are optional
		ProtocolName: jsii.String("protocolName"),
		ProtocolVersion: jsii.String("protocolVersion"),
	},
	ObdInterface: &ObdInterfaceProperty{
		Name: jsii.String("name"),
		RequestMessageId: jsii.String("requestMessageId"),

		// the properties below are optional
		DtcRequestIntervalSeconds: jsii.String("dtcRequestIntervalSeconds"),
		HasTransmissionEcu: jsii.String("hasTransmissionEcu"),
		ObdStandard: jsii.String("obdStandard"),
		PidRequestIntervalSeconds: jsii.String("pidRequestIntervalSeconds"),
		UseExtendedIds: jsii.String("useExtendedIds"),
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-networkinterfacesitems.html

type CfnDecoderManifest_ObdInterfaceProperty

type CfnDecoderManifest_ObdInterfaceProperty struct {
	// The name of the interface.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdinterface.html#cfn-iotfleetwise-decodermanifest-obdinterface-name
	//
	Name *string `field:"required" json:"name" yaml:"name"`
	// The ID of the message requesting vehicle data.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdinterface.html#cfn-iotfleetwise-decodermanifest-obdinterface-requestmessageid
	//
	RequestMessageId *string `field:"required" json:"requestMessageId" yaml:"requestMessageId"`
	// (Optional) The maximum number message requests per diagnostic trouble code per second.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdinterface.html#cfn-iotfleetwise-decodermanifest-obdinterface-dtcrequestintervalseconds
	//
	DtcRequestIntervalSeconds *string `field:"optional" json:"dtcRequestIntervalSeconds" yaml:"dtcRequestIntervalSeconds"`
	// (Optional) Whether the vehicle has a transmission control module (TCM).
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdinterface.html#cfn-iotfleetwise-decodermanifest-obdinterface-hastransmissionecu
	//
	HasTransmissionEcu *string `field:"optional" json:"hasTransmissionEcu" yaml:"hasTransmissionEcu"`
	// (Optional) The standard OBD II PID.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdinterface.html#cfn-iotfleetwise-decodermanifest-obdinterface-obdstandard
	//
	ObdStandard *string `field:"optional" json:"obdStandard" yaml:"obdStandard"`
	// (Optional) The maximum number message requests per second.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdinterface.html#cfn-iotfleetwise-decodermanifest-obdinterface-pidrequestintervalseconds
	//
	PidRequestIntervalSeconds *string `field:"optional" json:"pidRequestIntervalSeconds" yaml:"pidRequestIntervalSeconds"`
	// (Optional) Whether to use extended IDs in the message.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdinterface.html#cfn-iotfleetwise-decodermanifest-obdinterface-useextendedids
	//
	UseExtendedIds *string `field:"optional" json:"useExtendedIds" yaml:"useExtendedIds"`
}

A network interface that specifies the On-board diagnostic (OBD) II network protocol.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

obdInterfaceProperty := &ObdInterfaceProperty{
	Name: jsii.String("name"),
	RequestMessageId: jsii.String("requestMessageId"),

	// the properties below are optional
	DtcRequestIntervalSeconds: jsii.String("dtcRequestIntervalSeconds"),
	HasTransmissionEcu: jsii.String("hasTransmissionEcu"),
	ObdStandard: jsii.String("obdStandard"),
	PidRequestIntervalSeconds: jsii.String("pidRequestIntervalSeconds"),
	UseExtendedIds: jsii.String("useExtendedIds"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdinterface.html

type CfnDecoderManifest_ObdNetworkInterfaceProperty

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

obdNetworkInterfaceProperty := &ObdNetworkInterfaceProperty{
	InterfaceId: jsii.String("interfaceId"),
	ObdInterface: &ObdInterfaceProperty{
		Name: jsii.String("name"),
		RequestMessageId: jsii.String("requestMessageId"),

		// the properties below are optional
		DtcRequestIntervalSeconds: jsii.String("dtcRequestIntervalSeconds"),
		HasTransmissionEcu: jsii.String("hasTransmissionEcu"),
		ObdStandard: jsii.String("obdStandard"),
		PidRequestIntervalSeconds: jsii.String("pidRequestIntervalSeconds"),
		UseExtendedIds: jsii.String("useExtendedIds"),
	},
	Type: jsii.String("type"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdnetworkinterface.html

type CfnDecoderManifest_ObdSignalDecoderProperty

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

obdSignalDecoderProperty := &ObdSignalDecoderProperty{
	FullyQualifiedName: jsii.String("fullyQualifiedName"),
	InterfaceId: jsii.String("interfaceId"),
	ObdSignal: &ObdSignalProperty{
		ByteLength: jsii.String("byteLength"),
		Offset: jsii.String("offset"),
		Pid: jsii.String("pid"),
		PidResponseLength: jsii.String("pidResponseLength"),
		Scaling: jsii.String("scaling"),
		ServiceMode: jsii.String("serviceMode"),
		StartByte: jsii.String("startByte"),

		// the properties below are optional
		BitMaskLength: jsii.String("bitMaskLength"),
		BitRightShift: jsii.String("bitRightShift"),
	},
	Type: jsii.String("type"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignaldecoder.html

type CfnDecoderManifest_ObdSignalProperty

type CfnDecoderManifest_ObdSignalProperty struct {
	// The length of a message.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-bytelength
	//
	ByteLength *string `field:"required" json:"byteLength" yaml:"byteLength"`
	// The offset used to calculate the signal value.
	//
	// Combined with scaling, the calculation is `value = raw_value * scaling + offset` .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-offset
	//
	Offset *string `field:"required" json:"offset" yaml:"offset"`
	// The diagnostic code used to request data from a vehicle for this signal.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-pid
	//
	Pid *string `field:"required" json:"pid" yaml:"pid"`
	// The length of the requested data.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-pidresponselength
	//
	PidResponseLength *string `field:"required" json:"pidResponseLength" yaml:"pidResponseLength"`
	// A multiplier used to decode the message.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-scaling
	//
	Scaling *string `field:"required" json:"scaling" yaml:"scaling"`
	// The mode of operation (diagnostic service) in a message.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-servicemode
	//
	ServiceMode *string `field:"required" json:"serviceMode" yaml:"serviceMode"`
	// Indicates the beginning of the message.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-startbyte
	//
	StartByte *string `field:"required" json:"startByte" yaml:"startByte"`
	// (Optional) The number of bits to mask in a message.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-bitmasklength
	//
	BitMaskLength *string `field:"optional" json:"bitMaskLength" yaml:"bitMaskLength"`
	// (Optional) The number of positions to shift bits in the message.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-bitrightshift
	//
	BitRightShift *string `field:"optional" json:"bitRightShift" yaml:"bitRightShift"`
}

Information about signal messages using the on-board diagnostics (OBD) II protocol in a vehicle.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

obdSignalProperty := &ObdSignalProperty{
	ByteLength: jsii.String("byteLength"),
	Offset: jsii.String("offset"),
	Pid: jsii.String("pid"),
	PidResponseLength: jsii.String("pidResponseLength"),
	Scaling: jsii.String("scaling"),
	ServiceMode: jsii.String("serviceMode"),
	StartByte: jsii.String("startByte"),

	// the properties below are optional
	BitMaskLength: jsii.String("bitMaskLength"),
	BitRightShift: jsii.String("bitRightShift"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html

type CfnDecoderManifest_SignalDecodersItemsProperty added in v2.55.0

type CfnDecoderManifest_SignalDecodersItemsProperty struct {
	// The fully qualified name of a signal decoder as defined in a vehicle model.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-signaldecodersitems.html#cfn-iotfleetwise-decodermanifest-signaldecodersitems-fullyqualifiedname
	//
	FullyQualifiedName *string `field:"required" json:"fullyQualifiedName" yaml:"fullyQualifiedName"`
	// The ID of a network interface that specifies what network protocol a vehicle follows.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-signaldecodersitems.html#cfn-iotfleetwise-decodermanifest-signaldecodersitems-interfaceid
	//
	InterfaceId *string `field:"required" json:"interfaceId" yaml:"interfaceId"`
	// The network protocol for the vehicle.
	//
	// For example, `CAN_SIGNAL` specifies a protocol that defines how data is communicated between electronic control units (ECUs). `OBD_SIGNAL` specifies a protocol that defines how self-diagnostic data is communicated between ECUs.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-signaldecodersitems.html#cfn-iotfleetwise-decodermanifest-signaldecodersitems-type
	//
	Type *string `field:"required" json:"type" yaml:"type"`
	// (Optional) Information about a single controller area network (CAN) signal and the messages it receives and transmits.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-signaldecodersitems.html#cfn-iotfleetwise-decodermanifest-signaldecodersitems-cansignal
	//
	CanSignal interface{} `field:"optional" json:"canSignal" yaml:"canSignal"`
	// (Optional) Information about signal messages using the on-board diagnostics (OBD) II protocol in a vehicle.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-signaldecodersitems.html#cfn-iotfleetwise-decodermanifest-signaldecodersitems-obdsignal
	//
	ObdSignal interface{} `field:"optional" json:"obdSignal" yaml:"obdSignal"`
}

Information about a signal decoder.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

signalDecodersItemsProperty := &SignalDecodersItemsProperty{
	FullyQualifiedName: jsii.String("fullyQualifiedName"),
	InterfaceId: jsii.String("interfaceId"),
	Type: jsii.String("type"),

	// the properties below are optional
	CanSignal: &CanSignalProperty{
		Factor: jsii.String("factor"),
		IsBigEndian: jsii.String("isBigEndian"),
		IsSigned: jsii.String("isSigned"),
		Length: jsii.String("length"),
		MessageId: jsii.String("messageId"),
		Offset: jsii.String("offset"),
		StartBit: jsii.String("startBit"),

		// the properties below are optional
		Name: jsii.String("name"),
	},
	ObdSignal: &ObdSignalProperty{
		ByteLength: jsii.String("byteLength"),
		Offset: jsii.String("offset"),
		Pid: jsii.String("pid"),
		PidResponseLength: jsii.String("pidResponseLength"),
		Scaling: jsii.String("scaling"),
		ServiceMode: jsii.String("serviceMode"),
		StartByte: jsii.String("startByte"),

		// the properties below are optional
		BitMaskLength: jsii.String("bitMaskLength"),
		BitRightShift: jsii.String("bitRightShift"),
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-signaldecodersitems.html

type CfnFleet

type CfnFleet interface {
	awscdk.CfnResource
	awscdk.IInspectable
	awscdk.ITaggable
	// The Amazon Resource Name (ARN) of the created fleet.
	AttrArn() *string
	// The time the fleet was created in seconds since epoch (January 1, 1970 at midnight UTC time).
	AttrCreationTime() *string
	// The time the fleet was last updated, in seconds since epoch (January 1, 1970 at midnight UTC time).
	AttrLastModificationTime() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// (Optional) A brief description of the fleet.
	Description() *string
	SetDescription(val *string)
	// The unique ID of the fleet.
	Id() *string
	SetId(val *string)
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The ARN of the signal catalog associated with the fleet.
	SignalCatalogArn() *string
	SetSignalCatalogArn(val *string)
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Tag Manager which manages the tags for this resource.
	Tags() awscdk.TagManager
	// (Optional) Metadata that can be used to manage the fleet.
	TagsRaw() *[]*awscdk.CfnTag
	SetTagsRaw(val *[]*awscdk.CfnTag)
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Examines the CloudFormation resource and discloses attributes.
	Inspect(inspector awscdk.TreeInspector)
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

Creates a fleet that represents a group of vehicles.

> You must create both a signal catalog and vehicles before you can create a fleet.

For more information, see [Fleets](https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/fleets.html) in the *AWS IoT FleetWise Developer Guide* .

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnFleet := awscdk.Aws_iotfleetwise.NewCfnFleet(this, jsii.String("MyCfnFleet"), &CfnFleetProps{
	Id: jsii.String("id"),
	SignalCatalogArn: jsii.String("signalCatalogArn"),

	// the properties below are optional
	Description: jsii.String("description"),
	Tags: []cfnTag{
		&cfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
})

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-fleet.html

func NewCfnFleet

func NewCfnFleet(scope constructs.Construct, id *string, props *CfnFleetProps) CfnFleet

type CfnFleetProps

type CfnFleetProps struct {
	// The unique ID of the fleet.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-fleet.html#cfn-iotfleetwise-fleet-id
	//
	Id *string `field:"required" json:"id" yaml:"id"`
	// The ARN of the signal catalog associated with the fleet.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-fleet.html#cfn-iotfleetwise-fleet-signalcatalogarn
	//
	SignalCatalogArn *string `field:"required" json:"signalCatalogArn" yaml:"signalCatalogArn"`
	// (Optional) A brief description of the fleet.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-fleet.html#cfn-iotfleetwise-fleet-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
	// (Optional) Metadata that can be used to manage the fleet.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-fleet.html#cfn-iotfleetwise-fleet-tags
	//
	Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"`
}

Properties for defining a `CfnFleet`.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnFleetProps := &CfnFleetProps{
	Id: jsii.String("id"),
	SignalCatalogArn: jsii.String("signalCatalogArn"),

	// the properties below are optional
	Description: jsii.String("description"),
	Tags: []cfnTag{
		&cfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-fleet.html

type CfnModelManifest

type CfnModelManifest interface {
	awscdk.CfnResource
	awscdk.IInspectable
	awscdk.ITaggable
	// The Amazon Resource Name (ARN) of the vehicle model.
	AttrArn() *string
	// The time the vehicle model was created, in seconds since epoch (January 1, 1970 at midnight UTC time).
	AttrCreationTime() *string
	// The time the vehicle model was last updated, in seconds since epoch (January 1, 1970 at midnight UTC time).
	AttrLastModificationTime() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// (Optional) A brief description of the vehicle model.
	Description() *string
	SetDescription(val *string)
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The name of the vehicle model.
	Name() *string
	SetName(val *string)
	// The tree node.
	Node() constructs.Node
	// (Optional) A list of nodes, which are a general abstraction of signals.
	Nodes() *[]*string
	SetNodes(val *[]*string)
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The Amazon Resource Name (ARN) of the signal catalog associated with the vehicle model.
	SignalCatalogArn() *string
	SetSignalCatalogArn(val *string)
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// (Optional) The state of the vehicle model.
	Status() *string
	SetStatus(val *string)
	// Tag Manager which manages the tags for this resource.
	Tags() awscdk.TagManager
	// (Optional) Metadata that can be used to manage the vehicle model.
	TagsRaw() *[]*awscdk.CfnTag
	SetTagsRaw(val *[]*awscdk.CfnTag)
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Examines the CloudFormation resource and discloses attributes.
	Inspect(inspector awscdk.TreeInspector)
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

Creates a vehicle model (model manifest) that specifies signals (attributes, branches, sensors, and actuators).

For more information, see [Vehicle models](https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/vehicle-models.html) in the *AWS IoT FleetWise Developer Guide* .

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnModelManifest := awscdk.Aws_iotfleetwise.NewCfnModelManifest(this, jsii.String("MyCfnModelManifest"), &CfnModelManifestProps{
	Name: jsii.String("name"),
	SignalCatalogArn: jsii.String("signalCatalogArn"),

	// the properties below are optional
	Description: jsii.String("description"),
	Nodes: []*string{
		jsii.String("nodes"),
	},
	Status: jsii.String("status"),
	Tags: []cfnTag{
		&cfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
})

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-modelmanifest.html

func NewCfnModelManifest

func NewCfnModelManifest(scope constructs.Construct, id *string, props *CfnModelManifestProps) CfnModelManifest

type CfnModelManifestProps

type CfnModelManifestProps struct {
	// The name of the vehicle model.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-modelmanifest.html#cfn-iotfleetwise-modelmanifest-name
	//
	Name *string `field:"required" json:"name" yaml:"name"`
	// The Amazon Resource Name (ARN) of the signal catalog associated with the vehicle model.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-modelmanifest.html#cfn-iotfleetwise-modelmanifest-signalcatalogarn
	//
	SignalCatalogArn *string `field:"required" json:"signalCatalogArn" yaml:"signalCatalogArn"`
	// (Optional) A brief description of the vehicle model.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-modelmanifest.html#cfn-iotfleetwise-modelmanifest-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
	// (Optional) A list of nodes, which are a general abstraction of signals.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-modelmanifest.html#cfn-iotfleetwise-modelmanifest-nodes
	//
	Nodes *[]*string `field:"optional" json:"nodes" yaml:"nodes"`
	// (Optional) The state of the vehicle model.
	//
	// If the status is `ACTIVE` , the vehicle model can't be edited. If the status is `DRAFT` , you can edit the vehicle model.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-modelmanifest.html#cfn-iotfleetwise-modelmanifest-status
	//
	// Default: - "DRAFT".
	//
	Status *string `field:"optional" json:"status" yaml:"status"`
	// (Optional) Metadata that can be used to manage the vehicle model.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-modelmanifest.html#cfn-iotfleetwise-modelmanifest-tags
	//
	Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"`
}

Properties for defining a `CfnModelManifest`.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnModelManifestProps := &CfnModelManifestProps{
	Name: jsii.String("name"),
	SignalCatalogArn: jsii.String("signalCatalogArn"),

	// the properties below are optional
	Description: jsii.String("description"),
	Nodes: []*string{
		jsii.String("nodes"),
	},
	Status: jsii.String("status"),
	Tags: []cfnTag{
		&cfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-modelmanifest.html

type CfnSignalCatalog

type CfnSignalCatalog interface {
	awscdk.CfnResource
	awscdk.IInspectable
	awscdk.ITaggable
	// The Amazon Resource Name (ARN) of the signal catalog.
	AttrArn() *string
	// The time the signal catalog was created in seconds since epoch (January 1, 1970 at midnight UTC time).
	AttrCreationTime() *string
	// The time the signal catalog was last updated in seconds since epoch (January 1, 1970 at midnight UTC time).
	AttrLastModificationTime() *string
	// The total number of nodes in a vehicle network that represent actuators.
	AttrNodeCountsTotalActuators() awscdk.IResolvable
	// The total number of nodes in a vehicle network that represent attributes.
	AttrNodeCountsTotalAttributes() awscdk.IResolvable
	// The total number of nodes in a vehicle network that represent branches.
	AttrNodeCountsTotalBranches() awscdk.IResolvable
	// The total number of nodes in a vehicle network.
	AttrNodeCountsTotalNodes() awscdk.IResolvable
	// The total number of nodes in a vehicle network that represent sensors.
	AttrNodeCountsTotalSensors() awscdk.IResolvable
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// (Optional) A brief description of the signal catalog.
	Description() *string
	SetDescription(val *string)
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// (Optional) The name of the signal catalog.
	Name() *string
	SetName(val *string)
	// The tree node.
	Node() constructs.Node
	// (Optional) Information about the number of nodes and node types in a vehicle network.
	NodeCounts() interface{}
	SetNodeCounts(val interface{})
	// (Optional) A list of information about nodes, which are a general abstraction of signals.
	Nodes() interface{}
	SetNodes(val interface{})
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Tag Manager which manages the tags for this resource.
	Tags() awscdk.TagManager
	// (Optional) Metadata that can be used to manage the signal catalog.
	TagsRaw() *[]*awscdk.CfnTag
	SetTagsRaw(val *[]*awscdk.CfnTag)
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Examines the CloudFormation resource and discloses attributes.
	Inspect(inspector awscdk.TreeInspector)
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

Creates a collection of standardized signals that can be reused to create vehicle models.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnSignalCatalog := awscdk.Aws_iotfleetwise.NewCfnSignalCatalog(this, jsii.String("MyCfnSignalCatalog"), &CfnSignalCatalogProps{
	Description: jsii.String("description"),
	Name: jsii.String("name"),
	NodeCounts: &NodeCountsProperty{
		TotalActuators: jsii.Number(123),
		TotalAttributes: jsii.Number(123),
		TotalBranches: jsii.Number(123),
		TotalNodes: jsii.Number(123),
		TotalSensors: jsii.Number(123),
	},
	Nodes: []interface{}{
		&NodeProperty{
			Actuator: &ActuatorProperty{
				DataType: jsii.String("dataType"),
				FullyQualifiedName: jsii.String("fullyQualifiedName"),

				// the properties below are optional
				AllowedValues: []*string{
					jsii.String("allowedValues"),
				},
				AssignedValue: jsii.String("assignedValue"),
				Description: jsii.String("description"),
				Max: jsii.Number(123),
				Min: jsii.Number(123),
				Unit: jsii.String("unit"),
			},
			Attribute: &AttributeProperty{
				DataType: jsii.String("dataType"),
				FullyQualifiedName: jsii.String("fullyQualifiedName"),

				// the properties below are optional
				AllowedValues: []*string{
					jsii.String("allowedValues"),
				},
				AssignedValue: jsii.String("assignedValue"),
				DefaultValue: jsii.String("defaultValue"),
				Description: jsii.String("description"),
				Max: jsii.Number(123),
				Min: jsii.Number(123),
				Unit: jsii.String("unit"),
			},
			Branch: &BranchProperty{
				FullyQualifiedName: jsii.String("fullyQualifiedName"),

				// the properties below are optional
				Description: jsii.String("description"),
			},
			Sensor: &SensorProperty{
				DataType: jsii.String("dataType"),
				FullyQualifiedName: jsii.String("fullyQualifiedName"),

				// the properties below are optional
				AllowedValues: []*string{
					jsii.String("allowedValues"),
				},
				Description: jsii.String("description"),
				Max: jsii.Number(123),
				Min: jsii.Number(123),
				Unit: jsii.String("unit"),
			},
		},
	},
	Tags: []cfnTag{
		&cfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
})

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-signalcatalog.html

func NewCfnSignalCatalog

func NewCfnSignalCatalog(scope constructs.Construct, id *string, props *CfnSignalCatalogProps) CfnSignalCatalog

type CfnSignalCatalogProps

type CfnSignalCatalogProps struct {
	// (Optional) A brief description of the signal catalog.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-signalcatalog.html#cfn-iotfleetwise-signalcatalog-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
	// (Optional) The name of the signal catalog.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-signalcatalog.html#cfn-iotfleetwise-signalcatalog-name
	//
	Name *string `field:"optional" json:"name" yaml:"name"`
	// (Optional) Information about the number of nodes and node types in a vehicle network.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-signalcatalog.html#cfn-iotfleetwise-signalcatalog-nodecounts
	//
	NodeCounts interface{} `field:"optional" json:"nodeCounts" yaml:"nodeCounts"`
	// (Optional) A list of information about nodes, which are a general abstraction of signals.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-signalcatalog.html#cfn-iotfleetwise-signalcatalog-nodes
	//
	Nodes interface{} `field:"optional" json:"nodes" yaml:"nodes"`
	// (Optional) Metadata that can be used to manage the signal catalog.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-signalcatalog.html#cfn-iotfleetwise-signalcatalog-tags
	//
	Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"`
}

Properties for defining a `CfnSignalCatalog`.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnSignalCatalogProps := &CfnSignalCatalogProps{
	Description: jsii.String("description"),
	Name: jsii.String("name"),
	NodeCounts: &NodeCountsProperty{
		TotalActuators: jsii.Number(123),
		TotalAttributes: jsii.Number(123),
		TotalBranches: jsii.Number(123),
		TotalNodes: jsii.Number(123),
		TotalSensors: jsii.Number(123),
	},
	Nodes: []interface{}{
		&NodeProperty{
			Actuator: &ActuatorProperty{
				DataType: jsii.String("dataType"),
				FullyQualifiedName: jsii.String("fullyQualifiedName"),

				// the properties below are optional
				AllowedValues: []*string{
					jsii.String("allowedValues"),
				},
				AssignedValue: jsii.String("assignedValue"),
				Description: jsii.String("description"),
				Max: jsii.Number(123),
				Min: jsii.Number(123),
				Unit: jsii.String("unit"),
			},
			Attribute: &AttributeProperty{
				DataType: jsii.String("dataType"),
				FullyQualifiedName: jsii.String("fullyQualifiedName"),

				// the properties below are optional
				AllowedValues: []*string{
					jsii.String("allowedValues"),
				},
				AssignedValue: jsii.String("assignedValue"),
				DefaultValue: jsii.String("defaultValue"),
				Description: jsii.String("description"),
				Max: jsii.Number(123),
				Min: jsii.Number(123),
				Unit: jsii.String("unit"),
			},
			Branch: &BranchProperty{
				FullyQualifiedName: jsii.String("fullyQualifiedName"),

				// the properties below are optional
				Description: jsii.String("description"),
			},
			Sensor: &SensorProperty{
				DataType: jsii.String("dataType"),
				FullyQualifiedName: jsii.String("fullyQualifiedName"),

				// the properties below are optional
				AllowedValues: []*string{
					jsii.String("allowedValues"),
				},
				Description: jsii.String("description"),
				Max: jsii.Number(123),
				Min: jsii.Number(123),
				Unit: jsii.String("unit"),
			},
		},
	},
	Tags: []cfnTag{
		&cfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-signalcatalog.html

type CfnSignalCatalog_ActuatorProperty

type CfnSignalCatalog_ActuatorProperty struct {
	// The specified data type of the actuator.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-actuator.html#cfn-iotfleetwise-signalcatalog-actuator-datatype
	//
	DataType *string `field:"required" json:"dataType" yaml:"dataType"`
	// The fully qualified name of the actuator.
	//
	// For example, the fully qualified name of an actuator might be `Vehicle.Front.Left.Door.Lock` .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-actuator.html#cfn-iotfleetwise-signalcatalog-actuator-fullyqualifiedname
	//
	FullyQualifiedName *string `field:"required" json:"fullyQualifiedName" yaml:"fullyQualifiedName"`
	// (Optional) A list of possible values an actuator can take.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-actuator.html#cfn-iotfleetwise-signalcatalog-actuator-allowedvalues
	//
	AllowedValues *[]*string `field:"optional" json:"allowedValues" yaml:"allowedValues"`
	// (Optional) A specified value for the actuator.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-actuator.html#cfn-iotfleetwise-signalcatalog-actuator-assignedvalue
	//
	AssignedValue *string `field:"optional" json:"assignedValue" yaml:"assignedValue"`
	// (Optional) A brief description of the actuator.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-actuator.html#cfn-iotfleetwise-signalcatalog-actuator-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
	// (Optional) The specified possible maximum value of an actuator.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-actuator.html#cfn-iotfleetwise-signalcatalog-actuator-max
	//
	Max *float64 `field:"optional" json:"max" yaml:"max"`
	// (Optional) The specified possible minimum value of an actuator.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-actuator.html#cfn-iotfleetwise-signalcatalog-actuator-min
	//
	Min *float64 `field:"optional" json:"min" yaml:"min"`
	// (Optional) The scientific unit for the actuator.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-actuator.html#cfn-iotfleetwise-signalcatalog-actuator-unit
	//
	Unit *string `field:"optional" json:"unit" yaml:"unit"`
}

A signal that represents a vehicle device such as the engine, heater, and door locks.

Data from an actuator reports the state of a certain vehicle device.

> Updating actuator data can change the state of a device. For example, you can turn on or off the heater by updating its actuator data.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

actuatorProperty := &ActuatorProperty{
	DataType: jsii.String("dataType"),
	FullyQualifiedName: jsii.String("fullyQualifiedName"),

	// the properties below are optional
	AllowedValues: []*string{
		jsii.String("allowedValues"),
	},
	AssignedValue: jsii.String("assignedValue"),
	Description: jsii.String("description"),
	Max: jsii.Number(123),
	Min: jsii.Number(123),
	Unit: jsii.String("unit"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-actuator.html

type CfnSignalCatalog_AttributeProperty

type CfnSignalCatalog_AttributeProperty struct {
	// The specified data type of the attribute.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-attribute.html#cfn-iotfleetwise-signalcatalog-attribute-datatype
	//
	DataType *string `field:"required" json:"dataType" yaml:"dataType"`
	// The fully qualified name of the attribute.
	//
	// For example, the fully qualified name of an attribute might be `Vehicle.Body.Engine.Type` .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-attribute.html#cfn-iotfleetwise-signalcatalog-attribute-fullyqualifiedname
	//
	FullyQualifiedName *string `field:"required" json:"fullyQualifiedName" yaml:"fullyQualifiedName"`
	// (Optional) A list of possible values an attribute can be assigned.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-attribute.html#cfn-iotfleetwise-signalcatalog-attribute-allowedvalues
	//
	AllowedValues *[]*string `field:"optional" json:"allowedValues" yaml:"allowedValues"`
	// (Optional) A specified value for the attribute.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-attribute.html#cfn-iotfleetwise-signalcatalog-attribute-assignedvalue
	//
	AssignedValue *string `field:"optional" json:"assignedValue" yaml:"assignedValue"`
	// (Optional) The default value of the attribute.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-attribute.html#cfn-iotfleetwise-signalcatalog-attribute-defaultvalue
	//
	DefaultValue *string `field:"optional" json:"defaultValue" yaml:"defaultValue"`
	// (Optional) A brief description of the attribute.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-attribute.html#cfn-iotfleetwise-signalcatalog-attribute-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
	// (Optional) The specified possible maximum value of the attribute.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-attribute.html#cfn-iotfleetwise-signalcatalog-attribute-max
	//
	Max *float64 `field:"optional" json:"max" yaml:"max"`
	// (Optional) The specified possible minimum value of the attribute.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-attribute.html#cfn-iotfleetwise-signalcatalog-attribute-min
	//
	Min *float64 `field:"optional" json:"min" yaml:"min"`
	// (Optional) The scientific unit for the attribute.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-attribute.html#cfn-iotfleetwise-signalcatalog-attribute-unit
	//
	Unit *string `field:"optional" json:"unit" yaml:"unit"`
}

A signal that represents static information about the vehicle, such as engine type or manufacturing date.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

attributeProperty := &AttributeProperty{
	DataType: jsii.String("dataType"),
	FullyQualifiedName: jsii.String("fullyQualifiedName"),

	// the properties below are optional
	AllowedValues: []*string{
		jsii.String("allowedValues"),
	},
	AssignedValue: jsii.String("assignedValue"),
	DefaultValue: jsii.String("defaultValue"),
	Description: jsii.String("description"),
	Max: jsii.Number(123),
	Min: jsii.Number(123),
	Unit: jsii.String("unit"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-attribute.html

type CfnSignalCatalog_BranchProperty

type CfnSignalCatalog_BranchProperty struct {
	// The fully qualified name of the branch.
	//
	// For example, the fully qualified name of a branch might be `Vehicle.Body.Engine` .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-branch.html#cfn-iotfleetwise-signalcatalog-branch-fullyqualifiedname
	//
	FullyQualifiedName *string `field:"required" json:"fullyQualifiedName" yaml:"fullyQualifiedName"`
	// (Optional) A brief description of the branch.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-branch.html#cfn-iotfleetwise-signalcatalog-branch-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
}

A group of signals that are defined in a hierarchical structure.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

branchProperty := &BranchProperty{
	FullyQualifiedName: jsii.String("fullyQualifiedName"),

	// the properties below are optional
	Description: jsii.String("description"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-branch.html

type CfnSignalCatalog_NodeCountsProperty

type CfnSignalCatalog_NodeCountsProperty struct {
	// (Optional) The total number of nodes in a vehicle network that represent actuators.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-nodecounts.html#cfn-iotfleetwise-signalcatalog-nodecounts-totalactuators
	//
	TotalActuators *float64 `field:"optional" json:"totalActuators" yaml:"totalActuators"`
	// (Optional) The total number of nodes in a vehicle network that represent attributes.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-nodecounts.html#cfn-iotfleetwise-signalcatalog-nodecounts-totalattributes
	//
	TotalAttributes *float64 `field:"optional" json:"totalAttributes" yaml:"totalAttributes"`
	// (Optional) The total number of nodes in a vehicle network that represent branches.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-nodecounts.html#cfn-iotfleetwise-signalcatalog-nodecounts-totalbranches
	//
	TotalBranches *float64 `field:"optional" json:"totalBranches" yaml:"totalBranches"`
	// (Optional) The total number of nodes in a vehicle network.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-nodecounts.html#cfn-iotfleetwise-signalcatalog-nodecounts-totalnodes
	//
	TotalNodes *float64 `field:"optional" json:"totalNodes" yaml:"totalNodes"`
	// (Optional) The total number of nodes in a vehicle network that represent sensors.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-nodecounts.html#cfn-iotfleetwise-signalcatalog-nodecounts-totalsensors
	//
	TotalSensors *float64 `field:"optional" json:"totalSensors" yaml:"totalSensors"`
}

Information about the number of nodes and node types in a vehicle network.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

nodeCountsProperty := &NodeCountsProperty{
	TotalActuators: jsii.Number(123),
	TotalAttributes: jsii.Number(123),
	TotalBranches: jsii.Number(123),
	TotalNodes: jsii.Number(123),
	TotalSensors: jsii.Number(123),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-nodecounts.html

type CfnSignalCatalog_NodeProperty

type CfnSignalCatalog_NodeProperty struct {
	// (Optional) Information about a node specified as an actuator.
	//
	// > An actuator is a digital representation of a vehicle device.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-node.html#cfn-iotfleetwise-signalcatalog-node-actuator
	//
	Actuator interface{} `field:"optional" json:"actuator" yaml:"actuator"`
	// (Optional) Information about a node specified as an attribute.
	//
	// > An attribute represents static information about a vehicle.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-node.html#cfn-iotfleetwise-signalcatalog-node-attribute
	//
	Attribute interface{} `field:"optional" json:"attribute" yaml:"attribute"`
	// (Optional) Information about a node specified as a branch.
	//
	// > A group of signals that are defined in a hierarchical structure.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-node.html#cfn-iotfleetwise-signalcatalog-node-branch
	//
	Branch interface{} `field:"optional" json:"branch" yaml:"branch"`
	// (Optional) An input component that reports the environmental condition of a vehicle.
	//
	// > You can collect data about fluid levels, temperatures, vibrations, or battery voltage from sensors.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-node.html#cfn-iotfleetwise-signalcatalog-node-sensor
	//
	Sensor interface{} `field:"optional" json:"sensor" yaml:"sensor"`
}

A general abstraction of a signal.

A node can be specified as an actuator, attribute, branch, or sensor.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

nodeProperty := &NodeProperty{
	Actuator: &ActuatorProperty{
		DataType: jsii.String("dataType"),
		FullyQualifiedName: jsii.String("fullyQualifiedName"),

		// the properties below are optional
		AllowedValues: []*string{
			jsii.String("allowedValues"),
		},
		AssignedValue: jsii.String("assignedValue"),
		Description: jsii.String("description"),
		Max: jsii.Number(123),
		Min: jsii.Number(123),
		Unit: jsii.String("unit"),
	},
	Attribute: &AttributeProperty{
		DataType: jsii.String("dataType"),
		FullyQualifiedName: jsii.String("fullyQualifiedName"),

		// the properties below are optional
		AllowedValues: []*string{
			jsii.String("allowedValues"),
		},
		AssignedValue: jsii.String("assignedValue"),
		DefaultValue: jsii.String("defaultValue"),
		Description: jsii.String("description"),
		Max: jsii.Number(123),
		Min: jsii.Number(123),
		Unit: jsii.String("unit"),
	},
	Branch: &BranchProperty{
		FullyQualifiedName: jsii.String("fullyQualifiedName"),

		// the properties below are optional
		Description: jsii.String("description"),
	},
	Sensor: &SensorProperty{
		DataType: jsii.String("dataType"),
		FullyQualifiedName: jsii.String("fullyQualifiedName"),

		// the properties below are optional
		AllowedValues: []*string{
			jsii.String("allowedValues"),
		},
		Description: jsii.String("description"),
		Max: jsii.Number(123),
		Min: jsii.Number(123),
		Unit: jsii.String("unit"),
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-node.html

type CfnSignalCatalog_SensorProperty

type CfnSignalCatalog_SensorProperty struct {
	// The specified data type of the sensor.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-sensor.html#cfn-iotfleetwise-signalcatalog-sensor-datatype
	//
	DataType *string `field:"required" json:"dataType" yaml:"dataType"`
	// The fully qualified name of the sensor.
	//
	// For example, the fully qualified name of a sensor might be `Vehicle.Body.Engine.Battery` .
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-sensor.html#cfn-iotfleetwise-signalcatalog-sensor-fullyqualifiedname
	//
	FullyQualifiedName *string `field:"required" json:"fullyQualifiedName" yaml:"fullyQualifiedName"`
	// (Optional) A list of possible values a sensor can take.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-sensor.html#cfn-iotfleetwise-signalcatalog-sensor-allowedvalues
	//
	AllowedValues *[]*string `field:"optional" json:"allowedValues" yaml:"allowedValues"`
	// (Optional) A brief description of a sensor.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-sensor.html#cfn-iotfleetwise-signalcatalog-sensor-description
	//
	Description *string `field:"optional" json:"description" yaml:"description"`
	// (Optional) The specified possible maximum value of the sensor.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-sensor.html#cfn-iotfleetwise-signalcatalog-sensor-max
	//
	Max *float64 `field:"optional" json:"max" yaml:"max"`
	// (Optional) The specified possible minimum value of the sensor.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-sensor.html#cfn-iotfleetwise-signalcatalog-sensor-min
	//
	Min *float64 `field:"optional" json:"min" yaml:"min"`
	// (Optional) The scientific unit of measurement for data collected by the sensor.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-sensor.html#cfn-iotfleetwise-signalcatalog-sensor-unit
	//
	Unit *string `field:"optional" json:"unit" yaml:"unit"`
}

An input component that reports the environmental condition of a vehicle.

> You can collect data about fluid levels, temperatures, vibrations, or battery voltage from sensors.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

sensorProperty := &SensorProperty{
	DataType: jsii.String("dataType"),
	FullyQualifiedName: jsii.String("fullyQualifiedName"),

	// the properties below are optional
	AllowedValues: []*string{
		jsii.String("allowedValues"),
	},
	Description: jsii.String("description"),
	Max: jsii.Number(123),
	Min: jsii.Number(123),
	Unit: jsii.String("unit"),
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-signalcatalog-sensor.html

type CfnVehicle

type CfnVehicle interface {
	awscdk.CfnResource
	awscdk.IInspectable
	awscdk.ITaggable
	// (Optional) An option to create a new AWS IoT thing when creating a vehicle, or to validate an existing thing as a vehicle.
	AssociationBehavior() *string
	SetAssociationBehavior(val *string)
	// The Amazon Resource Name (ARN) of the vehicle.
	AttrArn() *string
	// The time the vehicle was created in seconds since epoch (January 1, 1970 at midnight UTC time).
	AttrCreationTime() *string
	// (Optional) Static information about a vehicle in a key-value pair.
	Attributes() interface{}
	SetAttributes(val interface{})
	// The time the vehicle was last updated in seconds since epoch (January 1, 1970 at midnight UTC time).
	AttrLastModificationTime() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The Amazon Resource Name (ARN) of a decoder manifest associated with the vehicle to create.
	DecoderManifestArn() *string
	SetDecoderManifestArn(val *string)
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The Amazon Resource Name (ARN) of the vehicle model (model manifest) to create the vehicle from.
	ModelManifestArn() *string
	SetModelManifestArn(val *string)
	// The unique ID of the vehicle.
	Name() *string
	SetName(val *string)
	// The tree node.
	Node() constructs.Node
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Tag Manager which manages the tags for this resource.
	Tags() awscdk.TagManager
	// (Optional) Metadata which can be used to manage the vehicle.
	TagsRaw() *[]*awscdk.CfnTag
	SetTagsRaw(val *[]*awscdk.CfnTag)
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Examines the CloudFormation resource and discloses attributes.
	Inspect(inspector awscdk.TreeInspector)
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

Creates a vehicle, which is an instance of a vehicle model (model manifest).

Vehicles created from the same vehicle model consist of the same signals inherited from the vehicle model.

> If you have an existing AWS IoT thing, you can use AWS IoT FleetWise to create a vehicle and collect data from your thing.

For more information, see [Create a vehicle (console)](https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/create-vehicle-console.html) in the *AWS IoT FleetWise Developer Guide* .

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnVehicle := awscdk.Aws_iotfleetwise.NewCfnVehicle(this, jsii.String("MyCfnVehicle"), &CfnVehicleProps{
	DecoderManifestArn: jsii.String("decoderManifestArn"),
	ModelManifestArn: jsii.String("modelManifestArn"),
	Name: jsii.String("name"),

	// the properties below are optional
	AssociationBehavior: jsii.String("associationBehavior"),
	Attributes: map[string]*string{
		"attributesKey": jsii.String("attributes"),
	},
	Tags: []cfnTag{
		&cfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
})

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-vehicle.html

func NewCfnVehicle

func NewCfnVehicle(scope constructs.Construct, id *string, props *CfnVehicleProps) CfnVehicle

type CfnVehicleProps

type CfnVehicleProps struct {
	// The Amazon Resource Name (ARN) of a decoder manifest associated with the vehicle to create.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-vehicle.html#cfn-iotfleetwise-vehicle-decodermanifestarn
	//
	DecoderManifestArn *string `field:"required" json:"decoderManifestArn" yaml:"decoderManifestArn"`
	// The Amazon Resource Name (ARN) of the vehicle model (model manifest) to create the vehicle from.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-vehicle.html#cfn-iotfleetwise-vehicle-modelmanifestarn
	//
	ModelManifestArn *string `field:"required" json:"modelManifestArn" yaml:"modelManifestArn"`
	// The unique ID of the vehicle.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-vehicle.html#cfn-iotfleetwise-vehicle-name
	//
	Name *string `field:"required" json:"name" yaml:"name"`
	// (Optional) An option to create a new AWS IoT thing when creating a vehicle, or to validate an existing thing as a vehicle.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-vehicle.html#cfn-iotfleetwise-vehicle-associationbehavior
	//
	AssociationBehavior *string `field:"optional" json:"associationBehavior" yaml:"associationBehavior"`
	// (Optional) Static information about a vehicle in a key-value pair.
	//
	// For example: `"engine Type"` : `"v6"`.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-vehicle.html#cfn-iotfleetwise-vehicle-attributes
	//
	Attributes interface{} `field:"optional" json:"attributes" yaml:"attributes"`
	// (Optional) Metadata which can be used to manage the vehicle.
	// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-vehicle.html#cfn-iotfleetwise-vehicle-tags
	//
	Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"`
}

Properties for defining a `CfnVehicle`.

Example:

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnVehicleProps := &CfnVehicleProps{
	DecoderManifestArn: jsii.String("decoderManifestArn"),
	ModelManifestArn: jsii.String("modelManifestArn"),
	Name: jsii.String("name"),

	// the properties below are optional
	AssociationBehavior: jsii.String("associationBehavior"),
	Attributes: map[string]*string{
		"attributesKey": jsii.String("attributes"),
	},
	Tags: []cfnTag{
		&cfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
}

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-vehicle.html

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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