Merge "Migrate deprecated inline classes to @JvmInline value classes" into androidx-main
diff --git a/compose/animation/animation-core/api/current.ignore b/compose/animation/animation-core/api/current.ignore
new file mode 100644
index 0000000..2426d29
--- /dev/null
+++ b/compose/animation/animation-core/api/current.ignore
@@ -0,0 +1,5 @@
+// Baseline format: 1.0
+RemovedMethod: androidx.compose.animation.core.StartOffset#StartOffset():
+    Removed constructor androidx.compose.animation.core.StartOffset()
+RemovedMethod: androidx.compose.animation.core.StartOffsetType#StartOffsetType():
+    Removed constructor androidx.compose.animation.core.StartOffsetType()
diff --git a/compose/animation/animation-core/api/current.txt b/compose/animation/animation-core/api/current.txt
index 1ba2fe9..bb23aa1 100644
--- a/compose/animation/animation-core/api/current.txt
+++ b/compose/animation/animation-core/api/current.txt
@@ -426,12 +426,16 @@
     property public final T? visibilityThreshold;
   }
 
-  public final inline class StartOffset {
-    ctor public StartOffset();
+  @kotlin.jvm.JvmInline public final value class StartOffset {
+    ctor public StartOffset(int offsetMillis, optional int offsetType);
+    method public int getOffsetMillis();
+    method public int getOffsetType();
+    property public final int offsetMillis;
+    property public final int offsetType;
   }
 
-  public final inline class StartOffsetType {
-    ctor public StartOffsetType();
+  @kotlin.jvm.JvmInline public final value class StartOffsetType {
+    field public static final androidx.compose.animation.core.StartOffsetType.Companion Companion;
   }
 
   public static final class StartOffsetType.Companion {
diff --git a/compose/animation/animation-core/api/public_plus_experimental_current.txt b/compose/animation/animation-core/api/public_plus_experimental_current.txt
index 0d7119a..ebe0f5f 100644
--- a/compose/animation/animation-core/api/public_plus_experimental_current.txt
+++ b/compose/animation/animation-core/api/public_plus_experimental_current.txt
@@ -432,12 +432,16 @@
     property public final T? visibilityThreshold;
   }
 
-  public final inline class StartOffset {
-    ctor public StartOffset();
+  @kotlin.jvm.JvmInline public final value class StartOffset {
+    ctor public StartOffset(int offsetMillis, optional int offsetType);
+    method public int getOffsetMillis();
+    method public int getOffsetType();
+    property public final int offsetMillis;
+    property public final int offsetType;
   }
 
-  public final inline class StartOffsetType {
-    ctor public StartOffsetType();
+  @kotlin.jvm.JvmInline public final value class StartOffsetType {
+    field public static final androidx.compose.animation.core.StartOffsetType.Companion Companion;
   }
 
   public static final class StartOffsetType.Companion {
diff --git a/compose/animation/animation-core/api/restricted_current.ignore b/compose/animation/animation-core/api/restricted_current.ignore
new file mode 100644
index 0000000..2426d29
--- /dev/null
+++ b/compose/animation/animation-core/api/restricted_current.ignore
@@ -0,0 +1,5 @@
+// Baseline format: 1.0
+RemovedMethod: androidx.compose.animation.core.StartOffset#StartOffset():
+    Removed constructor androidx.compose.animation.core.StartOffset()
+RemovedMethod: androidx.compose.animation.core.StartOffsetType#StartOffsetType():
+    Removed constructor androidx.compose.animation.core.StartOffsetType()
diff --git a/compose/animation/animation-core/api/restricted_current.txt b/compose/animation/animation-core/api/restricted_current.txt
index df9d1b7..3f7de7d 100644
--- a/compose/animation/animation-core/api/restricted_current.txt
+++ b/compose/animation/animation-core/api/restricted_current.txt
@@ -426,12 +426,16 @@
     property public final T? visibilityThreshold;
   }
 
-  public final inline class StartOffset {
-    ctor public StartOffset();
+  @kotlin.jvm.JvmInline public final value class StartOffset {
+    ctor public StartOffset(int offsetMillis, optional int offsetType);
+    method public int getOffsetMillis();
+    method public int getOffsetType();
+    property public final int offsetMillis;
+    property public final int offsetType;
   }
 
-  public final inline class StartOffsetType {
-    ctor public StartOffsetType();
+  @kotlin.jvm.JvmInline public final value class StartOffsetType {
+    field public static final androidx.compose.animation.core.StartOffsetType.Companion Companion;
   }
 
   public static final class StartOffsetType.Companion {
diff --git a/compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/AnimationSpec.kt b/compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/AnimationSpec.kt
index 5e22a32..d3a6f17 100644
--- a/compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/AnimationSpec.kt
+++ b/compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/AnimationSpec.kt
@@ -171,8 +171,8 @@
  * @see infiniteRepeatable
  * @see StartOffset
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-inline class StartOffsetType private constructor(internal val value: Int) {
[email protected]
+value class StartOffsetType private constructor(internal val value: Int) {
     companion object {
         /**
          * Delays the start of the animation.
@@ -194,10 +194,10 @@
  *
  * @sample androidx.compose.animation.core.samples.InfiniteProgressIndicator
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
 // This is an inline of Long so that when adding a StartOffset param to the end of constructor
 // param list, it won't be confused with/clash with the mask param generated by constructors.
-inline class StartOffset private constructor(internal val value: Long) {
[email protected]
+value class StartOffset private constructor(internal val value: Long) {
     /**
      * This creates a start offset for [repeatable] and [infiniteRepeatable]. [offsetType] can be
      * either of the following: [StartOffsetType.Delay] and [StartOffsetType.FastForward].
diff --git a/compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/SpringSimulation.kt b/compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/SpringSimulation.kt
index e7fd777..a2c7d99 100644
--- a/compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/SpringSimulation.kt
+++ b/compose/animation/animation-core/src/commonMain/kotlin/androidx/compose/animation/core/SpringSimulation.kt
@@ -42,8 +42,8 @@
  * damping (i.e. damping ratio = 0), the mass will oscillate forever.
  */
 
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-internal inline class Motion(val packedValue: Long) {
[email protected]
+internal value class Motion(val packedValue: Long) {
     val value: Float
         get() = unpackFloat1(packedValue)
     val velocity: Float
diff --git a/compose/animation/animation/api/public_plus_experimental_current.txt b/compose/animation/animation/api/public_plus_experimental_current.txt
index 8c771fe..e79ff0f 100644
--- a/compose/animation/animation/api/public_plus_experimental_current.txt
+++ b/compose/animation/animation/api/public_plus_experimental_current.txt
@@ -22,8 +22,8 @@
     property public S! targetState;
   }
 
-  @androidx.compose.runtime.Immutable public static final inline class AnimatedContentScope.SlideDirection {
-    ctor public AnimatedContentScope.SlideDirection();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public static final value class AnimatedContentScope.SlideDirection {
+    field public static final androidx.compose.animation.AnimatedContentScope.SlideDirection.Companion Companion;
   }
 
   public static final class AnimatedContentScope.SlideDirection.Companion {
diff --git a/compose/animation/animation/src/commonMain/kotlin/androidx/compose/animation/AnimatedContent.kt b/compose/animation/animation/src/commonMain/kotlin/androidx/compose/animation/AnimatedContent.kt
index dd5a571..cb7c03c 100644
--- a/compose/animation/animation/src/commonMain/kotlin/androidx/compose/animation/AnimatedContent.kt
+++ b/compose/animation/animation/src/commonMain/kotlin/androidx/compose/animation/AnimatedContent.kt
@@ -298,9 +298,9 @@
      * [SlideDirection] defines the direction of the slide in/out for [slideIntoContainer] and
      * [slideOutOfContainer]. The supported directions are: [Left], [Right], [Up] and [Down].
      */
-    @Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
     @Immutable
-    inline class SlideDirection internal constructor(private val value: Int) {
+    @kotlin.jvm.JvmInline
+    value class SlideDirection internal constructor(private val value: Int) {
         companion object {
             val Left = SlideDirection(0)
             val Right = SlideDirection(1)
diff --git a/compose/foundation/foundation/api/current.txt b/compose/foundation/foundation/api/current.txt
index e905eb0..c83a173 100644
--- a/compose/foundation/foundation/api/current.txt
+++ b/compose/foundation/foundation/api/current.txt
@@ -500,8 +500,9 @@
     method public java.util.List<java.lang.Integer> calculateCrossAxisCellSizes(androidx.compose.ui.unit.Density, int availableSize, int spacing);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class GridItemSpan {
-    ctor public GridItemSpan();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class GridItemSpan {
+    method public int getCurrentLineSpan();
+    property public final int currentLineSpan;
   }
 
   public final class LazyGridDslKt {
diff --git a/compose/foundation/foundation/api/public_plus_experimental_current.txt b/compose/foundation/foundation/api/public_plus_experimental_current.txt
index 4af4ac9..eb34880 100644
--- a/compose/foundation/foundation/api/public_plus_experimental_current.txt
+++ b/compose/foundation/foundation/api/public_plus_experimental_current.txt
@@ -563,8 +563,9 @@
     method public java.util.List<java.lang.Integer> calculateCrossAxisCellSizes(androidx.compose.ui.unit.Density, int availableSize, int spacing);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class GridItemSpan {
-    ctor public GridItemSpan();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class GridItemSpan {
+    method public int getCurrentLineSpan();
+    property public final int currentLineSpan;
   }
 
   public final class LazyGridDslKt {
diff --git a/compose/foundation/foundation/api/restricted_current.txt b/compose/foundation/foundation/api/restricted_current.txt
index e905eb0..c83a173 100644
--- a/compose/foundation/foundation/api/restricted_current.txt
+++ b/compose/foundation/foundation/api/restricted_current.txt
@@ -500,8 +500,9 @@
     method public java.util.List<java.lang.Integer> calculateCrossAxisCellSizes(androidx.compose.ui.unit.Density, int availableSize, int spacing);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class GridItemSpan {
-    ctor public GridItemSpan();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class GridItemSpan {
+    method public int getCurrentLineSpan();
+    property public final int currentLineSpan;
   }
 
   public final class LazyGridDslKt {
diff --git a/compose/foundation/foundation/build.gradle b/compose/foundation/foundation/build.gradle
index 18e0195..c9c08d7 100644
--- a/compose/foundation/foundation/build.gradle
+++ b/compose/foundation/foundation/build.gradle
@@ -169,9 +169,3 @@
     description = "Higher level abstractions of the Compose UI primitives. This library is design system agnostic, providing the high-level building blocks for both application and design-system developers"
     legacyDisableKotlinStrictApiMode = true
 }
-
-tasks.withType(KotlinCompile).configureEach {
-    kotlinOptions {
-        freeCompilerArgs += ["-XXLanguage:+InlineClasses"]
-    }
-}
diff --git a/compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/grid/ItemIndex.kt b/compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/grid/ItemIndex.kt
index c0ba5f8..7207064 100644
--- a/compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/grid/ItemIndex.kt
+++ b/compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/grid/ItemIndex.kt
@@ -19,8 +19,9 @@
 /**
  * Represents a line index in the lazy grid.
  */
-@Suppress("NOTHING_TO_INLINE", "INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-internal inline class LineIndex(val value: Int) {
+@Suppress("NOTHING_TO_INLINE")
[email protected]
+internal value class LineIndex(val value: Int) {
     inline operator fun inc(): LineIndex = LineIndex(value + 1)
     inline operator fun dec(): LineIndex = LineIndex(value - 1)
     inline operator fun plus(i: Int): LineIndex = LineIndex(value + i)
@@ -32,8 +33,9 @@
 /**
  * Represents an item index in the lazy grid.
  */
-@Suppress("NOTHING_TO_INLINE", "INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-internal inline class ItemIndex(val value: Int) {
+@Suppress("NOTHING_TO_INLINE")
[email protected]
+internal value class ItemIndex(val value: Int) {
     inline operator fun inc(): ItemIndex = ItemIndex(value + 1)
     inline operator fun dec(): ItemIndex = ItemIndex(value - 1)
     inline operator fun plus(i: Int): ItemIndex = ItemIndex(value + i)
diff --git a/compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/grid/LazyGridSpan.kt b/compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/grid/LazyGridSpan.kt
index 794ae1d..6275e46b 100644
--- a/compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/grid/LazyGridSpan.kt
+++ b/compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/grid/LazyGridSpan.kt
@@ -22,9 +22,9 @@
 /**
  * Represents the span of an item in a [LazyVerticalGrid].
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
 @Immutable
-inline class GridItemSpan internal constructor(private val packedValue: Long) {
[email protected]
+value class GridItemSpan internal constructor(private val packedValue: Long) {
     /**
      * The span of the item on the current line. This will be the horizontal span for items of
      * [LazyVerticalGrid].
diff --git a/compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/list/DataIndex.kt b/compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/list/DataIndex.kt
index 49dc44f..14174c3 100644
--- a/compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/list/DataIndex.kt
+++ b/compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/lazy/list/DataIndex.kt
@@ -19,8 +19,9 @@
 /**
  * Represents an index in the list of items of lazy layout.
  */
-@Suppress("NOTHING_TO_INLINE", "INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-internal inline class DataIndex(val value: Int) {
+@Suppress("NOTHING_TO_INLINE")
[email protected]
+internal value class DataIndex(val value: Int) {
     inline operator fun inc(): DataIndex = DataIndex(value + 1)
     inline operator fun dec(): DataIndex = DataIndex(value - 1)
     inline operator fun plus(i: Int): DataIndex = DataIndex(value + i)
diff --git a/compose/material/material-window/api/current.txt b/compose/material/material-window/api/current.txt
index 10b6e1d..c1c9c45 100644
--- a/compose/material/material-window/api/current.txt
+++ b/compose/material/material-window/api/current.txt
@@ -4,8 +4,8 @@
   public final class AndroidSizeClass_androidKt {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class HeightSizeClass {
-    ctor public HeightSizeClass();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class HeightSizeClass {
+    field public static final androidx.compose.material.window.HeightSizeClass.Companion Companion;
   }
 
   public static final class HeightSizeClass.Companion {
@@ -31,8 +31,8 @@
   public final class TestOnly_jvmKt {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class WidthSizeClass {
-    ctor public WidthSizeClass();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class WidthSizeClass {
+    field public static final androidx.compose.material.window.WidthSizeClass.Companion Companion;
   }
 
   public static final class WidthSizeClass.Companion {
diff --git a/compose/material/material-window/api/public_plus_experimental_current.txt b/compose/material/material-window/api/public_plus_experimental_current.txt
index 385647b..4692a13 100644
--- a/compose/material/material-window/api/public_plus_experimental_current.txt
+++ b/compose/material/material-window/api/public_plus_experimental_current.txt
@@ -10,8 +10,8 @@
   @kotlin.RequiresOptIn(message="This material-window API is experimental and is likely to change or to be removed in" + " the future.") public @interface ExperimentalMaterialWindowApi {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class HeightSizeClass {
-    ctor public HeightSizeClass();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class HeightSizeClass {
+    field public static final androidx.compose.material.window.HeightSizeClass.Companion Companion;
   }
 
   public static final class HeightSizeClass.Companion {
@@ -38,8 +38,8 @@
   public final class TestOnly_jvmKt {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class WidthSizeClass {
-    ctor public WidthSizeClass();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class WidthSizeClass {
+    field public static final androidx.compose.material.window.WidthSizeClass.Companion Companion;
   }
 
   public static final class WidthSizeClass.Companion {
diff --git a/compose/material/material-window/api/restricted_current.txt b/compose/material/material-window/api/restricted_current.txt
index 10b6e1d..c1c9c45 100644
--- a/compose/material/material-window/api/restricted_current.txt
+++ b/compose/material/material-window/api/restricted_current.txt
@@ -4,8 +4,8 @@
   public final class AndroidSizeClass_androidKt {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class HeightSizeClass {
-    ctor public HeightSizeClass();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class HeightSizeClass {
+    field public static final androidx.compose.material.window.HeightSizeClass.Companion Companion;
   }
 
   public static final class HeightSizeClass.Companion {
@@ -31,8 +31,8 @@
   public final class TestOnly_jvmKt {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class WidthSizeClass {
-    ctor public WidthSizeClass();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class WidthSizeClass {
+    field public static final androidx.compose.material.window.WidthSizeClass.Companion Companion;
   }
 
   public static final class WidthSizeClass.Companion {
diff --git a/compose/material/material-window/src/commonMain/kotlin/androidx/compose/material/window/SizeClass.kt b/compose/material/material-window/src/commonMain/kotlin/androidx/compose/material/window/SizeClass.kt
index 17c3b03..44aa060 100644
--- a/compose/material/material-window/src/commonMain/kotlin/androidx/compose/material/window/SizeClass.kt
+++ b/compose/material/material-window/src/commonMain/kotlin/androidx/compose/material/window/SizeClass.kt
@@ -79,9 +79,9 @@
  *
  * For more details check <a href="https://developer.android.com/guide/topics/large-screens/support-different-screen-sizes#window_size_classes" class="external" target="_blank">Window size classes documentation</a>.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
 @Immutable
-inline class WidthSizeClass private constructor(private val value: Int) {
[email protected]
+value class WidthSizeClass private constructor(private val value: Int) {
     companion object {
         /** Represents the majority of phones in portrait. */
         val Compact = WidthSizeClass(0)
@@ -118,9 +118,9 @@
  *
  * For more details check <a href="https://developer.android.com/guide/topics/large-screens/support-different-screen-sizes#window_size_classes" class="external" target="_blank">Window size classes documentation</a>.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
 @Immutable
-inline class HeightSizeClass private constructor(private val value: Int) {
[email protected]
+value class HeightSizeClass private constructor(private val value: Int) {
     companion object {
         /** Represents the majority of phones in landscape */
         val Compact = HeightSizeClass(0)
diff --git a/compose/material/material/api/current.ignore b/compose/material/material/api/current.ignore
new file mode 100644
index 0000000..f60b7d3
--- /dev/null
+++ b/compose/material/material/api/current.ignore
@@ -0,0 +1,3 @@
+// Baseline format: 1.0
+RemovedMethod: androidx.compose.material.FabPosition#FabPosition():
+    Removed constructor androidx.compose.material.FabPosition()
diff --git a/compose/material/material/api/current.txt b/compose/material/material/api/current.txt
index 6d055a3..f8756c8 100644
--- a/compose/material/material/api/current.txt
+++ b/compose/material/material/api/current.txt
@@ -270,8 +270,8 @@
   public final class ExposedDropdownMenuKt {
   }
 
-  public final inline class FabPosition {
-    ctor public FabPosition();
+  @kotlin.jvm.JvmInline public final value class FabPosition {
+    field public static final androidx.compose.material.FabPosition.Companion Companion;
   }
 
   public static final class FabPosition.Companion {
diff --git a/compose/material/material/api/public_plus_experimental_current.txt b/compose/material/material/api/public_plus_experimental_current.txt
index fb1e6bd..a60be1a 100644
--- a/compose/material/material/api/public_plus_experimental_current.txt
+++ b/compose/material/material/api/public_plus_experimental_current.txt
@@ -420,8 +420,8 @@
     method @androidx.compose.material.ExperimentalMaterialApi @androidx.compose.runtime.Composable public static void ExposedDropdownMenuBox(boolean expanded, kotlin.jvm.functions.Function1<? super java.lang.Boolean,kotlin.Unit> onExpandedChange, optional androidx.compose.ui.Modifier modifier, kotlin.jvm.functions.Function1<? super androidx.compose.material.ExposedDropdownMenuBoxScope,kotlin.Unit> content);
   }
 
-  public final inline class FabPosition {
-    ctor public FabPosition();
+  @kotlin.jvm.JvmInline public final value class FabPosition {
+    field public static final androidx.compose.material.FabPosition.Companion Companion;
   }
 
   public static final class FabPosition.Companion {
diff --git a/compose/material/material/api/restricted_current.ignore b/compose/material/material/api/restricted_current.ignore
new file mode 100644
index 0000000..f60b7d3
--- /dev/null
+++ b/compose/material/material/api/restricted_current.ignore
@@ -0,0 +1,3 @@
+// Baseline format: 1.0
+RemovedMethod: androidx.compose.material.FabPosition#FabPosition():
+    Removed constructor androidx.compose.material.FabPosition()
diff --git a/compose/material/material/api/restricted_current.txt b/compose/material/material/api/restricted_current.txt
index 6d055a3..f8756c8 100644
--- a/compose/material/material/api/restricted_current.txt
+++ b/compose/material/material/api/restricted_current.txt
@@ -270,8 +270,8 @@
   public final class ExposedDropdownMenuKt {
   }
 
-  public final inline class FabPosition {
-    ctor public FabPosition();
+  @kotlin.jvm.JvmInline public final value class FabPosition {
+    field public static final androidx.compose.material.FabPosition.Companion Companion;
   }
 
   public static final class FabPosition.Companion {
diff --git a/compose/material/material/src/commonMain/kotlin/androidx/compose/material/Scaffold.kt b/compose/material/material/src/commonMain/kotlin/androidx/compose/material/Scaffold.kt
index 5c29f47..d8cd090 100644
--- a/compose/material/material/src/commonMain/kotlin/androidx/compose/material/Scaffold.kt
+++ b/compose/material/material/src/commonMain/kotlin/androidx/compose/material/Scaffold.kt
@@ -70,8 +70,8 @@
 /**
  * The possible positions for a [FloatingActionButton] attached to a [Scaffold].
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class FabPosition internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class FabPosition internal constructor(@Suppress("unused") private val value: Int) {
     companion object {
         /**
          * Position FAB at the bottom of the screen in the center, above the [BottomAppBar] (if it
diff --git a/compose/material/material/src/commonMain/kotlin/androidx/compose/material/Strings.kt b/compose/material/material/src/commonMain/kotlin/androidx/compose/material/Strings.kt
index 20e51fd..6eef3d9 100644
--- a/compose/material/material/src/commonMain/kotlin/androidx/compose/material/Strings.kt
+++ b/compose/material/material/src/commonMain/kotlin/androidx/compose/material/Strings.kt
@@ -19,9 +19,9 @@
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.Immutable
 
-@Suppress("INLINE_CLASS_DEPRECATED")
 @Immutable
-internal inline class Strings private constructor(@Suppress("unused") private val value: Int) {
[email protected]
+internal value class Strings private constructor(@Suppress("unused") private val value: Int) {
     companion object {
         val NavigationMenu = Strings(0)
         val CloseDrawer = Strings(1)
diff --git a/compose/material3/material3/api/public_plus_experimental_current.txt b/compose/material3/material3/api/public_plus_experimental_current.txt
index f525564..7346956 100644
--- a/compose/material3/material3/api/public_plus_experimental_current.txt
+++ b/compose/material3/material3/api/public_plus_experimental_current.txt
@@ -261,8 +261,8 @@
     method @androidx.compose.material3.ExperimentalMaterial3Api @androidx.compose.runtime.Composable public static void ExposedDropdownMenuBox(boolean expanded, kotlin.jvm.functions.Function1<? super java.lang.Boolean,kotlin.Unit> onExpandedChange, optional androidx.compose.ui.Modifier modifier, kotlin.jvm.functions.Function1<? super androidx.compose.material3.ExposedDropdownMenuBoxScope,kotlin.Unit> content);
   }
 
-  @androidx.compose.material3.ExperimentalMaterial3Api public final inline class FabPosition {
-    ctor public FabPosition();
+  @androidx.compose.material3.ExperimentalMaterial3Api @kotlin.jvm.JvmInline public final value class FabPosition {
+    field public static final androidx.compose.material3.FabPosition.Companion Companion;
   }
 
   public static final class FabPosition.Companion {
diff --git a/compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/Scaffold.kt b/compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/Scaffold.kt
index fed51df..7eb20fa 100644
--- a/compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/Scaffold.kt
+++ b/compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/Scaffold.kt
@@ -222,8 +222,8 @@
  */
 // TODO(b/200553810): Mark as experimental
 @ExperimentalMaterial3Api
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class FabPosition internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class FabPosition internal constructor(@Suppress("unused") private val value: Int) {
     companion object {
         /**
          * Position FAB at the bottom of the screen in the center, above the [NavigationBar] (if it
diff --git a/compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/Strings.kt b/compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/Strings.kt
index 07e381a..8680682 100644
--- a/compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/Strings.kt
+++ b/compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/Strings.kt
@@ -19,9 +19,9 @@
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.Immutable
 
-@Suppress("INLINE_CLASS_DEPRECATED")
 @Immutable
-internal inline class Strings private constructor(@Suppress("unused") private val value: Int) {
[email protected]
+internal value class Strings private constructor(@Suppress("unused") private val value: Int) {
     companion object {
         val NavigationMenu = Strings(0)
         val CloseDrawer = Strings(1)
diff --git a/compose/runtime/runtime/api/api_lint.ignore b/compose/runtime/runtime/api/api_lint.ignore
index b213aeb..d1ce6c3 100644
--- a/compose/runtime/runtime/api/api_lint.ignore
+++ b/compose/runtime/runtime/api/api_lint.ignore
@@ -9,7 +9,9 @@
     Method Failure.check appears to be throwing androidx.compose.runtime.snapshots.SnapshotApplyConflictException; this should be recorded with a @Throws annotation; see https://android.github.io/kotlin-guides/interop.html#document-exceptions
 
 
-KotlinOperator: androidx.compose.runtime.Updater#set(int, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,? extends kotlin.Unit>):
+KotlinOperator: androidx.compose.runtime.Updater#set(V, kotlin.jvm.functions.Function2<? super T,? super V,kotlin.Unit>):
+    Note that adding the `operator` keyword would allow calling this method using operator syntax
+KotlinOperator: androidx.compose.runtime.Updater#set(int, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,kotlin.Unit>):
     Note that adding the `operator` keyword would allow calling this method using operator syntax
 KotlinOperator: androidx.compose.runtime.snapshots.SnapshotStateList#contains(T):
     Note that adding the `operator` keyword would allow calling this method using operator syntax
diff --git a/compose/runtime/runtime/api/current.ignore b/compose/runtime/runtime/api/current.ignore
index 6c700d97..1ea8546 100644
--- a/compose/runtime/runtime/api/current.ignore
+++ b/compose/runtime/runtime/api/current.ignore
@@ -11,3 +11,9 @@
     Added method androidx.compose.runtime.ControlledComposition.changesApplied()
 AddedAbstractMethod: androidx.compose.runtime.ControlledComposition#delegateInvalidations(androidx.compose.runtime.ControlledComposition, int, kotlin.jvm.functions.Function0<? extends R>):
     Added method androidx.compose.runtime.ControlledComposition.delegateInvalidations(androidx.compose.runtime.ControlledComposition,int,kotlin.jvm.functions.Function0<? extends R>)
+
+
+RemovedMethod: androidx.compose.runtime.SkippableUpdater#SkippableUpdater():
+    Removed constructor androidx.compose.runtime.SkippableUpdater()
+RemovedMethod: androidx.compose.runtime.Updater#Updater():
+    Removed constructor androidx.compose.runtime.Updater()
diff --git a/compose/runtime/runtime/api/current.txt b/compose/runtime/runtime/api/current.txt
index 6ac3a32..e8650e2 100644
--- a/compose/runtime/runtime/api/current.txt
+++ b/compose/runtime/runtime/api/current.txt
@@ -394,9 +394,9 @@
     method public void updateScope(kotlin.jvm.functions.Function2<? super androidx.compose.runtime.Composer,? super java.lang.Integer,kotlin.Unit> block);
   }
 
-  public final inline class SkippableUpdater<T> {
-    ctor public SkippableUpdater();
-    method public inline void update(kotlin.jvm.functions.Function1<? super androidx.compose.runtime.Updater<T>,? extends kotlin.Unit> block);
+  @kotlin.jvm.JvmInline public final value class SkippableUpdater<T> {
+    ctor public SkippableUpdater(@kotlin.PublishedApi androidx.compose.runtime.Composer composer);
+    method public inline void update(kotlin.jvm.functions.Function1<? super androidx.compose.runtime.Updater<T>,kotlin.Unit> block);
   }
 
   public final class SlotTableKt {
@@ -546,11 +546,14 @@
   public final class TraceKt {
   }
 
-  public final inline class Updater<T> {
-    ctor public Updater();
-    method public void reconcile(kotlin.jvm.functions.Function1<? super T,? extends kotlin.Unit> block);
-    method public inline void set(int value, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,? extends kotlin.Unit> block);
-    method public inline void update(int value, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,? extends kotlin.Unit> block);
+  @kotlin.jvm.JvmInline public final value class Updater<T> {
+    ctor public Updater(@kotlin.PublishedApi androidx.compose.runtime.Composer composer);
+    method public void init(kotlin.jvm.functions.Function1<? super T,kotlin.Unit> block);
+    method public void reconcile(kotlin.jvm.functions.Function1<? super T,kotlin.Unit> block);
+    method public inline void set(int value, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,kotlin.Unit> block);
+    method public <V> void set(V? value, kotlin.jvm.functions.Function2<? super T,? super V,kotlin.Unit> block);
+    method public inline void update(int value, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,kotlin.Unit> block);
+    method public <V> void update(V? value, kotlin.jvm.functions.Function2<? super T,? super V,kotlin.Unit> block);
   }
 
 }
diff --git a/compose/runtime/runtime/api/public_plus_experimental_current.txt b/compose/runtime/runtime/api/public_plus_experimental_current.txt
index e7a5f70..badb856 100644
--- a/compose/runtime/runtime/api/public_plus_experimental_current.txt
+++ b/compose/runtime/runtime/api/public_plus_experimental_current.txt
@@ -443,9 +443,9 @@
     method public void updateScope(kotlin.jvm.functions.Function2<? super androidx.compose.runtime.Composer,? super java.lang.Integer,kotlin.Unit> block);
   }
 
-  public final inline class SkippableUpdater<T> {
-    ctor public SkippableUpdater();
-    method public inline void update(kotlin.jvm.functions.Function1<? super androidx.compose.runtime.Updater<T>,? extends kotlin.Unit> block);
+  @kotlin.jvm.JvmInline public final value class SkippableUpdater<T> {
+    ctor public SkippableUpdater(@kotlin.PublishedApi androidx.compose.runtime.Composer composer);
+    method public inline void update(kotlin.jvm.functions.Function1<? super androidx.compose.runtime.Updater<T>,kotlin.Unit> block);
   }
 
   public final class SlotTableKt {
@@ -595,11 +595,14 @@
   public final class TraceKt {
   }
 
-  public final inline class Updater<T> {
-    ctor public Updater();
-    method public void reconcile(kotlin.jvm.functions.Function1<? super T,? extends kotlin.Unit> block);
-    method public inline void set(int value, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,? extends kotlin.Unit> block);
-    method public inline void update(int value, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,? extends kotlin.Unit> block);
+  @kotlin.jvm.JvmInline public final value class Updater<T> {
+    ctor public Updater(@kotlin.PublishedApi androidx.compose.runtime.Composer composer);
+    method public void init(kotlin.jvm.functions.Function1<? super T,kotlin.Unit> block);
+    method public void reconcile(kotlin.jvm.functions.Function1<? super T,kotlin.Unit> block);
+    method public inline void set(int value, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,kotlin.Unit> block);
+    method public <V> void set(V? value, kotlin.jvm.functions.Function2<? super T,? super V,kotlin.Unit> block);
+    method public inline void update(int value, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,kotlin.Unit> block);
+    method public <V> void update(V? value, kotlin.jvm.functions.Function2<? super T,? super V,kotlin.Unit> block);
   }
 
 }
diff --git a/compose/runtime/runtime/api/restricted_current.ignore b/compose/runtime/runtime/api/restricted_current.ignore
index 6c700d97..1ea8546 100644
--- a/compose/runtime/runtime/api/restricted_current.ignore
+++ b/compose/runtime/runtime/api/restricted_current.ignore
@@ -11,3 +11,9 @@
     Added method androidx.compose.runtime.ControlledComposition.changesApplied()
 AddedAbstractMethod: androidx.compose.runtime.ControlledComposition#delegateInvalidations(androidx.compose.runtime.ControlledComposition, int, kotlin.jvm.functions.Function0<? extends R>):
     Added method androidx.compose.runtime.ControlledComposition.delegateInvalidations(androidx.compose.runtime.ControlledComposition,int,kotlin.jvm.functions.Function0<? extends R>)
+
+
+RemovedMethod: androidx.compose.runtime.SkippableUpdater#SkippableUpdater():
+    Removed constructor androidx.compose.runtime.SkippableUpdater()
+RemovedMethod: androidx.compose.runtime.Updater#Updater():
+    Removed constructor androidx.compose.runtime.Updater()
diff --git a/compose/runtime/runtime/api/restricted_current.txt b/compose/runtime/runtime/api/restricted_current.txt
index fb09c18..efd40ac 100644
--- a/compose/runtime/runtime/api/restricted_current.txt
+++ b/compose/runtime/runtime/api/restricted_current.txt
@@ -420,9 +420,9 @@
     method public void updateScope(kotlin.jvm.functions.Function2<? super androidx.compose.runtime.Composer,? super java.lang.Integer,kotlin.Unit> block);
   }
 
-  public final inline class SkippableUpdater<T> {
-    ctor public SkippableUpdater();
-    method public inline void update(kotlin.jvm.functions.Function1<? super androidx.compose.runtime.Updater<T>,? extends kotlin.Unit> block);
+  @kotlin.jvm.JvmInline public final value class SkippableUpdater<T> {
+    ctor public SkippableUpdater(@kotlin.PublishedApi androidx.compose.runtime.Composer composer);
+    method public inline void update(kotlin.jvm.functions.Function1<? super androidx.compose.runtime.Updater<T>,kotlin.Unit> block);
   }
 
   public final class SlotTableKt {
@@ -572,11 +572,14 @@
   public final class TraceKt {
   }
 
-  public final inline class Updater<T> {
-    ctor public Updater();
-    method public void reconcile(kotlin.jvm.functions.Function1<? super T,? extends kotlin.Unit> block);
-    method public inline void set(int value, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,? extends kotlin.Unit> block);
-    method public inline void update(int value, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,? extends kotlin.Unit> block);
+  @kotlin.jvm.JvmInline public final value class Updater<T> {
+    ctor public Updater(@kotlin.PublishedApi androidx.compose.runtime.Composer composer);
+    method public void init(kotlin.jvm.functions.Function1<? super T,kotlin.Unit> block);
+    method public void reconcile(kotlin.jvm.functions.Function1<? super T,kotlin.Unit> block);
+    method public inline void set(int value, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,kotlin.Unit> block);
+    method public <V> void set(V? value, kotlin.jvm.functions.Function2<? super T,? super V,kotlin.Unit> block);
+    method public inline void update(int value, kotlin.jvm.functions.Function2<? super T,? super java.lang.Integer,kotlin.Unit> block);
+    method public <V> void update(V? value, kotlin.jvm.functions.Function2<? super T,? super V,kotlin.Unit> block);
   }
 
 }
diff --git a/compose/runtime/runtime/src/commonMain/kotlin/androidx/compose/runtime/Composer.kt b/compose/runtime/runtime/src/commonMain/kotlin/androidx/compose/runtime/Composer.kt
index 23350c7..594aad1 100644
--- a/compose/runtime/runtime/src/commonMain/kotlin/androidx/compose/runtime/Composer.kt
+++ b/compose/runtime/runtime/src/commonMain/kotlin/androidx/compose/runtime/Composer.kt
@@ -3695,8 +3695,8 @@
  *
  * @see ComposeNode
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class Updater<T> constructor(
[email protected]
+value class Updater<T> constructor(
     @PublishedApi internal val composer: Composer
 ) {
     /**
@@ -3816,8 +3816,9 @@
         }
     }
 }
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class SkippableUpdater<T> constructor(
+
[email protected]
+value class SkippableUpdater<T> constructor(
     @PublishedApi internal val composer: Composer
 ) {
     inline fun update(block: Updater<T>.() -> Unit) {
diff --git a/compose/ui/ui-geometry/api/current.ignore b/compose/ui/ui-geometry/api/current.ignore
new file mode 100644
index 0000000..1f4f96f
--- /dev/null
+++ b/compose/ui/ui-geometry/api/current.ignore
@@ -0,0 +1,7 @@
+// Baseline format: 1.0
+RemovedMethod: androidx.compose.ui.geometry.CornerRadius#CornerRadius():
+    Removed constructor androidx.compose.ui.geometry.CornerRadius()
+RemovedMethod: androidx.compose.ui.geometry.Offset#Offset():
+    Removed constructor androidx.compose.ui.geometry.Offset()
+RemovedMethod: androidx.compose.ui.geometry.Size#Size():
+    Removed constructor androidx.compose.ui.geometry.Size()
diff --git a/compose/ui/ui-geometry/api/current.txt b/compose/ui/ui-geometry/api/current.txt
index f8601c7..ef46309 100644
--- a/compose/ui/ui-geometry/api/current.txt
+++ b/compose/ui/ui-geometry/api/current.txt
@@ -1,15 +1,20 @@
 // Signature format: 4.0
 package androidx.compose.ui.geometry {
 
-  @androidx.compose.runtime.Immutable public final inline class CornerRadius {
-    ctor public CornerRadius();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class CornerRadius {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float x, optional float y);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public float getX();
+    method public float getY();
     method @androidx.compose.runtime.Stable public operator long minus(long other);
     method @androidx.compose.runtime.Stable public operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long times(float operand);
     method @androidx.compose.runtime.Stable public operator long unaryMinus();
+    property public final float x;
+    property public final float y;
+    field public static final androidx.compose.ui.geometry.CornerRadius.Companion Companion;
   }
 
   public static final class CornerRadius.Companion {
@@ -56,19 +61,24 @@
     method public static androidx.compose.ui.geometry.Rect toRect(androidx.compose.ui.geometry.MutableRect);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Offset {
-    ctor public Offset();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Offset {
     method @androidx.compose.runtime.Stable public operator float component1();
     method @androidx.compose.runtime.Stable public operator float component2();
+    method public long copy(optional float x, optional float y);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
     method @androidx.compose.runtime.Stable public float getDistance();
     method @androidx.compose.runtime.Stable public float getDistanceSquared();
+    method public float getX();
+    method public float getY();
     method @androidx.compose.runtime.Stable public boolean isValid();
     method @androidx.compose.runtime.Stable public operator long minus(long other);
     method @androidx.compose.runtime.Stable public operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long rem(float operand);
     method @androidx.compose.runtime.Stable public operator long times(float operand);
     method @androidx.compose.runtime.Stable public operator long unaryMinus();
+    property public final float x;
+    property public final float y;
+    field public static final androidx.compose.ui.geometry.Offset.Companion Companion;
   }
 
   public static final class Offset.Companion {
@@ -223,13 +233,22 @@
     method public static androidx.compose.ui.geometry.RoundRect translate(androidx.compose.ui.geometry.RoundRect, long offset);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Size {
-    ctor public Size();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Size {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float width, optional float height);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public float getHeight();
+    method public float getMaxDimension();
+    method public float getMinDimension();
+    method public float getWidth();
     method @androidx.compose.runtime.Stable public boolean isEmpty();
     method @androidx.compose.runtime.Stable public operator long times(float operand);
+    property public final float height;
+    property public final float maxDimension;
+    property public final float minDimension;
+    property public final float width;
+    field public static final androidx.compose.ui.geometry.Size.Companion Companion;
   }
 
   public static final class Size.Companion {
diff --git a/compose/ui/ui-geometry/api/public_plus_experimental_current.txt b/compose/ui/ui-geometry/api/public_plus_experimental_current.txt
index f8601c7..ef46309 100644
--- a/compose/ui/ui-geometry/api/public_plus_experimental_current.txt
+++ b/compose/ui/ui-geometry/api/public_plus_experimental_current.txt
@@ -1,15 +1,20 @@
 // Signature format: 4.0
 package androidx.compose.ui.geometry {
 
-  @androidx.compose.runtime.Immutable public final inline class CornerRadius {
-    ctor public CornerRadius();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class CornerRadius {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float x, optional float y);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public float getX();
+    method public float getY();
     method @androidx.compose.runtime.Stable public operator long minus(long other);
     method @androidx.compose.runtime.Stable public operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long times(float operand);
     method @androidx.compose.runtime.Stable public operator long unaryMinus();
+    property public final float x;
+    property public final float y;
+    field public static final androidx.compose.ui.geometry.CornerRadius.Companion Companion;
   }
 
   public static final class CornerRadius.Companion {
@@ -56,19 +61,24 @@
     method public static androidx.compose.ui.geometry.Rect toRect(androidx.compose.ui.geometry.MutableRect);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Offset {
-    ctor public Offset();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Offset {
     method @androidx.compose.runtime.Stable public operator float component1();
     method @androidx.compose.runtime.Stable public operator float component2();
+    method public long copy(optional float x, optional float y);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
     method @androidx.compose.runtime.Stable public float getDistance();
     method @androidx.compose.runtime.Stable public float getDistanceSquared();
+    method public float getX();
+    method public float getY();
     method @androidx.compose.runtime.Stable public boolean isValid();
     method @androidx.compose.runtime.Stable public operator long minus(long other);
     method @androidx.compose.runtime.Stable public operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long rem(float operand);
     method @androidx.compose.runtime.Stable public operator long times(float operand);
     method @androidx.compose.runtime.Stable public operator long unaryMinus();
+    property public final float x;
+    property public final float y;
+    field public static final androidx.compose.ui.geometry.Offset.Companion Companion;
   }
 
   public static final class Offset.Companion {
@@ -223,13 +233,22 @@
     method public static androidx.compose.ui.geometry.RoundRect translate(androidx.compose.ui.geometry.RoundRect, long offset);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Size {
-    ctor public Size();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Size {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float width, optional float height);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public float getHeight();
+    method public float getMaxDimension();
+    method public float getMinDimension();
+    method public float getWidth();
     method @androidx.compose.runtime.Stable public boolean isEmpty();
     method @androidx.compose.runtime.Stable public operator long times(float operand);
+    property public final float height;
+    property public final float maxDimension;
+    property public final float minDimension;
+    property public final float width;
+    field public static final androidx.compose.ui.geometry.Size.Companion Companion;
   }
 
   public static final class Size.Companion {
diff --git a/compose/ui/ui-geometry/api/restricted_current.ignore b/compose/ui/ui-geometry/api/restricted_current.ignore
new file mode 100644
index 0000000..1f4f96f
--- /dev/null
+++ b/compose/ui/ui-geometry/api/restricted_current.ignore
@@ -0,0 +1,7 @@
+// Baseline format: 1.0
+RemovedMethod: androidx.compose.ui.geometry.CornerRadius#CornerRadius():
+    Removed constructor androidx.compose.ui.geometry.CornerRadius()
+RemovedMethod: androidx.compose.ui.geometry.Offset#Offset():
+    Removed constructor androidx.compose.ui.geometry.Offset()
+RemovedMethod: androidx.compose.ui.geometry.Size#Size():
+    Removed constructor androidx.compose.ui.geometry.Size()
diff --git a/compose/ui/ui-geometry/api/restricted_current.txt b/compose/ui/ui-geometry/api/restricted_current.txt
index f8601c7..ef46309 100644
--- a/compose/ui/ui-geometry/api/restricted_current.txt
+++ b/compose/ui/ui-geometry/api/restricted_current.txt
@@ -1,15 +1,20 @@
 // Signature format: 4.0
 package androidx.compose.ui.geometry {
 
-  @androidx.compose.runtime.Immutable public final inline class CornerRadius {
-    ctor public CornerRadius();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class CornerRadius {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float x, optional float y);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public float getX();
+    method public float getY();
     method @androidx.compose.runtime.Stable public operator long minus(long other);
     method @androidx.compose.runtime.Stable public operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long times(float operand);
     method @androidx.compose.runtime.Stable public operator long unaryMinus();
+    property public final float x;
+    property public final float y;
+    field public static final androidx.compose.ui.geometry.CornerRadius.Companion Companion;
   }
 
   public static final class CornerRadius.Companion {
@@ -56,19 +61,24 @@
     method public static androidx.compose.ui.geometry.Rect toRect(androidx.compose.ui.geometry.MutableRect);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Offset {
-    ctor public Offset();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Offset {
     method @androidx.compose.runtime.Stable public operator float component1();
     method @androidx.compose.runtime.Stable public operator float component2();
+    method public long copy(optional float x, optional float y);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
     method @androidx.compose.runtime.Stable public float getDistance();
     method @androidx.compose.runtime.Stable public float getDistanceSquared();
+    method public float getX();
+    method public float getY();
     method @androidx.compose.runtime.Stable public boolean isValid();
     method @androidx.compose.runtime.Stable public operator long minus(long other);
     method @androidx.compose.runtime.Stable public operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long rem(float operand);
     method @androidx.compose.runtime.Stable public operator long times(float operand);
     method @androidx.compose.runtime.Stable public operator long unaryMinus();
+    property public final float x;
+    property public final float y;
+    field public static final androidx.compose.ui.geometry.Offset.Companion Companion;
   }
 
   public static final class Offset.Companion {
@@ -223,13 +233,22 @@
     method public static androidx.compose.ui.geometry.RoundRect translate(androidx.compose.ui.geometry.RoundRect, long offset);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Size {
-    ctor public Size();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Size {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float width, optional float height);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public float getHeight();
+    method public float getMaxDimension();
+    method public float getMinDimension();
+    method public float getWidth();
     method @androidx.compose.runtime.Stable public boolean isEmpty();
     method @androidx.compose.runtime.Stable public operator long times(float operand);
+    property public final float height;
+    property public final float maxDimension;
+    property public final float minDimension;
+    property public final float width;
+    field public static final androidx.compose.ui.geometry.Size.Companion Companion;
   }
 
   public static final class Size.Companion {
diff --git a/compose/ui/ui-geometry/build.gradle b/compose/ui/ui-geometry/build.gradle
index 86705d2..b97e372 100644
--- a/compose/ui/ui-geometry/build.gradle
+++ b/compose/ui/ui-geometry/build.gradle
@@ -88,9 +88,3 @@
 android {
     namespace "androidx.compose.ui.geometry"
 }
-
-tasks.withType(KotlinCompile).configureEach {
-    kotlinOptions {
-        freeCompilerArgs += ["-XXLanguage:+InlineClasses"]
-    }
-}
diff --git a/compose/ui/ui-geometry/src/commonMain/kotlin/androidx/compose/ui/geometry/CornerRadius.kt b/compose/ui/ui-geometry/src/commonMain/kotlin/androidx/compose/ui/geometry/CornerRadius.kt
index c3b70e3..55581e9 100644
--- a/compose/ui/ui-geometry/src/commonMain/kotlin/androidx/compose/ui/geometry/CornerRadius.kt
+++ b/compose/ui/ui-geometry/src/commonMain/kotlin/androidx/compose/ui/geometry/CornerRadius.kt
@@ -39,9 +39,9 @@
  * function constructor as it is represented as an inline class with 2 float
  * parameters packed into a single long to reduce allocation overhead
  **/
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class CornerRadius internal constructor(@PublishedApi internal val packedValue: Long) {
[email protected]
+value class CornerRadius internal constructor(@PublishedApi internal val packedValue: Long) {
 
     /** The radius value on the horizontal axis. */
     @Stable
diff --git a/compose/ui/ui-geometry/src/commonMain/kotlin/androidx/compose/ui/geometry/Offset.kt b/compose/ui/ui-geometry/src/commonMain/kotlin/androidx/compose/ui/geometry/Offset.kt
index 3595318..878f03b 100644
--- a/compose/ui/ui-geometry/src/commonMain/kotlin/androidx/compose/ui/geometry/Offset.kt
+++ b/compose/ui/ui-geometry/src/commonMain/kotlin/androidx/compose/ui/geometry/Offset.kt
@@ -56,9 +56,9 @@
  * Creates an offset. The first argument sets [x], the horizontal component,
  * and the second sets [y], the vertical component.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class Offset internal constructor(internal val packedValue: Long) {
[email protected]
+value class Offset internal constructor(internal val packedValue: Long) {
 
     @Stable
     val x: Float
diff --git a/compose/ui/ui-geometry/src/commonMain/kotlin/androidx/compose/ui/geometry/Size.kt b/compose/ui/ui-geometry/src/commonMain/kotlin/androidx/compose/ui/geometry/Size.kt
index 517afbd..7f17248 100644
--- a/compose/ui/ui-geometry/src/commonMain/kotlin/androidx/compose/ui/geometry/Size.kt
+++ b/compose/ui/ui-geometry/src/commonMain/kotlin/androidx/compose/ui/geometry/Size.kt
@@ -37,9 +37,9 @@
  *
  * You can think of this as an [Offset] from the origin.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class Size internal constructor(@PublishedApi internal val packedValue: Long) {
[email protected]
+value class Size internal constructor(@PublishedApi internal val packedValue: Long) {
 
     @Stable
     val width: Float
diff --git a/compose/ui/ui-graphics/api/api_lint.ignore b/compose/ui/ui-graphics/api/api_lint.ignore
index 75e464a..ca3e2e3 100644
--- a/compose/ui/ui-graphics/api/api_lint.ignore
+++ b/compose/ui/ui-graphics/api/api_lint.ignore
@@ -47,8 +47,6 @@
     androidx.compose.ui.graphics.vector.PathBuilder does not declare a `build()` method, but builder classes are expected to
 
 
-MissingNullability: androidx.compose.ui.graphics.Color#component5():
-    Missing nullability on method `component5` return
 MissingNullability: androidx.compose.ui.graphics.PaintKt#Paint():
     Missing nullability on method `Paint` return
 
diff --git a/compose/ui/ui-graphics/api/current.ignore b/compose/ui/ui-graphics/api/current.ignore
new file mode 100644
index 0000000..01ec803
--- /dev/null
+++ b/compose/ui/ui-graphics/api/current.ignore
@@ -0,0 +1,37 @@
+// Baseline format: 1.0
+RemovedMethod: androidx.compose.ui.graphics.BlendMode#BlendMode():
+    Removed constructor androidx.compose.ui.graphics.BlendMode()
+RemovedMethod: androidx.compose.ui.graphics.ClipOp#ClipOp():
+    Removed constructor androidx.compose.ui.graphics.ClipOp()
+RemovedMethod: androidx.compose.ui.graphics.Color#Color():
+    Removed constructor androidx.compose.ui.graphics.Color()
+RemovedMethod: androidx.compose.ui.graphics.ColorMatrix#ColorMatrix():
+    Removed constructor androidx.compose.ui.graphics.ColorMatrix()
+RemovedMethod: androidx.compose.ui.graphics.FilterQuality#FilterQuality():
+    Removed constructor androidx.compose.ui.graphics.FilterQuality()
+RemovedMethod: androidx.compose.ui.graphics.ImageBitmapConfig#ImageBitmapConfig():
+    Removed constructor androidx.compose.ui.graphics.ImageBitmapConfig()
+RemovedMethod: androidx.compose.ui.graphics.Matrix#Matrix():
+    Removed constructor androidx.compose.ui.graphics.Matrix()
+RemovedMethod: androidx.compose.ui.graphics.PaintingStyle#PaintingStyle():
+    Removed constructor androidx.compose.ui.graphics.PaintingStyle()
+RemovedMethod: androidx.compose.ui.graphics.PathFillType#PathFillType():
+    Removed constructor androidx.compose.ui.graphics.PathFillType()
+RemovedMethod: androidx.compose.ui.graphics.PathOperation#PathOperation():
+    Removed constructor androidx.compose.ui.graphics.PathOperation()
+RemovedMethod: androidx.compose.ui.graphics.PointMode#PointMode():
+    Removed constructor androidx.compose.ui.graphics.PointMode()
+RemovedMethod: androidx.compose.ui.graphics.StampedPathEffectStyle#StampedPathEffectStyle():
+    Removed constructor androidx.compose.ui.graphics.StampedPathEffectStyle()
+RemovedMethod: androidx.compose.ui.graphics.StrokeCap#StrokeCap():
+    Removed constructor androidx.compose.ui.graphics.StrokeCap()
+RemovedMethod: androidx.compose.ui.graphics.StrokeJoin#StrokeJoin():
+    Removed constructor androidx.compose.ui.graphics.StrokeJoin()
+RemovedMethod: androidx.compose.ui.graphics.TileMode#TileMode():
+    Removed constructor androidx.compose.ui.graphics.TileMode()
+RemovedMethod: androidx.compose.ui.graphics.VertexMode#VertexMode():
+    Removed constructor androidx.compose.ui.graphics.VertexMode()
+RemovedMethod: androidx.compose.ui.graphics.colorspace.ColorModel#ColorModel():
+    Removed constructor androidx.compose.ui.graphics.colorspace.ColorModel()
+RemovedMethod: androidx.compose.ui.graphics.colorspace.RenderIntent#RenderIntent():
+    Removed constructor androidx.compose.ui.graphics.colorspace.RenderIntent()
diff --git a/compose/ui/ui-graphics/api/current.txt b/compose/ui/ui-graphics/api/current.txt
index 430df1a..d329e0f 100644
--- a/compose/ui/ui-graphics/api/current.txt
+++ b/compose/ui/ui-graphics/api/current.txt
@@ -145,8 +145,8 @@
     method public static android.graphics.Canvas.VertexMode toAndroidVertexMode(int);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class BlendMode {
-    ctor public BlendMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class BlendMode {
+    field public static final androidx.compose.ui.graphics.BlendMode.Companion Companion;
   }
 
   public static final class BlendMode.Companion {
@@ -286,8 +286,8 @@
     method public static inline void withSaveLayer(androidx.compose.ui.graphics.Canvas, androidx.compose.ui.geometry.Rect bounds, androidx.compose.ui.graphics.Paint paint, kotlin.jvm.functions.Function0<kotlin.Unit> block);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ClipOp {
-    ctor public ClipOp();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ClipOp {
+    field public static final androidx.compose.ui.graphics.ClipOp.Companion Companion;
   }
 
   public static final class ClipOp.Companion {
@@ -297,16 +297,28 @@
     property public final int Intersect;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Color {
-    ctor public Color();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Color {
+    ctor public Color(long value);
     method @androidx.compose.runtime.Stable public operator float component1();
     method @androidx.compose.runtime.Stable public operator float component2();
     method @androidx.compose.runtime.Stable public operator float component3();
     method @androidx.compose.runtime.Stable public operator float component4();
-    method @androidx.compose.runtime.Stable public operator androidx.compose.ui.graphics.colorspace.ColorSpace! component5();
+    method @androidx.compose.runtime.Stable public operator androidx.compose.ui.graphics.colorspace.ColorSpace component5();
+    method public long convert(androidx.compose.ui.graphics.colorspace.ColorSpace colorSpace);
     method @androidx.compose.runtime.Stable public long copy(optional float alpha, optional float red, optional float green, optional float blue);
+    method public float getAlpha();
+    method public float getBlue();
+    method public androidx.compose.ui.graphics.colorspace.ColorSpace getColorSpace();
+    method public float getGreen();
+    method public float getRed();
     method public long getValue();
+    property public final float alpha;
+    property public final float blue;
+    property public final androidx.compose.ui.graphics.colorspace.ColorSpace colorSpace;
+    property public final float green;
+    property public final float red;
     property public final long value;
+    field public static final androidx.compose.ui.graphics.Color.Companion Companion;
   }
 
   public static final class Color.Companion {
@@ -364,11 +376,20 @@
     method @androidx.compose.runtime.Stable public static int toArgb(long);
   }
 
-  public final inline class ColorMatrix {
-    ctor public ColorMatrix();
+  @kotlin.jvm.JvmInline public final value class ColorMatrix {
+    ctor public ColorMatrix(optional float[] values);
+    method public void convertRgbToYuv();
+    method public void convertYuvToRgb();
     method public inline operator float get(int row, int column);
     method public float[] getValues();
+    method public void reset();
     method public inline operator void set(int row, int column, float v);
+    method public void set(float[] src);
+    method public void setToRotateBlue(float degrees);
+    method public void setToRotateGreen(float degrees);
+    method public void setToRotateRed(float degrees);
+    method public void setToSaturation(float sat);
+    method public void setToScale(float redScale, float greenScale, float blueScale, float alphaScale);
     method public operator void timesAssign(float[] colorMatrix);
     property public final float[] values;
   }
@@ -376,10 +397,10 @@
   public final class DegreesKt {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class FilterQuality {
-    ctor public FilterQuality();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class FilterQuality {
     method public int getValue();
     property public final int value;
+    field public static final androidx.compose.ui.graphics.FilterQuality.Companion Companion;
   }
 
   public static final class FilterQuality.Companion {
@@ -415,10 +436,10 @@
   public static final class ImageBitmap.Companion {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ImageBitmapConfig {
-    ctor public ImageBitmapConfig();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ImageBitmapConfig {
     method public int getValue();
     property public final int value;
+    field public static final androidx.compose.ui.graphics.ImageBitmapConfig.Companion Companion;
   }
 
   public static final class ImageBitmapConfig.Companion {
@@ -444,13 +465,36 @@
     property public long intrinsicSize;
   }
 
-  public final inline class Matrix {
-    ctor public Matrix();
+  @kotlin.jvm.JvmInline public final value class Matrix {
+    ctor public Matrix(optional float[] values);
     method public inline operator float get(int row, int column);
     method public float[] getValues();
+    method public void invert();
+    method public long map(long point);
+    method public androidx.compose.ui.geometry.Rect map(androidx.compose.ui.geometry.Rect rect);
+    method public void map(androidx.compose.ui.geometry.MutableRect rect);
+    method public void reset();
+    method public void rotateX(float degrees);
+    method public void rotateY(float degrees);
+    method public void rotateZ(float degrees);
+    method public void scale(optional float x, optional float y, optional float z);
     method public inline operator void set(int row, int column, float v);
+    method public void setFrom(float[] matrix);
     method public operator void timesAssign(float[] m);
+    method public void translate(optional float x, optional float y, optional float z);
     property public final float[] values;
+    field public static final androidx.compose.ui.graphics.Matrix.Companion Companion;
+    field public static final int Perspective0 = 3; // 0x3
+    field public static final int Perspective1 = 7; // 0x7
+    field public static final int Perspective2 = 15; // 0xf
+    field public static final int ScaleX = 0; // 0x0
+    field public static final int ScaleY = 5; // 0x5
+    field public static final int ScaleZ = 10; // 0xa
+    field public static final int SkewX = 4; // 0x4
+    field public static final int SkewY = 1; // 0x1
+    field public static final int TranslateX = 12; // 0xc
+    field public static final int TranslateY = 13; // 0xd
+    field public static final int TranslateZ = 14; // 0xe
   }
 
   public static final class Matrix.Companion {
@@ -549,8 +593,8 @@
     field public static final float DefaultAlpha = 1.0f;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class PaintingStyle {
-    ctor public PaintingStyle();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class PaintingStyle {
+    field public static final androidx.compose.ui.graphics.PaintingStyle.Companion Companion;
   }
 
   public static final class PaintingStyle.Companion {
@@ -607,8 +651,8 @@
     method public androidx.compose.ui.graphics.PathEffect stampedPathEffect(androidx.compose.ui.graphics.Path shape, float advance, float phase, int style);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class PathFillType {
-    ctor public PathFillType();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class PathFillType {
+    field public static final androidx.compose.ui.graphics.PathFillType.Companion Companion;
   }
 
   public static final class PathFillType.Companion {
@@ -625,8 +669,8 @@
     property public abstract float length;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class PathOperation {
-    ctor public PathOperation();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class PathOperation {
+    field public static final androidx.compose.ui.graphics.PathOperation.Companion Companion;
   }
 
   public static final class PathOperation.Companion {
@@ -665,8 +709,8 @@
     property public final int width;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class PointMode {
-    ctor public PointMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class PointMode {
+    field public static final androidx.compose.ui.graphics.PointMode.Companion Companion;
   }
 
   public static final class PointMode.Companion {
@@ -750,8 +794,8 @@
     property public final long value;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class StampedPathEffectStyle {
-    ctor public StampedPathEffectStyle();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class StampedPathEffectStyle {
+    field public static final androidx.compose.ui.graphics.StampedPathEffectStyle.Companion Companion;
   }
 
   public static final class StampedPathEffectStyle.Companion {
@@ -763,8 +807,8 @@
     property public final int Translate;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class StrokeCap {
-    ctor public StrokeCap();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class StrokeCap {
+    field public static final androidx.compose.ui.graphics.StrokeCap.Companion Companion;
   }
 
   public static final class StrokeCap.Companion {
@@ -776,8 +820,8 @@
     property public final int Square;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class StrokeJoin {
-    ctor public StrokeJoin();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class StrokeJoin {
+    field public static final androidx.compose.ui.graphics.StrokeJoin.Companion Companion;
   }
 
   public static final class StrokeJoin.Companion {
@@ -793,8 +837,8 @@
     method public android.graphics.Shader createShader(long size);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class TileMode {
-    ctor public TileMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class TileMode {
+    field public static final androidx.compose.ui.graphics.TileMode.Companion Companion;
   }
 
   public static final class TileMode.Companion {
@@ -808,8 +852,8 @@
     property public final int Repeated;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class VertexMode {
-    ctor public VertexMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class VertexMode {
+    field public static final androidx.compose.ui.graphics.VertexMode.Companion Companion;
   }
 
   public static final class VertexMode.Companion {
@@ -852,8 +896,10 @@
     property public final androidx.compose.ui.graphics.colorspace.Adaptation VonKries;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ColorModel {
-    ctor public ColorModel();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ColorModel {
+    method public int getComponentCount();
+    property public final int componentCount;
+    field public static final androidx.compose.ui.graphics.colorspace.ColorModel.Companion Companion;
   }
 
   public static final class ColorModel.Companion {
@@ -965,8 +1011,8 @@
     field public static final androidx.compose.ui.graphics.colorspace.Illuminant INSTANCE;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class RenderIntent {
-    ctor public RenderIntent();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class RenderIntent {
+    field public static final androidx.compose.ui.graphics.colorspace.RenderIntent.Companion Companion;
   }
 
   public static final class RenderIntent.Companion {
diff --git a/compose/ui/ui-graphics/api/public_plus_experimental_current.txt b/compose/ui/ui-graphics/api/public_plus_experimental_current.txt
index 5ad0b61..fd8130d 100644
--- a/compose/ui/ui-graphics/api/public_plus_experimental_current.txt
+++ b/compose/ui/ui-graphics/api/public_plus_experimental_current.txt
@@ -145,8 +145,8 @@
     method public static android.graphics.Canvas.VertexMode toAndroidVertexMode(int);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class BlendMode {
-    ctor public BlendMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class BlendMode {
+    field public static final androidx.compose.ui.graphics.BlendMode.Companion Companion;
   }
 
   public static final class BlendMode.Companion {
@@ -286,8 +286,8 @@
     method public static inline void withSaveLayer(androidx.compose.ui.graphics.Canvas, androidx.compose.ui.geometry.Rect bounds, androidx.compose.ui.graphics.Paint paint, kotlin.jvm.functions.Function0<kotlin.Unit> block);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ClipOp {
-    ctor public ClipOp();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ClipOp {
+    field public static final androidx.compose.ui.graphics.ClipOp.Companion Companion;
   }
 
   public static final class ClipOp.Companion {
@@ -297,16 +297,28 @@
     property public final int Intersect;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Color {
-    ctor public Color();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Color {
+    ctor public Color(long value);
     method @androidx.compose.runtime.Stable public operator float component1();
     method @androidx.compose.runtime.Stable public operator float component2();
     method @androidx.compose.runtime.Stable public operator float component3();
     method @androidx.compose.runtime.Stable public operator float component4();
-    method @androidx.compose.runtime.Stable public operator androidx.compose.ui.graphics.colorspace.ColorSpace! component5();
+    method @androidx.compose.runtime.Stable public operator androidx.compose.ui.graphics.colorspace.ColorSpace component5();
+    method public long convert(androidx.compose.ui.graphics.colorspace.ColorSpace colorSpace);
     method @androidx.compose.runtime.Stable public long copy(optional float alpha, optional float red, optional float green, optional float blue);
+    method public float getAlpha();
+    method public float getBlue();
+    method public androidx.compose.ui.graphics.colorspace.ColorSpace getColorSpace();
+    method public float getGreen();
+    method public float getRed();
     method public long getValue();
+    property public final float alpha;
+    property public final float blue;
+    property public final androidx.compose.ui.graphics.colorspace.ColorSpace colorSpace;
+    property public final float green;
+    property public final float red;
     property public final long value;
+    field public static final androidx.compose.ui.graphics.Color.Companion Companion;
   }
 
   public static final class Color.Companion {
@@ -364,11 +376,20 @@
     method @androidx.compose.runtime.Stable public static int toArgb(long);
   }
 
-  public final inline class ColorMatrix {
-    ctor public ColorMatrix();
+  @kotlin.jvm.JvmInline public final value class ColorMatrix {
+    ctor public ColorMatrix(optional float[] values);
+    method public void convertRgbToYuv();
+    method public void convertYuvToRgb();
     method public inline operator float get(int row, int column);
     method public float[] getValues();
+    method public void reset();
     method public inline operator void set(int row, int column, float v);
+    method public void set(float[] src);
+    method public void setToRotateBlue(float degrees);
+    method public void setToRotateGreen(float degrees);
+    method public void setToRotateRed(float degrees);
+    method public void setToSaturation(float sat);
+    method public void setToScale(float redScale, float greenScale, float blueScale, float alphaScale);
     method public operator void timesAssign(float[] colorMatrix);
     property public final float[] values;
   }
@@ -379,10 +400,10 @@
   @kotlin.RequiresOptIn(message="This API is experimental and is likely to change in the future.") public @interface ExperimentalGraphicsApi {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class FilterQuality {
-    ctor public FilterQuality();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class FilterQuality {
     method public int getValue();
     property public final int value;
+    field public static final androidx.compose.ui.graphics.FilterQuality.Companion Companion;
   }
 
   public static final class FilterQuality.Companion {
@@ -418,10 +439,10 @@
   public static final class ImageBitmap.Companion {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ImageBitmapConfig {
-    ctor public ImageBitmapConfig();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ImageBitmapConfig {
     method public int getValue();
     property public final int value;
+    field public static final androidx.compose.ui.graphics.ImageBitmapConfig.Companion Companion;
   }
 
   public static final class ImageBitmapConfig.Companion {
@@ -447,13 +468,36 @@
     property public long intrinsicSize;
   }
 
-  public final inline class Matrix {
-    ctor public Matrix();
+  @kotlin.jvm.JvmInline public final value class Matrix {
+    ctor public Matrix(optional float[] values);
     method public inline operator float get(int row, int column);
     method public float[] getValues();
+    method public void invert();
+    method public long map(long point);
+    method public androidx.compose.ui.geometry.Rect map(androidx.compose.ui.geometry.Rect rect);
+    method public void map(androidx.compose.ui.geometry.MutableRect rect);
+    method public void reset();
+    method public void rotateX(float degrees);
+    method public void rotateY(float degrees);
+    method public void rotateZ(float degrees);
+    method public void scale(optional float x, optional float y, optional float z);
     method public inline operator void set(int row, int column, float v);
+    method public void setFrom(float[] matrix);
     method public operator void timesAssign(float[] m);
+    method public void translate(optional float x, optional float y, optional float z);
     property public final float[] values;
+    field public static final androidx.compose.ui.graphics.Matrix.Companion Companion;
+    field public static final int Perspective0 = 3; // 0x3
+    field public static final int Perspective1 = 7; // 0x7
+    field public static final int Perspective2 = 15; // 0xf
+    field public static final int ScaleX = 0; // 0x0
+    field public static final int ScaleY = 5; // 0x5
+    field public static final int ScaleZ = 10; // 0xa
+    field public static final int SkewX = 4; // 0x4
+    field public static final int SkewY = 1; // 0x1
+    field public static final int TranslateX = 12; // 0xc
+    field public static final int TranslateY = 13; // 0xd
+    field public static final int TranslateZ = 14; // 0xe
   }
 
   public static final class Matrix.Companion {
@@ -552,8 +596,8 @@
     field public static final float DefaultAlpha = 1.0f;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class PaintingStyle {
-    ctor public PaintingStyle();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class PaintingStyle {
+    field public static final androidx.compose.ui.graphics.PaintingStyle.Companion Companion;
   }
 
   public static final class PaintingStyle.Companion {
@@ -610,8 +654,8 @@
     method public androidx.compose.ui.graphics.PathEffect stampedPathEffect(androidx.compose.ui.graphics.Path shape, float advance, float phase, int style);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class PathFillType {
-    ctor public PathFillType();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class PathFillType {
+    field public static final androidx.compose.ui.graphics.PathFillType.Companion Companion;
   }
 
   public static final class PathFillType.Companion {
@@ -628,8 +672,8 @@
     property public abstract float length;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class PathOperation {
-    ctor public PathOperation();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class PathOperation {
+    field public static final androidx.compose.ui.graphics.PathOperation.Companion Companion;
   }
 
   public static final class PathOperation.Companion {
@@ -668,8 +712,8 @@
     property public final int width;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class PointMode {
-    ctor public PointMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class PointMode {
+    field public static final androidx.compose.ui.graphics.PointMode.Companion Companion;
   }
 
   public static final class PointMode.Companion {
@@ -753,8 +797,8 @@
     property public final long value;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class StampedPathEffectStyle {
-    ctor public StampedPathEffectStyle();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class StampedPathEffectStyle {
+    field public static final androidx.compose.ui.graphics.StampedPathEffectStyle.Companion Companion;
   }
 
   public static final class StampedPathEffectStyle.Companion {
@@ -766,8 +810,8 @@
     property public final int Translate;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class StrokeCap {
-    ctor public StrokeCap();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class StrokeCap {
+    field public static final androidx.compose.ui.graphics.StrokeCap.Companion Companion;
   }
 
   public static final class StrokeCap.Companion {
@@ -779,8 +823,8 @@
     property public final int Square;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class StrokeJoin {
-    ctor public StrokeJoin();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class StrokeJoin {
+    field public static final androidx.compose.ui.graphics.StrokeJoin.Companion Companion;
   }
 
   public static final class StrokeJoin.Companion {
@@ -796,8 +840,8 @@
     method public android.graphics.Shader createShader(long size);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class TileMode {
-    ctor public TileMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class TileMode {
+    field public static final androidx.compose.ui.graphics.TileMode.Companion Companion;
   }
 
   public static final class TileMode.Companion {
@@ -811,8 +855,8 @@
     property public final int Repeated;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class VertexMode {
-    ctor public VertexMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class VertexMode {
+    field public static final androidx.compose.ui.graphics.VertexMode.Companion Companion;
   }
 
   public static final class VertexMode.Companion {
@@ -855,8 +899,10 @@
     property public final androidx.compose.ui.graphics.colorspace.Adaptation VonKries;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ColorModel {
-    ctor public ColorModel();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ColorModel {
+    method public int getComponentCount();
+    property public final int componentCount;
+    field public static final androidx.compose.ui.graphics.colorspace.ColorModel.Companion Companion;
   }
 
   public static final class ColorModel.Companion {
@@ -968,8 +1014,8 @@
     field public static final androidx.compose.ui.graphics.colorspace.Illuminant INSTANCE;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class RenderIntent {
-    ctor public RenderIntent();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class RenderIntent {
+    field public static final androidx.compose.ui.graphics.colorspace.RenderIntent.Companion Companion;
   }
 
   public static final class RenderIntent.Companion {
diff --git a/compose/ui/ui-graphics/api/restricted_current.ignore b/compose/ui/ui-graphics/api/restricted_current.ignore
new file mode 100644
index 0000000..01ec803
--- /dev/null
+++ b/compose/ui/ui-graphics/api/restricted_current.ignore
@@ -0,0 +1,37 @@
+// Baseline format: 1.0
+RemovedMethod: androidx.compose.ui.graphics.BlendMode#BlendMode():
+    Removed constructor androidx.compose.ui.graphics.BlendMode()
+RemovedMethod: androidx.compose.ui.graphics.ClipOp#ClipOp():
+    Removed constructor androidx.compose.ui.graphics.ClipOp()
+RemovedMethod: androidx.compose.ui.graphics.Color#Color():
+    Removed constructor androidx.compose.ui.graphics.Color()
+RemovedMethod: androidx.compose.ui.graphics.ColorMatrix#ColorMatrix():
+    Removed constructor androidx.compose.ui.graphics.ColorMatrix()
+RemovedMethod: androidx.compose.ui.graphics.FilterQuality#FilterQuality():
+    Removed constructor androidx.compose.ui.graphics.FilterQuality()
+RemovedMethod: androidx.compose.ui.graphics.ImageBitmapConfig#ImageBitmapConfig():
+    Removed constructor androidx.compose.ui.graphics.ImageBitmapConfig()
+RemovedMethod: androidx.compose.ui.graphics.Matrix#Matrix():
+    Removed constructor androidx.compose.ui.graphics.Matrix()
+RemovedMethod: androidx.compose.ui.graphics.PaintingStyle#PaintingStyle():
+    Removed constructor androidx.compose.ui.graphics.PaintingStyle()
+RemovedMethod: androidx.compose.ui.graphics.PathFillType#PathFillType():
+    Removed constructor androidx.compose.ui.graphics.PathFillType()
+RemovedMethod: androidx.compose.ui.graphics.PathOperation#PathOperation():
+    Removed constructor androidx.compose.ui.graphics.PathOperation()
+RemovedMethod: androidx.compose.ui.graphics.PointMode#PointMode():
+    Removed constructor androidx.compose.ui.graphics.PointMode()
+RemovedMethod: androidx.compose.ui.graphics.StampedPathEffectStyle#StampedPathEffectStyle():
+    Removed constructor androidx.compose.ui.graphics.StampedPathEffectStyle()
+RemovedMethod: androidx.compose.ui.graphics.StrokeCap#StrokeCap():
+    Removed constructor androidx.compose.ui.graphics.StrokeCap()
+RemovedMethod: androidx.compose.ui.graphics.StrokeJoin#StrokeJoin():
+    Removed constructor androidx.compose.ui.graphics.StrokeJoin()
+RemovedMethod: androidx.compose.ui.graphics.TileMode#TileMode():
+    Removed constructor androidx.compose.ui.graphics.TileMode()
+RemovedMethod: androidx.compose.ui.graphics.VertexMode#VertexMode():
+    Removed constructor androidx.compose.ui.graphics.VertexMode()
+RemovedMethod: androidx.compose.ui.graphics.colorspace.ColorModel#ColorModel():
+    Removed constructor androidx.compose.ui.graphics.colorspace.ColorModel()
+RemovedMethod: androidx.compose.ui.graphics.colorspace.RenderIntent#RenderIntent():
+    Removed constructor androidx.compose.ui.graphics.colorspace.RenderIntent()
diff --git a/compose/ui/ui-graphics/api/restricted_current.txt b/compose/ui/ui-graphics/api/restricted_current.txt
index 8ffae3e..a278249 100644
--- a/compose/ui/ui-graphics/api/restricted_current.txt
+++ b/compose/ui/ui-graphics/api/restricted_current.txt
@@ -175,8 +175,8 @@
     method public static android.graphics.Canvas.VertexMode toAndroidVertexMode(int);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class BlendMode {
-    ctor public BlendMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class BlendMode {
+    field public static final androidx.compose.ui.graphics.BlendMode.Companion Companion;
   }
 
   public static final class BlendMode.Companion {
@@ -317,8 +317,8 @@
     method public static inline void withSaveLayer(androidx.compose.ui.graphics.Canvas, androidx.compose.ui.geometry.Rect bounds, androidx.compose.ui.graphics.Paint paint, kotlin.jvm.functions.Function0<kotlin.Unit> block);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ClipOp {
-    ctor public ClipOp();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ClipOp {
+    field public static final androidx.compose.ui.graphics.ClipOp.Companion Companion;
   }
 
   public static final class ClipOp.Companion {
@@ -328,16 +328,28 @@
     property public final int Intersect;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Color {
-    ctor public Color();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Color {
+    ctor public Color(long value);
     method @androidx.compose.runtime.Stable public operator float component1();
     method @androidx.compose.runtime.Stable public operator float component2();
     method @androidx.compose.runtime.Stable public operator float component3();
     method @androidx.compose.runtime.Stable public operator float component4();
-    method @androidx.compose.runtime.Stable public operator androidx.compose.ui.graphics.colorspace.ColorSpace! component5();
+    method @androidx.compose.runtime.Stable public operator androidx.compose.ui.graphics.colorspace.ColorSpace component5();
+    method public long convert(androidx.compose.ui.graphics.colorspace.ColorSpace colorSpace);
     method @androidx.compose.runtime.Stable public long copy(optional float alpha, optional float red, optional float green, optional float blue);
+    method public float getAlpha();
+    method public float getBlue();
+    method public androidx.compose.ui.graphics.colorspace.ColorSpace getColorSpace();
+    method public float getGreen();
+    method public float getRed();
     method public long getValue();
+    property public final float alpha;
+    property public final float blue;
+    property public final androidx.compose.ui.graphics.colorspace.ColorSpace colorSpace;
+    property public final float green;
+    property public final float red;
     property public final long value;
+    field public static final androidx.compose.ui.graphics.Color.Companion Companion;
   }
 
   public static final class Color.Companion {
@@ -395,11 +407,20 @@
     method @androidx.compose.runtime.Stable public static int toArgb(long);
   }
 
-  public final inline class ColorMatrix {
-    ctor public ColorMatrix();
+  @kotlin.jvm.JvmInline public final value class ColorMatrix {
+    ctor public ColorMatrix(optional float[] values);
+    method public void convertRgbToYuv();
+    method public void convertYuvToRgb();
     method public inline operator float get(int row, int column);
     method public float[] getValues();
+    method public void reset();
     method public inline operator void set(int row, int column, float v);
+    method public void set(float[] src);
+    method public void setToRotateBlue(float degrees);
+    method public void setToRotateGreen(float degrees);
+    method public void setToRotateRed(float degrees);
+    method public void setToSaturation(float sat);
+    method public void setToScale(float redScale, float greenScale, float blueScale, float alphaScale);
     method public operator void timesAssign(float[] colorMatrix);
     property public final float[] values;
   }
@@ -408,10 +429,10 @@
     method @kotlin.PublishedApi internal static float degrees(float radians);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class FilterQuality {
-    ctor public FilterQuality();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class FilterQuality {
     method public int getValue();
     property public final int value;
+    field public static final androidx.compose.ui.graphics.FilterQuality.Companion Companion;
   }
 
   public static final class FilterQuality.Companion {
@@ -447,10 +468,10 @@
   public static final class ImageBitmap.Companion {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ImageBitmapConfig {
-    ctor public ImageBitmapConfig();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ImageBitmapConfig {
     method public int getValue();
     property public final int value;
+    field public static final androidx.compose.ui.graphics.ImageBitmapConfig.Companion Companion;
   }
 
   public static final class ImageBitmapConfig.Companion {
@@ -476,13 +497,36 @@
     property public long intrinsicSize;
   }
 
-  public final inline class Matrix {
-    ctor public Matrix();
+  @kotlin.jvm.JvmInline public final value class Matrix {
+    ctor public Matrix(optional float[] values);
     method public inline operator float get(int row, int column);
     method public float[] getValues();
+    method public void invert();
+    method public long map(long point);
+    method public androidx.compose.ui.geometry.Rect map(androidx.compose.ui.geometry.Rect rect);
+    method public void map(androidx.compose.ui.geometry.MutableRect rect);
+    method public void reset();
+    method public void rotateX(float degrees);
+    method public void rotateY(float degrees);
+    method public void rotateZ(float degrees);
+    method public void scale(optional float x, optional float y, optional float z);
     method public inline operator void set(int row, int column, float v);
+    method public void setFrom(float[] matrix);
     method public operator void timesAssign(float[] m);
+    method public void translate(optional float x, optional float y, optional float z);
     property public final float[] values;
+    field public static final androidx.compose.ui.graphics.Matrix.Companion Companion;
+    field public static final int Perspective0 = 3; // 0x3
+    field public static final int Perspective1 = 7; // 0x7
+    field public static final int Perspective2 = 15; // 0xf
+    field public static final int ScaleX = 0; // 0x0
+    field public static final int ScaleY = 5; // 0x5
+    field public static final int ScaleZ = 10; // 0xa
+    field public static final int SkewX = 4; // 0x4
+    field public static final int SkewY = 1; // 0x1
+    field public static final int TranslateX = 12; // 0xc
+    field public static final int TranslateY = 13; // 0xd
+    field public static final int TranslateZ = 14; // 0xe
   }
 
   public static final class Matrix.Companion {
@@ -581,8 +625,8 @@
     field public static final float DefaultAlpha = 1.0f;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class PaintingStyle {
-    ctor public PaintingStyle();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class PaintingStyle {
+    field public static final androidx.compose.ui.graphics.PaintingStyle.Companion Companion;
   }
 
   public static final class PaintingStyle.Companion {
@@ -639,8 +683,8 @@
     method public androidx.compose.ui.graphics.PathEffect stampedPathEffect(androidx.compose.ui.graphics.Path shape, float advance, float phase, int style);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class PathFillType {
-    ctor public PathFillType();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class PathFillType {
+    field public static final androidx.compose.ui.graphics.PathFillType.Companion Companion;
   }
 
   public static final class PathFillType.Companion {
@@ -657,8 +701,8 @@
     property public abstract float length;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class PathOperation {
-    ctor public PathOperation();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class PathOperation {
+    field public static final androidx.compose.ui.graphics.PathOperation.Companion Companion;
   }
 
   public static final class PathOperation.Companion {
@@ -697,8 +741,8 @@
     property public final int width;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class PointMode {
-    ctor public PointMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class PointMode {
+    field public static final androidx.compose.ui.graphics.PointMode.Companion Companion;
   }
 
   public static final class PointMode.Companion {
@@ -782,8 +826,8 @@
     property public final long value;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class StampedPathEffectStyle {
-    ctor public StampedPathEffectStyle();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class StampedPathEffectStyle {
+    field public static final androidx.compose.ui.graphics.StampedPathEffectStyle.Companion Companion;
   }
 
   public static final class StampedPathEffectStyle.Companion {
@@ -795,8 +839,8 @@
     property public final int Translate;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class StrokeCap {
-    ctor public StrokeCap();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class StrokeCap {
+    field public static final androidx.compose.ui.graphics.StrokeCap.Companion Companion;
   }
 
   public static final class StrokeCap.Companion {
@@ -808,8 +852,8 @@
     property public final int Square;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class StrokeJoin {
-    ctor public StrokeJoin();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class StrokeJoin {
+    field public static final androidx.compose.ui.graphics.StrokeJoin.Companion Companion;
   }
 
   public static final class StrokeJoin.Companion {
@@ -825,8 +869,8 @@
     method public android.graphics.Shader createShader(long size);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class TileMode {
-    ctor public TileMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class TileMode {
+    field public static final androidx.compose.ui.graphics.TileMode.Companion Companion;
   }
 
   public static final class TileMode.Companion {
@@ -840,8 +884,8 @@
     property public final int Repeated;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class VertexMode {
-    ctor public VertexMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class VertexMode {
+    field public static final androidx.compose.ui.graphics.VertexMode.Companion Companion;
   }
 
   public static final class VertexMode.Companion {
@@ -884,8 +928,10 @@
     property public final androidx.compose.ui.graphics.colorspace.Adaptation VonKries;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ColorModel {
-    ctor public ColorModel();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ColorModel {
+    method public int getComponentCount();
+    property public final int componentCount;
+    field public static final androidx.compose.ui.graphics.colorspace.ColorModel.Companion Companion;
   }
 
   public static final class ColorModel.Companion {
@@ -997,8 +1043,8 @@
     field public static final androidx.compose.ui.graphics.colorspace.Illuminant INSTANCE;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class RenderIntent {
-    ctor public RenderIntent();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class RenderIntent {
+    field public static final androidx.compose.ui.graphics.colorspace.RenderIntent.Companion Companion;
   }
 
   public static final class RenderIntent.Companion {
diff --git a/compose/ui/ui-graphics/build.gradle b/compose/ui/ui-graphics/build.gradle
index c01d1da..9dfd14c 100644
--- a/compose/ui/ui-graphics/build.gradle
+++ b/compose/ui/ui-graphics/build.gradle
@@ -163,11 +163,3 @@
         systemProperties["GOLDEN_PATH"] = project.rootDir.absolutePath + "/../../golden"
     }
 }
-
-tasks.withType(KotlinCompile).configureEach {
-    kotlinOptions {
-        freeCompilerArgs += [
-            "-XXLanguage:+InlineClasses"
-        ]
-    }
-}
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/BlendMode.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/BlendMode.kt
index c128072..67004f8 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/BlendMode.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/BlendMode.kt
@@ -57,9 +57,9 @@
  *  * [Paint.blendMode], which uses [BlendMode] to define the compositing
  *    strategy.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class BlendMode internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class BlendMode internal constructor(@Suppress("unused") private val value: Int) {
 
     companion object {
 
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/ClipOp.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/ClipOp.kt
index 2b30c45..56491b1 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/ClipOp.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/ClipOp.kt
@@ -24,9 +24,9 @@
  *
  * Used by [Canvas.clipRect].
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class ClipOp internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class ClipOp internal constructor(@Suppress("unused") private val value: Int) {
     companion object {
         /** Subtract the new region from the existing region. */
         val Difference = ClipOp(0)
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Color.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Color.kt
index fcd6111..178c983 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Color.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Color.kt
@@ -111,8 +111,8 @@
  * [color spaces][ColorSpaces] for the exact ranges.
  */
 @Immutable
-@Suppress("INLINE_CLASS_DEPRECATED")
-inline class Color(val value: ULong) {
[email protected]
+value class Color(val value: ULong) {
     /**
      * Returns this color's color space.
      *
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/ColorMatrix.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/ColorMatrix.kt
index 625a571..ceed6c4 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/ColorMatrix.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/ColorMatrix.kt
@@ -60,8 +60,8 @@
  * This is often used as input for [ColorFilter.colorMatrix] and applied at draw time
  * through [Paint.colorFilter]
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class ColorMatrix(
[email protected]
+value class ColorMatrix(
     val values: FloatArray = floatArrayOf(
         1f, 0f, 0f, 0f, 0f,
         0f, 1f, 0f, 0f, 0f,
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/FilterQuality.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/FilterQuality.kt
index e3ec22c..3c121d0 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/FilterQuality.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/FilterQuality.kt
@@ -22,9 +22,9 @@
  * Quality levels for image filters.
  * See [Paint.filterQuality].
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class FilterQuality internal constructor(val value: Int) {
[email protected]
+value class FilterQuality internal constructor(val value: Int) {
 
     companion object {
         /**
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Float16.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Float16.kt
index c46955c..7d57a93 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Float16.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Float16.kt
@@ -83,8 +83,8 @@
  *
  * This table shows that numbers higher than 1024 lose all fractional precision.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-internal inline class Float16(val halfValue: Short) : Comparable<Float16> {
[email protected]
+internal value class Float16(val halfValue: Short) : Comparable<Float16> {
 
     /**
      * Constructs a newly allocated `Float16` object that represents the
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/ImageBitmap.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/ImageBitmap.kt
index 674f758..da4fb06 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/ImageBitmap.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/ImageBitmap.kt
@@ -141,9 +141,9 @@
  * how pixels are stored. This affects the quality (color depth) as
  * well as the ability to display transparent/translucent colors.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class ImageBitmapConfig internal constructor(val value: Int) {
[email protected]
+value class ImageBitmapConfig internal constructor(val value: Int) {
     companion object {
         /**
          * Each pixel is stored on 4 bytes. Each channel (RGB and alpha
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Matrix.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Matrix.kt
index de972a01..2eb7e18 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Matrix.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/Matrix.kt
@@ -27,8 +27,8 @@
 import kotlin.math.sin
 
 // TODO(mount): This class needs some optimization
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class Matrix(
[email protected]
+value class Matrix(
     val values: FloatArray = floatArrayOf(
         1f, 0f, 0f, 0f,
         0f, 1f, 0f, 0f,
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PaintingStyle.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PaintingStyle.kt
index 04fa10c..6a5e40d 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PaintingStyle.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PaintingStyle.kt
@@ -23,9 +23,9 @@
  *
  * See [Paint.style].
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class PaintingStyle internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class PaintingStyle internal constructor(@Suppress("unused") private val value: Int) {
 
     companion object {
 
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PathEffect.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PathEffect.kt
index 2d02bd3..3002f19 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PathEffect.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PathEffect.kt
@@ -97,9 +97,9 @@
  *
  * @sample androidx.compose.ui.graphics.samples.StampedPathEffectSample
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class StampedPathEffectStyle internal constructor(
[email protected]
+value class StampedPathEffectStyle internal constructor(
     @Suppress("unused") private val value: Int
 ) {
 
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PathFillType.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PathFillType.kt
index cde8641..8edcf83 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PathFillType.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PathFillType.kt
@@ -24,9 +24,9 @@
  *
  * This enum is used by the [Path.fillType] property.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class PathFillType internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class PathFillType internal constructor(@Suppress("unused") private val value: Int) {
     companion object {
         /**
          * The interior is defined by a non-zero sum of signed edge crossings.
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PathOperation.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PathOperation.kt
index 50484d5..0cef450 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PathOperation.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PathOperation.kt
@@ -26,9 +26,9 @@
  * * [Path.combine], which uses this enum to decide how to combine two paths.
  */
 // Must be kept in sync with SkPathOp
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class PathOperation internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class PathOperation internal constructor(@Suppress("unused") private val value: Int) {
     companion object {
         /**
          * Subtract the second path from the first path.
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PointMode.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PointMode.kt
index 7a8af0d..e7d5e4e 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PointMode.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/PointMode.kt
@@ -25,9 +25,9 @@
 // ignore: deprecated_member_use
 /** Used by [Canvas.drawPoints]. */
 // These enum values must be kept in sync with SkCanvas::PointMode.
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class PointMode internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class PointMode internal constructor(@Suppress("unused") private val value: Int) {
     companion object {
         /**
          * Draw each point separately.
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/StrokeCap.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/StrokeCap.kt
index 44ce199..6f34238 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/StrokeCap.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/StrokeCap.kt
@@ -22,9 +22,9 @@
  * Styles to use for line endings.
  * See [Paint.strokeCap].
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class StrokeCap internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class StrokeCap internal constructor(@Suppress("unused") private val value: Int) {
     companion object {
         /**
          * Begin and end contours with a flat edge and no extension.
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/StrokeJoin.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/StrokeJoin.kt
index dc1abff..780239b 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/StrokeJoin.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/StrokeJoin.kt
@@ -25,9 +25,9 @@
  * rectangles, not points drawn as lines with [Canvas.drawPoints].
  * See [Paint.strokeJoin].
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class StrokeJoin internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class StrokeJoin internal constructor(@Suppress("unused") private val value: Int) {
     companion object {
         /**
          * Joins between line segments form sharp corners.
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/TileMode.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/TileMode.kt
index e8f328a..f1a5ec0 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/TileMode.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/TileMode.kt
@@ -33,9 +33,9 @@
  * relative coordinates and can create a [Shader] representing the gradient
  * for a particular [Rect] on demand.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class TileMode internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class TileMode internal constructor(@Suppress("unused") private val value: Int) {
     companion object {
         /**
          * Edge is clamped to the final color.
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/VertexMode.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/VertexMode.kt
index 3b758db..f49997d 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/VertexMode.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/VertexMode.kt
@@ -23,9 +23,9 @@
  *
  * Used by [Canvas.drawVertices].
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class VertexMode internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class VertexMode internal constructor(@Suppress("unused") private val value: Int) {
 
     companion object {
         /**
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/colorspace/ColorModel.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/colorspace/ColorModel.kt
index 6aa7143..497b1d4 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/colorspace/ColorModel.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/colorspace/ColorModel.kt
@@ -27,9 +27,9 @@
  * model is the [RGB][Rgb] color model which defines a color
  * as represented by a tuple of 3 numbers (red, green and blue).
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class ColorModel internal constructor(
[email protected]
+value class ColorModel internal constructor(
     /**
      * pack both the number of components and an ordinal value to distinguish between
      * different ColorModel types that have the same number of components
diff --git a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/colorspace/RenderIntent.kt b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/colorspace/RenderIntent.kt
index e6f3730..eac73ba 100644
--- a/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/colorspace/RenderIntent.kt
+++ b/compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/colorspace/RenderIntent.kt
@@ -26,9 +26,9 @@
  *
  * @see ColorSpace.connect
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class RenderIntent internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class RenderIntent internal constructor(@Suppress("unused") private val value: Int) {
     companion object {
         /**
          * Compresses the source gamut into the destination gamut.
diff --git a/compose/ui/ui-test/api/public_plus_experimental_current.txt b/compose/ui/ui-test/api/public_plus_experimental_current.txt
index e81e037..da11a6c 100644
--- a/compose/ui/ui-test/api/public_plus_experimental_current.txt
+++ b/compose/ui/ui-test/api/public_plus_experimental_current.txt
@@ -262,10 +262,11 @@
     property public abstract long currentTime;
   }
 
-  @androidx.compose.ui.test.ExperimentalTestApi public final inline class MouseButton {
-    ctor public MouseButton();
+  @androidx.compose.ui.test.ExperimentalTestApi @kotlin.jvm.JvmInline public final value class MouseButton {
+    ctor public MouseButton(int buttonId);
     method public int getButtonId();
     property public final int buttonId;
+    field public static final androidx.compose.ui.test.MouseButton.Companion Companion;
   }
 
   @androidx.compose.ui.test.ExperimentalTestApi public static final class MouseButton.Companion {
@@ -323,10 +324,10 @@
     method public void rotateToScrollVertically(float verticalScrollPixels);
   }
 
-  @androidx.compose.ui.test.ExperimentalTestApi public final inline class ScrollWheel {
-    ctor public ScrollWheel();
+  @androidx.compose.ui.test.ExperimentalTestApi @kotlin.jvm.JvmInline public final value class ScrollWheel {
     method public int getValue();
     property public final int value;
+    field public static final androidx.compose.ui.test.ScrollWheel.Companion Companion;
   }
 
   @androidx.compose.ui.test.ExperimentalTestApi public static final class ScrollWheel.Companion {
diff --git a/compose/ui/ui-test/src/androidMain/kotlin/androidx/compose/ui/test/Mouse.android.kt b/compose/ui/ui-test/src/androidMain/kotlin/androidx/compose/ui/test/Mouse.android.kt
index b5ef22f..ceac3b4 100644
--- a/compose/ui/ui-test/src/androidMain/kotlin/androidx/compose/ui/test/Mouse.android.kt
+++ b/compose/ui/ui-test/src/androidMain/kotlin/androidx/compose/ui/test/Mouse.android.kt
@@ -20,9 +20,9 @@
 
 import android.view.MotionEvent
 
-@Suppress("INLINE_CLASS_DEPRECATED")
 @ExperimentalTestApi
-actual inline class MouseButton(val buttonId: Int) {
+@JvmInline
+actual value class MouseButton(val buttonId: Int) {
     @ExperimentalTestApi
     actual companion object {
         /**
diff --git a/compose/ui/ui-test/src/commonMain/kotlin/androidx/compose/ui/test/Mouse.kt b/compose/ui/ui-test/src/commonMain/kotlin/androidx/compose/ui/test/Mouse.kt
index b7e2dec..7047c35 100644
--- a/compose/ui/ui-test/src/commonMain/kotlin/androidx/compose/ui/test/Mouse.kt
+++ b/compose/ui/ui-test/src/commonMain/kotlin/androidx/compose/ui/test/Mouse.kt
@@ -21,9 +21,9 @@
  * All methods that accept a scroll axis use [Vertical] as the default, since most mice only have
  * a vertical scroll wheel.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
 @ExperimentalTestApi
-inline class ScrollWheel private constructor(val value: Int) {
[email protected]
+value class ScrollWheel private constructor(val value: Int) {
     @ExperimentalTestApi
     companion object {
         val Horizontal = ScrollWheel(0)
@@ -34,9 +34,9 @@
 /**
  * Representation of a mouse button with its associated [ID][buttonId] for the current platform.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
 @ExperimentalTestApi
-expect inline class MouseButton(val buttonId: Int) {
[email protected]
+expect value class MouseButton(val buttonId: Int) {
     @ExperimentalTestApi
     companion object {
         /**
diff --git a/compose/ui/ui-test/src/desktopMain/kotlin/androidx/compose/ui/test/Mouse.desktop.kt b/compose/ui/ui-test/src/desktopMain/kotlin/androidx/compose/ui/test/Mouse.desktop.kt
index 96a3a0c..6e8f67b 100644
--- a/compose/ui/ui-test/src/desktopMain/kotlin/androidx/compose/ui/test/Mouse.desktop.kt
+++ b/compose/ui/ui-test/src/desktopMain/kotlin/androidx/compose/ui/test/Mouse.desktop.kt
@@ -20,9 +20,9 @@
 
 // TODO: use constants instead of literals
 
-@Suppress("INLINE_CLASS_DEPRECATED")
 @ExperimentalTestApi
-actual inline class MouseButton(val buttonId: Int) {
+@JvmInline
+actual value class MouseButton(val buttonId: Int) {
     @ExperimentalTestApi
     actual companion object {
         /**
diff --git a/compose/ui/ui-text/api/current.ignore b/compose/ui/ui-text/api/current.ignore
index b062517..c585a57 100644
--- a/compose/ui/ui-text/api/current.ignore
+++ b/compose/ui/ui-text/api/current.ignore
@@ -5,3 +5,27 @@
 
 RemovedClass: androidx.compose.ui.text.TextLayoutResultKt:
     Removed class androidx.compose.ui.text.TextLayoutResultKt
+
+
+RemovedMethod: androidx.compose.ui.text.PlaceholderVerticalAlign#PlaceholderVerticalAlign():
+    Removed constructor androidx.compose.ui.text.PlaceholderVerticalAlign()
+RemovedMethod: androidx.compose.ui.text.TextRange#TextRange():
+    Removed constructor androidx.compose.ui.text.TextRange()
+RemovedMethod: androidx.compose.ui.text.font.FontStyle#FontStyle():
+    Removed constructor androidx.compose.ui.text.font.FontStyle()
+RemovedMethod: androidx.compose.ui.text.font.FontSynthesis#FontSynthesis():
+    Removed constructor androidx.compose.ui.text.font.FontSynthesis()
+RemovedMethod: androidx.compose.ui.text.input.ImeAction#ImeAction():
+    Removed constructor androidx.compose.ui.text.input.ImeAction()
+RemovedMethod: androidx.compose.ui.text.input.KeyboardCapitalization#KeyboardCapitalization():
+    Removed constructor androidx.compose.ui.text.input.KeyboardCapitalization()
+RemovedMethod: androidx.compose.ui.text.input.KeyboardType#KeyboardType():
+    Removed constructor androidx.compose.ui.text.input.KeyboardType()
+RemovedMethod: androidx.compose.ui.text.style.BaselineShift#BaselineShift():
+    Removed constructor androidx.compose.ui.text.style.BaselineShift()
+RemovedMethod: androidx.compose.ui.text.style.TextAlign#TextAlign():
+    Removed constructor androidx.compose.ui.text.style.TextAlign()
+RemovedMethod: androidx.compose.ui.text.style.TextDirection#TextDirection():
+    Removed constructor androidx.compose.ui.text.style.TextDirection()
+RemovedMethod: androidx.compose.ui.text.style.TextOverflow#TextOverflow():
+    Removed constructor androidx.compose.ui.text.style.TextOverflow()
diff --git a/compose/ui/ui-text/api/current.txt b/compose/ui/ui-text/api/current.txt
index 0e7b62f..9fc7883 100644
--- a/compose/ui/ui-text/api/current.txt
+++ b/compose/ui/ui-text/api/current.txt
@@ -244,8 +244,8 @@
     property public final long width;
   }
 
-  public final inline class PlaceholderVerticalAlign {
-    ctor public PlaceholderVerticalAlign();
+  @kotlin.jvm.JvmInline public final value class PlaceholderVerticalAlign {
+    field public static final androidx.compose.ui.text.PlaceholderVerticalAlign.Companion Companion;
   }
 
   public static final class PlaceholderVerticalAlign.Companion {
@@ -399,10 +399,25 @@
     field public static final androidx.compose.ui.text.TextPainter INSTANCE;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class TextRange {
-    ctor public TextRange();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class TextRange {
     method public operator boolean contains(long other);
     method public operator boolean contains(int offset);
+    method public boolean getCollapsed();
+    method public int getEnd();
+    method public int getLength();
+    method public int getMax();
+    method public int getMin();
+    method public boolean getReversed();
+    method public int getStart();
+    method public boolean intersects(long other);
+    property public final boolean collapsed;
+    property public final int end;
+    property public final int length;
+    property public final int max;
+    property public final int min;
+    property public final boolean reversed;
+    property public final int start;
+    field public static final androidx.compose.ui.text.TextRange.Companion Companion;
   }
 
   public static final class TextRange.Companion {
@@ -656,10 +671,11 @@
     property public final int OptionalLocal;
   }
 
-  public final inline class FontStyle {
-    ctor public FontStyle();
+  @kotlin.jvm.JvmInline public final value class FontStyle {
+    ctor public FontStyle(int value);
     method public int getValue();
     property public final int value;
+    field public static final androidx.compose.ui.text.font.FontStyle.Companion Companion;
   }
 
   public static final class FontStyle.Companion {
@@ -670,8 +686,8 @@
     property public final int Normal;
   }
 
-  public final inline class FontSynthesis {
-    ctor public FontSynthesis();
+  @kotlin.jvm.JvmInline public final value class FontSynthesis {
+    field public static final androidx.compose.ui.text.font.FontSynthesis.Companion Companion;
   }
 
   public static final class FontSynthesis.Companion {
@@ -840,8 +856,8 @@
   public final class GapBufferKt {
   }
 
-  public final inline class ImeAction {
-    ctor public ImeAction();
+  @kotlin.jvm.JvmInline public final value class ImeAction {
+    field public static final androidx.compose.ui.text.input.ImeAction.Companion Companion;
   }
 
   public static final class ImeAction.Companion {
@@ -889,8 +905,8 @@
     method @Deprecated public void onImeAction(int imeAction);
   }
 
-  public final inline class KeyboardCapitalization {
-    ctor public KeyboardCapitalization();
+  @kotlin.jvm.JvmInline public final value class KeyboardCapitalization {
+    field public static final androidx.compose.ui.text.input.KeyboardCapitalization.Companion Companion;
   }
 
   public static final class KeyboardCapitalization.Companion {
@@ -904,8 +920,8 @@
     property public final int Words;
   }
 
-  public final inline class KeyboardType {
-    ctor public KeyboardType();
+  @kotlin.jvm.JvmInline public final value class KeyboardType {
+    field public static final androidx.compose.ui.text.input.KeyboardType.Companion Companion;
   }
 
   public static final class KeyboardType.Companion {
@@ -1152,10 +1168,11 @@
 
 package androidx.compose.ui.text.style {
 
-  @androidx.compose.runtime.Immutable public final inline class BaselineShift {
-    ctor public BaselineShift();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class BaselineShift {
+    ctor public BaselineShift(float multiplier);
     method public float getMultiplier();
     property public final float multiplier;
+    field public static final androidx.compose.ui.text.style.BaselineShift.Companion Companion;
   }
 
   public static final class BaselineShift.Companion {
@@ -1176,8 +1193,8 @@
     enum_constant public static final androidx.compose.ui.text.style.ResolvedTextDirection Rtl;
   }
 
-  public final inline class TextAlign {
-    ctor public TextAlign();
+  @kotlin.jvm.JvmInline public final value class TextAlign {
+    field public static final androidx.compose.ui.text.style.TextAlign.Companion Companion;
   }
 
   public static final class TextAlign.Companion {
@@ -1215,8 +1232,8 @@
     property public final androidx.compose.ui.text.style.TextDecoration Underline;
   }
 
-  public final inline class TextDirection {
-    ctor public TextDirection();
+  @kotlin.jvm.JvmInline public final value class TextDirection {
+    field public static final androidx.compose.ui.text.style.TextDirection.Companion Companion;
   }
 
   public static final class TextDirection.Companion {
@@ -1270,8 +1287,8 @@
     method public static androidx.compose.ui.text.style.TextIndent lerp(androidx.compose.ui.text.style.TextIndent start, androidx.compose.ui.text.style.TextIndent stop, float fraction);
   }
 
-  public final inline class TextOverflow {
-    ctor public TextOverflow();
+  @kotlin.jvm.JvmInline public final value class TextOverflow {
+    field public static final androidx.compose.ui.text.style.TextOverflow.Companion Companion;
   }
 
   public static final class TextOverflow.Companion {
diff --git a/compose/ui/ui-text/api/public_plus_experimental_current.txt b/compose/ui/ui-text/api/public_plus_experimental_current.txt
index 081cfb2..2e58c88 100644
--- a/compose/ui/ui-text/api/public_plus_experimental_current.txt
+++ b/compose/ui/ui-text/api/public_plus_experimental_current.txt
@@ -257,8 +257,8 @@
     property public final long width;
   }
 
-  public final inline class PlaceholderVerticalAlign {
-    ctor public PlaceholderVerticalAlign();
+  @kotlin.jvm.JvmInline public final value class PlaceholderVerticalAlign {
+    field public static final androidx.compose.ui.text.PlaceholderVerticalAlign.Companion Companion;
   }
 
   public static final class PlaceholderVerticalAlign.Companion {
@@ -451,10 +451,25 @@
     field public static final androidx.compose.ui.text.TextPainter INSTANCE;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class TextRange {
-    ctor public TextRange();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class TextRange {
     method public operator boolean contains(long other);
     method public operator boolean contains(int offset);
+    method public boolean getCollapsed();
+    method public int getEnd();
+    method public int getLength();
+    method public int getMax();
+    method public int getMin();
+    method public boolean getReversed();
+    method public int getStart();
+    method public boolean intersects(long other);
+    property public final boolean collapsed;
+    property public final int end;
+    property public final int length;
+    property public final int max;
+    property public final int min;
+    property public final boolean reversed;
+    property public final int start;
+    field public static final androidx.compose.ui.text.TextRange.Companion Companion;
   }
 
   public static final class TextRange.Companion {
@@ -730,10 +745,11 @@
     property public final int OptionalLocal;
   }
 
-  public final inline class FontStyle {
-    ctor public FontStyle();
+  @kotlin.jvm.JvmInline public final value class FontStyle {
+    ctor public FontStyle(int value);
     method public int getValue();
     property public final int value;
+    field public static final androidx.compose.ui.text.font.FontStyle.Companion Companion;
   }
 
   public static final class FontStyle.Companion {
@@ -744,8 +760,8 @@
     property public final int Normal;
   }
 
-  public final inline class FontSynthesis {
-    ctor public FontSynthesis();
+  @kotlin.jvm.JvmInline public final value class FontSynthesis {
+    field public static final androidx.compose.ui.text.font.FontSynthesis.Companion Companion;
   }
 
   public static final class FontSynthesis.Companion {
@@ -917,8 +933,8 @@
   public final class GapBufferKt {
   }
 
-  public final inline class ImeAction {
-    ctor public ImeAction();
+  @kotlin.jvm.JvmInline public final value class ImeAction {
+    field public static final androidx.compose.ui.text.input.ImeAction.Companion Companion;
   }
 
   public static final class ImeAction.Companion {
@@ -966,8 +982,8 @@
     method @Deprecated public void onImeAction(int imeAction);
   }
 
-  public final inline class KeyboardCapitalization {
-    ctor public KeyboardCapitalization();
+  @kotlin.jvm.JvmInline public final value class KeyboardCapitalization {
+    field public static final androidx.compose.ui.text.input.KeyboardCapitalization.Companion Companion;
   }
 
   public static final class KeyboardCapitalization.Companion {
@@ -981,8 +997,8 @@
     property public final int Words;
   }
 
-  public final inline class KeyboardType {
-    ctor public KeyboardType();
+  @kotlin.jvm.JvmInline public final value class KeyboardType {
+    field public static final androidx.compose.ui.text.input.KeyboardType.Companion Companion;
   }
 
   public static final class KeyboardType.Companion {
@@ -1229,10 +1245,11 @@
 
 package androidx.compose.ui.text.style {
 
-  @androidx.compose.runtime.Immutable public final inline class BaselineShift {
-    ctor public BaselineShift();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class BaselineShift {
+    ctor public BaselineShift(float multiplier);
     method public float getMultiplier();
     property public final float multiplier;
+    field public static final androidx.compose.ui.text.style.BaselineShift.Companion Companion;
   }
 
   public static final class BaselineShift.Companion {
@@ -1253,8 +1270,8 @@
     enum_constant public static final androidx.compose.ui.text.style.ResolvedTextDirection Rtl;
   }
 
-  public final inline class TextAlign {
-    ctor public TextAlign();
+  @kotlin.jvm.JvmInline public final value class TextAlign {
+    field public static final androidx.compose.ui.text.style.TextAlign.Companion Companion;
   }
 
   public static final class TextAlign.Companion {
@@ -1292,8 +1309,8 @@
     property public final androidx.compose.ui.text.style.TextDecoration Underline;
   }
 
-  public final inline class TextDirection {
-    ctor public TextDirection();
+  @kotlin.jvm.JvmInline public final value class TextDirection {
+    field public static final androidx.compose.ui.text.style.TextDirection.Companion Companion;
   }
 
   public static final class TextDirection.Companion {
@@ -1347,8 +1364,8 @@
     method public static androidx.compose.ui.text.style.TextIndent lerp(androidx.compose.ui.text.style.TextIndent start, androidx.compose.ui.text.style.TextIndent stop, float fraction);
   }
 
-  public final inline class TextOverflow {
-    ctor public TextOverflow();
+  @kotlin.jvm.JvmInline public final value class TextOverflow {
+    field public static final androidx.compose.ui.text.style.TextOverflow.Companion Companion;
   }
 
   public static final class TextOverflow.Companion {
diff --git a/compose/ui/ui-text/api/restricted_current.ignore b/compose/ui/ui-text/api/restricted_current.ignore
index b062517..c585a57 100644
--- a/compose/ui/ui-text/api/restricted_current.ignore
+++ b/compose/ui/ui-text/api/restricted_current.ignore
@@ -5,3 +5,27 @@
 
 RemovedClass: androidx.compose.ui.text.TextLayoutResultKt:
     Removed class androidx.compose.ui.text.TextLayoutResultKt
+
+
+RemovedMethod: androidx.compose.ui.text.PlaceholderVerticalAlign#PlaceholderVerticalAlign():
+    Removed constructor androidx.compose.ui.text.PlaceholderVerticalAlign()
+RemovedMethod: androidx.compose.ui.text.TextRange#TextRange():
+    Removed constructor androidx.compose.ui.text.TextRange()
+RemovedMethod: androidx.compose.ui.text.font.FontStyle#FontStyle():
+    Removed constructor androidx.compose.ui.text.font.FontStyle()
+RemovedMethod: androidx.compose.ui.text.font.FontSynthesis#FontSynthesis():
+    Removed constructor androidx.compose.ui.text.font.FontSynthesis()
+RemovedMethod: androidx.compose.ui.text.input.ImeAction#ImeAction():
+    Removed constructor androidx.compose.ui.text.input.ImeAction()
+RemovedMethod: androidx.compose.ui.text.input.KeyboardCapitalization#KeyboardCapitalization():
+    Removed constructor androidx.compose.ui.text.input.KeyboardCapitalization()
+RemovedMethod: androidx.compose.ui.text.input.KeyboardType#KeyboardType():
+    Removed constructor androidx.compose.ui.text.input.KeyboardType()
+RemovedMethod: androidx.compose.ui.text.style.BaselineShift#BaselineShift():
+    Removed constructor androidx.compose.ui.text.style.BaselineShift()
+RemovedMethod: androidx.compose.ui.text.style.TextAlign#TextAlign():
+    Removed constructor androidx.compose.ui.text.style.TextAlign()
+RemovedMethod: androidx.compose.ui.text.style.TextDirection#TextDirection():
+    Removed constructor androidx.compose.ui.text.style.TextDirection()
+RemovedMethod: androidx.compose.ui.text.style.TextOverflow#TextOverflow():
+    Removed constructor androidx.compose.ui.text.style.TextOverflow()
diff --git a/compose/ui/ui-text/api/restricted_current.txt b/compose/ui/ui-text/api/restricted_current.txt
index 0e7b62f..9fc7883 100644
--- a/compose/ui/ui-text/api/restricted_current.txt
+++ b/compose/ui/ui-text/api/restricted_current.txt
@@ -244,8 +244,8 @@
     property public final long width;
   }
 
-  public final inline class PlaceholderVerticalAlign {
-    ctor public PlaceholderVerticalAlign();
+  @kotlin.jvm.JvmInline public final value class PlaceholderVerticalAlign {
+    field public static final androidx.compose.ui.text.PlaceholderVerticalAlign.Companion Companion;
   }
 
   public static final class PlaceholderVerticalAlign.Companion {
@@ -399,10 +399,25 @@
     field public static final androidx.compose.ui.text.TextPainter INSTANCE;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class TextRange {
-    ctor public TextRange();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class TextRange {
     method public operator boolean contains(long other);
     method public operator boolean contains(int offset);
+    method public boolean getCollapsed();
+    method public int getEnd();
+    method public int getLength();
+    method public int getMax();
+    method public int getMin();
+    method public boolean getReversed();
+    method public int getStart();
+    method public boolean intersects(long other);
+    property public final boolean collapsed;
+    property public final int end;
+    property public final int length;
+    property public final int max;
+    property public final int min;
+    property public final boolean reversed;
+    property public final int start;
+    field public static final androidx.compose.ui.text.TextRange.Companion Companion;
   }
 
   public static final class TextRange.Companion {
@@ -656,10 +671,11 @@
     property public final int OptionalLocal;
   }
 
-  public final inline class FontStyle {
-    ctor public FontStyle();
+  @kotlin.jvm.JvmInline public final value class FontStyle {
+    ctor public FontStyle(int value);
     method public int getValue();
     property public final int value;
+    field public static final androidx.compose.ui.text.font.FontStyle.Companion Companion;
   }
 
   public static final class FontStyle.Companion {
@@ -670,8 +686,8 @@
     property public final int Normal;
   }
 
-  public final inline class FontSynthesis {
-    ctor public FontSynthesis();
+  @kotlin.jvm.JvmInline public final value class FontSynthesis {
+    field public static final androidx.compose.ui.text.font.FontSynthesis.Companion Companion;
   }
 
   public static final class FontSynthesis.Companion {
@@ -840,8 +856,8 @@
   public final class GapBufferKt {
   }
 
-  public final inline class ImeAction {
-    ctor public ImeAction();
+  @kotlin.jvm.JvmInline public final value class ImeAction {
+    field public static final androidx.compose.ui.text.input.ImeAction.Companion Companion;
   }
 
   public static final class ImeAction.Companion {
@@ -889,8 +905,8 @@
     method @Deprecated public void onImeAction(int imeAction);
   }
 
-  public final inline class KeyboardCapitalization {
-    ctor public KeyboardCapitalization();
+  @kotlin.jvm.JvmInline public final value class KeyboardCapitalization {
+    field public static final androidx.compose.ui.text.input.KeyboardCapitalization.Companion Companion;
   }
 
   public static final class KeyboardCapitalization.Companion {
@@ -904,8 +920,8 @@
     property public final int Words;
   }
 
-  public final inline class KeyboardType {
-    ctor public KeyboardType();
+  @kotlin.jvm.JvmInline public final value class KeyboardType {
+    field public static final androidx.compose.ui.text.input.KeyboardType.Companion Companion;
   }
 
   public static final class KeyboardType.Companion {
@@ -1152,10 +1168,11 @@
 
 package androidx.compose.ui.text.style {
 
-  @androidx.compose.runtime.Immutable public final inline class BaselineShift {
-    ctor public BaselineShift();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class BaselineShift {
+    ctor public BaselineShift(float multiplier);
     method public float getMultiplier();
     property public final float multiplier;
+    field public static final androidx.compose.ui.text.style.BaselineShift.Companion Companion;
   }
 
   public static final class BaselineShift.Companion {
@@ -1176,8 +1193,8 @@
     enum_constant public static final androidx.compose.ui.text.style.ResolvedTextDirection Rtl;
   }
 
-  public final inline class TextAlign {
-    ctor public TextAlign();
+  @kotlin.jvm.JvmInline public final value class TextAlign {
+    field public static final androidx.compose.ui.text.style.TextAlign.Companion Companion;
   }
 
   public static final class TextAlign.Companion {
@@ -1215,8 +1232,8 @@
     property public final androidx.compose.ui.text.style.TextDecoration Underline;
   }
 
-  public final inline class TextDirection {
-    ctor public TextDirection();
+  @kotlin.jvm.JvmInline public final value class TextDirection {
+    field public static final androidx.compose.ui.text.style.TextDirection.Companion Companion;
   }
 
   public static final class TextDirection.Companion {
@@ -1270,8 +1287,8 @@
     method public static androidx.compose.ui.text.style.TextIndent lerp(androidx.compose.ui.text.style.TextIndent start, androidx.compose.ui.text.style.TextIndent stop, float fraction);
   }
 
-  public final inline class TextOverflow {
-    ctor public TextOverflow();
+  @kotlin.jvm.JvmInline public final value class TextOverflow {
+    field public static final androidx.compose.ui.text.style.TextOverflow.Companion Companion;
   }
 
   public static final class TextOverflow.Companion {
diff --git a/compose/ui/ui-text/build.gradle b/compose/ui/ui-text/build.gradle
index 67353d8..e88b101 100644
--- a/compose/ui/ui-text/build.gradle
+++ b/compose/ui/ui-text/build.gradle
@@ -182,9 +182,3 @@
 android {
     namespace "androidx.compose.ui.text"
 }
-
-tasks.withType(KotlinCompile).configureEach {
-    kotlinOptions {
-        freeCompilerArgs += ["-XXLanguage:+InlineClasses"]
-    }
-}
diff --git a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/Placeholder.kt b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/Placeholder.kt
index 40b9fad..a65fc3f 100644
--- a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/Placeholder.kt
+++ b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/Placeholder.kt
@@ -84,8 +84,8 @@
  * The settings used to specify how a placeholder is vertically aligned within a text line.
  * @see Placeholder
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-inline class PlaceholderVerticalAlign internal constructor(
[email protected]
+value class PlaceholderVerticalAlign internal constructor(
     @Suppress("unused") private val value: Int
 ) {
 
diff --git a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/TextRange.kt b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/TextRange.kt
index 3262fdb..8aa2eb9 100644
--- a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/TextRange.kt
+++ b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/TextRange.kt
@@ -41,9 +41,9 @@
  * (exclusive). [end] can be smaller than [start] and in those cases [min] and [max] can be
  * used in order to fetch the values.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
[email protected]
 @Immutable
-inline class TextRange internal constructor(private val packedValue: Long) {
+value class TextRange internal constructor(private val packedValue: Long) {
 
     val start: Int get() = unpackInt1(packedValue)
 
diff --git a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/font/FontStyle.kt b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/font/FontStyle.kt
index 3bb1469..f37c520 100644
--- a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/font/FontStyle.kt
+++ b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/font/FontStyle.kt
@@ -22,8 +22,8 @@
  *  @see FontFamily
  */
 // TODO(b/205312869) This constructor should not be public as it leads to FontStyle([cursor]) in AS
-@Suppress("INLINE_CLASS_DEPRECATED")
-inline class FontStyle(val value: Int) {
[email protected]
+value class FontStyle(val value: Int) {
 
     override fun toString(): String {
         return when (this) {
diff --git a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/font/FontSynthesis.kt b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/font/FontSynthesis.kt
index 1b17b11..8f40507 100644
--- a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/font/FontSynthesis.kt
+++ b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/font/FontSynthesis.kt
@@ -33,8 +33,8 @@
  *
  *  @sample androidx.compose.ui.text.samples.FontFamilySynthesisSample
  **/
-@Suppress("INLINE_CLASS_DEPRECATED")
-inline class FontSynthesis internal constructor(internal val value: Int) {
[email protected]
+value class FontSynthesis internal constructor(internal val value: Int) {
 
     override fun toString(): String {
         return when (this) {
diff --git a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/input/ImeAction.kt b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/input/ImeAction.kt
index 1f049ba..d0ee918 100644
--- a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/input/ImeAction.kt
+++ b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/input/ImeAction.kt
@@ -20,8 +20,8 @@
  * Signals the keyboard what type of action should be displayed. It is not guaranteed if
  * the keyboard will show the requested action.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class ImeAction internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class ImeAction internal constructor(@Suppress("unused") private val value: Int) {
 
     override fun toString(): String {
         return when (this) {
diff --git a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/input/KeyboardCapitalization.kt b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/input/KeyboardCapitalization.kt
index fc81cba..28966ef 100644
--- a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/input/KeyboardCapitalization.kt
+++ b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/input/KeyboardCapitalization.kt
@@ -20,8 +20,8 @@
  * Options to request software keyboard to capitalize the text. Applies to languages which
  * has upper-case and lower-case letters.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-inline class KeyboardCapitalization internal constructor(internal val value: Int) {
[email protected]
+value class KeyboardCapitalization internal constructor(internal val value: Int) {
 
     override fun toString(): String {
         return when (this) {
diff --git a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/input/KeyboardType.kt b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/input/KeyboardType.kt
index ac48baa..88e2159 100644
--- a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/input/KeyboardType.kt
+++ b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/input/KeyboardType.kt
@@ -19,8 +19,8 @@
 /**
  * Values representing the different available Keyboard Types.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class KeyboardType internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class KeyboardType internal constructor(@Suppress("unused") private val value: Int) {
 
     override fun toString(): String {
         return when (this) {
diff --git a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/BaselineShift.kt b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/BaselineShift.kt
index d358149..f650511 100644
--- a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/BaselineShift.kt
+++ b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/BaselineShift.kt
@@ -28,9 +28,9 @@
  *
  * @param multiplier shift the baseline by multiplier * (baseline - ascent)
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class BaselineShift(val multiplier: Float) {
[email protected]
+value class BaselineShift(val multiplier: Float) {
     companion object {
         /**
          * Default baseline shift for superscript.
diff --git a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/TextAlign.kt b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/TextAlign.kt
index 7a6b7f5..305ec81 100644
--- a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/TextAlign.kt
+++ b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/TextAlign.kt
@@ -19,8 +19,8 @@
  * Defines how to align text horizontally. `TextAlign` controls how text aligns in the space it
  * appears.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-inline class TextAlign internal constructor(internal val value: Int) {
[email protected]
+value class TextAlign internal constructor(internal val value: Int) {
 
     override fun toString(): String {
         return when (this) {
diff --git a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/TextDirection.kt b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/TextDirection.kt
index fc04f59..663b45d 100644
--- a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/TextDirection.kt
+++ b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/TextDirection.kt
@@ -21,8 +21,8 @@
  *
  * @see ResolvedTextDirection
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-inline class TextDirection internal constructor(internal val value: Int) {
[email protected]
+value class TextDirection internal constructor(internal val value: Int) {
 
     override fun toString(): String {
         return when (this) {
diff --git a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/TextOverflow.kt b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/TextOverflow.kt
index a627401..da392d0 100644
--- a/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/TextOverflow.kt
+++ b/compose/ui/ui-text/src/commonMain/kotlin/androidx/compose/ui/text/style/TextOverflow.kt
@@ -19,8 +19,8 @@
 import androidx.compose.runtime.Stable
 
 /** How overflowing text should be handled. */
-@Suppress("INLINE_CLASS_DEPRECATED")
-inline class TextOverflow internal constructor(internal val value: Int) {
[email protected]
+value class TextOverflow internal constructor(internal val value: Int) {
 
     override fun toString(): String {
         return when (this) {
diff --git a/compose/ui/ui-tooling/src/androidMain/kotlin/androidx/compose/ui/tooling/animation/ComposeAnimationParser.kt b/compose/ui/ui-tooling/src/androidMain/kotlin/androidx/compose/ui/tooling/animation/ComposeAnimationParser.kt
index cdae952..5410d75 100644
--- a/compose/ui/ui-tooling/src/androidMain/kotlin/androidx/compose/ui/tooling/animation/ComposeAnimationParser.kt
+++ b/compose/ui/ui-tooling/src/androidMain/kotlin/androidx/compose/ui/tooling/animation/ComposeAnimationParser.kt
@@ -73,8 +73,8 @@
 /**
  * Represents the states of [AnimatedVisibilityComposeAnimation]s.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-internal inline class AnimatedVisibilityState private constructor(val value: String) {
+@JvmInline
+internal value class AnimatedVisibilityState private constructor(val value: String) {
 
     override fun toString() = value
 
diff --git a/compose/ui/ui-unit/api/current.ignore b/compose/ui/ui-unit/api/current.ignore
new file mode 100644
index 0000000..0817014
--- /dev/null
+++ b/compose/ui/ui-unit/api/current.ignore
@@ -0,0 +1,19 @@
+// Baseline format: 1.0
+RemovedMethod: androidx.compose.ui.unit.Constraints#Constraints():
+    Removed constructor androidx.compose.ui.unit.Constraints()
+RemovedMethod: androidx.compose.ui.unit.Dp#Dp():
+    Removed constructor androidx.compose.ui.unit.Dp()
+RemovedMethod: androidx.compose.ui.unit.DpOffset#DpOffset():
+    Removed constructor androidx.compose.ui.unit.DpOffset()
+RemovedMethod: androidx.compose.ui.unit.DpSize#DpSize():
+    Removed constructor androidx.compose.ui.unit.DpSize()
+RemovedMethod: androidx.compose.ui.unit.IntOffset#IntOffset():
+    Removed constructor androidx.compose.ui.unit.IntOffset()
+RemovedMethod: androidx.compose.ui.unit.IntSize#IntSize():
+    Removed constructor androidx.compose.ui.unit.IntSize()
+RemovedMethod: androidx.compose.ui.unit.TextUnit#TextUnit():
+    Removed constructor androidx.compose.ui.unit.TextUnit()
+RemovedMethod: androidx.compose.ui.unit.TextUnitType#TextUnitType():
+    Removed constructor androidx.compose.ui.unit.TextUnitType()
+RemovedMethod: androidx.compose.ui.unit.Velocity#Velocity():
+    Removed constructor androidx.compose.ui.unit.Velocity()
diff --git a/compose/ui/ui-unit/api/current.txt b/compose/ui/ui-unit/api/current.txt
index dfe02d7..204f8d1 100644
--- a/compose/ui/ui-unit/api/current.txt
+++ b/compose/ui/ui-unit/api/current.txt
@@ -5,8 +5,29 @@
     method public static androidx.compose.ui.unit.Density Density(android.content.Context context);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Constraints {
-    ctor public Constraints();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Constraints {
+    ctor public Constraints(@kotlin.PublishedApi long value);
+    method public long copy(optional int minWidth, optional int maxWidth, optional int minHeight, optional int maxHeight);
+    method public boolean getHasBoundedHeight();
+    method public boolean getHasBoundedWidth();
+    method public boolean getHasFixedHeight();
+    method public boolean getHasFixedWidth();
+    method public int getMaxHeight();
+    method public int getMaxWidth();
+    method public int getMinHeight();
+    method public int getMinWidth();
+    method public boolean isZero();
+    property public final boolean hasBoundedHeight;
+    property public final boolean hasBoundedWidth;
+    property public final boolean hasFixedHeight;
+    property public final boolean hasFixedWidth;
+    property public final boolean isZero;
+    property public final int maxHeight;
+    property public final int maxWidth;
+    property public final int minHeight;
+    property public final int minWidth;
+    field public static final androidx.compose.ui.unit.Constraints.Companion Companion;
+    field public static final int Infinity = 2147483647; // 0x7fffffff
   }
 
   public static final class Constraints.Companion {
@@ -49,8 +70,8 @@
     method @androidx.compose.runtime.Stable public static androidx.compose.ui.unit.Density Density(float density, optional float fontScale);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Dp implements java.lang.Comparable<androidx.compose.ui.unit.Dp> {
-    ctor public Dp();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Dp implements java.lang.Comparable<androidx.compose.ui.unit.Dp> {
+    ctor public Dp(float value);
     method @androidx.compose.runtime.Stable public operator int compareTo(float other);
     method @androidx.compose.runtime.Stable public inline operator float div(float other);
     method @androidx.compose.runtime.Stable public inline operator float div(int other);
@@ -62,6 +83,7 @@
     method @androidx.compose.runtime.Stable public inline operator float times(int other);
     method @androidx.compose.runtime.Stable public inline operator float unaryMinus();
     property public final float value;
+    field public static final androidx.compose.ui.unit.Dp.Companion Companion;
   }
 
   public static final class Dp.Companion {
@@ -108,10 +130,15 @@
     method @androidx.compose.runtime.Stable public static inline operator long times(float, long size);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class DpOffset {
-    ctor public DpOffset();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class DpOffset {
+    method public long copy(optional float x, optional float y);
+    method public float getX();
+    method public float getY();
     method @androidx.compose.runtime.Stable public inline operator long minus(long other);
     method @androidx.compose.runtime.Stable public inline operator long plus(long other);
+    property public final float x;
+    property public final float y;
+    field public static final androidx.compose.ui.unit.DpOffset.Companion Companion;
   }
 
   public static final class DpOffset.Companion {
@@ -143,16 +170,21 @@
   public static final class DpRect.Companion {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class DpSize {
-    ctor public DpSize();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class DpSize {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float width, optional float height);
     method @androidx.compose.runtime.Stable public operator long div(int other);
     method @androidx.compose.runtime.Stable public operator long div(float other);
+    method public float getHeight();
+    method public float getWidth();
     method @androidx.compose.runtime.Stable public inline operator long minus(long other);
     method @androidx.compose.runtime.Stable public inline operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long times(int other);
     method @androidx.compose.runtime.Stable public operator long times(float other);
+    property public final float height;
+    property public final float width;
+    field public static final androidx.compose.ui.unit.DpSize.Companion Companion;
   }
 
   public static final class DpSize.Companion {
@@ -162,16 +194,21 @@
     property public final long Zero;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class IntOffset {
-    ctor public IntOffset();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class IntOffset {
     method @androidx.compose.runtime.Stable public operator int component1();
     method @androidx.compose.runtime.Stable public operator int component2();
+    method public long copy(optional int x, optional int y);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public int getX();
+    method public int getY();
     method @androidx.compose.runtime.Stable public inline operator long minus(long other);
     method @androidx.compose.runtime.Stable public inline operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long rem(int operand);
     method @androidx.compose.runtime.Stable public operator long times(float operand);
     method @androidx.compose.runtime.Stable public inline operator long unaryMinus();
+    property public final int x;
+    property public final int y;
+    field public static final androidx.compose.ui.unit.IntOffset.Companion Companion;
   }
 
   public static final class IntOffset.Companion {
@@ -257,12 +294,16 @@
     method @androidx.compose.runtime.Stable public static androidx.compose.ui.unit.IntRect lerp(androidx.compose.ui.unit.IntRect start, androidx.compose.ui.unit.IntRect stop, float fraction);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class IntSize {
-    ctor public IntSize();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class IntSize {
     method @androidx.compose.runtime.Stable public inline operator int component1();
     method @androidx.compose.runtime.Stable public inline operator int component2();
     method @androidx.compose.runtime.Stable public operator long div(int other);
+    method public int getHeight();
+    method public int getWidth();
     method @androidx.compose.runtime.Stable public operator long times(int other);
+    property public final int height;
+    property public final int width;
+    field public static final androidx.compose.ui.unit.IntSize.Companion Companion;
   }
 
   public static final class IntSize.Companion {
@@ -283,16 +324,24 @@
     enum_constant public static final androidx.compose.ui.unit.LayoutDirection Rtl;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class TextUnit {
-    ctor public TextUnit();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class TextUnit {
     method public inline operator int compareTo(long other);
     method public inline operator long div(float other);
     method public inline operator long div(double other);
     method public inline operator long div(int other);
+    method public long getType();
+    method public float getValue();
+    method public boolean isEm();
+    method public boolean isSp();
     method public inline operator long times(float other);
     method public inline operator long times(double other);
     method public inline operator long times(int other);
     method public inline operator long unaryMinus();
+    property public final boolean isEm;
+    property public final boolean isSp;
+    property public final long type;
+    property public final float value;
+    field public static final androidx.compose.ui.unit.TextUnit.Companion Companion;
   }
 
   public static final class TextUnit.Companion {
@@ -316,8 +365,9 @@
     method @androidx.compose.runtime.Stable public static inline operator long times(int, long other);
   }
 
-  public final inline class TextUnitType {
-    ctor public TextUnitType();
+  @kotlin.jvm.JvmInline public final value class TextUnitType {
+    ctor public TextUnitType(long type);
+    field public static final androidx.compose.ui.unit.TextUnitType.Companion Companion;
   }
 
   public static final class TextUnitType.Companion {
@@ -329,16 +379,21 @@
     property public final long Unspecified;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Velocity {
-    ctor public Velocity();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Velocity {
     method @androidx.compose.runtime.Stable public operator float component1();
     method @androidx.compose.runtime.Stable public operator float component2();
+    method public long copy(optional float x, optional float y);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public float getX();
+    method public float getY();
     method @androidx.compose.runtime.Stable public operator long minus(long other);
     method @androidx.compose.runtime.Stable public operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long rem(float operand);
     method @androidx.compose.runtime.Stable public operator long times(float operand);
     method @androidx.compose.runtime.Stable public operator long unaryMinus();
+    property public final float x;
+    property public final float y;
+    field public static final androidx.compose.ui.unit.Velocity.Companion Companion;
   }
 
   public static final class Velocity.Companion {
diff --git a/compose/ui/ui-unit/api/public_plus_experimental_current.txt b/compose/ui/ui-unit/api/public_plus_experimental_current.txt
index d800789..ae4f8a5 100644
--- a/compose/ui/ui-unit/api/public_plus_experimental_current.txt
+++ b/compose/ui/ui-unit/api/public_plus_experimental_current.txt
@@ -5,8 +5,29 @@
     method public static androidx.compose.ui.unit.Density Density(android.content.Context context);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Constraints {
-    ctor public Constraints();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Constraints {
+    ctor public Constraints(@kotlin.PublishedApi long value);
+    method public long copy(optional int minWidth, optional int maxWidth, optional int minHeight, optional int maxHeight);
+    method public boolean getHasBoundedHeight();
+    method public boolean getHasBoundedWidth();
+    method public boolean getHasFixedHeight();
+    method public boolean getHasFixedWidth();
+    method public int getMaxHeight();
+    method public int getMaxWidth();
+    method public int getMinHeight();
+    method public int getMinWidth();
+    method public boolean isZero();
+    property public final boolean hasBoundedHeight;
+    property public final boolean hasBoundedWidth;
+    property public final boolean hasFixedHeight;
+    property public final boolean hasFixedWidth;
+    property public final boolean isZero;
+    property public final int maxHeight;
+    property public final int maxWidth;
+    property public final int minHeight;
+    property public final int minWidth;
+    field public static final androidx.compose.ui.unit.Constraints.Companion Companion;
+    field public static final int Infinity = 2147483647; // 0x7fffffff
   }
 
   public static final class Constraints.Companion {
@@ -49,8 +70,8 @@
     method @androidx.compose.runtime.Stable public static androidx.compose.ui.unit.Density Density(float density, optional float fontScale);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Dp implements java.lang.Comparable<androidx.compose.ui.unit.Dp> {
-    ctor public Dp();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Dp implements java.lang.Comparable<androidx.compose.ui.unit.Dp> {
+    ctor public Dp(float value);
     method @androidx.compose.runtime.Stable public operator int compareTo(float other);
     method @androidx.compose.runtime.Stable public inline operator float div(float other);
     method @androidx.compose.runtime.Stable public inline operator float div(int other);
@@ -62,6 +83,7 @@
     method @androidx.compose.runtime.Stable public inline operator float times(int other);
     method @androidx.compose.runtime.Stable public inline operator float unaryMinus();
     property public final float value;
+    field public static final androidx.compose.ui.unit.Dp.Companion Companion;
   }
 
   public static final class Dp.Companion {
@@ -108,10 +130,15 @@
     method @androidx.compose.runtime.Stable public static inline operator long times(float, long size);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class DpOffset {
-    ctor public DpOffset();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class DpOffset {
+    method public long copy(optional float x, optional float y);
+    method public float getX();
+    method public float getY();
     method @androidx.compose.runtime.Stable public inline operator long minus(long other);
     method @androidx.compose.runtime.Stable public inline operator long plus(long other);
+    property public final float x;
+    property public final float y;
+    field public static final androidx.compose.ui.unit.DpOffset.Companion Companion;
   }
 
   public static final class DpOffset.Companion {
@@ -143,16 +170,21 @@
   public static final class DpRect.Companion {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class DpSize {
-    ctor public DpSize();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class DpSize {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float width, optional float height);
     method @androidx.compose.runtime.Stable public operator long div(int other);
     method @androidx.compose.runtime.Stable public operator long div(float other);
+    method public float getHeight();
+    method public float getWidth();
     method @androidx.compose.runtime.Stable public inline operator long minus(long other);
     method @androidx.compose.runtime.Stable public inline operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long times(int other);
     method @androidx.compose.runtime.Stable public operator long times(float other);
+    property public final float height;
+    property public final float width;
+    field public static final androidx.compose.ui.unit.DpSize.Companion Companion;
   }
 
   public static final class DpSize.Companion {
@@ -165,16 +197,21 @@
   @kotlin.RequiresOptIn(message="This API is experimental and is likely to change in the future.") public @interface ExperimentalUnitApi {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class IntOffset {
-    ctor public IntOffset();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class IntOffset {
     method @androidx.compose.runtime.Stable public operator int component1();
     method @androidx.compose.runtime.Stable public operator int component2();
+    method public long copy(optional int x, optional int y);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public int getX();
+    method public int getY();
     method @androidx.compose.runtime.Stable public inline operator long minus(long other);
     method @androidx.compose.runtime.Stable public inline operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long rem(int operand);
     method @androidx.compose.runtime.Stable public operator long times(float operand);
     method @androidx.compose.runtime.Stable public inline operator long unaryMinus();
+    property public final int x;
+    property public final int y;
+    field public static final androidx.compose.ui.unit.IntOffset.Companion Companion;
   }
 
   public static final class IntOffset.Companion {
@@ -260,12 +297,16 @@
     method @androidx.compose.runtime.Stable public static androidx.compose.ui.unit.IntRect lerp(androidx.compose.ui.unit.IntRect start, androidx.compose.ui.unit.IntRect stop, float fraction);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class IntSize {
-    ctor public IntSize();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class IntSize {
     method @androidx.compose.runtime.Stable public inline operator int component1();
     method @androidx.compose.runtime.Stable public inline operator int component2();
     method @androidx.compose.runtime.Stable public operator long div(int other);
+    method public int getHeight();
+    method public int getWidth();
     method @androidx.compose.runtime.Stable public operator long times(int other);
+    property public final int height;
+    property public final int width;
+    field public static final androidx.compose.ui.unit.IntSize.Companion Companion;
   }
 
   public static final class IntSize.Companion {
@@ -286,16 +327,24 @@
     enum_constant public static final androidx.compose.ui.unit.LayoutDirection Rtl;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class TextUnit {
-    ctor public TextUnit();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class TextUnit {
     method public inline operator int compareTo(long other);
     method public inline operator long div(float other);
     method public inline operator long div(double other);
     method public inline operator long div(int other);
+    method public long getType();
+    method public float getValue();
+    method public boolean isEm();
+    method public boolean isSp();
     method public inline operator long times(float other);
     method public inline operator long times(double other);
     method public inline operator long times(int other);
     method public inline operator long unaryMinus();
+    property public final boolean isEm;
+    property public final boolean isSp;
+    property public final long type;
+    property public final float value;
+    field public static final androidx.compose.ui.unit.TextUnit.Companion Companion;
   }
 
   public static final class TextUnit.Companion {
@@ -320,8 +369,9 @@
     method @androidx.compose.runtime.Stable public static inline operator long times(int, long other);
   }
 
-  public final inline class TextUnitType {
-    ctor public TextUnitType();
+  @kotlin.jvm.JvmInline public final value class TextUnitType {
+    ctor public TextUnitType(long type);
+    field public static final androidx.compose.ui.unit.TextUnitType.Companion Companion;
   }
 
   public static final class TextUnitType.Companion {
@@ -333,16 +383,21 @@
     property public final long Unspecified;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Velocity {
-    ctor public Velocity();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Velocity {
     method @androidx.compose.runtime.Stable public operator float component1();
     method @androidx.compose.runtime.Stable public operator float component2();
+    method public long copy(optional float x, optional float y);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public float getX();
+    method public float getY();
     method @androidx.compose.runtime.Stable public operator long minus(long other);
     method @androidx.compose.runtime.Stable public operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long rem(float operand);
     method @androidx.compose.runtime.Stable public operator long times(float operand);
     method @androidx.compose.runtime.Stable public operator long unaryMinus();
+    property public final float x;
+    property public final float y;
+    field public static final androidx.compose.ui.unit.Velocity.Companion Companion;
   }
 
   public static final class Velocity.Companion {
diff --git a/compose/ui/ui-unit/api/restricted_current.ignore b/compose/ui/ui-unit/api/restricted_current.ignore
new file mode 100644
index 0000000..0817014
--- /dev/null
+++ b/compose/ui/ui-unit/api/restricted_current.ignore
@@ -0,0 +1,19 @@
+// Baseline format: 1.0
+RemovedMethod: androidx.compose.ui.unit.Constraints#Constraints():
+    Removed constructor androidx.compose.ui.unit.Constraints()
+RemovedMethod: androidx.compose.ui.unit.Dp#Dp():
+    Removed constructor androidx.compose.ui.unit.Dp()
+RemovedMethod: androidx.compose.ui.unit.DpOffset#DpOffset():
+    Removed constructor androidx.compose.ui.unit.DpOffset()
+RemovedMethod: androidx.compose.ui.unit.DpSize#DpSize():
+    Removed constructor androidx.compose.ui.unit.DpSize()
+RemovedMethod: androidx.compose.ui.unit.IntOffset#IntOffset():
+    Removed constructor androidx.compose.ui.unit.IntOffset()
+RemovedMethod: androidx.compose.ui.unit.IntSize#IntSize():
+    Removed constructor androidx.compose.ui.unit.IntSize()
+RemovedMethod: androidx.compose.ui.unit.TextUnit#TextUnit():
+    Removed constructor androidx.compose.ui.unit.TextUnit()
+RemovedMethod: androidx.compose.ui.unit.TextUnitType#TextUnitType():
+    Removed constructor androidx.compose.ui.unit.TextUnitType()
+RemovedMethod: androidx.compose.ui.unit.Velocity#Velocity():
+    Removed constructor androidx.compose.ui.unit.Velocity()
diff --git a/compose/ui/ui-unit/api/restricted_current.txt b/compose/ui/ui-unit/api/restricted_current.txt
index 321a992..7a4ebe3 100644
--- a/compose/ui/ui-unit/api/restricted_current.txt
+++ b/compose/ui/ui-unit/api/restricted_current.txt
@@ -5,8 +5,29 @@
     method public static androidx.compose.ui.unit.Density Density(android.content.Context context);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Constraints {
-    ctor public Constraints();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Constraints {
+    ctor public Constraints(@kotlin.PublishedApi long value);
+    method public long copy(optional int minWidth, optional int maxWidth, optional int minHeight, optional int maxHeight);
+    method public boolean getHasBoundedHeight();
+    method public boolean getHasBoundedWidth();
+    method public boolean getHasFixedHeight();
+    method public boolean getHasFixedWidth();
+    method public int getMaxHeight();
+    method public int getMaxWidth();
+    method public int getMinHeight();
+    method public int getMinWidth();
+    method public boolean isZero();
+    property public final boolean hasBoundedHeight;
+    property public final boolean hasBoundedWidth;
+    property public final boolean hasFixedHeight;
+    property public final boolean hasFixedWidth;
+    property public final boolean isZero;
+    property public final int maxHeight;
+    property public final int maxWidth;
+    property public final int minHeight;
+    property public final int minWidth;
+    field public static final androidx.compose.ui.unit.Constraints.Companion Companion;
+    field public static final int Infinity = 2147483647; // 0x7fffffff
   }
 
   public static final class Constraints.Companion {
@@ -49,8 +70,8 @@
     method @androidx.compose.runtime.Stable public static androidx.compose.ui.unit.Density Density(float density, optional float fontScale);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Dp implements java.lang.Comparable<androidx.compose.ui.unit.Dp> {
-    ctor public Dp();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Dp implements java.lang.Comparable<androidx.compose.ui.unit.Dp> {
+    ctor public Dp(float value);
     method @androidx.compose.runtime.Stable public operator int compareTo(float other);
     method @androidx.compose.runtime.Stable public inline operator float div(float other);
     method @androidx.compose.runtime.Stable public inline operator float div(int other);
@@ -62,6 +83,7 @@
     method @androidx.compose.runtime.Stable public inline operator float times(int other);
     method @androidx.compose.runtime.Stable public inline operator float unaryMinus();
     property public final float value;
+    field public static final androidx.compose.ui.unit.Dp.Companion Companion;
   }
 
   public static final class Dp.Companion {
@@ -108,10 +130,15 @@
     method @androidx.compose.runtime.Stable public static inline operator long times(float, long size);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class DpOffset {
-    ctor public DpOffset();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class DpOffset {
+    method public long copy(optional float x, optional float y);
+    method public float getX();
+    method public float getY();
     method @androidx.compose.runtime.Stable public inline operator long minus(long other);
     method @androidx.compose.runtime.Stable public inline operator long plus(long other);
+    property public final float x;
+    property public final float y;
+    field public static final androidx.compose.ui.unit.DpOffset.Companion Companion;
   }
 
   public static final class DpOffset.Companion {
@@ -143,16 +170,21 @@
   public static final class DpRect.Companion {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class DpSize {
-    ctor public DpSize();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class DpSize {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float width, optional float height);
     method @androidx.compose.runtime.Stable public operator long div(int other);
     method @androidx.compose.runtime.Stable public operator long div(float other);
+    method public float getHeight();
+    method public float getWidth();
     method @androidx.compose.runtime.Stable public inline operator long minus(long other);
     method @androidx.compose.runtime.Stable public inline operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long times(int other);
     method @androidx.compose.runtime.Stable public operator long times(float other);
+    property public final float height;
+    property public final float width;
+    field public static final androidx.compose.ui.unit.DpSize.Companion Companion;
   }
 
   public static final class DpSize.Companion {
@@ -162,16 +194,21 @@
     property public final long Zero;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class IntOffset {
-    ctor public IntOffset();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class IntOffset {
     method @androidx.compose.runtime.Stable public operator int component1();
     method @androidx.compose.runtime.Stable public operator int component2();
+    method public long copy(optional int x, optional int y);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public int getX();
+    method public int getY();
     method @androidx.compose.runtime.Stable public inline operator long minus(long other);
     method @androidx.compose.runtime.Stable public inline operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long rem(int operand);
     method @androidx.compose.runtime.Stable public operator long times(float operand);
     method @androidx.compose.runtime.Stable public inline operator long unaryMinus();
+    property public final int x;
+    property public final int y;
+    field public static final androidx.compose.ui.unit.IntOffset.Companion Companion;
   }
 
   public static final class IntOffset.Companion {
@@ -257,12 +294,16 @@
     method @androidx.compose.runtime.Stable public static androidx.compose.ui.unit.IntRect lerp(androidx.compose.ui.unit.IntRect start, androidx.compose.ui.unit.IntRect stop, float fraction);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class IntSize {
-    ctor public IntSize();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class IntSize {
     method @androidx.compose.runtime.Stable public inline operator int component1();
     method @androidx.compose.runtime.Stable public inline operator int component2();
     method @androidx.compose.runtime.Stable public operator long div(int other);
+    method public int getHeight();
+    method public int getWidth();
     method @androidx.compose.runtime.Stable public operator long times(int other);
+    property public final int height;
+    property public final int width;
+    field public static final androidx.compose.ui.unit.IntSize.Companion Companion;
   }
 
   public static final class IntSize.Companion {
@@ -283,16 +324,24 @@
     enum_constant public static final androidx.compose.ui.unit.LayoutDirection Rtl;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class TextUnit {
-    ctor public TextUnit();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class TextUnit {
     method public inline operator int compareTo(long other);
     method public inline operator long div(float other);
     method public inline operator long div(double other);
     method public inline operator long div(int other);
+    method public long getType();
+    method public float getValue();
+    method public boolean isEm();
+    method public boolean isSp();
     method public inline operator long times(float other);
     method public inline operator long times(double other);
     method public inline operator long times(int other);
     method public inline operator long unaryMinus();
+    property public final boolean isEm;
+    property public final boolean isSp;
+    property public final long type;
+    property public final float value;
+    field public static final androidx.compose.ui.unit.TextUnit.Companion Companion;
   }
 
   public static final class TextUnit.Companion {
@@ -320,8 +369,9 @@
     method @androidx.compose.runtime.Stable public static inline operator long times(int, long other);
   }
 
-  public final inline class TextUnitType {
-    ctor public TextUnitType();
+  @kotlin.jvm.JvmInline public final value class TextUnitType {
+    ctor public TextUnitType(long type);
+    field public static final androidx.compose.ui.unit.TextUnitType.Companion Companion;
   }
 
   public static final class TextUnitType.Companion {
@@ -333,16 +383,21 @@
     property public final long Unspecified;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Velocity {
-    ctor public Velocity();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Velocity {
     method @androidx.compose.runtime.Stable public operator float component1();
     method @androidx.compose.runtime.Stable public operator float component2();
+    method public long copy(optional float x, optional float y);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public float getX();
+    method public float getY();
     method @androidx.compose.runtime.Stable public operator long minus(long other);
     method @androidx.compose.runtime.Stable public operator long plus(long other);
     method @androidx.compose.runtime.Stable public operator long rem(float operand);
     method @androidx.compose.runtime.Stable public operator long times(float operand);
     method @androidx.compose.runtime.Stable public operator long unaryMinus();
+    property public final float x;
+    property public final float y;
+    field public static final androidx.compose.ui.unit.Velocity.Companion Companion;
   }
 
   public static final class Velocity.Companion {
diff --git a/compose/ui/ui-unit/build.gradle b/compose/ui/ui-unit/build.gradle
index bdcb149..98efd741 100644
--- a/compose/ui/ui-unit/build.gradle
+++ b/compose/ui/ui-unit/build.gradle
@@ -117,9 +117,3 @@
 android {
     namespace "androidx.compose.ui.unit"
 }
-
-tasks.withType(KotlinCompile).configureEach {
-    kotlinOptions {
-        freeCompilerArgs += ["-XXLanguage:+InlineClasses"]
-    }
-}
diff --git a/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Constraints.kt b/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Constraints.kt
index db11a29..65891ba 100644
--- a/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Constraints.kt
+++ b/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Constraints.kt
@@ -13,11 +13,6 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-@file:Suppress(
-    "NOTHING_TO_INLINE",
-    "INLINE_CLASS_DEPRECATED",
-    "EXPERIMENTAL_FEATURE_WARNING"
-)
 
 package androidx.compose.ui.unit
 
@@ -55,8 +50,8 @@
  * this range will fail.
  */
 @Immutable
-// This can be made inline after b/155690960 is fixed.
-inline class Constraints(
[email protected]
+value class Constraints(
     @PublishedApi internal val value: Long
 ) {
     /**
diff --git a/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Dp.kt b/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Dp.kt
index 9f294ec..1e22e3a 100644
--- a/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Dp.kt
+++ b/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Dp.kt
@@ -41,9 +41,9 @@
  *     val lineThicknessPx = lineThickness.toPx(context)
  * [toPx] is normally needed only for painting operations.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class Dp(val value: Float) : Comparable<Dp> {
[email protected]
+value class Dp(val value: Float) : Comparable<Dp> {
     /**
      * Add two [Dp]s together.
      */
@@ -257,9 +257,9 @@
 /**
  * A two-dimensional offset using [Dp] for units
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class DpOffset internal constructor(@PublishedApi internal val packedValue: Long) {
[email protected]
+value class DpOffset internal constructor(@PublishedApi internal val packedValue: Long) {
 
     /**
      * The horizontal aspect of the offset in [Dp]
@@ -375,9 +375,9 @@
 /**
  * A two-dimensional Size using [Dp] for units
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class DpSize internal constructor(@PublishedApi internal val packedValue: Long) {
[email protected]
+value class DpSize internal constructor(@PublishedApi internal val packedValue: Long) {
 
     /**
      * The horizontal aspect of the Size in [Dp]
diff --git a/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/IntOffset.kt b/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/IntOffset.kt
index 749e2be..ab0feed 100644
--- a/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/IntOffset.kt
+++ b/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/IntOffset.kt
@@ -16,7 +16,7 @@
 
 @file:Suppress(
     "NOTHING_TO_INLINE",
-    "INLINE_CLASS_DEPRECATED",
+    "",
     "EXPERIMENTAL_FEATURE_WARNING"
 )
 
@@ -42,7 +42,8 @@
  * A two-dimensional position using [Int] pixels for units
  */
 @Immutable
-inline class IntOffset internal constructor(@PublishedApi internal val packedValue: Long) {
[email protected]
+value class IntOffset internal constructor(@PublishedApi internal val packedValue: Long) {
 
     /**
      * The horizontal aspect of the position in [Int] pixels.
diff --git a/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/IntSize.kt b/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/IntSize.kt
index fae9c2d..c56c857 100644
--- a/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/IntSize.kt
+++ b/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/IntSize.kt
@@ -14,11 +14,7 @@
  * limitations under the License.
  */
 
-@file:Suppress(
-    "NOTHING_TO_INLINE",
-    "INLINE_CLASS_DEPRECATED",
-    "EXPERIMENTAL_FEATURE_WARNING"
-)
+@file:Suppress("NOTHING_TO_INLINE")
 
 package androidx.compose.ui.unit
 
@@ -39,7 +35,8 @@
  * A two-dimensional size class used for measuring in [Int] pixels.
  */
 @Immutable
-inline class IntSize internal constructor(@PublishedApi internal val packedValue: Long) {
[email protected]
+value class IntSize internal constructor(@PublishedApi internal val packedValue: Long) {
 
     /**
      * The horizontal aspect of the size in [Int] pixels.
diff --git a/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/TextUnit.kt b/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/TextUnit.kt
index f4d84f5..a4ed5fc 100644
--- a/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/TextUnit.kt
+++ b/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/TextUnit.kt
@@ -42,8 +42,8 @@
 /**
  * An enum class defining for type of [TextUnit].
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class TextUnitType(internal val type: Long) {
[email protected]
+value class TextUnitType(internal val type: Long) {
     override fun toString(): String {
         return when (this) {
             Unspecified -> "Unspecified"
@@ -74,9 +74,9 @@
  * Note that do not store this value in your persistent storage or send to another process since
  * the internal representation may be changed in future.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class TextUnit internal constructor(internal val packedValue: Long) {
[email protected]
+value class TextUnit internal constructor(internal val packedValue: Long) {
     /**
      * This is the same as multiplying the [TextUnit] by -1.0.
      *
diff --git a/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Velocity.kt b/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Velocity.kt
index f017471..6de7ed1 100644
--- a/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Velocity.kt
+++ b/compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/Velocity.kt
@@ -34,9 +34,9 @@
 /**
  * A two dimensional velocity in pixels per second.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class Velocity internal constructor(private val packedValue: Long) {
[email protected]
+value class Velocity internal constructor(private val packedValue: Long) {
 
     /**
      * The horizontal component of the velocity in pixels per second.
diff --git a/compose/ui/ui-util/build.gradle b/compose/ui/ui-util/build.gradle
index 374215c..e2ecdaf 100644
--- a/compose/ui/ui-util/build.gradle
+++ b/compose/ui/ui-util/build.gradle
@@ -92,9 +92,3 @@
 android {
     namespace "androidx.compose.ui.util"
 }
-
-tasks.withType(KotlinCompile).configureEach {
-    kotlinOptions {
-        freeCompilerArgs += ["-XXLanguage:+InlineClasses"]
-    }
-}
diff --git a/compose/ui/ui/api/current.ignore b/compose/ui/ui/api/current.ignore
index 8b7ef31..e77ec14 100644
--- a/compose/ui/ui/api/current.ignore
+++ b/compose/ui/ui/api/current.ignore
@@ -15,7 +15,41 @@
     Removed class androidx.compose.ui.platform.TextToolbarKt
 
 
+RemovedMethod: androidx.compose.ui.draw.BlurredEdgeTreatment#BlurredEdgeTreatment():
+    Removed constructor androidx.compose.ui.draw.BlurredEdgeTreatment()
+RemovedMethod: androidx.compose.ui.focus.FocusDirection#FocusDirection():
+    Removed constructor androidx.compose.ui.focus.FocusDirection()
+RemovedMethod: androidx.compose.ui.graphics.TransformOrigin#TransformOrigin():
+    Removed constructor androidx.compose.ui.graphics.TransformOrigin()
 RemovedMethod: androidx.compose.ui.graphics.vector.ImageVector.Builder#Builder(String, float, float, float, float, long, int):
     Removed constructor androidx.compose.ui.graphics.vector.ImageVector.Builder(String,float,float,float,float,long,int)
+RemovedMethod: androidx.compose.ui.hapticfeedback.HapticFeedbackType#HapticFeedbackType():
+    Removed constructor androidx.compose.ui.hapticfeedback.HapticFeedbackType()
+RemovedMethod: androidx.compose.ui.input.InputMode#InputMode():
+    Removed constructor androidx.compose.ui.input.InputMode()
+RemovedMethod: androidx.compose.ui.input.key.Key#Key():
+    Removed constructor androidx.compose.ui.input.key.Key()
+RemovedMethod: androidx.compose.ui.input.key.KeyEvent#KeyEvent():
+    Removed constructor androidx.compose.ui.input.key.KeyEvent()
+RemovedMethod: androidx.compose.ui.input.key.KeyEventType#KeyEventType():
+    Removed constructor androidx.compose.ui.input.key.KeyEventType()
+RemovedMethod: androidx.compose.ui.input.nestedscroll.NestedScrollSource#NestedScrollSource():
+    Removed constructor androidx.compose.ui.input.nestedscroll.NestedScrollSource()
+RemovedMethod: androidx.compose.ui.input.pointer.PointerButtons#PointerButtons():
+    Removed constructor androidx.compose.ui.input.pointer.PointerButtons()
+RemovedMethod: androidx.compose.ui.input.pointer.PointerEventType#PointerEventType():
+    Removed constructor androidx.compose.ui.input.pointer.PointerEventType()
+RemovedMethod: androidx.compose.ui.input.pointer.PointerId#PointerId():
+    Removed constructor androidx.compose.ui.input.pointer.PointerId()
 RemovedMethod: androidx.compose.ui.input.pointer.PointerInputChange#PointerInputChange(long, long, long, boolean, long, long, boolean, androidx.compose.ui.input.pointer.ConsumedData, int):
     Removed constructor androidx.compose.ui.input.pointer.PointerInputChange(long,long,long,boolean,long,long,boolean,androidx.compose.ui.input.pointer.ConsumedData,int)
+RemovedMethod: androidx.compose.ui.input.pointer.PointerKeyboardModifiers#PointerKeyboardModifiers():
+    Removed constructor androidx.compose.ui.input.pointer.PointerKeyboardModifiers()
+RemovedMethod: androidx.compose.ui.input.pointer.PointerType#PointerType():
+    Removed constructor androidx.compose.ui.input.pointer.PointerType()
+RemovedMethod: androidx.compose.ui.layout.ScaleFactor#ScaleFactor():
+    Removed constructor androidx.compose.ui.layout.ScaleFactor()
+RemovedMethod: androidx.compose.ui.semantics.LiveRegionMode#LiveRegionMode():
+    Removed constructor androidx.compose.ui.semantics.LiveRegionMode()
+RemovedMethod: androidx.compose.ui.semantics.Role#Role():
+    Removed constructor androidx.compose.ui.semantics.Role()
diff --git a/compose/ui/ui/api/current.txt b/compose/ui/ui/api/current.txt
index d651051..f4d18ea 100644
--- a/compose/ui/ui/api/current.txt
+++ b/compose/ui/ui/api/current.txt
@@ -183,10 +183,11 @@
     method @androidx.compose.runtime.Stable public static androidx.compose.ui.Modifier blur(androidx.compose.ui.Modifier, float radius, optional androidx.compose.ui.graphics.Shape edgeTreatment);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class BlurredEdgeTreatment {
-    ctor public BlurredEdgeTreatment();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class BlurredEdgeTreatment {
+    ctor public BlurredEdgeTreatment(androidx.compose.ui.graphics.Shape? shape);
     method public androidx.compose.ui.graphics.Shape? getShape();
     property public final androidx.compose.ui.graphics.Shape? shape;
+    field public static final androidx.compose.ui.draw.BlurredEdgeTreatment.Companion Companion;
   }
 
   public static final class BlurredEdgeTreatment.Companion {
@@ -266,8 +267,8 @@
     method public static androidx.compose.ui.Modifier onFocusChanged(androidx.compose.ui.Modifier, kotlin.jvm.functions.Function1<? super androidx.compose.ui.focus.FocusState,kotlin.Unit> onFocusChanged);
   }
 
-  public final inline class FocusDirection {
-    ctor public FocusDirection();
+  @kotlin.jvm.JvmInline public final value class FocusDirection {
+    field public static final androidx.compose.ui.focus.FocusDirection.Companion Companion;
   }
 
   public static final class FocusDirection.Companion {
@@ -498,10 +499,15 @@
     field public static final float DefaultCameraDistance = 8.0f;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class TransformOrigin {
-    ctor public TransformOrigin();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class TransformOrigin {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float pivotFractionX, optional float pivotFractionY);
+    method public float getPivotFractionX();
+    method public float getPivotFractionY();
+    property public final float pivotFractionX;
+    property public final float pivotFractionY;
+    field public static final androidx.compose.ui.graphics.TransformOrigin.Companion Companion;
   }
 
   public static final class TransformOrigin.Companion {
@@ -768,8 +774,9 @@
     method public void performHapticFeedback(int hapticFeedbackType);
   }
 
-  public final inline class HapticFeedbackType {
-    ctor public HapticFeedbackType();
+  @kotlin.jvm.JvmInline public final value class HapticFeedbackType {
+    ctor public HapticFeedbackType(int value);
+    field public static final androidx.compose.ui.hapticfeedback.HapticFeedbackType.Companion Companion;
   }
 
   public static final class HapticFeedbackType.Companion {
@@ -784,8 +791,8 @@
 
 package androidx.compose.ui.input {
 
-  public final inline class InputMode {
-    ctor public InputMode();
+  @kotlin.jvm.JvmInline public final value class InputMode {
+    field public static final androidx.compose.ui.input.InputMode.Companion Companion;
   }
 
   public static final class InputMode.Companion {
@@ -804,10 +811,11 @@
 
 package androidx.compose.ui.input.key {
 
-  public final inline class Key {
-    ctor public Key();
+  @kotlin.jvm.JvmInline public final value class Key {
+    ctor public Key(long keyCode);
     method public long getKeyCode();
     property public final long keyCode;
+    field public static final androidx.compose.ui.input.key.Key.Companion Companion;
   }
 
   public static final class Key.Companion {
@@ -1387,14 +1395,14 @@
     property public final long ZoomOut;
   }
 
-  public final inline class KeyEvent {
-    ctor public KeyEvent();
+  @kotlin.jvm.JvmInline public final value class KeyEvent {
+    ctor public KeyEvent(android.view.KeyEvent nativeKeyEvent);
     method public android.view.KeyEvent getNativeKeyEvent();
     property public final android.view.KeyEvent nativeKeyEvent;
   }
 
-  public final inline class KeyEventType {
-    ctor public KeyEventType();
+  @kotlin.jvm.JvmInline public final value class KeyEventType {
+    field public static final androidx.compose.ui.input.key.KeyEventType.Companion Companion;
   }
 
   public static final class KeyEventType.Companion {
@@ -1454,8 +1462,8 @@
   public final class NestedScrollModifierLocalKt {
   }
 
-  public final inline class NestedScrollSource {
-    ctor public NestedScrollSource();
+  @kotlin.jvm.JvmInline public final value class NestedScrollSource {
+    field public static final androidx.compose.ui.input.nestedscroll.NestedScrollSource.Companion Companion;
   }
 
   public static final class NestedScrollSource.Companion {
@@ -1495,8 +1503,8 @@
     property public final boolean positionChange;
   }
 
-  public final inline class PointerButtons {
-    ctor public PointerButtons();
+  @kotlin.jvm.JvmInline public final value class PointerButtons {
+    ctor public PointerButtons(int packedValue);
   }
 
   public final class PointerEvent {
@@ -1544,8 +1552,8 @@
     ctor public PointerEventTimeoutCancellationException(long time);
   }
 
-  public final inline class PointerEventType {
-    ctor public PointerEventType();
+  @kotlin.jvm.JvmInline public final value class PointerEventType {
+    field public static final androidx.compose.ui.input.pointer.PointerEventType.Companion Companion;
   }
 
   public static final class PointerEventType.Companion {
@@ -1599,8 +1607,8 @@
     method public static androidx.compose.ui.input.pointer.PointerIcon PointerIcon(int pointerIconType);
   }
 
-  public final inline class PointerId {
-    ctor public PointerId();
+  @kotlin.jvm.JvmInline public final value class PointerId {
+    ctor public PointerId(long value);
     method public long getValue();
     property public final long value;
   }
@@ -1672,12 +1680,12 @@
   public final class PointerInteropUtils_androidKt {
   }
 
-  public final inline class PointerKeyboardModifiers {
-    ctor public PointerKeyboardModifiers();
+  @kotlin.jvm.JvmInline public final value class PointerKeyboardModifiers {
+    ctor public PointerKeyboardModifiers(int packedValue);
   }
 
-  public final inline class PointerType {
-    ctor public PointerType();
+  @kotlin.jvm.JvmInline public final value class PointerType {
+    field public static final androidx.compose.ui.input.pointer.PointerType.Companion Companion;
   }
 
   public static final class PointerType.Companion {
@@ -1745,8 +1753,8 @@
     method public boolean requestBeyondBoundsLayout(int direction, kotlin.jvm.functions.Function0<java.lang.Boolean> block);
   }
 
-  public final inline class BeyondBoundsLayoutDirection {
-    ctor public BeyondBoundsLayoutDirection();
+  @kotlin.jvm.JvmInline public final value class BeyondBoundsLayoutDirection {
+    field public static final androidx.compose.ui.layout.BeyondBoundsLayoutDirection.Companion Companion;
   }
 
   public static final class BeyondBoundsLayoutDirection.Companion {
@@ -2040,12 +2048,17 @@
     method public void onRemeasurementAvailable(androidx.compose.ui.layout.Remeasurement remeasurement);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ScaleFactor {
-    ctor public ScaleFactor();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ScaleFactor {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float scaleX, optional float scaleY);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public float getScaleX();
+    method public float getScaleY();
     method @androidx.compose.runtime.Stable public operator long times(float operand);
+    property public final float scaleX;
+    property public final float scaleY;
+    field public static final androidx.compose.ui.layout.ScaleFactor.Companion Companion;
   }
 
   public static final class ScaleFactor.Companion {
@@ -2603,8 +2616,8 @@
     property public final String label;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class LiveRegionMode {
-    ctor public LiveRegionMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class LiveRegionMode {
+    field public static final androidx.compose.ui.semantics.LiveRegionMode.Companion Companion;
   }
 
   public static final class LiveRegionMode.Companion {
@@ -2630,8 +2643,8 @@
     property public final androidx.compose.ui.semantics.ProgressBarRangeInfo Indeterminate;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Role {
-    ctor public Role();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Role {
+    field public static final androidx.compose.ui.semantics.Role.Companion Companion;
   }
 
   public static final class Role.Companion {
diff --git a/compose/ui/ui/api/public_plus_experimental_current.txt b/compose/ui/ui/api/public_plus_experimental_current.txt
index d16540e..92b0072 100644
--- a/compose/ui/ui/api/public_plus_experimental_current.txt
+++ b/compose/ui/ui/api/public_plus_experimental_current.txt
@@ -258,10 +258,11 @@
     method @androidx.compose.runtime.Stable public static androidx.compose.ui.Modifier blur(androidx.compose.ui.Modifier, float radius, optional androidx.compose.ui.graphics.Shape edgeTreatment);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class BlurredEdgeTreatment {
-    ctor public BlurredEdgeTreatment();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class BlurredEdgeTreatment {
+    ctor public BlurredEdgeTreatment(androidx.compose.ui.graphics.Shape? shape);
     method public androidx.compose.ui.graphics.Shape? getShape();
     property public final androidx.compose.ui.graphics.Shape? shape;
+    field public static final androidx.compose.ui.draw.BlurredEdgeTreatment.Companion Companion;
   }
 
   public static final class BlurredEdgeTreatment.Companion {
@@ -341,8 +342,8 @@
     method public static androidx.compose.ui.Modifier onFocusChanged(androidx.compose.ui.Modifier, kotlin.jvm.functions.Function1<? super androidx.compose.ui.focus.FocusState,kotlin.Unit> onFocusChanged);
   }
 
-  public final inline class FocusDirection {
-    ctor public FocusDirection();
+  @kotlin.jvm.JvmInline public final value class FocusDirection {
+    field public static final androidx.compose.ui.focus.FocusDirection.Companion Companion;
   }
 
   public static final class FocusDirection.Companion {
@@ -594,10 +595,15 @@
     field public static final float DefaultCameraDistance = 8.0f;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class TransformOrigin {
-    ctor public TransformOrigin();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class TransformOrigin {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float pivotFractionX, optional float pivotFractionY);
+    method public float getPivotFractionX();
+    method public float getPivotFractionY();
+    property public final float pivotFractionX;
+    property public final float pivotFractionY;
+    field public static final androidx.compose.ui.graphics.TransformOrigin.Companion Companion;
   }
 
   public static final class TransformOrigin.Companion {
@@ -864,8 +870,9 @@
     method public void performHapticFeedback(int hapticFeedbackType);
   }
 
-  public final inline class HapticFeedbackType {
-    ctor public HapticFeedbackType();
+  @kotlin.jvm.JvmInline public final value class HapticFeedbackType {
+    ctor public HapticFeedbackType(int value);
+    field public static final androidx.compose.ui.hapticfeedback.HapticFeedbackType.Companion Companion;
   }
 
   public static final class HapticFeedbackType.Companion {
@@ -880,8 +887,8 @@
 
 package androidx.compose.ui.input {
 
-  public final inline class InputMode {
-    ctor public InputMode();
+  @kotlin.jvm.JvmInline public final value class InputMode {
+    field public static final androidx.compose.ui.input.InputMode.Companion Companion;
   }
 
   public static final class InputMode.Companion {
@@ -901,10 +908,11 @@
 
 package androidx.compose.ui.input.key {
 
-  public final inline class Key {
-    ctor public Key();
+  @kotlin.jvm.JvmInline public final value class Key {
+    ctor public Key(long keyCode);
     method public long getKeyCode();
     property public final long keyCode;
+    field public static final androidx.compose.ui.input.key.Key.Companion Companion;
   }
 
   public static final class Key.Companion {
@@ -1484,14 +1492,14 @@
     property public final long ZoomOut;
   }
 
-  public final inline class KeyEvent {
-    ctor public KeyEvent();
+  @kotlin.jvm.JvmInline public final value class KeyEvent {
+    ctor public KeyEvent(android.view.KeyEvent nativeKeyEvent);
     method public android.view.KeyEvent getNativeKeyEvent();
     property public final android.view.KeyEvent nativeKeyEvent;
   }
 
-  public final inline class KeyEventType {
-    ctor public KeyEventType();
+  @kotlin.jvm.JvmInline public final value class KeyEventType {
+    field public static final androidx.compose.ui.input.key.KeyEventType.Companion Companion;
   }
 
   public static final class KeyEventType.Companion {
@@ -1551,8 +1559,8 @@
   public final class NestedScrollModifierLocalKt {
   }
 
-  public final inline class NestedScrollSource {
-    ctor public NestedScrollSource();
+  @kotlin.jvm.JvmInline public final value class NestedScrollSource {
+    field public static final androidx.compose.ui.input.nestedscroll.NestedScrollSource.Companion Companion;
   }
 
   public static final class NestedScrollSource.Companion {
@@ -1600,8 +1608,8 @@
     property public final long uptimeMillis;
   }
 
-  public final inline class PointerButtons {
-    ctor public PointerButtons();
+  @kotlin.jvm.JvmInline public final value class PointerButtons {
+    ctor public PointerButtons(int packedValue);
   }
 
   public final class PointerEvent {
@@ -1649,8 +1657,8 @@
     ctor public PointerEventTimeoutCancellationException(long time);
   }
 
-  public final inline class PointerEventType {
-    ctor public PointerEventType();
+  @kotlin.jvm.JvmInline public final value class PointerEventType {
+    field public static final androidx.compose.ui.input.pointer.PointerEventType.Companion Companion;
   }
 
   public static final class PointerEventType.Companion {
@@ -1716,8 +1724,8 @@
     method public static androidx.compose.ui.input.pointer.PointerIcon PointerIcon(int pointerIconType);
   }
 
-  public final inline class PointerId {
-    ctor public PointerId();
+  @kotlin.jvm.JvmInline public final value class PointerId {
+    ctor public PointerId(long value);
     method public long getValue();
     property public final long value;
   }
@@ -1799,12 +1807,12 @@
   public final class PointerInteropUtils_androidKt {
   }
 
-  public final inline class PointerKeyboardModifiers {
-    ctor public PointerKeyboardModifiers();
+  @kotlin.jvm.JvmInline public final value class PointerKeyboardModifiers {
+    ctor public PointerKeyboardModifiers(int packedValue);
   }
 
-  public final inline class PointerType {
-    ctor public PointerType();
+  @kotlin.jvm.JvmInline public final value class PointerType {
+    field public static final androidx.compose.ui.input.pointer.PointerType.Companion Companion;
   }
 
   public static final class PointerType.Companion {
@@ -1888,8 +1896,8 @@
     method public boolean requestBeyondBoundsLayout(int direction, kotlin.jvm.functions.Function0<java.lang.Boolean> block);
   }
 
-  public final inline class BeyondBoundsLayoutDirection {
-    ctor public BeyondBoundsLayoutDirection();
+  @kotlin.jvm.JvmInline public final value class BeyondBoundsLayoutDirection {
+    field public static final androidx.compose.ui.layout.BeyondBoundsLayoutDirection.Companion Companion;
   }
 
   public static final class BeyondBoundsLayoutDirection.Companion {
@@ -2195,12 +2203,17 @@
     method public void onRemeasurementAvailable(androidx.compose.ui.layout.Remeasurement remeasurement);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ScaleFactor {
-    ctor public ScaleFactor();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ScaleFactor {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float scaleX, optional float scaleY);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public float getScaleX();
+    method public float getScaleY();
     method @androidx.compose.runtime.Stable public operator long times(float operand);
+    property public final float scaleX;
+    property public final float scaleY;
+    field public static final androidx.compose.ui.layout.ScaleFactor.Companion Companion;
   }
 
   public static final class ScaleFactor.Companion {
@@ -2799,8 +2812,8 @@
     property public final String label;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class LiveRegionMode {
-    ctor public LiveRegionMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class LiveRegionMode {
+    field public static final androidx.compose.ui.semantics.LiveRegionMode.Companion Companion;
   }
 
   public static final class LiveRegionMode.Companion {
@@ -2826,8 +2839,8 @@
     property public final androidx.compose.ui.semantics.ProgressBarRangeInfo Indeterminate;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Role {
-    ctor public Role();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Role {
+    field public static final androidx.compose.ui.semantics.Role.Companion Companion;
   }
 
   public static final class Role.Companion {
diff --git a/compose/ui/ui/api/restricted_current.ignore b/compose/ui/ui/api/restricted_current.ignore
index 8b7ef31..e77ec14 100644
--- a/compose/ui/ui/api/restricted_current.ignore
+++ b/compose/ui/ui/api/restricted_current.ignore
@@ -15,7 +15,41 @@
     Removed class androidx.compose.ui.platform.TextToolbarKt
 
 
+RemovedMethod: androidx.compose.ui.draw.BlurredEdgeTreatment#BlurredEdgeTreatment():
+    Removed constructor androidx.compose.ui.draw.BlurredEdgeTreatment()
+RemovedMethod: androidx.compose.ui.focus.FocusDirection#FocusDirection():
+    Removed constructor androidx.compose.ui.focus.FocusDirection()
+RemovedMethod: androidx.compose.ui.graphics.TransformOrigin#TransformOrigin():
+    Removed constructor androidx.compose.ui.graphics.TransformOrigin()
 RemovedMethod: androidx.compose.ui.graphics.vector.ImageVector.Builder#Builder(String, float, float, float, float, long, int):
     Removed constructor androidx.compose.ui.graphics.vector.ImageVector.Builder(String,float,float,float,float,long,int)
+RemovedMethod: androidx.compose.ui.hapticfeedback.HapticFeedbackType#HapticFeedbackType():
+    Removed constructor androidx.compose.ui.hapticfeedback.HapticFeedbackType()
+RemovedMethod: androidx.compose.ui.input.InputMode#InputMode():
+    Removed constructor androidx.compose.ui.input.InputMode()
+RemovedMethod: androidx.compose.ui.input.key.Key#Key():
+    Removed constructor androidx.compose.ui.input.key.Key()
+RemovedMethod: androidx.compose.ui.input.key.KeyEvent#KeyEvent():
+    Removed constructor androidx.compose.ui.input.key.KeyEvent()
+RemovedMethod: androidx.compose.ui.input.key.KeyEventType#KeyEventType():
+    Removed constructor androidx.compose.ui.input.key.KeyEventType()
+RemovedMethod: androidx.compose.ui.input.nestedscroll.NestedScrollSource#NestedScrollSource():
+    Removed constructor androidx.compose.ui.input.nestedscroll.NestedScrollSource()
+RemovedMethod: androidx.compose.ui.input.pointer.PointerButtons#PointerButtons():
+    Removed constructor androidx.compose.ui.input.pointer.PointerButtons()
+RemovedMethod: androidx.compose.ui.input.pointer.PointerEventType#PointerEventType():
+    Removed constructor androidx.compose.ui.input.pointer.PointerEventType()
+RemovedMethod: androidx.compose.ui.input.pointer.PointerId#PointerId():
+    Removed constructor androidx.compose.ui.input.pointer.PointerId()
 RemovedMethod: androidx.compose.ui.input.pointer.PointerInputChange#PointerInputChange(long, long, long, boolean, long, long, boolean, androidx.compose.ui.input.pointer.ConsumedData, int):
     Removed constructor androidx.compose.ui.input.pointer.PointerInputChange(long,long,long,boolean,long,long,boolean,androidx.compose.ui.input.pointer.ConsumedData,int)
+RemovedMethod: androidx.compose.ui.input.pointer.PointerKeyboardModifiers#PointerKeyboardModifiers():
+    Removed constructor androidx.compose.ui.input.pointer.PointerKeyboardModifiers()
+RemovedMethod: androidx.compose.ui.input.pointer.PointerType#PointerType():
+    Removed constructor androidx.compose.ui.input.pointer.PointerType()
+RemovedMethod: androidx.compose.ui.layout.ScaleFactor#ScaleFactor():
+    Removed constructor androidx.compose.ui.layout.ScaleFactor()
+RemovedMethod: androidx.compose.ui.semantics.LiveRegionMode#LiveRegionMode():
+    Removed constructor androidx.compose.ui.semantics.LiveRegionMode()
+RemovedMethod: androidx.compose.ui.semantics.Role#Role():
+    Removed constructor androidx.compose.ui.semantics.Role()
diff --git a/compose/ui/ui/api/restricted_current.txt b/compose/ui/ui/api/restricted_current.txt
index 2869bfd..01453aa 100644
--- a/compose/ui/ui/api/restricted_current.txt
+++ b/compose/ui/ui/api/restricted_current.txt
@@ -183,10 +183,11 @@
     method @androidx.compose.runtime.Stable public static androidx.compose.ui.Modifier blur(androidx.compose.ui.Modifier, float radius, optional androidx.compose.ui.graphics.Shape edgeTreatment);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class BlurredEdgeTreatment {
-    ctor public BlurredEdgeTreatment();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class BlurredEdgeTreatment {
+    ctor public BlurredEdgeTreatment(androidx.compose.ui.graphics.Shape? shape);
     method public androidx.compose.ui.graphics.Shape? getShape();
     property public final androidx.compose.ui.graphics.Shape? shape;
+    field public static final androidx.compose.ui.draw.BlurredEdgeTreatment.Companion Companion;
   }
 
   public static final class BlurredEdgeTreatment.Companion {
@@ -266,8 +267,8 @@
     method public static androidx.compose.ui.Modifier onFocusChanged(androidx.compose.ui.Modifier, kotlin.jvm.functions.Function1<? super androidx.compose.ui.focus.FocusState,kotlin.Unit> onFocusChanged);
   }
 
-  public final inline class FocusDirection {
-    ctor public FocusDirection();
+  @kotlin.jvm.JvmInline public final value class FocusDirection {
+    field public static final androidx.compose.ui.focus.FocusDirection.Companion Companion;
   }
 
   public static final class FocusDirection.Companion {
@@ -498,10 +499,15 @@
     field public static final float DefaultCameraDistance = 8.0f;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class TransformOrigin {
-    ctor public TransformOrigin();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class TransformOrigin {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float pivotFractionX, optional float pivotFractionY);
+    method public float getPivotFractionX();
+    method public float getPivotFractionY();
+    property public final float pivotFractionX;
+    property public final float pivotFractionY;
+    field public static final androidx.compose.ui.graphics.TransformOrigin.Companion Companion;
   }
 
   public static final class TransformOrigin.Companion {
@@ -768,8 +774,9 @@
     method public void performHapticFeedback(int hapticFeedbackType);
   }
 
-  public final inline class HapticFeedbackType {
-    ctor public HapticFeedbackType();
+  @kotlin.jvm.JvmInline public final value class HapticFeedbackType {
+    ctor public HapticFeedbackType(int value);
+    field public static final androidx.compose.ui.hapticfeedback.HapticFeedbackType.Companion Companion;
   }
 
   public static final class HapticFeedbackType.Companion {
@@ -784,8 +791,8 @@
 
 package androidx.compose.ui.input {
 
-  public final inline class InputMode {
-    ctor public InputMode();
+  @kotlin.jvm.JvmInline public final value class InputMode {
+    field public static final androidx.compose.ui.input.InputMode.Companion Companion;
   }
 
   public static final class InputMode.Companion {
@@ -804,10 +811,11 @@
 
 package androidx.compose.ui.input.key {
 
-  public final inline class Key {
-    ctor public Key();
+  @kotlin.jvm.JvmInline public final value class Key {
+    ctor public Key(long keyCode);
     method public long getKeyCode();
     property public final long keyCode;
+    field public static final androidx.compose.ui.input.key.Key.Companion Companion;
   }
 
   public static final class Key.Companion {
@@ -1387,14 +1395,14 @@
     property public final long ZoomOut;
   }
 
-  public final inline class KeyEvent {
-    ctor public KeyEvent();
+  @kotlin.jvm.JvmInline public final value class KeyEvent {
+    ctor public KeyEvent(android.view.KeyEvent nativeKeyEvent);
     method public android.view.KeyEvent getNativeKeyEvent();
     property public final android.view.KeyEvent nativeKeyEvent;
   }
 
-  public final inline class KeyEventType {
-    ctor public KeyEventType();
+  @kotlin.jvm.JvmInline public final value class KeyEventType {
+    field public static final androidx.compose.ui.input.key.KeyEventType.Companion Companion;
   }
 
   public static final class KeyEventType.Companion {
@@ -1454,8 +1462,8 @@
   public final class NestedScrollModifierLocalKt {
   }
 
-  public final inline class NestedScrollSource {
-    ctor public NestedScrollSource();
+  @kotlin.jvm.JvmInline public final value class NestedScrollSource {
+    field public static final androidx.compose.ui.input.nestedscroll.NestedScrollSource.Companion Companion;
   }
 
   public static final class NestedScrollSource.Companion {
@@ -1495,8 +1503,8 @@
     property public final boolean positionChange;
   }
 
-  public final inline class PointerButtons {
-    ctor public PointerButtons();
+  @kotlin.jvm.JvmInline public final value class PointerButtons {
+    ctor public PointerButtons(int packedValue);
   }
 
   public final class PointerEvent {
@@ -1544,8 +1552,8 @@
     ctor public PointerEventTimeoutCancellationException(long time);
   }
 
-  public final inline class PointerEventType {
-    ctor public PointerEventType();
+  @kotlin.jvm.JvmInline public final value class PointerEventType {
+    field public static final androidx.compose.ui.input.pointer.PointerEventType.Companion Companion;
   }
 
   public static final class PointerEventType.Companion {
@@ -1599,8 +1607,8 @@
     method public static androidx.compose.ui.input.pointer.PointerIcon PointerIcon(int pointerIconType);
   }
 
-  public final inline class PointerId {
-    ctor public PointerId();
+  @kotlin.jvm.JvmInline public final value class PointerId {
+    ctor public PointerId(long value);
     method public long getValue();
     property public final long value;
   }
@@ -1672,12 +1680,12 @@
   public final class PointerInteropUtils_androidKt {
   }
 
-  public final inline class PointerKeyboardModifiers {
-    ctor public PointerKeyboardModifiers();
+  @kotlin.jvm.JvmInline public final value class PointerKeyboardModifiers {
+    ctor public PointerKeyboardModifiers(int packedValue);
   }
 
-  public final inline class PointerType {
-    ctor public PointerType();
+  @kotlin.jvm.JvmInline public final value class PointerType {
+    field public static final androidx.compose.ui.input.pointer.PointerType.Companion Companion;
   }
 
   public static final class PointerType.Companion {
@@ -1745,8 +1753,8 @@
     method public boolean requestBeyondBoundsLayout(int direction, kotlin.jvm.functions.Function0<java.lang.Boolean> block);
   }
 
-  public final inline class BeyondBoundsLayoutDirection {
-    ctor public BeyondBoundsLayoutDirection();
+  @kotlin.jvm.JvmInline public final value class BeyondBoundsLayoutDirection {
+    field public static final androidx.compose.ui.layout.BeyondBoundsLayoutDirection.Companion Companion;
   }
 
   public static final class BeyondBoundsLayoutDirection.Companion {
@@ -2041,12 +2049,17 @@
     method public void onRemeasurementAvailable(androidx.compose.ui.layout.Remeasurement remeasurement);
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ScaleFactor {
-    ctor public ScaleFactor();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ScaleFactor {
     method @androidx.compose.runtime.Stable public inline operator float component1();
     method @androidx.compose.runtime.Stable public inline operator float component2();
+    method public long copy(optional float scaleX, optional float scaleY);
     method @androidx.compose.runtime.Stable public operator long div(float operand);
+    method public float getScaleX();
+    method public float getScaleY();
     method @androidx.compose.runtime.Stable public operator long times(float operand);
+    property public final float scaleX;
+    property public final float scaleY;
+    field public static final androidx.compose.ui.layout.ScaleFactor.Companion Companion;
   }
 
   public static final class ScaleFactor.Companion {
@@ -2639,8 +2652,8 @@
     property public final String label;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class LiveRegionMode {
-    ctor public LiveRegionMode();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class LiveRegionMode {
+    field public static final androidx.compose.ui.semantics.LiveRegionMode.Companion Companion;
   }
 
   public static final class LiveRegionMode.Companion {
@@ -2666,8 +2679,8 @@
     property public final androidx.compose.ui.semantics.ProgressBarRangeInfo Indeterminate;
   }
 
-  @androidx.compose.runtime.Immutable public final inline class Role {
-    ctor public Role();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class Role {
+    field public static final androidx.compose.ui.semantics.Role.Companion Companion;
   }
 
   public static final class Role.Companion {
diff --git a/compose/ui/ui/build.gradle b/compose/ui/ui/build.gradle
index 688752c..aa7c3ed 100644
--- a/compose/ui/ui/build.gradle
+++ b/compose/ui/ui/build.gradle
@@ -252,8 +252,7 @@
 tasks.withType(KotlinCompile).configureEach {
     kotlinOptions {
         freeCompilerArgs += [
-            "-Xopt-in=kotlin.Experimental",
-            "-XXLanguage:+InlineClasses"
+            "-Xopt-in=kotlin.Experimental"
         ]
     }
 }
diff --git a/compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/input/key/Key.android.kt b/compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/input/key/Key.android.kt
index f18af37..1f4a24b 100644
--- a/compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/input/key/Key.android.kt
+++ b/compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/input/key/Key.android.kt
@@ -31,8 +31,8 @@
  *
  * @sample androidx.compose.ui.samples.KeyEventIsAltPressedSample
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-actual inline class Key(val keyCode: Long) {
+@JvmInline
+actual value class Key(val keyCode: Long) {
     actual companion object {
         /** Unknown key. */
         @ExperimentalComposeUiApi
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/draw/Blur.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/draw/Blur.kt
index 04a3a46..a34e0b4 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/draw/Blur.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/draw/Blur.kt
@@ -52,8 +52,8 @@
  * @see TileMode.Decal
 */
 @Immutable
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class BlurredEdgeTreatment(val shape: Shape?) {
[email protected]
+value class BlurredEdgeTreatment(val shape: Shape?) {
 
     companion object {
 
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/focus/FocusTraversal.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/focus/FocusTraversal.kt
index e944d87..424c30b 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/focus/FocusTraversal.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/focus/FocusTraversal.kt
@@ -48,8 +48,8 @@
  *
  * @sample androidx.compose.ui.samples.MoveFocusSample
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class FocusDirection internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class FocusDirection internal constructor(@Suppress("unused") private val value: Int) {
 
     override fun toString(): String {
         return when (this) {
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/graphics/TransformOrigin.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/graphics/TransformOrigin.kt
index 464965d..8780fc5 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/graphics/TransformOrigin.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/graphics/TransformOrigin.kt
@@ -32,9 +32,9 @@
 /**
  * A two-dimensional position represented as a fraction of the Layer's width and height
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class TransformOrigin internal constructor(@PublishedApi internal val packedValue: Long) {
[email protected]
+value class TransformOrigin internal constructor(@PublishedApi internal val packedValue: Long) {
 
     /**
      * Return the position along the x-axis that should be used as the
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/graphics/vector/ImageVector.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/graphics/vector/ImageVector.kt
index 9a84e97..4b48207 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/graphics/vector/ImageVector.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/graphics/vector/ImageVector.kt
@@ -760,14 +760,11 @@
     clearGroup()
 }
 
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-private inline class Stack<T>(private val backing: ArrayList<T> = ArrayList<T>()) {
[email protected]
+private value class Stack<T>(private val backing: ArrayList<T> = ArrayList<T>()) {
     val size: Int get() = backing.size
 
-    fun push(value: T) = backing.add(value)
+    fun push(value: T): Boolean = backing.add(value)
     fun pop(): T = backing.removeAt(size - 1)
     fun peek(): T = backing[size - 1]
-    fun isEmpty() = backing.isEmpty()
-    fun isNotEmpty() = !isEmpty()
-    fun clear() = backing.clear()
 }
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/hapticfeedback/HapticFeedbackType.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/hapticfeedback/HapticFeedbackType.kt
index 45c063a..96607ef 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/hapticfeedback/HapticFeedbackType.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/hapticfeedback/HapticFeedbackType.kt
@@ -20,8 +20,8 @@
  * Constants to be used to perform haptic feedback effects via
  * [HapticFeedback.performHapticFeedback].
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-inline class HapticFeedbackType(internal val value: Int) {
[email protected]
+value class HapticFeedbackType(internal val value: Int) {
 
     override fun toString(): String {
         return when (this) {
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/InputModeManager.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/InputModeManager.kt
index 19f0acf..f6a6fe2 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/InputModeManager.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/InputModeManager.kt
@@ -44,8 +44,8 @@
 /**
  * This value is used to represent the InputMode that the system is currently in.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-inline class InputMode internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class InputMode internal constructor(@Suppress("unused") private val value: Int) {
     override fun toString() = when (this) {
         Touch -> "Touch"
         Keyboard -> "Keyboard"
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/key/Key.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/key/Key.kt
index 9612a0d..be1e081 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/key/Key.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/key/Key.kt
@@ -26,8 +26,8 @@
  *
  * @sample androidx.compose.ui.samples.KeyEventIsAltPressedSample
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-expect inline class Key(val keyCode: Long) {
[email protected]
+expect value class Key(val keyCode: Long) {
     companion object {
         /** Unknown key. */
         @ExperimentalComposeUiApi
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/key/KeyEvent.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/key/KeyEvent.kt
index efd3ce9..450600fa 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/key/KeyEvent.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/key/KeyEvent.kt
@@ -30,8 +30,8 @@
  *
  * @sample androidx.compose.ui.samples.KeyEventSample
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class KeyEvent(val nativeKeyEvent: NativeKeyEvent)
[email protected]
+value class KeyEvent(val nativeKeyEvent: NativeKeyEvent)
 
 /**
  * The key that was pressed.
@@ -98,8 +98,8 @@
  *
  * @sample androidx.compose.ui.samples.KeyEventTypeSample
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class KeyEventType internal constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class KeyEventType internal constructor(@Suppress("unused") private val value: Int) {
 
     override fun toString(): String {
         return when (this) {
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/nestedscroll/NestedScrollModifier.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/nestedscroll/NestedScrollModifier.kt
index d5422cc..ef2668c 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/nestedscroll/NestedScrollModifier.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/nestedscroll/NestedScrollModifier.kt
@@ -219,8 +219,8 @@
 /**
  * Possible sources of scroll events in the [NestedScrollConnection]
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class NestedScrollSource internal constructor(
[email protected]
+value class NestedScrollSource internal constructor(
     @Suppress("unused") private val value: Int
 ) {
     override fun toString(): String {
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/pointer/PointerEvent.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/pointer/PointerEvent.kt
index 81af04f..5c31e5d 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/pointer/PointerEvent.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/pointer/PointerEvent.kt
@@ -14,8 +14,6 @@
  * limitations under the License.
  */
 
-@file:Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-
 package androidx.compose.ui.input.pointer
 
 import androidx.compose.runtime.Immutable
@@ -144,7 +142,8 @@
 /**
  * Contains the state of pointer buttons (e.g. mouse and stylus buttons).
  */
-inline class PointerButtons(internal val packedValue: NativePointerButtons)
[email protected]
+value class PointerButtons(internal val packedValue: NativePointerButtons)
 
 /**
  * `true` when the primary button (left mouse button) is pressed or `false` when
@@ -205,7 +204,8 @@
  * Contains the state of modifier keys, such as Shift, Control, and Alt, as well as the state
  * of the lock keys, such as Caps Lock and Num Lock.
  */
-inline class PointerKeyboardModifiers(internal val packedValue: NativePointerKeyboardModifiers)
[email protected]
+value class PointerKeyboardModifiers(internal val packedValue: NativePointerKeyboardModifiers)
 
 /**
  * `true` when the Control key is pressed.
@@ -262,7 +262,8 @@
 /**
  * The device type that produces a [PointerInputChange], such as a mouse or stylus.
  */
-inline class PointerType private constructor(private val value: Int) {
[email protected]
+value class PointerType private constructor(private val value: Int) {
 
     override fun toString(): String = when (value) {
         1 -> "Touch"
@@ -303,7 +304,8 @@
 /**
  * Indicates the primary reason that the [PointerEvent] was sent.
  */
-inline class PointerEventType private constructor(internal val value: Int) {
[email protected]
+value class PointerEventType private constructor(internal val value: Int) {
     companion object {
         /**
          * An unknown reason for the event.
@@ -636,7 +638,8 @@
  *
  * @param value The actual value of the id.
  */
-inline class PointerId(val value: Long)
[email protected]
+value class PointerId(val value: Long)
 
 /**
  * Describes what aspects of a change has been consumed.
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/pointer/PointerInputEventProcessor.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/pointer/PointerInputEventProcessor.kt
index 20cf960..15a0db5 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/pointer/PointerInputEventProcessor.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/input/pointer/PointerInputEventProcessor.kt
@@ -184,8 +184,8 @@
  * The result of a call to [PointerInputEventProcessor.process].
  */
 // TODO(shepshpard): Not sure if storing these values in a int is most efficient overall.
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-internal inline class ProcessResult(private val value: Int) {
[email protected]
+internal value class ProcessResult(private val value: Int) {
     val dispatchedToAPointerInputModifier
         get() = (value and 1) != 0
 
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/layout/BeyondBoundsLayout.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/layout/BeyondBoundsLayout.kt
index 47fd3f9..e67ec90 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/layout/BeyondBoundsLayout.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/layout/BeyondBoundsLayout.kt
@@ -71,8 +71,8 @@
  * The direction (from the visible bounds) that a [BeyondBoundsLayout] is requesting more
  * items to be laid.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-inline class BeyondBoundsLayoutDirection internal constructor(
[email protected]
+value class BeyondBoundsLayoutDirection internal constructor(
     @Suppress("unused") private val value: Int
 ) {
     companion object {
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/layout/ScaleFactor.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/layout/ScaleFactor.kt
index 9bec925..7ea18cd 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/layout/ScaleFactor.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/layout/ScaleFactor.kt
@@ -33,9 +33,9 @@
 /**
  * Holds 2 dimensional scaling factors for horizontal and vertical axes
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
 @Immutable
-inline class ScaleFactor internal constructor(@PublishedApi internal val packedValue: Long) {
[email protected]
+value class ScaleFactor internal constructor(@PublishedApi internal val packedValue: Long) {
 
     /**
      * Returns the scale factor to apply along the horizontal axis
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/HitTestResult.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/HitTestResult.kt
index b58a9fa..b51bb7e 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/HitTestResult.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/HitTestResult.kt
@@ -314,8 +314,8 @@
     }
 }
 
-@Suppress("INLINE_CLASS_DEPRECATED")
-private inline class DistanceAndInLayer(val packedValue: Long) {
[email protected]
+private value class DistanceAndInLayer(val packedValue: Long) {
     val distance: Float
         get() = unpackFloat1(packedValue)
 
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/semantics/SemanticsProperties.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/semantics/SemanticsProperties.kt
index d81666e..ffa0283 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/semantics/SemanticsProperties.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/semantics/SemanticsProperties.kt
@@ -549,9 +549,9 @@
  * exact role is not listed, [SemanticsPropertyReceiver.role] should not be set and the framework
  * will automatically resolve it.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
 @Immutable
-inline class Role private constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class Role private constructor(@Suppress("unused") private val value: Int) {
     companion object {
         /**
          * This element is a button control. Associated semantics properties for accessibility:
@@ -608,9 +608,9 @@
  * automatically notify the user about changes to the node's content description or text, or to
  * the content descriptions or text of the node's children (where applicable).
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
 @Immutable
-inline class LiveRegionMode private constructor(@Suppress("unused") private val value: Int) {
[email protected]
+value class LiveRegionMode private constructor(@Suppress("unused") private val value: Int) {
     companion object {
         /**
          * Live region mode specifying that accessibility services should announce
diff --git a/compose/ui/ui/src/desktopMain/kotlin/androidx/compose/ui/input/key/Key.desktop.kt b/compose/ui/ui/src/desktopMain/kotlin/androidx/compose/ui/input/key/Key.desktop.kt
index 587604e..62b33a2 100644
--- a/compose/ui/ui/src/desktopMain/kotlin/androidx/compose/ui/input/key/Key.desktop.kt
+++ b/compose/ui/ui/src/desktopMain/kotlin/androidx/compose/ui/input/key/Key.desktop.kt
@@ -33,8 +33,8 @@
  * @param keyCode an integer code representing the key pressed. Note: This keycode can be used to
  * uniquely identify a hardware key. It is different from the native keycode.
  */
-@Suppress("INLINE_CLASS_DEPRECATED", "EXPERIMENTAL_FEATURE_WARNING")
-actual inline class Key(val keyCode: Long) {
+@JvmInline
+actual value class Key(val keyCode: Long) {
     actual companion object {
         /** Unknown key. */
         @ExperimentalComposeUiApi
diff --git a/development/build_log_simplifier/messages.ignore b/development/build_log_simplifier/messages.ignore
index 37570b6..cb27c92 100644
--- a/development/build_log_simplifier/messages.ignore
+++ b/development/build_log_simplifier/messages.ignore
@@ -326,8 +326,6 @@
 This mode is not recommended for production use\,
 as no stability\/compatibility guarantees are given on
 compiler or generated code\. Use it at your own risk\!
-# > Task :compose:ui:ui-util:compileReleaseKotlin
-\-XXLanguage\:\+InlineClasses
 # > Task :docs-public:lintDebug
 Wrote HTML report to file://\$OUT_DIR/androidx/docs\-public/build/reports/lint\-results\-debug\.html
 # > Task :camera:camera-core:compileDebugJavaWithJavac
diff --git a/glance/glance-wear-tiles/api/current.txt b/glance/glance-wear-tiles/api/current.txt
index 6861739..697752e 100644
--- a/glance/glance-wear-tiles/api/current.txt
+++ b/glance/glance-wear-tiles/api/current.txt
@@ -79,8 +79,8 @@
 
 package androidx.glance.wear.tiles.curved {
 
-  public final inline class AnchorType {
-    ctor public AnchorType();
+  @kotlin.jvm.JvmInline public final value class AnchorType {
+    field public static final androidx.glance.wear.tiles.curved.AnchorType.Companion Companion;
   }
 
   public static final class AnchorType.Companion {
@@ -158,8 +158,8 @@
     method public static androidx.glance.wear.tiles.curved.GlanceCurvedModifier thickness(androidx.glance.wear.tiles.curved.GlanceCurvedModifier, float thickness);
   }
 
-  public final inline class RadialAlignment {
-    ctor public RadialAlignment();
+  @kotlin.jvm.JvmInline public final value class RadialAlignment {
+    field public static final androidx.glance.wear.tiles.curved.RadialAlignment.Companion Companion;
   }
 
   public static final class RadialAlignment.Companion {
diff --git a/glance/glance-wear-tiles/api/public_plus_experimental_current.txt b/glance/glance-wear-tiles/api/public_plus_experimental_current.txt
index 6861739..697752e 100644
--- a/glance/glance-wear-tiles/api/public_plus_experimental_current.txt
+++ b/glance/glance-wear-tiles/api/public_plus_experimental_current.txt
@@ -79,8 +79,8 @@
 
 package androidx.glance.wear.tiles.curved {
 
-  public final inline class AnchorType {
-    ctor public AnchorType();
+  @kotlin.jvm.JvmInline public final value class AnchorType {
+    field public static final androidx.glance.wear.tiles.curved.AnchorType.Companion Companion;
   }
 
   public static final class AnchorType.Companion {
@@ -158,8 +158,8 @@
     method public static androidx.glance.wear.tiles.curved.GlanceCurvedModifier thickness(androidx.glance.wear.tiles.curved.GlanceCurvedModifier, float thickness);
   }
 
-  public final inline class RadialAlignment {
-    ctor public RadialAlignment();
+  @kotlin.jvm.JvmInline public final value class RadialAlignment {
+    field public static final androidx.glance.wear.tiles.curved.RadialAlignment.Companion Companion;
   }
 
   public static final class RadialAlignment.Companion {
diff --git a/glance/glance-wear-tiles/api/restricted_current.txt b/glance/glance-wear-tiles/api/restricted_current.txt
index 6861739..697752e 100644
--- a/glance/glance-wear-tiles/api/restricted_current.txt
+++ b/glance/glance-wear-tiles/api/restricted_current.txt
@@ -79,8 +79,8 @@
 
 package androidx.glance.wear.tiles.curved {
 
-  public final inline class AnchorType {
-    ctor public AnchorType();
+  @kotlin.jvm.JvmInline public final value class AnchorType {
+    field public static final androidx.glance.wear.tiles.curved.AnchorType.Companion Companion;
   }
 
   public static final class AnchorType.Companion {
@@ -158,8 +158,8 @@
     method public static androidx.glance.wear.tiles.curved.GlanceCurvedModifier thickness(androidx.glance.wear.tiles.curved.GlanceCurvedModifier, float thickness);
   }
 
-  public final inline class RadialAlignment {
-    ctor public RadialAlignment();
+  @kotlin.jvm.JvmInline public final value class RadialAlignment {
+    field public static final androidx.glance.wear.tiles.curved.RadialAlignment.Companion Companion;
   }
 
   public static final class RadialAlignment.Companion {
diff --git a/glance/glance-wear-tiles/src/androidMain/kotlin/androidx/glance/wear/tiles/curved/CurvedProperties.kt b/glance/glance-wear-tiles/src/androidMain/kotlin/androidx/glance/wear/tiles/curved/CurvedProperties.kt
index e06e64b..8f06660 100644
--- a/glance/glance-wear-tiles/src/androidMain/kotlin/androidx/glance/wear/tiles/curved/CurvedProperties.kt
+++ b/glance/glance-wear-tiles/src/androidMain/kotlin/androidx/glance/wear/tiles/curved/CurvedProperties.kt
@@ -46,8 +46,8 @@
  *                          Hello World!
  * ```
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-public inline class AnchorType private constructor(private val value: Int) {
+@JvmInline
+public value class AnchorType private constructor(private val value: Int) {
     public companion object {
         /**
          * Anchor at the start of the elements. This will cause elements added to a
@@ -74,8 +74,8 @@
  * How to lay down components when they are thinner than the [CurvedRow]. Similar to vertical
  * alignment in a Row.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-public inline class RadialAlignment private constructor(private val value: Int) {
+@JvmInline
+public value class RadialAlignment private constructor(private val value: Int) {
     companion object {
         /**
          * Put the child closest to the center of the [CurvedRow], within the available space
diff --git a/glance/glance/api/current.txt b/glance/glance/api/current.txt
index 78ce46a..9fd0a83 100644
--- a/glance/glance/api/current.txt
+++ b/glance/glance/api/current.txt
@@ -185,8 +185,8 @@
     property public final androidx.glance.layout.Alignment TopStart;
   }
 
-  public static final inline class Alignment.Horizontal {
-    ctor public Alignment.Horizontal();
+  @kotlin.jvm.JvmInline public static final value class Alignment.Horizontal {
+    field public static final androidx.glance.layout.Alignment.Horizontal.Companion Companion;
   }
 
   public static final class Alignment.Horizontal.Companion {
@@ -198,8 +198,8 @@
     property public final int Start;
   }
 
-  public static final inline class Alignment.Vertical {
-    ctor public Alignment.Vertical();
+  @kotlin.jvm.JvmInline public static final value class Alignment.Vertical {
+    field public static final androidx.glance.layout.Alignment.Vertical.Companion Companion;
   }
 
   public static final class Alignment.Vertical.Companion {
@@ -223,8 +223,9 @@
     method public androidx.glance.GlanceModifier defaultWeight(androidx.glance.GlanceModifier);
   }
 
-  public final inline class ContentScale {
-    ctor public ContentScale();
+  @kotlin.jvm.JvmInline public final value class ContentScale {
+    ctor public ContentScale(int value);
+    field public static final androidx.glance.layout.ContentScale.Companion Companion;
   }
 
   public static final class ContentScale.Companion {
@@ -295,8 +296,8 @@
 
 package androidx.glance.text {
 
-  public final inline class FontStyle {
-    ctor public FontStyle();
+  @kotlin.jvm.JvmInline public final value class FontStyle {
+    field public static final androidx.glance.text.FontStyle.Companion Companion;
   }
 
   public static final class FontStyle.Companion {
@@ -307,10 +308,10 @@
     property public final int Normal;
   }
 
-  public final inline class FontWeight {
-    ctor public FontWeight();
+  @kotlin.jvm.JvmInline public final value class FontWeight {
     method public int getValue();
     property public final int value;
+    field public static final androidx.glance.text.FontWeight.Companion Companion;
   }
 
   public static final class FontWeight.Companion {
@@ -322,8 +323,8 @@
     property public final int Normal;
   }
 
-  public final inline class TextAlign {
-    ctor public TextAlign();
+  @kotlin.jvm.JvmInline public final value class TextAlign {
+    field public static final androidx.glance.text.TextAlign.Companion Companion;
   }
 
   public static final class TextAlign.Companion {
@@ -340,10 +341,10 @@
     property public final int Start;
   }
 
-  public final inline class TextDecoration {
-    ctor public TextDecoration();
+  @kotlin.jvm.JvmInline public final value class TextDecoration {
     method @androidx.compose.runtime.Stable public operator boolean contains(int other);
     method @androidx.compose.runtime.Stable public operator int plus(int decoration);
+    field public static final androidx.glance.text.TextDecoration.Companion Companion;
   }
 
   public static final class TextDecoration.Companion {
diff --git a/glance/glance/api/public_plus_experimental_current.txt b/glance/glance/api/public_plus_experimental_current.txt
index 78ce46a..9fd0a83 100644
--- a/glance/glance/api/public_plus_experimental_current.txt
+++ b/glance/glance/api/public_plus_experimental_current.txt
@@ -185,8 +185,8 @@
     property public final androidx.glance.layout.Alignment TopStart;
   }
 
-  public static final inline class Alignment.Horizontal {
-    ctor public Alignment.Horizontal();
+  @kotlin.jvm.JvmInline public static final value class Alignment.Horizontal {
+    field public static final androidx.glance.layout.Alignment.Horizontal.Companion Companion;
   }
 
   public static final class Alignment.Horizontal.Companion {
@@ -198,8 +198,8 @@
     property public final int Start;
   }
 
-  public static final inline class Alignment.Vertical {
-    ctor public Alignment.Vertical();
+  @kotlin.jvm.JvmInline public static final value class Alignment.Vertical {
+    field public static final androidx.glance.layout.Alignment.Vertical.Companion Companion;
   }
 
   public static final class Alignment.Vertical.Companion {
@@ -223,8 +223,9 @@
     method public androidx.glance.GlanceModifier defaultWeight(androidx.glance.GlanceModifier);
   }
 
-  public final inline class ContentScale {
-    ctor public ContentScale();
+  @kotlin.jvm.JvmInline public final value class ContentScale {
+    ctor public ContentScale(int value);
+    field public static final androidx.glance.layout.ContentScale.Companion Companion;
   }
 
   public static final class ContentScale.Companion {
@@ -295,8 +296,8 @@
 
 package androidx.glance.text {
 
-  public final inline class FontStyle {
-    ctor public FontStyle();
+  @kotlin.jvm.JvmInline public final value class FontStyle {
+    field public static final androidx.glance.text.FontStyle.Companion Companion;
   }
 
   public static final class FontStyle.Companion {
@@ -307,10 +308,10 @@
     property public final int Normal;
   }
 
-  public final inline class FontWeight {
-    ctor public FontWeight();
+  @kotlin.jvm.JvmInline public final value class FontWeight {
     method public int getValue();
     property public final int value;
+    field public static final androidx.glance.text.FontWeight.Companion Companion;
   }
 
   public static final class FontWeight.Companion {
@@ -322,8 +323,8 @@
     property public final int Normal;
   }
 
-  public final inline class TextAlign {
-    ctor public TextAlign();
+  @kotlin.jvm.JvmInline public final value class TextAlign {
+    field public static final androidx.glance.text.TextAlign.Companion Companion;
   }
 
   public static final class TextAlign.Companion {
@@ -340,10 +341,10 @@
     property public final int Start;
   }
 
-  public final inline class TextDecoration {
-    ctor public TextDecoration();
+  @kotlin.jvm.JvmInline public final value class TextDecoration {
     method @androidx.compose.runtime.Stable public operator boolean contains(int other);
     method @androidx.compose.runtime.Stable public operator int plus(int decoration);
+    field public static final androidx.glance.text.TextDecoration.Companion Companion;
   }
 
   public static final class TextDecoration.Companion {
diff --git a/glance/glance/api/restricted_current.txt b/glance/glance/api/restricted_current.txt
index 78ce46a..9fd0a83 100644
--- a/glance/glance/api/restricted_current.txt
+++ b/glance/glance/api/restricted_current.txt
@@ -185,8 +185,8 @@
     property public final androidx.glance.layout.Alignment TopStart;
   }
 
-  public static final inline class Alignment.Horizontal {
-    ctor public Alignment.Horizontal();
+  @kotlin.jvm.JvmInline public static final value class Alignment.Horizontal {
+    field public static final androidx.glance.layout.Alignment.Horizontal.Companion Companion;
   }
 
   public static final class Alignment.Horizontal.Companion {
@@ -198,8 +198,8 @@
     property public final int Start;
   }
 
-  public static final inline class Alignment.Vertical {
-    ctor public Alignment.Vertical();
+  @kotlin.jvm.JvmInline public static final value class Alignment.Vertical {
+    field public static final androidx.glance.layout.Alignment.Vertical.Companion Companion;
   }
 
   public static final class Alignment.Vertical.Companion {
@@ -223,8 +223,9 @@
     method public androidx.glance.GlanceModifier defaultWeight(androidx.glance.GlanceModifier);
   }
 
-  public final inline class ContentScale {
-    ctor public ContentScale();
+  @kotlin.jvm.JvmInline public final value class ContentScale {
+    ctor public ContentScale(int value);
+    field public static final androidx.glance.layout.ContentScale.Companion Companion;
   }
 
   public static final class ContentScale.Companion {
@@ -295,8 +296,8 @@
 
 package androidx.glance.text {
 
-  public final inline class FontStyle {
-    ctor public FontStyle();
+  @kotlin.jvm.JvmInline public final value class FontStyle {
+    field public static final androidx.glance.text.FontStyle.Companion Companion;
   }
 
   public static final class FontStyle.Companion {
@@ -307,10 +308,10 @@
     property public final int Normal;
   }
 
-  public final inline class FontWeight {
-    ctor public FontWeight();
+  @kotlin.jvm.JvmInline public final value class FontWeight {
     method public int getValue();
     property public final int value;
+    field public static final androidx.glance.text.FontWeight.Companion Companion;
   }
 
   public static final class FontWeight.Companion {
@@ -322,8 +323,8 @@
     property public final int Normal;
   }
 
-  public final inline class TextAlign {
-    ctor public TextAlign();
+  @kotlin.jvm.JvmInline public final value class TextAlign {
+    field public static final androidx.glance.text.TextAlign.Companion Companion;
   }
 
   public static final class TextAlign.Companion {
@@ -340,10 +341,10 @@
     property public final int Start;
   }
 
-  public final inline class TextDecoration {
-    ctor public TextDecoration();
+  @kotlin.jvm.JvmInline public final value class TextDecoration {
     method @androidx.compose.runtime.Stable public operator boolean contains(int other);
     method @androidx.compose.runtime.Stable public operator int plus(int decoration);
+    field public static final androidx.glance.text.TextDecoration.Companion Companion;
   }
 
   public static final class TextDecoration.Companion {
diff --git a/glance/glance/src/androidMain/kotlin/androidx/glance/layout/Alignment.kt b/glance/glance/src/androidMain/kotlin/androidx/glance/layout/Alignment.kt
index a96eea1..bc4ad05 100644
--- a/glance/glance/src/androidMain/kotlin/androidx/glance/layout/Alignment.kt
+++ b/glance/glance/src/androidMain/kotlin/androidx/glance/layout/Alignment.kt
@@ -26,8 +26,8 @@
      * Specifies how a parent should lay its children out horizontally, if the child has a width
      * smaller than the parent.
      */
-    @Suppress("INLINE_CLASS_DEPRECATED")
-    public inline class Horizontal private constructor(private val value: Int) {
+    @JvmInline
+    public value class Horizontal private constructor(private val value: Int) {
         public companion object {
             public val Start: Horizontal = Horizontal(0)
             public val CenterHorizontally: Horizontal = Horizontal(1)
@@ -39,8 +39,8 @@
      * Specifies how a parent should lay its children out vertically, if the child has a height
      * smaller than the parent.
      */
-    @Suppress("INLINE_CLASS_DEPRECATED")
-    public inline class Vertical private constructor(private val value: Int) {
+    @JvmInline
+    public value class Vertical private constructor(private val value: Int) {
         public companion object {
             public val Top: Vertical = Vertical(0)
             public val CenterVertically: Vertical = Vertical(1)
diff --git a/glance/glance/src/androidMain/kotlin/androidx/glance/layout/ContentScale.kt b/glance/glance/src/androidMain/kotlin/androidx/glance/layout/ContentScale.kt
index 4dc350e..c1e9243 100644
--- a/glance/glance/src/androidMain/kotlin/androidx/glance/layout/ContentScale.kt
+++ b/glance/glance/src/androidMain/kotlin/androidx/glance/layout/ContentScale.kt
@@ -22,8 +22,8 @@
  * Scaling to be used when an element is smaller than its available bounds. Mainly used by
  * [Image] to dictate how the image should be drawn within the [Image] element's bounding box.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-public inline class ContentScale(private val value: Int) {
+@JvmInline
+public value class ContentScale(private val value: Int) {
     public companion object {
         /**
          * Scale the source uniformly (maintaining the source's aspect ratio) so that both
diff --git a/glance/glance/src/androidMain/kotlin/androidx/glance/text/FontStyle.kt b/glance/glance/src/androidMain/kotlin/androidx/glance/text/FontStyle.kt
index 13bdd72..8d184b1 100644
--- a/glance/glance/src/androidMain/kotlin/androidx/glance/text/FontStyle.kt
+++ b/glance/glance/src/androidMain/kotlin/androidx/glance/text/FontStyle.kt
@@ -19,8 +19,8 @@
 /**
  * Describes the style of the font: [Normal]] or [Italic].
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-public inline class FontStyle private constructor(private val style: Int) {
+@JvmInline
+public value class FontStyle private constructor(private val style: Int) {
     public companion object {
         /** Use the upright glyphs */
         public val Normal: FontStyle = FontStyle(0)
diff --git a/glance/glance/src/androidMain/kotlin/androidx/glance/text/FontWeight.kt b/glance/glance/src/androidMain/kotlin/androidx/glance/text/FontWeight.kt
index e12db90..dfed1e4 100644
--- a/glance/glance/src/androidMain/kotlin/androidx/glance/text/FontWeight.kt
+++ b/glance/glance/src/androidMain/kotlin/androidx/glance/text/FontWeight.kt
@@ -19,8 +19,8 @@
 /**
  * Weight of a font.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-public inline class FontWeight private constructor(
+@JvmInline
+public value class FontWeight private constructor(
     /** numerical value for the weight (a number from 0 to 1000) **/
     val value: Int,
 ) {
diff --git a/glance/glance/src/androidMain/kotlin/androidx/glance/text/TextAlign.kt b/glance/glance/src/androidMain/kotlin/androidx/glance/text/TextAlign.kt
index fafe439..9f9cd84 100644
--- a/glance/glance/src/androidMain/kotlin/androidx/glance/text/TextAlign.kt
+++ b/glance/glance/src/androidMain/kotlin/androidx/glance/text/TextAlign.kt
@@ -19,8 +19,8 @@
 /**
  * Defines the alignment of the text in its view.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-public inline class TextAlign internal constructor(private val value: Int) {
+@JvmInline
+public value class TextAlign internal constructor(private val value: Int) {
     override fun toString(): String {
         return when (this) {
             Left -> "Left"
diff --git a/glance/glance/src/androidMain/kotlin/androidx/glance/text/TextDecoration.kt b/glance/glance/src/androidMain/kotlin/androidx/glance/text/TextDecoration.kt
index 00c6722..4779a7e 100644
--- a/glance/glance/src/androidMain/kotlin/androidx/glance/text/TextDecoration.kt
+++ b/glance/glance/src/androidMain/kotlin/androidx/glance/text/TextDecoration.kt
@@ -21,8 +21,8 @@
 /**
  * Defines a horizontal line to be drawn on the text.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-public inline class TextDecoration internal constructor(private val mask: Int) {
+@JvmInline
+public value class TextDecoration internal constructor(private val mask: Int) {
     public companion object {
         public val None: TextDecoration = TextDecoration(0x0)
 
diff --git a/wear/compose/compose-foundation/api/current.txt b/wear/compose/compose-foundation/api/current.txt
index 82a9cbe..b067fae 100644
--- a/wear/compose/compose-foundation/api/current.txt
+++ b/wear/compose/compose-foundation/api/current.txt
@@ -1,8 +1,8 @@
 // Signature format: 4.0
 package androidx.wear.compose.foundation {
 
-  public final inline class AnchorType {
-    ctor public AnchorType();
+  @kotlin.jvm.JvmInline public final value class AnchorType {
+    field public static final androidx.wear.compose.foundation.AnchorType.Companion Companion;
   }
 
   public static final class AnchorType.Companion {
@@ -32,8 +32,8 @@
   public interface CurvedAlignment {
   }
 
-  public static final inline class CurvedAlignment.Angular {
-    ctor public CurvedAlignment.Angular();
+  @kotlin.jvm.JvmInline public static final value class CurvedAlignment.Angular {
+    field public static final androidx.wear.compose.foundation.CurvedAlignment.Angular.Companion Companion;
   }
 
   public static final class CurvedAlignment.Angular.Companion {
@@ -46,8 +46,8 @@
     property public final float Start;
   }
 
-  public static final inline class CurvedAlignment.Radial {
-    ctor public CurvedAlignment.Radial();
+  @kotlin.jvm.JvmInline public static final value class CurvedAlignment.Radial {
+    field public static final androidx.wear.compose.foundation.CurvedAlignment.Radial.Companion Companion;
   }
 
   public static final class CurvedAlignment.Radial.Companion {
diff --git a/wear/compose/compose-foundation/api/public_plus_experimental_current.txt b/wear/compose/compose-foundation/api/public_plus_experimental_current.txt
index 82a9cbe..b067fae 100644
--- a/wear/compose/compose-foundation/api/public_plus_experimental_current.txt
+++ b/wear/compose/compose-foundation/api/public_plus_experimental_current.txt
@@ -1,8 +1,8 @@
 // Signature format: 4.0
 package androidx.wear.compose.foundation {
 
-  public final inline class AnchorType {
-    ctor public AnchorType();
+  @kotlin.jvm.JvmInline public final value class AnchorType {
+    field public static final androidx.wear.compose.foundation.AnchorType.Companion Companion;
   }
 
   public static final class AnchorType.Companion {
@@ -32,8 +32,8 @@
   public interface CurvedAlignment {
   }
 
-  public static final inline class CurvedAlignment.Angular {
-    ctor public CurvedAlignment.Angular();
+  @kotlin.jvm.JvmInline public static final value class CurvedAlignment.Angular {
+    field public static final androidx.wear.compose.foundation.CurvedAlignment.Angular.Companion Companion;
   }
 
   public static final class CurvedAlignment.Angular.Companion {
@@ -46,8 +46,8 @@
     property public final float Start;
   }
 
-  public static final inline class CurvedAlignment.Radial {
-    ctor public CurvedAlignment.Radial();
+  @kotlin.jvm.JvmInline public static final value class CurvedAlignment.Radial {
+    field public static final androidx.wear.compose.foundation.CurvedAlignment.Radial.Companion Companion;
   }
 
   public static final class CurvedAlignment.Radial.Companion {
diff --git a/wear/compose/compose-foundation/api/restricted_current.txt b/wear/compose/compose-foundation/api/restricted_current.txt
index 82a9cbe..b067fae 100644
--- a/wear/compose/compose-foundation/api/restricted_current.txt
+++ b/wear/compose/compose-foundation/api/restricted_current.txt
@@ -1,8 +1,8 @@
 // Signature format: 4.0
 package androidx.wear.compose.foundation {
 
-  public final inline class AnchorType {
-    ctor public AnchorType();
+  @kotlin.jvm.JvmInline public final value class AnchorType {
+    field public static final androidx.wear.compose.foundation.AnchorType.Companion Companion;
   }
 
   public static final class AnchorType.Companion {
@@ -32,8 +32,8 @@
   public interface CurvedAlignment {
   }
 
-  public static final inline class CurvedAlignment.Angular {
-    ctor public CurvedAlignment.Angular();
+  @kotlin.jvm.JvmInline public static final value class CurvedAlignment.Angular {
+    field public static final androidx.wear.compose.foundation.CurvedAlignment.Angular.Companion Companion;
   }
 
   public static final class CurvedAlignment.Angular.Companion {
@@ -46,8 +46,8 @@
     property public final float Start;
   }
 
-  public static final inline class CurvedAlignment.Radial {
-    ctor public CurvedAlignment.Radial();
+  @kotlin.jvm.JvmInline public static final value class CurvedAlignment.Radial {
+    field public static final androidx.wear.compose.foundation.CurvedAlignment.Radial.Companion Companion;
   }
 
   public static final class CurvedAlignment.Radial.Companion {
diff --git a/wear/compose/compose-foundation/src/commonMain/kotlin/androidx/wear/compose/foundation/CurvedAlignment.kt b/wear/compose/compose-foundation/src/commonMain/kotlin/androidx/wear/compose/foundation/CurvedAlignment.kt
index f22b4bf..a440de9 100644
--- a/wear/compose/compose-foundation/src/commonMain/kotlin/androidx/wear/compose/foundation/CurvedAlignment.kt
+++ b/wear/compose/compose-foundation/src/commonMain/kotlin/androidx/wear/compose/foundation/CurvedAlignment.kt
@@ -25,8 +25,8 @@
      * How to lay down components when they are thinner than the container. This is analogue of
      * [Alignment.Vertical] in a [Row].
      */
-    @Suppress("INLINE_CLASS_DEPRECATED")
-    public inline class Radial internal constructor(internal val ratio: Float) {
+    @kotlin.jvm.JvmInline
+    public value class Radial internal constructor(internal val ratio: Float) {
         companion object {
             /**
              * Put the child closest to the center of the container, within the available space
@@ -56,8 +56,8 @@
      * How to lay down components when they have a smaller sweep than their container. This is
      * analogue of [Alignment.Horizontal] in a [Column].
      */
-    @Suppress("INLINE_CLASS_DEPRECATED")
-    public inline class Angular internal constructor(internal val ratio: Float) {
+    @kotlin.jvm.JvmInline
+    public value class Angular internal constructor(internal val ratio: Float) {
         companion object {
             /**
              * Put the child at the angular start of the layout of the container, within the
diff --git a/wear/compose/compose-foundation/src/commonMain/kotlin/androidx/wear/compose/foundation/CurvedLayout.kt b/wear/compose/compose-foundation/src/commonMain/kotlin/androidx/wear/compose/foundation/CurvedLayout.kt
index 85410ee..c9c7ace 100644
--- a/wear/compose/compose-foundation/src/commonMain/kotlin/androidx/wear/compose/foundation/CurvedLayout.kt
+++ b/wear/compose/compose-foundation/src/commonMain/kotlin/androidx/wear/compose/foundation/CurvedLayout.kt
@@ -38,8 +38,8 @@
 /**
  * Specifies how components will be laid down with respect to the anchor.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-public inline class AnchorType internal constructor(internal val ratio: Float) {
[email protected]
+public value class AnchorType internal constructor(internal val ratio: Float) {
     companion object {
         /**
          * Start the content of the [CurvedLayout] on the anchor
diff --git a/wear/compose/compose-material/api/current.txt b/wear/compose/compose-material/api/current.txt
index c6112df..8366b15 100644
--- a/wear/compose/compose-material/api/current.txt
+++ b/wear/compose/compose-material/api/current.txt
@@ -244,8 +244,8 @@
     property public final androidx.compose.runtime.saveable.Saver<androidx.wear.compose.material.PickerState,java.lang.Object> Saver;
   }
 
-  public final inline class PositionIndicatorAlignment {
-    ctor public PositionIndicatorAlignment();
+  @kotlin.jvm.JvmInline public final value class PositionIndicatorAlignment {
+    field public static final androidx.wear.compose.material.PositionIndicatorAlignment.Companion Companion;
   }
 
   public static final class PositionIndicatorAlignment.Companion {
@@ -274,8 +274,8 @@
     property public abstract float positionFraction;
   }
 
-  public final inline class PositionIndicatorVisibility {
-    ctor public PositionIndicatorVisibility();
+  @kotlin.jvm.JvmInline public final value class PositionIndicatorVisibility {
+    field public static final androidx.wear.compose.material.PositionIndicatorVisibility.Companion Companion;
   }
 
   public static final class PositionIndicatorVisibility.Companion {
@@ -327,8 +327,8 @@
   public final class ScalingLazyColumnMeasureKt {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ScalingLazyListAnchorType {
-    ctor public ScalingLazyListAnchorType();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ScalingLazyListAnchorType {
+    field public static final androidx.wear.compose.material.ScalingLazyListAnchorType.Companion Companion;
   }
 
   public static final class ScalingLazyListAnchorType.Companion {
@@ -631,8 +631,9 @@
     method @androidx.compose.runtime.Composable public static void Vignette(int vignettePosition, optional androidx.compose.ui.Modifier modifier);
   }
 
-  public final inline class VignettePosition {
-    ctor public VignettePosition();
+  @kotlin.jvm.JvmInline public final value class VignettePosition {
+    ctor public VignettePosition(int key);
+    field public static final androidx.wear.compose.material.VignettePosition.Companion Companion;
   }
 
   public static final class VignettePosition.Companion {
diff --git a/wear/compose/compose-material/api/public_plus_experimental_current.txt b/wear/compose/compose-material/api/public_plus_experimental_current.txt
index 40f2194..dd4bf51 100644
--- a/wear/compose/compose-material/api/public_plus_experimental_current.txt
+++ b/wear/compose/compose-material/api/public_plus_experimental_current.txt
@@ -259,8 +259,8 @@
     property public final androidx.compose.runtime.saveable.Saver<androidx.wear.compose.material.PickerState,java.lang.Object> Saver;
   }
 
-  public final inline class PositionIndicatorAlignment {
-    ctor public PositionIndicatorAlignment();
+  @kotlin.jvm.JvmInline public final value class PositionIndicatorAlignment {
+    field public static final androidx.wear.compose.material.PositionIndicatorAlignment.Companion Companion;
   }
 
   public static final class PositionIndicatorAlignment.Companion {
@@ -289,8 +289,8 @@
     property public abstract float positionFraction;
   }
 
-  public final inline class PositionIndicatorVisibility {
-    ctor public PositionIndicatorVisibility();
+  @kotlin.jvm.JvmInline public final value class PositionIndicatorVisibility {
+    field public static final androidx.wear.compose.material.PositionIndicatorVisibility.Companion Companion;
   }
 
   public static final class PositionIndicatorVisibility.Companion {
@@ -353,8 +353,8 @@
   public final class ScalingLazyColumnMeasureKt {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ScalingLazyListAnchorType {
-    ctor public ScalingLazyListAnchorType();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ScalingLazyListAnchorType {
+    field public static final androidx.wear.compose.material.ScalingLazyListAnchorType.Companion Companion;
   }
 
   public static final class ScalingLazyListAnchorType.Companion {
@@ -710,8 +710,9 @@
     method @androidx.compose.runtime.Composable public static void Vignette(int vignettePosition, optional androidx.compose.ui.Modifier modifier);
   }
 
-  public final inline class VignettePosition {
-    ctor public VignettePosition();
+  @kotlin.jvm.JvmInline public final value class VignettePosition {
+    ctor public VignettePosition(int key);
+    field public static final androidx.wear.compose.material.VignettePosition.Companion Companion;
   }
 
   public static final class VignettePosition.Companion {
diff --git a/wear/compose/compose-material/api/restricted_current.txt b/wear/compose/compose-material/api/restricted_current.txt
index c6112df..8366b15 100644
--- a/wear/compose/compose-material/api/restricted_current.txt
+++ b/wear/compose/compose-material/api/restricted_current.txt
@@ -244,8 +244,8 @@
     property public final androidx.compose.runtime.saveable.Saver<androidx.wear.compose.material.PickerState,java.lang.Object> Saver;
   }
 
-  public final inline class PositionIndicatorAlignment {
-    ctor public PositionIndicatorAlignment();
+  @kotlin.jvm.JvmInline public final value class PositionIndicatorAlignment {
+    field public static final androidx.wear.compose.material.PositionIndicatorAlignment.Companion Companion;
   }
 
   public static final class PositionIndicatorAlignment.Companion {
@@ -274,8 +274,8 @@
     property public abstract float positionFraction;
   }
 
-  public final inline class PositionIndicatorVisibility {
-    ctor public PositionIndicatorVisibility();
+  @kotlin.jvm.JvmInline public final value class PositionIndicatorVisibility {
+    field public static final androidx.wear.compose.material.PositionIndicatorVisibility.Companion Companion;
   }
 
   public static final class PositionIndicatorVisibility.Companion {
@@ -327,8 +327,8 @@
   public final class ScalingLazyColumnMeasureKt {
   }
 
-  @androidx.compose.runtime.Immutable public final inline class ScalingLazyListAnchorType {
-    ctor public ScalingLazyListAnchorType();
+  @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class ScalingLazyListAnchorType {
+    field public static final androidx.wear.compose.material.ScalingLazyListAnchorType.Companion Companion;
   }
 
   public static final class ScalingLazyListAnchorType.Companion {
@@ -631,8 +631,9 @@
     method @androidx.compose.runtime.Composable public static void Vignette(int vignettePosition, optional androidx.compose.ui.Modifier modifier);
   }
 
-  public final inline class VignettePosition {
-    ctor public VignettePosition();
+  @kotlin.jvm.JvmInline public final value class VignettePosition {
+    ctor public VignettePosition(int key);
+    field public static final androidx.wear.compose.material.VignettePosition.Companion Companion;
   }
 
   public static final class VignettePosition.Companion {
diff --git a/wear/compose/compose-material/src/commonMain/kotlin/androidx/wear/compose/material/PositionIndicator.kt b/wear/compose/compose-material/src/commonMain/kotlin/androidx/wear/compose/material/PositionIndicator.kt
index b71ad40..a51ffca 100644
--- a/wear/compose/compose-material/src/commonMain/kotlin/androidx/wear/compose/material/PositionIndicator.kt
+++ b/wear/compose/compose-material/src/commonMain/kotlin/androidx/wear/compose/material/PositionIndicator.kt
@@ -69,8 +69,8 @@
  * Enum used by adapters to specify if the Position Indicator needs to be shown, hidden,
  * or hidden after a small delay.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-public inline class PositionIndicatorVisibility internal constructor(internal val value: Int) {
[email protected]
+public value class PositionIndicatorVisibility internal constructor(internal val value: Int) {
     companion object {
         /**
          * Show the Position Indicator.
@@ -222,8 +222,8 @@
 /**
  * Specifies where in the screen the Position indicator will be.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-inline class PositionIndicatorAlignment internal constructor(internal val pos: Int) {
[email protected]
+value class PositionIndicatorAlignment internal constructor(internal val pos: Int) {
     companion object {
         /**
          * Position the indicator at the end of the layout (at the right for LTR and left for RTL)
diff --git a/wear/compose/compose-material/src/commonMain/kotlin/androidx/wear/compose/material/ScalingLazyColumn.kt b/wear/compose/compose-material/src/commonMain/kotlin/androidx/wear/compose/material/ScalingLazyColumn.kt
index e53cd95..ee604048 100644
--- a/wear/compose/compose-material/src/commonMain/kotlin/androidx/wear/compose/material/ScalingLazyColumn.kt
+++ b/wear/compose/compose-material/src/commonMain/kotlin/androidx/wear/compose/material/ScalingLazyColumn.kt
@@ -174,9 +174,9 @@
     itemContent(it, items[it])
 }
 
-@Suppress("INLINE_CLASS_DEPRECATED")
 @Immutable
-public inline class ScalingLazyListAnchorType internal constructor(internal val type: Int) {
[email protected]
+public value class ScalingLazyListAnchorType internal constructor(internal val type: Int) {
 
     companion object {
         /**
diff --git a/wear/compose/compose-material/src/commonMain/kotlin/androidx/wear/compose/material/Vignette.kt b/wear/compose/compose-material/src/commonMain/kotlin/androidx/wear/compose/material/Vignette.kt
index 568f715..f33c89e 100644
--- a/wear/compose/compose-material/src/commonMain/kotlin/androidx/wear/compose/material/Vignette.kt
+++ b/wear/compose/compose-material/src/commonMain/kotlin/androidx/wear/compose/material/Vignette.kt
@@ -27,8 +27,8 @@
 /**
  * Possible combinations for vignette state.
  */
-@Suppress("INLINE_CLASS_DEPRECATED")
-public inline class VignettePosition constructor(private val key: Int) {
[email protected]
+public value class VignettePosition constructor(private val key: Int) {
     internal fun drawTop(): Boolean {
         return when (key) {
             1 -> false