# 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)

*** ** * ** ***


```
class AppFunctionComponentsMetadata
```

<br />

*** ** * ** ***

Represent the reusable components in a function specification.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/kotlin/androidx/appfunctions/metadata/AppFunctionComponentsMetadata#AppFunctionComponentsMetadata(kotlin.collections.Map)( dataTypes: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, https://developer.android.com/reference/kotlin/androidx/appfunctions/metadata/AppFunctionDataTypeMetadata> )` |

| ### Public functions |
|---|---|
| `open operator https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/appfunctions/metadata/AppFunctionComponentsMetadata#equals(kotlin.Any)(other: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html?)` |
| `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | `https://developer.android.com/reference/kotlin/androidx/appfunctions/metadata/AppFunctionComponentsMetadata#hashCode()()` |
| `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` | `https://developer.android.com/reference/kotlin/androidx/appfunctions/metadata/AppFunctionComponentsMetadata#toString()()` |

| ### Public properties |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, https://developer.android.com/reference/kotlin/androidx/appfunctions/metadata/AppFunctionDataTypeMetadata>` | `https://developer.android.com/reference/kotlin/androidx/appfunctions/metadata/AppFunctionComponentsMetadata#dataTypes()` The map of data types that can be reused across the schema. |

## Public constructors

### AppFunctionComponentsMetadata

```
AppFunctionComponentsMetadata(
    dataTypes: Map<String, AppFunctionDataTypeMetadata> = emptyMap()
)
```

## Public functions

### equals

```
open operator fun equals(other: Any?): Boolean
```

### hashCode

```
open fun hashCode(): Int
```

### toString

```
open fun toString(): String
```

## Public properties

### dataTypes

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

```
val dataTypes: Map<String, AppFunctionDataTypeMetadata>
```

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/kotlin/androidx/appfunctions/metadata/AppFunctionReferenceTypeMetadata#referenceDataType()` |   |