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