# SavedStateConfiguration

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) Added in [1.3.0](https://developer.android.com/jetpack/androidx/releases/savedstate#1.3.0)

*** ** * ** ***


```
public final class SavedStateConfiguration
```

<br />

*** ** * ** ***

Configuration of the current `https://developer.android.com/reference/androidx/savedstate/serialization/SavedStateConfiguration` configured with `https://developer.android.com/reference/androidx/savedstate/serialization/SavedStateConfiguration.Builder`.

Can be used via `https://developer.android.com/reference/androidx/savedstate/serialization/package-summary#encodeToSavedState(kotlin.Any,androidx.savedstate.serialization.SavedStateConfiguration)` and `https://developer.android.com/reference/androidx/savedstate/serialization/package-summary#decodeFromSavedState(androidx.savedstate.SavedState,androidx.savedstate.serialization.SavedStateConfiguration)`.

Standalone configuration object cannot be used outside the encode and decode functions provided by SavedState.

Detailed description of each property is available in `https://developer.android.com/reference/androidx/savedstate/serialization/SavedStateConfiguration.Builder` class.

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

## Summary

| ### Nested types |
|---|
| `public final class https://developer.android.com/reference/androidx/savedstate/serialization/SavedStateConfiguration.Builder` Builder of the `https://developer.android.com/reference/androidx/savedstate/serialization/SavedStateConfiguration` instance provided by `SavedStateConfig { ... }` factory function. |

| ### Public fields |
|---|---|
| `static final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/savedstate/serialization/SavedStateConfiguration` | `https://developer.android.com/reference/androidx/savedstate/serialization/SavedStateConfiguration#DEFAULT()` The default instance of `https://developer.android.com/reference/androidx/savedstate/serialization/SavedStateConfiguration` with default configuration. |

| ### Public methods |
|---|---|
| `final int` | `https://developer.android.com/reference/androidx/savedstate/serialization/SavedStateConfiguration#getClassDiscriminatorMode()()` |
| `final boolean` | `https://developer.android.com/reference/androidx/savedstate/serialization/SavedStateConfiguration#getEncodeDefaults()()` |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization.modules/-serializers-module/index.html` | `https://developer.android.com/reference/androidx/savedstate/serialization/SavedStateConfiguration#getSerializersModule()()` |

## Public fields

### DEFAULT

```
public static final @NonNull SavedStateConfiguration DEFAULT
```

The default instance of `https://developer.android.com/reference/androidx/savedstate/serialization/SavedStateConfiguration` with default configuration.

This configuration is used by `https://developer.android.com/reference/androidx/savedstate/serialization/package-summary#encodeToSavedState(kotlin.Any,androidx.savedstate.serialization.SavedStateConfiguration)` and `https://developer.android.com/reference/androidx/savedstate/serialization/package-summary#decodeFromSavedState(androidx.savedstate.SavedState,androidx.savedstate.serialization.SavedStateConfiguration)` unless an alternative configuration is explicitly provided.

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/savedstate/serialization/package-summary#encodeToSavedState(kotlin.Any,androidx.savedstate.serialization.SavedStateConfiguration)` |   |
| `https://developer.android.com/reference/androidx/savedstate/serialization/package-summary#decodeFromSavedState(androidx.savedstate.SavedState,androidx.savedstate.serialization.SavedStateConfiguration)` |   |

## Public methods

### getClassDiscriminatorMode

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

```
public final int getClassDiscriminatorMode()
```

Value is one of the following:

- `1`
- `2`

<br />

### getEncodeDefaults

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

```
public final boolean getEncodeDefaults()
```

### getSerializersModule

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

```
public final @NonNull SerializersModule getSerializersModule()
```