# SavedStateConfiguration.Builder

Artifact: [androidx.savedstate:savedstate](https://developer.android.com/jetpack/androidx/releases/savedstate) [View Source](https://cs.android.com/search?q=file:androidx/savedstate/serialization/SavedStateConfiguration.kt+class:androidx.savedstate.serialization.SavedStateConfiguration.Builder) Added in [1.3.0](https://developer.android.com/jetpack/androidx/releases/savedstate#1.3.0)

*** ** * ** ***

Common/All
- Cmn

  ```
  class SavedStateConfiguration.Builder
  ```

*** ** * ** ***

Builder of the `https://developer.android.com/reference/kotlin/androidx/savedstate/serialization/SavedStateConfiguration` instance provided by `SavedStateConfig { ... }` factory function.

## Summary

| ### Public properties |
|---|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | `https://developer.android.com/reference/kotlin/androidx/savedstate/serialization/SavedStateConfiguration.Builder#classDiscriminatorMode()` Defines which classes and objects should have class discriminator added to the output. | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/savedstate/serialization/SavedStateConfiguration.Builder#encodeDefaults()` Specifies whether default values of Kotlin properties should be encoded. | Cmn |
| `https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization.modules/-serializers-module/index.html` | `https://developer.android.com/reference/kotlin/androidx/savedstate/serialization/SavedStateConfiguration.Builder#serializersModule()` Module with contextual and polymorphic serializers to be used in the resulting `https://developer.android.com/reference/kotlin/androidx/savedstate/serialization/SavedStateConfiguration` instance. | Cmn |

## Public properties

### classDiscriminatorMode

Cmn Added in [1.3.0](https://developer.android.com/jetpack/androidx/releases/savedstate#1.3.0)

```
var classDiscriminatorMode: Int
```

Defines which classes and objects should have class discriminator added to the output. `https://developer.android.com/reference/kotlin/androidx/savedstate/serialization/ClassDiscriminatorMode#POLYMORPHIC()` by default.

Value is one of the following:

- `1`
- `2`

<br />

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/savedstate/serialization/ClassDiscriminatorMode` |   |

### encodeDefaults

Cmn Added in [1.3.0](https://developer.android.com/jetpack/androidx/releases/savedstate#1.3.0)

```
var encodeDefaults: Boolean
```

Specifies whether default values of Kotlin properties should be encoded. `false` by default. This option does not affect decoding.

### serializersModule

Cmn Added in [1.3.0](https://developer.android.com/jetpack/androidx/releases/savedstate#1.3.0)

```
var serializersModule: SerializersModule
```

Module with contextual and polymorphic serializers to be used in the resulting `https://developer.android.com/reference/kotlin/androidx/savedstate/serialization/SavedStateConfiguration` instance.

Note that this `https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization.modules/-serializers-module/index.html` will be combined with an internal `https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization.modules/-serializers-module/index.html` in the resulting `https://developer.android.com/reference/kotlin/androidx/savedstate/serialization/SavedStateConfiguration` to support built-in types.

| See also |
|---|---|
| `https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization.modules/-serializers-module/index.html` |   |
| `https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-contextual/index.html` |   |
| `https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-polymorphic/index.html` |   |