1// Signature format: 4.0 2package androidx.compose.material3.adaptive.layout { 3 4 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Stable public sealed interface AdaptStrategy { 5 method @Deprecated public default androidx.compose.material3.adaptive.layout.PaneAdaptedValue adapt(); 6 field public static final androidx.compose.material3.adaptive.layout.AdaptStrategy.Companion Companion; 7 } 8 9 public static final class AdaptStrategy.Companion { 10 method public androidx.compose.material3.adaptive.layout.AdaptStrategy getHide(); 11 property public androidx.compose.material3.adaptive.layout.AdaptStrategy Hide; 12 } 13 14 public static final class AdaptStrategy.Reflow implements androidx.compose.material3.adaptive.layout.AdaptStrategy { 15 ctor public AdaptStrategy.Reflow(Object targetPane); 16 method public Object getTargetPane(); 17 property public Object targetPane; 18 } 19 20 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveComponentOverrideApi public interface AnimatedPaneOverride { 21 method @androidx.compose.runtime.Composable public <S, T extends androidx.compose.material3.adaptive.layout.PaneScaffoldValue<S>> void AnimatedPane(androidx.compose.material3.adaptive.layout.AnimatedPaneOverrideScope<S,T>); 22 } 23 24 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveComponentOverrideApi public final class AnimatedPaneOverrideScope<S, T extends androidx.compose.material3.adaptive.layout.PaneScaffoldValue<S>> { 25 method public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntRect> getBoundsAnimationSpec(); 26 method public kotlin.jvm.functions.Function1<androidx.compose.material3.adaptive.layout.AnimatedPaneScope,kotlin.Unit> getContent(); 27 method public androidx.compose.animation.EnterTransition getEnterTransition(); 28 method public androidx.compose.animation.ExitTransition getExitTransition(); 29 method public androidx.compose.ui.Modifier getModifier(); 30 method public androidx.compose.material3.adaptive.layout.ExtendedPaneScaffoldPaneScope<S,T> getScope(); 31 property public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntRect> boundsAnimationSpec; 32 property public kotlin.jvm.functions.Function1<androidx.compose.material3.adaptive.layout.AnimatedPaneScope,kotlin.Unit> content; 33 property public androidx.compose.animation.EnterTransition enterTransition; 34 property public androidx.compose.animation.ExitTransition exitTransition; 35 property public androidx.compose.ui.Modifier modifier; 36 property public androidx.compose.material3.adaptive.layout.ExtendedPaneScaffoldPaneScope<S,T> scope; 37 } 38 39 public sealed interface AnimatedPaneScope extends androidx.compose.animation.AnimatedVisibilityScope { 40 field public static final androidx.compose.material3.adaptive.layout.AnimatedPaneScope.Companion Companion; 41 } 42 43 public static final class AnimatedPaneScope.Companion { 44 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public androidx.compose.material3.adaptive.layout.AnimatedPaneScope create(androidx.compose.animation.AnimatedVisibilityScope animatedVisibilityScope); 45 } 46 47 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public sealed interface ExtendedPaneScaffoldPaneScope<Role, ScaffoldValue extends androidx.compose.material3.adaptive.layout.PaneScaffoldValue<Role>> extends androidx.compose.material3.adaptive.layout.ExtendedPaneScaffoldScope<Role,ScaffoldValue> androidx.compose.material3.adaptive.layout.PaneScaffoldPaneScope<Role> { 48 } 49 50 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public sealed interface ExtendedPaneScaffoldScope<Role, ScaffoldValue extends androidx.compose.material3.adaptive.layout.PaneScaffoldValue<Role>> extends androidx.compose.material3.adaptive.layout.PaneScaffoldScope androidx.compose.ui.layout.LookaheadScope androidx.compose.material3.adaptive.layout.PaneScaffoldTransitionScope<Role,ScaffoldValue> { 51 } 52 53 @androidx.compose.runtime.Immutable @kotlin.jvm.JvmInline public final value class HingePolicy { 54 field public static final androidx.compose.material3.adaptive.layout.HingePolicy.Companion Companion; 55 } 56 57 public static final class HingePolicy.Companion { 58 method public int getAlwaysAvoid(); 59 method public int getAvoidOccluding(); 60 method public int getAvoidSeparating(); 61 method public int getNeverAvoid(); 62 property public int AlwaysAvoid; 63 property public int AvoidOccluding; 64 property public int AvoidSeparating; 65 property public int NeverAvoid; 66 } 67 68 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public final class ListDetailPaneScaffoldDefaults { 69 method public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldAdaptStrategies adaptStrategies(optional androidx.compose.material3.adaptive.layout.AdaptStrategy detailPaneAdaptStrategy, optional androidx.compose.material3.adaptive.layout.AdaptStrategy listPaneAdaptStrategy, optional androidx.compose.material3.adaptive.layout.AdaptStrategy extraPaneAdaptStrategy); 70 field public static final androidx.compose.material3.adaptive.layout.ListDetailPaneScaffoldDefaults INSTANCE; 71 } 72 73 public final class ListDetailPaneScaffoldKt { 74 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Composable public static void ListDetailPaneScaffold(androidx.compose.material3.adaptive.layout.PaneScaffoldDirective directive, androidx.compose.material3.adaptive.layout.ThreePaneScaffoldState scaffoldState, kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldPaneScope,kotlin.Unit> listPane, kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldPaneScope,kotlin.Unit> detailPane, optional androidx.compose.ui.Modifier modifier, optional kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldPaneScope,kotlin.Unit>? extraPane, optional kotlin.jvm.functions.Function2<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldScope,? super androidx.compose.material3.adaptive.layout.PaneExpansionState,kotlin.Unit>? paneExpansionDragHandle, optional androidx.compose.material3.adaptive.layout.PaneExpansionState? paneExpansionState); 75 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Composable public static void ListDetailPaneScaffold(androidx.compose.material3.adaptive.layout.PaneScaffoldDirective directive, androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue value, kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldPaneScope,kotlin.Unit> listPane, kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldPaneScope,kotlin.Unit> detailPane, optional androidx.compose.ui.Modifier modifier, optional kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldPaneScope,kotlin.Unit>? extraPane, optional kotlin.jvm.functions.Function2<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldScope,? super androidx.compose.material3.adaptive.layout.PaneExpansionState,kotlin.Unit>? paneExpansionDragHandle, optional androidx.compose.material3.adaptive.layout.PaneExpansionState? paneExpansionState); 76 } 77 78 public final class ListDetailPaneScaffoldRole { 79 method public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole getDetail(); 80 method public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole getExtra(); 81 method public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole getList(); 82 property public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole Detail; 83 property public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole Extra; 84 property public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole List; 85 field public static final androidx.compose.material3.adaptive.layout.ListDetailPaneScaffoldRole INSTANCE; 86 } 87 88 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Stable public final class MutableThreePaneScaffoldState extends androidx.compose.material3.adaptive.layout.ThreePaneScaffoldState { 89 ctor public MutableThreePaneScaffoldState(androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue initialScaffoldValue); 90 method public suspend Object? animateTo(optional androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue targetState, optional androidx.compose.animation.core.FiniteAnimationSpec<java.lang.Float>? animationSpec, optional boolean isPredictiveBackInProgress, kotlin.coroutines.Continuation<? super kotlin.Unit>); 91 method public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue getCurrentState(); 92 method @FloatRange(from=0.0, to=1.0) public float getProgressFraction(); 93 method public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue getTargetState(); 94 method public boolean isPredictiveBackInProgress(); 95 method public suspend Object? seekTo(@FloatRange(from=0.0, to=1.0) float fraction, optional androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue targetState, optional boolean isPredictiveBackInProgress, kotlin.coroutines.Continuation<? super kotlin.Unit>); 96 method public suspend Object? snapTo(androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue targetState, kotlin.coroutines.Continuation<? super kotlin.Unit>); 97 property public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue currentState; 98 property public boolean isPredictiveBackInProgress; 99 property @FloatRange(from=0.0, to=1.0) public float progressFraction; 100 property public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue targetState; 101 } 102 103 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Stable public sealed interface PaneAdaptedValue { 104 field public static final androidx.compose.material3.adaptive.layout.PaneAdaptedValue.Companion Companion; 105 } 106 107 public static final class PaneAdaptedValue.Companion { 108 method public androidx.compose.material3.adaptive.layout.PaneAdaptedValue getExpanded(); 109 method public androidx.compose.material3.adaptive.layout.PaneAdaptedValue getHidden(); 110 property public androidx.compose.material3.adaptive.layout.PaneAdaptedValue Expanded; 111 property public androidx.compose.material3.adaptive.layout.PaneAdaptedValue Hidden; 112 } 113 114 public static final class PaneAdaptedValue.Reflowed implements androidx.compose.material3.adaptive.layout.PaneAdaptedValue { 115 ctor public PaneAdaptedValue.Reflowed(Object targetPane); 116 method public Object getTargetPane(); 117 property public Object targetPane; 118 } 119 120 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public abstract sealed class PaneExpansionAnchor { 121 method @androidx.compose.runtime.Composable public abstract String getDescription(); 122 property @androidx.compose.runtime.Composable public abstract String description; 123 } 124 125 public abstract static class PaneExpansionAnchor.Offset extends androidx.compose.material3.adaptive.layout.PaneExpansionAnchor { 126 method public final int getDirection(); 127 method public final float getOffset(); 128 property public final int direction; 129 property public final float offset; 130 field public static final androidx.compose.material3.adaptive.layout.PaneExpansionAnchor.Offset.Companion Companion; 131 } 132 133 public static final class PaneExpansionAnchor.Offset.Companion { 134 method public androidx.compose.material3.adaptive.layout.PaneExpansionAnchor.Offset fromEnd(float offset); 135 method public androidx.compose.material3.adaptive.layout.PaneExpansionAnchor.Offset fromStart(float offset); 136 } 137 138 @kotlin.jvm.JvmInline public static final value class PaneExpansionAnchor.Offset.Direction { 139 field public static final androidx.compose.material3.adaptive.layout.PaneExpansionAnchor.Offset.Direction.Companion Companion; 140 } 141 142 public static final class PaneExpansionAnchor.Offset.Direction.Companion { 143 method public int getFromEnd(); 144 method public int getFromStart(); 145 property public int FromEnd; 146 property public int FromStart; 147 } 148 149 public static final class PaneExpansionAnchor.Proportion extends androidx.compose.material3.adaptive.layout.PaneExpansionAnchor { 150 ctor public PaneExpansionAnchor.Proportion(@FloatRange(from=0.0, to=1.0) float proportion); 151 method @androidx.compose.runtime.Composable public String getDescription(); 152 method public float getProportion(); 153 property @androidx.compose.runtime.Composable public String description; 154 property @FloatRange(from=0.0, to=1.0) public float proportion; 155 } 156 157 public final class PaneExpansionDraggableModifierKt { 158 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Composable public static kotlin.jvm.functions.Function1<androidx.compose.ui.semantics.SemanticsPropertyReceiver,kotlin.Unit> defaultDragHandleSemantics(androidx.compose.material3.adaptive.layout.PaneExpansionState); 159 } 160 161 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Stable public final class PaneExpansionState { 162 method public suspend Object? animateTo(androidx.compose.material3.adaptive.layout.PaneExpansionAnchor anchor, optional float initialVelocity, kotlin.coroutines.Continuation<? super kotlin.Unit>); 163 method public void clear(); 164 method public androidx.compose.material3.adaptive.layout.PaneExpansionAnchor? getCurrentAnchor(); 165 method public boolean isUnspecified(); 166 method public void setFirstPaneProportion(@FloatRange(from=0.0, to=1.0) float firstPaneProportion); 167 method public void setFirstPaneWidth(int firstPaneWidth); 168 property public androidx.compose.material3.adaptive.layout.PaneExpansionAnchor? currentAnchor; 169 field public static final androidx.compose.material3.adaptive.layout.PaneExpansionState.Companion Companion; 170 field public static final int Unspecified = -1; // 0xffffffff 171 } 172 173 public static final class PaneExpansionState.Companion { 174 property public static int Unspecified; 175 } 176 177 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Immutable public sealed interface PaneExpansionStateKey { 178 field public static final androidx.compose.material3.adaptive.layout.PaneExpansionStateKey.Companion Companion; 179 } 180 181 public static final class PaneExpansionStateKey.Companion { 182 method public androidx.compose.material3.adaptive.layout.PaneExpansionStateKey getDefault(); 183 property public androidx.compose.material3.adaptive.layout.PaneExpansionStateKey Default; 184 } 185 186 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Stable public sealed interface PaneExpansionStateKeyProvider { 187 method public androidx.compose.material3.adaptive.layout.PaneExpansionStateKey getPaneExpansionStateKey(); 188 property public abstract androidx.compose.material3.adaptive.layout.PaneExpansionStateKey paneExpansionStateKey; 189 } 190 191 public final class PaneExpansionStateKt { 192 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Composable public static androidx.compose.material3.adaptive.layout.PaneExpansionState rememberPaneExpansionState(optional androidx.compose.material3.adaptive.layout.PaneExpansionStateKey key, optional java.util.List<? extends androidx.compose.material3.adaptive.layout.PaneExpansionAnchor> anchors, optional int initialAnchoredIndex, optional androidx.compose.animation.core.FiniteAnimationSpec<java.lang.Float> anchoringAnimationSpec, optional androidx.compose.foundation.gestures.FlingBehavior flingBehavior); 193 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Composable public static androidx.compose.material3.adaptive.layout.PaneExpansionState rememberPaneExpansionState(androidx.compose.material3.adaptive.layout.PaneExpansionStateKeyProvider keyProvider, optional java.util.List<? extends androidx.compose.material3.adaptive.layout.PaneExpansionAnchor> anchors, optional int initialAnchoredIndex, optional androidx.compose.animation.core.FiniteAnimationSpec<java.lang.Float> anchoringAnimationSpec, optional androidx.compose.foundation.gestures.FlingBehavior flingBehavior); 194 } 195 196 public final class PaneKt { 197 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Composable public static <S, T extends androidx.compose.material3.adaptive.layout.PaneScaffoldValue<S>> void AnimatedPane(androidx.compose.material3.adaptive.layout.ExtendedPaneScaffoldPaneScope<S,T>, optional androidx.compose.ui.Modifier modifier, optional androidx.compose.animation.EnterTransition enterTransition, optional androidx.compose.animation.ExitTransition exitTransition, optional androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntRect> boundsAnimationSpec, kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.AnimatedPaneScope,kotlin.Unit> content); 198 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveComponentOverrideApi public static androidx.compose.runtime.ProvidableCompositionLocal<androidx.compose.material3.adaptive.layout.AnimatedPaneOverride> getLocalAnimatedPaneOverride(); 199 property @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveComponentOverrideApi public static androidx.compose.runtime.ProvidableCompositionLocal<androidx.compose.material3.adaptive.layout.AnimatedPaneOverride> LocalAnimatedPaneOverride; 200 } 201 202 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Stable public sealed interface PaneMotion { 203 method public int getType(); 204 property public abstract int type; 205 field public static final androidx.compose.material3.adaptive.layout.PaneMotion.Companion Companion; 206 } 207 208 public static final class PaneMotion.Companion { 209 method public androidx.compose.material3.adaptive.layout.PaneMotion getAnimateBounds(); 210 method public androidx.compose.material3.adaptive.layout.PaneMotion getEnterFromLeft(); 211 method public androidx.compose.material3.adaptive.layout.PaneMotion getEnterFromLeftDelayed(); 212 method public androidx.compose.material3.adaptive.layout.PaneMotion getEnterFromRight(); 213 method public androidx.compose.material3.adaptive.layout.PaneMotion getEnterFromRightDelayed(); 214 method public androidx.compose.material3.adaptive.layout.PaneMotion getEnterWithExpand(); 215 method public androidx.compose.material3.adaptive.layout.PaneMotion getExitToLeft(); 216 method public androidx.compose.material3.adaptive.layout.PaneMotion getExitToRight(); 217 method public androidx.compose.material3.adaptive.layout.PaneMotion getExitWithShrink(); 218 method public androidx.compose.material3.adaptive.layout.PaneMotion getNoMotion(); 219 property public androidx.compose.material3.adaptive.layout.PaneMotion AnimateBounds; 220 property public androidx.compose.material3.adaptive.layout.PaneMotion EnterFromLeft; 221 property public androidx.compose.material3.adaptive.layout.PaneMotion EnterFromLeftDelayed; 222 property public androidx.compose.material3.adaptive.layout.PaneMotion EnterFromRight; 223 property public androidx.compose.material3.adaptive.layout.PaneMotion EnterFromRightDelayed; 224 property public androidx.compose.material3.adaptive.layout.PaneMotion EnterWithExpand; 225 property public androidx.compose.material3.adaptive.layout.PaneMotion ExitToLeft; 226 property public androidx.compose.material3.adaptive.layout.PaneMotion ExitToRight; 227 property public androidx.compose.material3.adaptive.layout.PaneMotion ExitWithShrink; 228 property public androidx.compose.material3.adaptive.layout.PaneMotion NoMotion; 229 } 230 231 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @kotlin.jvm.JvmInline public static final value class PaneMotion.Type { 232 method public int getValue(); 233 property public int value; 234 field public static final androidx.compose.material3.adaptive.layout.PaneMotion.Type.Companion Companion; 235 } 236 237 public static final class PaneMotion.Type.Companion { 238 method public int getEntering(); 239 method public int getExiting(); 240 method public int getHidden(); 241 method public int getShown(); 242 property public int Entering; 243 property public int Exiting; 244 property public int Hidden; 245 property public int Shown; 246 } 247 248 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public final class PaneMotionData { 249 method public androidx.compose.material3.adaptive.layout.PaneMotion getMotion(); 250 method public long getOriginPosition(); 251 method public long getOriginSize(); 252 method public long getTargetPosition(); 253 method public long getTargetSize(); 254 property public androidx.compose.material3.adaptive.layout.PaneMotion motion; 255 property public long originPosition; 256 property public long originSize; 257 property public long targetPosition; 258 property public long targetSize; 259 } 260 261 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public final class PaneMotionDefaults { 262 method public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntRect> getAnimationSpec(); 263 method public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntRect> getDelayedAnimationSpec(); 264 method public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntOffset> getDelayedOffsetAnimationSpec(); 265 method public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntSize> getDelayedSizeAnimationSpec(); 266 method public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntOffset> getOffsetAnimationSpec(); 267 method public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntSize> getSizeAnimationSpec(); 268 property public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntRect> AnimationSpec; 269 property public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntRect> DelayedAnimationSpec; 270 property public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntOffset> DelayedOffsetAnimationSpec; 271 property public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntSize> DelayedSizeAnimationSpec; 272 property public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntOffset> OffsetAnimationSpec; 273 property public androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntSize> SizeAnimationSpec; 274 field public static final androidx.compose.material3.adaptive.layout.PaneMotionDefaults INSTANCE; 275 } 276 277 public final class PaneMotionKt { 278 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public static <Role> androidx.compose.animation.EnterTransition calculateDefaultEnterTransition(androidx.compose.material3.adaptive.layout.PaneScaffoldMotionDataProvider<Role>, Role role); 279 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public static <Role> androidx.compose.animation.ExitTransition calculateDefaultExitTransition(androidx.compose.material3.adaptive.layout.PaneScaffoldMotionDataProvider<Role>, Role role); 280 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public static inline <Role> void forEach(androidx.compose.material3.adaptive.layout.PaneScaffoldMotionDataProvider<Role>, kotlin.jvm.functions.Function2<? super Role,? super androidx.compose.material3.adaptive.layout.PaneMotionData,kotlin.Unit> action); 281 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public static inline <Role> void forEachReversed(androidx.compose.material3.adaptive.layout.PaneScaffoldMotionDataProvider<Role>, kotlin.jvm.functions.Function2<? super Role,? super androidx.compose.material3.adaptive.layout.PaneMotionData,kotlin.Unit> action); 282 } 283 284 @androidx.compose.runtime.Immutable public final class PaneScaffoldDirective { 285 ctor public PaneScaffoldDirective(int maxHorizontalPartitions, float horizontalPartitionSpacerSize, int maxVerticalPartitions, float verticalPartitionSpacerSize, float defaultPanePreferredWidth, float defaultPanePreferredHeight, java.util.List<androidx.compose.ui.geometry.Rect> excludedBounds); 286 ctor public PaneScaffoldDirective(int maxHorizontalPartitions, float horizontalPartitionSpacerSize, int maxVerticalPartitions, float verticalPartitionSpacerSize, float defaultPanePreferredWidth, java.util.List<androidx.compose.ui.geometry.Rect> excludedBounds); 287 method @Deprecated public androidx.compose.material3.adaptive.layout.PaneScaffoldDirective copy(optional int maxHorizontalPartitions, optional float horizontalPartitionSpacerSize, optional int maxVerticalPartitions, optional float verticalPartitionSpacerSize, optional float defaultPanePreferredWidth, optional java.util.List<androidx.compose.ui.geometry.Rect> excludedBounds); 288 method public androidx.compose.material3.adaptive.layout.PaneScaffoldDirective copy(optional int maxHorizontalPartitions, optional float horizontalPartitionSpacerSize, optional int maxVerticalPartitions, optional float verticalPartitionSpacerSize, optional float defaultPanePreferredWidth, optional java.util.List<androidx.compose.ui.geometry.Rect> excludedBounds, optional float defaultPanePreferredHeight); 289 method public float getDefaultPanePreferredHeight(); 290 method public float getDefaultPanePreferredWidth(); 291 method public java.util.List<androidx.compose.ui.geometry.Rect> getExcludedBounds(); 292 method public float getHorizontalPartitionSpacerSize(); 293 method public int getMaxHorizontalPartitions(); 294 method public int getMaxVerticalPartitions(); 295 method public float getVerticalPartitionSpacerSize(); 296 property public float defaultPanePreferredHeight; 297 property public float defaultPanePreferredWidth; 298 property public java.util.List<androidx.compose.ui.geometry.Rect> excludedBounds; 299 property public float horizontalPartitionSpacerSize; 300 property public int maxHorizontalPartitions; 301 property public int maxVerticalPartitions; 302 property public float verticalPartitionSpacerSize; 303 field public static final androidx.compose.material3.adaptive.layout.PaneScaffoldDirective.Companion Companion; 304 } 305 306 public static final class PaneScaffoldDirective.Companion { 307 method public androidx.compose.material3.adaptive.layout.PaneScaffoldDirective getDefault(); 308 property public androidx.compose.material3.adaptive.layout.PaneScaffoldDirective Default; 309 } 310 311 public final class PaneScaffoldDirectiveKt { 312 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public static androidx.compose.material3.adaptive.layout.PaneScaffoldDirective calculatePaneScaffoldDirective(androidx.compose.material3.adaptive.WindowAdaptiveInfo windowAdaptiveInfo, optional int verticalHingePolicy); 313 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public static androidx.compose.material3.adaptive.layout.PaneScaffoldDirective calculatePaneScaffoldDirectiveWithTwoPanesOnMediumWidth(androidx.compose.material3.adaptive.WindowAdaptiveInfo windowAdaptiveInfo, optional int verticalHingePolicy); 314 } 315 316 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public sealed interface PaneScaffoldMotionDataProvider<Role> { 317 method public operator androidx.compose.material3.adaptive.layout.PaneMotionData get(int index); 318 method public operator androidx.compose.material3.adaptive.layout.PaneMotionData get(Role role); 319 method public int getCount(); 320 method public Role getRoleAt(int index); 321 method public long getScaffoldSize(); 322 property public abstract int count; 323 property public abstract long scaffoldSize; 324 } 325 326 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public sealed interface PaneScaffoldPaneScope<Role> { 327 method public androidx.compose.material3.adaptive.layout.PaneMotion getPaneMotion(); 328 method public Role getPaneRole(); 329 property public abstract androidx.compose.material3.adaptive.layout.PaneMotion paneMotion; 330 property public abstract Role paneRole; 331 } 332 333 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public sealed interface PaneScaffoldParentData { 334 method public float getMinTouchTargetSize(); 335 method public float getPreferredHeight(); 336 method public float getPreferredWidth(); 337 method public boolean isAnimatedPane(); 338 property public abstract boolean isAnimatedPane; 339 property public abstract float minTouchTargetSize; 340 property public abstract float preferredHeight; 341 property public abstract float preferredWidth; 342 } 343 344 public sealed interface PaneScaffoldScope { 345 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public androidx.compose.ui.Modifier paneExpansionDraggable(androidx.compose.ui.Modifier, androidx.compose.material3.adaptive.layout.PaneExpansionState state, float minTouchTargetSize, androidx.compose.foundation.interaction.MutableInteractionSource interactionSource, kotlin.jvm.functions.Function1<? super androidx.compose.ui.semantics.SemanticsPropertyReceiver,kotlin.Unit> semanticsProperties); 346 method public androidx.compose.ui.Modifier preferredHeight(androidx.compose.ui.Modifier, float height); 347 method public androidx.compose.ui.Modifier preferredWidth(androidx.compose.ui.Modifier, float width); 348 } 349 350 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public sealed interface PaneScaffoldTransitionScope<Role, ScaffoldValue extends androidx.compose.material3.adaptive.layout.PaneScaffoldValue<Role>> { 351 method public androidx.compose.material3.adaptive.layout.PaneScaffoldMotionDataProvider<Role> getMotionDataProvider(); 352 method @FloatRange(from=0.0, to=1.0) public float getMotionProgress(); 353 method public androidx.compose.animation.core.Transition<ScaffoldValue> getScaffoldStateTransition(); 354 property public abstract androidx.compose.material3.adaptive.layout.PaneScaffoldMotionDataProvider<Role> motionDataProvider; 355 property @FloatRange(from=0.0, to=1.0) public abstract float motionProgress; 356 property public abstract androidx.compose.animation.core.Transition<ScaffoldValue> scaffoldStateTransition; 357 } 358 359 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public sealed interface PaneScaffoldValue<T> { 360 method public operator androidx.compose.material3.adaptive.layout.PaneAdaptedValue get(T role); 361 } 362 363 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public final class SupportingPaneScaffoldDefaults { 364 method public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldAdaptStrategies adaptStrategies(optional androidx.compose.material3.adaptive.layout.AdaptStrategy mainPaneAdaptStrategy, optional androidx.compose.material3.adaptive.layout.AdaptStrategy supportingPaneAdaptStrategy, optional androidx.compose.material3.adaptive.layout.AdaptStrategy extraPaneAdaptStrategy); 365 field public static final androidx.compose.material3.adaptive.layout.SupportingPaneScaffoldDefaults INSTANCE; 366 } 367 368 public final class SupportingPaneScaffoldKt { 369 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Composable public static void SupportingPaneScaffold(androidx.compose.material3.adaptive.layout.PaneScaffoldDirective directive, androidx.compose.material3.adaptive.layout.ThreePaneScaffoldState scaffoldState, kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldPaneScope,kotlin.Unit> mainPane, kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldPaneScope,kotlin.Unit> supportingPane, optional androidx.compose.ui.Modifier modifier, optional kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldPaneScope,kotlin.Unit>? extraPane, optional kotlin.jvm.functions.Function2<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldScope,? super androidx.compose.material3.adaptive.layout.PaneExpansionState,kotlin.Unit>? paneExpansionDragHandle, optional androidx.compose.material3.adaptive.layout.PaneExpansionState? paneExpansionState); 370 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Composable public static void SupportingPaneScaffold(androidx.compose.material3.adaptive.layout.PaneScaffoldDirective directive, androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue value, kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldPaneScope,kotlin.Unit> mainPane, kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldPaneScope,kotlin.Unit> supportingPane, optional androidx.compose.ui.Modifier modifier, optional kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldPaneScope,kotlin.Unit>? extraPane, optional kotlin.jvm.functions.Function2<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldScope,? super androidx.compose.material3.adaptive.layout.PaneExpansionState,kotlin.Unit>? paneExpansionDragHandle, optional androidx.compose.material3.adaptive.layout.PaneExpansionState? paneExpansionState); 371 } 372 373 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public final class SupportingPaneScaffoldRole { 374 method public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole getExtra(); 375 method public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole getMain(); 376 method public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole getSupporting(); 377 property public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole Extra; 378 property public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole Main; 379 property public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole Supporting; 380 field public static final androidx.compose.material3.adaptive.layout.SupportingPaneScaffoldRole INSTANCE; 381 } 382 383 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Immutable public final class ThreePaneMotion { 384 method public operator androidx.compose.material3.adaptive.layout.PaneMotion get(androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole role); 385 field public static final androidx.compose.material3.adaptive.layout.ThreePaneMotion.Companion Companion; 386 } 387 388 public static final class ThreePaneMotion.Companion { 389 method public androidx.compose.material3.adaptive.layout.ThreePaneMotion getNoMotion(); 390 property public androidx.compose.material3.adaptive.layout.ThreePaneMotion NoMotion; 391 } 392 393 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public final class ThreePaneScaffoldAdaptStrategies { 394 ctor public ThreePaneScaffoldAdaptStrategies(androidx.compose.material3.adaptive.layout.AdaptStrategy primaryPaneAdaptStrategy, androidx.compose.material3.adaptive.layout.AdaptStrategy secondaryPaneAdaptStrategy, androidx.compose.material3.adaptive.layout.AdaptStrategy tertiaryPaneAdaptStrategy); 395 method public operator androidx.compose.material3.adaptive.layout.AdaptStrategy get(androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole role); 396 } 397 398 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public final class ThreePaneScaffoldDestinationItem<T> { 399 ctor public ThreePaneScaffoldDestinationItem(androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole pane, optional T? contentKey); 400 method public T? getContentKey(); 401 method public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole getPane(); 402 property public T? contentKey; 403 property public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole pane; 404 } 405 406 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Immutable public final class ThreePaneScaffoldHorizontalOrder { 407 method public void forEach(kotlin.jvm.functions.Function1<? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole,kotlin.Unit> action); 408 method public void forEachIndexed(kotlin.jvm.functions.Function2<? super java.lang.Integer,? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole,kotlin.Unit> action); 409 method public void forEachIndexedReversed(kotlin.jvm.functions.Function2<? super java.lang.Integer,? super androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole,kotlin.Unit> action); 410 method public operator androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole get(int index); 411 method public int getSize(); 412 method public int indexOf(androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole role); 413 property public int size; 414 } 415 416 public final class ThreePaneScaffoldKt { 417 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveComponentOverrideApi public static androidx.compose.runtime.ProvidableCompositionLocal<androidx.compose.material3.adaptive.layout.ThreePaneScaffoldOverride> getLocalThreePaneScaffoldOverride(); 418 property @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveComponentOverrideApi public static androidx.compose.runtime.ProvidableCompositionLocal<androidx.compose.material3.adaptive.layout.ThreePaneScaffoldOverride> LocalThreePaneScaffoldOverride; 419 } 420 421 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveComponentOverrideApi public interface ThreePaneScaffoldOverride { 422 method @androidx.compose.runtime.Composable public void ThreePaneScaffold(androidx.compose.material3.adaptive.layout.ThreePaneScaffoldOverrideScope); 423 } 424 425 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveComponentOverrideApi public final class ThreePaneScaffoldOverrideScope { 426 method public androidx.compose.ui.Modifier getModifier(); 427 method public kotlin.jvm.functions.Function1<androidx.compose.material3.adaptive.layout.PaneExpansionState,kotlin.Unit>? getPaneExpansionDragHandle(); 428 method public androidx.compose.material3.adaptive.layout.PaneExpansionState getPaneExpansionState(); 429 method public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldHorizontalOrder getPaneOrder(); 430 method public kotlin.jvm.functions.Function0<kotlin.Unit> getPrimaryPane(); 431 method public androidx.compose.material3.adaptive.layout.PaneScaffoldDirective getScaffoldDirective(); 432 method public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldState getScaffoldState(); 433 method public kotlin.jvm.functions.Function0<kotlin.Unit> getSecondaryPane(); 434 method public kotlin.jvm.functions.Function0<kotlin.Unit>? getTertiaryPane(); 435 property public androidx.compose.ui.Modifier modifier; 436 property public kotlin.jvm.functions.Function1<androidx.compose.material3.adaptive.layout.PaneExpansionState,kotlin.Unit>? paneExpansionDragHandle; 437 property public androidx.compose.material3.adaptive.layout.PaneExpansionState paneExpansionState; 438 property public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldHorizontalOrder paneOrder; 439 property public kotlin.jvm.functions.Function0<kotlin.Unit> primaryPane; 440 property public androidx.compose.material3.adaptive.layout.PaneScaffoldDirective scaffoldDirective; 441 property public androidx.compose.material3.adaptive.layout.ThreePaneScaffoldState scaffoldState; 442 property public kotlin.jvm.functions.Function0<kotlin.Unit> secondaryPane; 443 property public kotlin.jvm.functions.Function0<kotlin.Unit>? tertiaryPane; 444 } 445 446 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public sealed interface ThreePaneScaffoldPaneScope extends androidx.compose.material3.adaptive.layout.ThreePaneScaffoldScope androidx.compose.material3.adaptive.layout.ExtendedPaneScaffoldPaneScope<androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole,androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue> { 447 } 448 449 public enum ThreePaneScaffoldRole { 450 enum_constant public static final androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole Primary; 451 enum_constant public static final androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole Secondary; 452 enum_constant public static final androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole Tertiary; 453 } 454 455 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public sealed interface ThreePaneScaffoldScope extends androidx.compose.material3.adaptive.layout.ExtendedPaneScaffoldScope<androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole,androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue> { 456 } 457 458 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Stable public abstract sealed class ThreePaneScaffoldState { 459 method public abstract androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue getCurrentState(); 460 method @FloatRange(from=0.0, to=1.0) public abstract float getProgressFraction(); 461 method public abstract androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue getTargetState(); 462 method public abstract boolean isPredictiveBackInProgress(); 463 property public abstract androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue currentState; 464 property public abstract boolean isPredictiveBackInProgress; 465 property @FloatRange(from=0.0, to=1.0) public abstract float progressFraction; 466 property public abstract androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue targetState; 467 } 468 469 @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi @androidx.compose.runtime.Immutable public final class ThreePaneScaffoldValue implements androidx.compose.material3.adaptive.layout.PaneExpansionStateKeyProvider androidx.compose.material3.adaptive.layout.PaneScaffoldValue<androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole> { 470 ctor public ThreePaneScaffoldValue(androidx.compose.material3.adaptive.layout.PaneAdaptedValue primary, androidx.compose.material3.adaptive.layout.PaneAdaptedValue secondary, androidx.compose.material3.adaptive.layout.PaneAdaptedValue tertiary); 471 method public operator androidx.compose.material3.adaptive.layout.PaneAdaptedValue get(androidx.compose.material3.adaptive.layout.ThreePaneScaffoldRole role); 472 method public androidx.compose.material3.adaptive.layout.PaneExpansionStateKey getPaneExpansionStateKey(); 473 method public androidx.compose.material3.adaptive.layout.PaneAdaptedValue getPrimary(); 474 method public androidx.compose.material3.adaptive.layout.PaneAdaptedValue getSecondary(); 475 method public androidx.compose.material3.adaptive.layout.PaneAdaptedValue getTertiary(); 476 property public androidx.compose.material3.adaptive.layout.PaneExpansionStateKey paneExpansionStateKey; 477 property public androidx.compose.material3.adaptive.layout.PaneAdaptedValue primary; 478 property public androidx.compose.material3.adaptive.layout.PaneAdaptedValue secondary; 479 property public androidx.compose.material3.adaptive.layout.PaneAdaptedValue tertiary; 480 } 481 482 public final class ThreePaneScaffoldValueKt { 483 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public static androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue calculateThreePaneScaffoldValue(int maxHorizontalPartitions, androidx.compose.material3.adaptive.layout.ThreePaneScaffoldAdaptStrategies adaptStrategies, androidx.compose.material3.adaptive.layout.ThreePaneScaffoldDestinationItem<? extends java.lang.Object?>? currentDestination, optional int maxVerticalPartitions); 484 method @SuppressCompatibility @androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi public static androidx.compose.material3.adaptive.layout.ThreePaneScaffoldValue calculateThreePaneScaffoldValue(int maxHorizontalPartitions, androidx.compose.material3.adaptive.layout.ThreePaneScaffoldAdaptStrategies adaptStrategies, java.util.List<? extends androidx.compose.material3.adaptive.layout.ThreePaneScaffoldDestinationItem<? extends java.lang.Object?>> destinationHistory, optional int maxVerticalPartitions); 485 } 486 487} 488 489