<div class='sourceset sourceset-common'>Common</div>

```kotlin
object ButtonDefaults
```

Contains the default values used by all 5 button types.

Default values that apply to all buttons types are `MinWidth`, `MinHeight`, `IconSize`, and
`IconSpacing`.

A default value that applies only to [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button), [ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton), [FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton), and
[OutlinedButton](/jetpack-compose/androidx.compose.material3/material3/components/OutlinedButton) is `ContentPadding`.

Default values that apply only to [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button) are [buttonColors](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonColors) and [buttonElevation](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonElevation). Default
values that apply only to [ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton) are [elevatedButtonColors](#elevatedbuttoncolors) and
[elevatedButtonElevation](#elevatedbuttonelevation). Default values that apply only to [FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton) are
[filledTonalButtonColors](#filledtonalbuttoncolors) and [filledTonalButtonElevation](#filledtonalbuttonelevation). A default value that applies only to
[OutlinedButton](/jetpack-compose/androidx.compose.material3/material3/components/OutlinedButton) is [outlinedButtonColors](#outlinedbuttoncolors). Default values that apply only to [TextButton](/jetpack-compose/androidx.compose.material3/material3/components/TextButton) is
[textButtonColors](/jetpack-compose/androidx.wear.compose/compose-material3/classes/TextButtonColors).

## Properties

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val ContentPadding =
    PaddingValues(
        start = ButtonLeadingSpace,
        top = ButtonVerticalPadding,
        end = ButtonTrailingSpace,
        bottom = ButtonVerticalPadding,
    )
```

The default content padding used by [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button), [ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton), [FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton),
[OutlinedButton](/jetpack-compose/androidx.compose.material3/material3/components/OutlinedButton), and [TextButton](/jetpack-compose/androidx.compose.material3/material3/components/TextButton) buttons.
- See `ButtonWithIconContentPadding` for content padding used by [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button) that contains [Icon](/jetpack-compose/androidx.compose.material3/material3/components/Icon).

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val ButtonWithIconContentPadding =
    PaddingValues(
        start = ButtonWithIconStartpadding,
        top = ButtonVerticalPadding,
        end = ButtonTrailingSpace,
        bottom = ButtonVerticalPadding,
    )
```

The default content padding used by [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button) that contains an [Icon](/jetpack-compose/androidx.compose.material3/material3/components/Icon).

<div class='sourceset sourceset-common'>Common</div>

> **Deprecated** For binary compatibility

```kotlin
@ExperimentalMaterial3ExpressiveApi
val SmallButtonContentPadding
```

The default content padding used for small [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button)

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val SmallContentPadding
```

The default content padding used for small [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button)

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val ExtraSmallContentPadding
```

Default content padding for an extra small button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val MediumContentPadding
```

Default content padding for a medium button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val LargeContentPadding
```

Default content padding for a large button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val ExtraLargeContentPadding
```

Default content padding for an extra large button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val TextButtonContentPadding =
    PaddingValues(
        start = TextButtonHorizontalPadding,
        top = ContentPadding.calculateTopPadding(),
        end = TextButtonHorizontalPadding,
        bottom = ContentPadding.calculateBottomPadding(),
    )
```

The default content padding used by [TextButton](/jetpack-compose/androidx.compose.material3/material3/components/TextButton).
- See `TextButtonWithIconContentPadding` for content padding used by [TextButton](/jetpack-compose/androidx.compose.material3/material3/components/TextButton) that contains [Icon](/jetpack-compose/androidx.compose.material3/material3/components/Icon).

Note: it's recommended to use `ContentPadding` instead for a more consistent look between all
buttons variants.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val TextButtonWithIconContentPadding =
    PaddingValues(
        start = TextButtonHorizontalPadding,
        top = ContentPadding.calculateTopPadding(),
        end = TextButtonWithIconHorizontalEndPadding,
        bottom = ContentPadding.calculateBottomPadding(),
    )
```

The default content padding used by [TextButton](/jetpack-compose/androidx.compose.material3/material3/components/TextButton) that contains an [Icon](/jetpack-compose/androidx.compose.material3/material3/components/Icon).

Note: it's recommended to use `ButtonWithIconContentPadding` instead for a more consistent
look between all buttons variants.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val MinWidth = 58.dp
```

The default min width applied for small buttons. Note that you can override it by applying
Modifier.widthIn directly on the button composable.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val MinHeight =
    if (shouldUsePrecisionPointerComponentSizing.value) {
        36.dp
    } else {
        ButtonSmallTokens.ContainerHeight
    }
```

The default min height applied for small buttons. Note that you can override it by applying
Modifier.heightIn directly on the button composable.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val ExtraSmallContainerHeight = ButtonXSmallTokens.ContainerHeight
```

The default height for a extra small button container.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val MediumContainerHeight =
    if (shouldUsePrecisionPointerComponentSizing.value) {
        46.dp
    } else {
        ButtonMediumTokens.ContainerHeight
    }
```

The default height for a medium button container.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val LargeContainerHeight =
    if (shouldUsePrecisionPointerComponentSizing.value) {
        54.dp
    } else {
        ButtonLargeTokens.ContainerHeight
    }
```

The default height for a large button container.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val ExtraLargeContainerHeight = ButtonXLargeTokens.ContainerHeight
```

The default height for a extra large button container.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val IconSize = 18.dp
```

The default size of the icon when used inside a small button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi val ExtraSmallIconSize = ButtonXSmallTokens.IconSize
```

The default size of the icon used inside an extra small button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi val SmallIconSize = ButtonSmallTokens.IconSize
```

The expressive size of the icon used inside a small button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi val MediumIconSize = ButtonMediumTokens.IconSize
```

The default size of the icon used inside a medium button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val LargeIconSize =
    if (shouldUsePrecisionPointerComponentSizing.value) {
        24.dp
    } else {
        ButtonLargeTokens.IconSize
    }
```

The default size of the icon used inside a large button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi val ExtraLargeIconSize = ButtonXLargeTokens.IconSize
```

The default size of the icon used inside an extra large button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val IconSpacing = ButtonSmallTokens.IconLabelSpace
```

The default size of the spacing between an icon and a text when they used inside a small
button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi val ExtraSmallIconSpacing = 4.dp
```

The default spacing between an icon and a text when they used inside any extra small button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi val MediumIconSpacing = ButtonMediumTokens.IconLabelSpace
```

The default spacing between an icon and a text when they're inside any medium button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val LargeIconSpacing =
    if (shouldUsePrecisionPointerComponentSizing.value) {
        8.dp
    } else {
        ButtonLargeTokens.IconLabelSpace
    }
```

The default spacing between an icon and a text when they're inside any large button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val ExtraLargeIconSpacing = ButtonXLargeTokens.IconLabelSpace
```

The default spacing between an icon and a text when they used inside any extra large button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val squareShape: Shape
```

Square shape for default buttons.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val pressedShape: Shape
```

Pressed shape for default buttons.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val extraSmallPressedShape: Shape
```

Pressed shape for extra small buttons.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val mediumPressedShape: Shape
```

Pressed shape for medium buttons.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val largePressedShape: Shape
```

Pressed shape for large buttons.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
@ExperimentalMaterial3ExpressiveApi
val extraLargePressedShape: Shape
```

Pressed shape for extra large buttons.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val shape: Shape
```

Default shape for a button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val elevatedShape: Shape
```

Default shape for an elevated button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val filledTonalShape: Shape
```

Default shape for a filled tonal button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val outlinedShape: Shape
```

Default shape for an outlined button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val textShape: Shape
```

Default shape for a text button.

<div class='sourceset sourceset-common'>Common</div>

```kotlin
val outlinedButtonBorder: BorderStroke
```

The default [BorderStroke](/jetpack-compose/androidx.compose.foundation/foundation/classes/BorderStroke) used by [OutlinedButton](/jetpack-compose/androidx.compose.material3/material3/components/OutlinedButton).

## Functions

<h2 id="shapes">shapes</h2>

```kotlin
@ExperimentalMaterial3ExpressiveApi
    @Composable
    fun shapes() = MaterialTheme.shapes.defaultButtonShapes
```

Creates a [ButtonShapes](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonShapes) that represents the default shape and pressed shape used in a
button.

<hr class="docs-overload-divider">

<h2 id="shapes-shape-pressedshape">shapes</h2>

```kotlin
@Composable
    @ExperimentalMaterial3ExpressiveApi
    fun shapes(shape: Shape? = null, pressedShape: Shape? = null): ButtonShapes
```

Creates a [ButtonShapes](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonShapes) that represents the default shape and pressedShape used in a
[Button](/jetpack-compose/androidx.compose.material3/material3/components/Button) and its variants.

#### Parameters

| | |
| --- | --- |
| shape | the unchecked shape for [ButtonShapes](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonShapes) |
| pressedShape | the unchecked shape for [ButtonShapes](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonShapes) |

```kotlin
@Composable fun buttonColors() = MaterialTheme.colorScheme.defaultButtonColors
```

Creates a [ButtonColors](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonColors) that represents the default container and content colors used in a
[Button](/jetpack-compose/androidx.compose.material3/material3/components/Button).

<hr class="docs-overload-divider">

<h2 id="buttoncolors-containercolor-contentcolor-disabledcontainercolor-disabledcontentcolor">buttonColors</h2>

```kotlin
@Composable
    fun buttonColors(
        containerColor: Color = Color.Unspecified,
        contentColor: Color = Color.Unspecified,
        disabledContainerColor: Color = Color.Unspecified,
        disabledContentColor: Color = Color.Unspecified,
    ): ButtonColors
```

Creates a [ButtonColors](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonColors) that represents the default container and content colors used in a
[Button](/jetpack-compose/androidx.compose.material3/material3/components/Button).

#### Parameters

| | |
| --- | --- |
| containerColor | the container color of this [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button) when enabled. |
| contentColor | the content color of this [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button) when enabled. |
| disabledContainerColor | the container color of this [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button) when not enabled. |
| disabledContentColor | the content color of this [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button) when not enabled. |

```kotlin
@Composable fun elevatedButtonColors() = MaterialTheme.colorScheme.defaultElevatedButtonColors
```

Creates a [ButtonColors](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonColors) that represents the default container and content colors used in an
[ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton).

<hr class="docs-overload-divider">

<h2 id="elevatedbuttoncolors-containercolor-contentcolor-disabledcontainercolor-disabledcontentcolor">elevatedButtonColors</h2>

```kotlin
@Composable
    fun elevatedButtonColors(
        containerColor: Color = Color.Unspecified,
        contentColor: Color = Color.Unspecified,
        disabledContainerColor: Color = Color.Unspecified,
        disabledContentColor: Color = Color.Unspecified,
    ): ButtonColors
```

Creates a [ButtonColors](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonColors) that represents the default container and content colors used in an
[ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton).

#### Parameters

| | |
| --- | --- |
| containerColor | the container color of this [ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton) when enabled |
| contentColor | the content color of this [ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton) when enabled |
| disabledContainerColor | the container color of this [ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton) when not enabled |
| disabledContentColor | the content color of this [ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton) when not enabled |

<hr class="docs-overload-divider">

<h2 id="filledtonalbuttoncolors">filledTonalButtonColors</h2>

```kotlin
@Composable
    fun filledTonalButtonColors() = MaterialTheme.colorScheme.defaultFilledTonalButtonColors
```

Creates a [ButtonColors](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonColors) that represents the default container and content colors used in an
[FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton).

<hr class="docs-overload-divider">

<h2 id="filledtonalbuttoncolors-containercolor-contentcolor-disabledcontainercolor-disabledcontentcolor">filledTonalButtonColors</h2>

```kotlin
@Composable
    fun filledTonalButtonColors(
        containerColor: Color = Color.Unspecified,
        contentColor: Color = Color.Unspecified,
        disabledContainerColor: Color = Color.Unspecified,
        disabledContentColor: Color = Color.Unspecified,
    ): ButtonColors
```

Creates a [ButtonColors](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonColors) that represents the default container and content colors used in an
[FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton).

#### Parameters

| | |
| --- | --- |
| containerColor | the container color of this [FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton) when enabled |
| contentColor | the content color of this [FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton) when enabled |
| disabledContainerColor | the container color of this [FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton) when not enabled |
| disabledContentColor | the content color of this [FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton) when not enabled |

```kotlin
@Composable fun outlinedButtonColors() = MaterialTheme.colorScheme.defaultOutlinedButtonColors
```

Creates a [ButtonColors](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonColors) that represents the default container and content colors used in an
[OutlinedButton](/jetpack-compose/androidx.compose.material3/material3/components/OutlinedButton).

<hr class="docs-overload-divider">

<h2 id="outlinedbuttoncolors-containercolor-contentcolor-disabledcontainercolor-disabledcontentcolor">outlinedButtonColors</h2>

```kotlin
@Composable
    fun outlinedButtonColors(
        containerColor: Color = Color.Unspecified,
        contentColor: Color = Color.Unspecified,
        disabledContainerColor: Color = Color.Unspecified,
        disabledContentColor: Color = Color.Unspecified,
    ): ButtonColors
```

Creates a [ButtonColors](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonColors) that represents the default container and content colors used in an
[OutlinedButton](/jetpack-compose/androidx.compose.material3/material3/components/OutlinedButton).

#### Parameters

| | |
| --- | --- |
| containerColor | the container color of this [OutlinedButton](/jetpack-compose/androidx.compose.material3/material3/components/OutlinedButton) when enabled |
| contentColor | the content color of this [OutlinedButton](/jetpack-compose/androidx.compose.material3/material3/components/OutlinedButton) when enabled |
| disabledContainerColor | the container color of this [OutlinedButton](/jetpack-compose/androidx.compose.material3/material3/components/OutlinedButton) when not enabled |
| disabledContentColor | the content color of this [OutlinedButton](/jetpack-compose/androidx.compose.material3/material3/components/OutlinedButton) when not enabled |

```kotlin
@Composable fun textButtonColors() = MaterialTheme.colorScheme.defaultTextButtonColors
```

Creates a [ButtonColors](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonColors) that represents the default container and content colors used in a
[TextButton](/jetpack-compose/androidx.compose.material3/material3/components/TextButton).

<hr class="docs-overload-divider">

<h2 id="textbuttoncolors-containercolor-contentcolor-disabledcontainercolor-disabledcontentcolor">textButtonColors</h2>

```kotlin
@Composable
    fun textButtonColors(
        containerColor: Color = Color.Unspecified,
        contentColor: Color = Color.Unspecified,
        disabledContainerColor: Color = Color.Unspecified,
        disabledContentColor: Color = Color.Unspecified,
    ): ButtonColors
```

Creates a [ButtonColors](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonColors) that represents the default container and content colors used in a
[TextButton](/jetpack-compose/androidx.compose.material3/material3/components/TextButton).

#### Parameters

| | |
| --- | --- |
| containerColor | the container color of this [TextButton](/jetpack-compose/androidx.compose.material3/material3/components/TextButton) when enabled |
| contentColor | the content color of this [TextButton](/jetpack-compose/androidx.compose.material3/material3/components/TextButton) when enabled |
| disabledContainerColor | the container color of this [TextButton](/jetpack-compose/androidx.compose.material3/material3/components/TextButton) when not enabled |
| disabledContentColor | the content color of this [TextButton](/jetpack-compose/androidx.compose.material3/material3/components/TextButton) when not enabled |

<hr class="docs-overload-divider">

<h2 id="buttonelevation-defaultelevation-pressedelevation-focusedelevation-hoveredelevation-disabledelevation">buttonElevation</h2>

```kotlin
@Composable
    fun buttonElevation(
        defaultElevation: Dp = FilledButtonTokens.ContainerElevation,
        pressedElevation: Dp = FilledButtonTokens.PressedContainerElevation,
        focusedElevation: Dp = FilledButtonTokens.FocusedContainerElevation,
        hoveredElevation: Dp = FilledButtonTokens.HoveredContainerElevation,
        disabledElevation: Dp = FilledButtonTokens.DisabledContainerElevation,
    ): ButtonElevation
```

Creates a [ButtonElevation](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonElevation) that will animate between the provided values according to the
Material specification for a [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button).

#### Parameters

| | |
| --- | --- |
| defaultElevation | the elevation used when the [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button) is enabled, and has no other [Interaction](/jetpack-compose/androidx.compose.foundation/foundation/interfaces/Interaction)s. |
| pressedElevation | the elevation used when this [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button) is enabled and pressed. |
| focusedElevation | the elevation used when the [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button) is enabled and focused. |
| hoveredElevation | the elevation used when the [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button) is enabled and hovered. |
| disabledElevation | the elevation used when the [Button](/jetpack-compose/androidx.compose.material3/material3/components/Button) is not enabled. |

<hr class="docs-overload-divider">

<h2 id="elevatedbuttonelevation-defaultelevation-pressedelevation-focusedelevation-hoveredelevation-disabledelevation">elevatedButtonElevation</h2>

```kotlin
@Composable
    fun elevatedButtonElevation(
        defaultElevation: Dp = ElevatedButtonTokens.ContainerElevation,
        pressedElevation: Dp = ElevatedButtonTokens.PressedContainerElevation,
        focusedElevation: Dp = ElevatedButtonTokens.FocusedContainerElevation,
        hoveredElevation: Dp = ElevatedButtonTokens.HoveredContainerElevation,
        disabledElevation: Dp = ElevatedButtonTokens.DisabledContainerElevation,
    ): ButtonElevation
```

Creates a [ButtonElevation](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonElevation) that will animate between the provided values according to the
Material specification for a [ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton).

#### Parameters

| | |
| --- | --- |
| defaultElevation | the elevation used when the [ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton) is enabled, and has no other [Interaction](/jetpack-compose/androidx.compose.foundation/foundation/interfaces/Interaction)s. |
| pressedElevation | the elevation used when this [ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton) is enabled and pressed. |
| focusedElevation | the elevation used when the [ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton) is enabled and focused. |
| hoveredElevation | the elevation used when the [ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton) is enabled and hovered. |
| disabledElevation | the elevation used when the [ElevatedButton](/jetpack-compose/androidx.compose.material3/material3/components/ElevatedButton) is not enabled. |

<hr class="docs-overload-divider">

<h2 id="filledtonalbuttonelevation-defaultelevation-pressedelevation-focusedelevation-hoveredelevation-disabledelevation">filledTonalButtonElevation</h2>

```kotlin
@Composable
    fun filledTonalButtonElevation(
        defaultElevation: Dp = FilledTonalButtonTokens.ContainerElevation,
        pressedElevation: Dp = FilledTonalButtonTokens.PressedContainerElevation,
        focusedElevation: Dp = FilledTonalButtonTokens.FocusContainerElevation,
        hoveredElevation: Dp = FilledTonalButtonTokens.HoverContainerElevation,
        disabledElevation: Dp = 0.dp,
    ): ButtonElevation
```

Creates a [ButtonElevation](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonElevation) that will animate between the provided values according to the
Material specification for a [FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton).

#### Parameters

| | |
| --- | --- |
| defaultElevation | the elevation used when the [FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton) is enabled, and has no other [Interaction](/jetpack-compose/androidx.compose.foundation/foundation/interfaces/Interaction)s. |
| pressedElevation | the elevation used when this [FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton) is enabled and pressed. |
| focusedElevation | the elevation used when the [FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton) is enabled and focused. |
| hoveredElevation | the elevation used when the [FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton) is enabled and hovered. |
| disabledElevation | the elevation used when the [FilledTonalButton](/jetpack-compose/androidx.compose.material3/material3/components/FilledTonalButton) is not enabled. |

<hr class="docs-overload-divider">

<h2 id="outlinedbuttonborder-enabled">outlinedButtonBorder</h2>

```kotlin
@Composable
    fun outlinedButtonBorder(enabled: Boolean = true): BorderStroke
```

The default [BorderStroke](/jetpack-compose/androidx.compose.foundation/foundation/classes/BorderStroke) used by [OutlinedButton](/jetpack-compose/androidx.compose.material3/material3/components/OutlinedButton).

#### Parameters

| | |
| --- | --- |
| enabled | whether the button is enabled |

<hr class="docs-overload-divider">

<h2 id="shapesfor-buttonheight">shapesFor</h2>

```kotlin
@Composable
    @ExperimentalMaterial3ExpressiveApi
    fun shapesFor(buttonHeight: Dp): ButtonShapes
```

Recommended [ButtonShapes](/jetpack-compose/androidx.compose.material3/material3/classes/ButtonShapes) for a provided button height.

#### Parameters

| | |
| --- | --- |
| buttonHeight | The height of the button |

<hr class="docs-overload-divider">

<h2 id="contentpaddingfor-buttonheight-hasstarticon-hasendicon">contentPaddingFor</h2>

```kotlin
fun contentPaddingFor(
        buttonHeight: Dp,
        hasStartIcon: Boolean = false,
        hasEndIcon: Boolean = false,
    ): PaddingValues
```

Recommended [PaddingValues](/jetpack-compose/androidx.compose.foundation/foundation-layout/interfaces/PaddingValues) for a provided button height.

#### Parameters

| | |
| --- | --- |
| buttonHeight | The height of the button |
| hasStartIcon | Whether the button has a leading icon |
| hasEndIcon | Whether the button has a trailing icon |

<hr class="docs-overload-divider">

<h2 id="contentpaddingfor-buttonheight">contentPaddingFor</h2>

```kotlin
@ExperimentalMaterial3ExpressiveApi
    fun contentPaddingFor(buttonHeight: Dp): PaddingValues
```

Recommended [PaddingValues](/jetpack-compose/androidx.compose.foundation/foundation-layout/interfaces/PaddingValues) for a provided button height.

#### Parameters

| | |
| --- | --- |
| buttonHeight | The height of the button |

<hr class="docs-overload-divider">

<h2 id="iconsizefor-buttonheight">iconSizeFor</h2>

```kotlin
@ExperimentalMaterial3ExpressiveApi
    fun iconSizeFor(buttonHeight: Dp): Dp
```

Recommended Icon size for a provided button height.

#### Parameters

| | |
| --- | --- |
| buttonHeight | The height of the button |

<hr class="docs-overload-divider">

<h2 id="iconspacingfor-buttonheight">iconSpacingFor</h2>

```kotlin
@ExperimentalMaterial3ExpressiveApi
    fun iconSpacingFor(buttonHeight: Dp): Dp
```

Recommended spacing after an [Icon](/jetpack-compose/androidx.compose.material3/material3/components/Icon) for a provided button height.

#### Parameters

| | |
| --- | --- |
| buttonHeight | The height of the button |

<hr class="docs-overload-divider">

<h2 id="textstylefor-buttonheight">textStyleFor</h2>

```kotlin
@Composable
    @ExperimentalMaterial3ExpressiveApi
    fun textStyleFor(buttonHeight: Dp): TextStyle
```

Recommended [TextStyle](/jetpack-compose/androidx.compose.ui/ui-text/classes/TextStyle) for a [Text](/jetpack-compose/androidx.compose.material3/material3/components/Text) provided a button height.

#### Parameters

| | |
| --- | --- |
| buttonHeight | The height of the button |