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