# NavigationSuiteScaffoldState

Artifact: [androidx.compose.material3:material3-adaptive-navigation-suite](https://developer.android.com/jetpack/androidx/releases/compose-material3) [View Source](https://cs.android.com/search?q=file:androidx/compose/material3/adaptive/navigationsuite/NavigationSuiteScaffold.kt+class:androidx.compose.material3.adaptive.navigationsuite.NavigationSuiteScaffoldState)


```
interface NavigationSuiteScaffoldState
```

<br />

*** ** * ** ***

A state object that can be hoisted to observe the navigation suite scaffold state. It allows for setting its navigation component to be hidden or displayed.

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/material3/adaptive/navigationsuite/rememberNavigationSuiteScaffoldState.composable#rememberNavigationSuiteScaffoldState(androidx.compose.material3.adaptive.navigationsuite.NavigationSuiteScaffoldValue)` | to construct the default implementation. |

## Summary

| ### Public functions |
|---|---|
| `suspend https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/material3/adaptive/navigationsuite/NavigationSuiteScaffoldState#hide()()` Hide the navigation component with animation and suspend until it fully expands. |
| `suspend https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/material3/adaptive/navigationsuite/NavigationSuiteScaffoldState#show()()` Show the navigation component with animation and suspend until it fully expands. |
| `suspend https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/material3/adaptive/navigationsuite/NavigationSuiteScaffoldState#snapTo(androidx.compose.material3.adaptive.navigationsuite.NavigationSuiteScaffoldValue)(targetValue: https://developer.android.com/reference/kotlin/androidx/compose/material3/adaptive/navigationsuite/NavigationSuiteScaffoldValue)` Set the state without any animation and suspend until it's set. |
| `suspend https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/material3/adaptive/navigationsuite/NavigationSuiteScaffoldState#toggle()()` Hide the navigation component with animation if it's shown, or collapse it otherwise, and suspend until it fully expands. |

| ### Public properties |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/material3/adaptive/navigationsuite/NavigationSuiteScaffoldValue` | `https://developer.android.com/reference/kotlin/androidx/compose/material3/adaptive/navigationsuite/NavigationSuiteScaffoldState#currentValue()` Whether the navigation component is currently shown or hidden. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/material3/adaptive/navigationsuite/NavigationSuiteScaffoldState#isAnimating()` Whether the state is currently animating. |
| `https://developer.android.com/reference/kotlin/androidx/compose/material3/adaptive/navigationsuite/NavigationSuiteScaffoldValue` | `https://developer.android.com/reference/kotlin/androidx/compose/material3/adaptive/navigationsuite/NavigationSuiteScaffoldState#targetValue()` Whether the navigation component is going to be shown or hidden. |

## Public functions

### hide

```
suspend fun hide(): Unit
```

Hide the navigation component with animation and suspend until it fully expands.

### show

```
suspend fun show(): Unit
```

Show the navigation component with animation and suspend until it fully expands.

### snapTo

```
suspend fun snapTo(targetValue: NavigationSuiteScaffoldValue): Unit
```

Set the state without any animation and suspend until it's set.

| Parameters |
|---|---|
| `targetValue: https://developer.android.com/reference/kotlin/androidx/compose/material3/adaptive/navigationsuite/NavigationSuiteScaffoldValue` | the value to set to |

### toggle

```
suspend fun toggle(): Unit
```

Hide the navigation component with animation if it's shown, or collapse it otherwise, and suspend until it fully expands.

## Public properties

### currentValue

```
val currentValue: NavigationSuiteScaffoldValue
```

Whether the navigation component is currently shown or hidden.

### isAnimating

```
val isAnimating: Boolean
```

Whether the state is currently animating.

### targetValue

```
val targetValue: NavigationSuiteScaffoldValue
```

Whether the navigation component is going to be shown or hidden.