class Aws::IoTTwinMaker::Types::UpdateComponentTypeRequest

@note When making an API call, you may pass UpdateComponentTypeRequest

data as a hash:

    {
      component_type_id: "ComponentTypeId", # required
      description: "Description",
      extends_from: ["ComponentTypeId"],
      functions: {
        "Name" => {
          implemented_by: {
            is_native: false,
            lambda: {
              arn: "LambdaArn", # required
            },
          },
          required_properties: ["Name"],
          scope: "ENTITY", # accepts ENTITY, WORKSPACE
        },
      },
      is_singleton: false,
      property_definitions: {
        "Name" => {
          configuration: {
            "Name" => "Value",
          },
          data_type: {
            allowed_values: [
              {
                boolean_value: false,
                double_value: 1.0,
                expression: "Expression",
                integer_value: 1,
                list_value: {
                  # recursive DataValueList
                },
                long_value: 1,
                map_value: {
                  "String" => {
                    # recursive DataValue
                  },
                },
                relationship_value: {
                  target_component_name: "Name",
                  target_entity_id: "EntityId",
                },
                string_value: "String",
              },
            ],
            nested_type: {
              # recursive DataType
            },
            relationship: {
              relationship_type: "String",
              target_component_type_id: "ComponentTypeId",
            },
            type: "RELATIONSHIP", # required, accepts RELATIONSHIP, STRING, LONG, BOOLEAN, INTEGER, DOUBLE, LIST, MAP
            unit_of_measure: "String",
          },
          default_value: {
            boolean_value: false,
            double_value: 1.0,
            expression: "Expression",
            integer_value: 1,
            list_value: [
              {
                # recursive DataValue
              },
            ],
            long_value: 1,
            map_value: {
              "String" => {
                # recursive DataValue
              },
            },
            relationship_value: {
              target_component_name: "Name",
              target_entity_id: "EntityId",
            },
            string_value: "String",
          },
          is_external_id: false,
          is_required_in_entity: false,
          is_stored_externally: false,
          is_time_series: false,
        },
      },
      workspace_id: "Id", # required
    }

@!attribute [rw] component_type_id

The ID of the component type.
@return [String]

@!attribute [rw] description

The description of the component type.
@return [String]

@!attribute [rw] extends_from

Specifies the component type that this component type extends.
@return [Array<String>]

@!attribute [rw] functions

An object that maps strings to the functions in the component type.
Each string in the mapping must be unique to this object.
@return [Hash<String,Types::FunctionRequest>]

@!attribute [rw] is_singleton

A Boolean value that specifies whether an entity can have more than
one component of this type.
@return [Boolean]

@!attribute [rw] property_definitions

An object that maps strings to the property definitions in the
component type. Each string in the mapping must be unique to this
object.
@return [Hash<String,Types::PropertyDefinitionRequest>]

@!attribute [rw] workspace_id

The ID of the workspace that contains the component type.
@return [String]

Constants

SENSITIVE