# AppFunctionComponentsMetadata

Artifact: [androidx.appfunctions:appfunctions](https://developer.android.com/jetpack/androidx/releases/appfunctions) [View Source](https://cs.android.com/search?q=file:androidx/appfunctions/metadata/AppFunctionComponentsMetadata.kt+class:androidx.appfunctions.metadata.AppFunctionComponentsMetadata) Added in [1.0.0-rc01](https://developer.android.com/jetpack/androidx/releases/appfunctions#1.0.0-rc01)

*** ** * ** ***


```
public final class AppFunctionComponentsMetadata
```

<br />

*** ** * ** ***

Represent the reusable components in a function specification.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionComponentsMetadata#AppFunctionComponentsMetadata(kotlin.collections.Map)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/Map.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionDataTypeMetadata> dataTypes )` |

| ### Public methods |
|---|---|
| `boolean` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionComponentsMetadata#equals(kotlin.Any)(https://developer.android.com/reference/java/lang/Object.html other)` |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/Map.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionDataTypeMetadata>` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionComponentsMetadata#getDataTypes()()` The map of data types that can be reused across the schema. |
| `int` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionComponentsMetadata#hashCode()()` |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionComponentsMetadata#toString()()` |

## Public constructors

### AppFunctionComponentsMetadata

```
public AppFunctionComponentsMetadata(
    @NonNull Map<@NonNull String, @NonNull AppFunctionDataTypeMetadata> dataTypes
)
```

## Public methods

### equals

```
public boolean equals(Object other)
```

### getDataTypes

Added in [1.0.0-rc01](https://developer.android.com/jetpack/androidx/releases/appfunctions#1.0.0-rc01)

```
public final @NonNull Map<@NonNull String, @NonNull AppFunctionDataTypeMetadata> getDataTypes()
```

The map of data types that can be reused across the schema.

The *key* of this map is a string that serves as an *identifier* for the data type. This identifier can then be used to reference and reuse this `AppFunctionDataTypeMetadata` definition in other parts of the schema. For example, a Person type can be defined here with a key "Person" and referenced in multiple places by `#components/dataTypes/Person`.

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionReferenceTypeMetadata#referenceDataType()` |   |

### hashCode

```
public int hashCode()
```

### toString

```
public @NonNull String toString()
```