1// Signature format: 4.0
2package androidx.compose.animation.core {
3
4  public final class Animatable<T, V extends androidx.compose.animation.core.AnimationVector> {
5    ctor @Deprecated public Animatable(T initialValue, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, optional T? visibilityThreshold);
6    ctor public Animatable(T initialValue, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, optional T? visibilityThreshold, optional String label);
7    method public suspend Object? animateDecay(T initialVelocity, androidx.compose.animation.core.DecayAnimationSpec<T> animationSpec, optional kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.Animatable<T,V>,kotlin.Unit>? block, kotlin.coroutines.Continuation<? super androidx.compose.animation.core.AnimationResult<T,V>>);
8    method public suspend Object? animateTo(T targetValue, optional androidx.compose.animation.core.AnimationSpec<T> animationSpec, optional T initialVelocity, optional kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.Animatable<T,V>,kotlin.Unit>? block, kotlin.coroutines.Continuation<? super androidx.compose.animation.core.AnimationResult<T,V>>);
9    method public androidx.compose.runtime.State<T> asState();
10    method public String getLabel();
11    method public T? getLowerBound();
12    method public T getTargetValue();
13    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
14    method public T? getUpperBound();
15    method public T getValue();
16    method public T getVelocity();
17    method public V getVelocityVector();
18    method public boolean isRunning();
19    method public suspend Object? snapTo(T targetValue, kotlin.coroutines.Continuation<? super kotlin.Unit>);
20    method public suspend Object? stop(kotlin.coroutines.Continuation<? super kotlin.Unit>);
21    method public void updateBounds(optional T? lowerBound, optional T? upperBound);
22    property public final boolean isRunning;
23    property public final String label;
24    property public final T? lowerBound;
25    property public final T targetValue;
26    property public final androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
27    property public final T? upperBound;
28    property public final T value;
29    property public final T velocity;
30    property public final V velocityVector;
31  }
32
33  public final class AnimatableKt {
34    method public static androidx.compose.animation.core.Animatable<java.lang.Float,androidx.compose.animation.core.AnimationVector1D> Animatable(float initialValue, optional float visibilityThreshold);
35  }
36
37  public final class AnimateAsStateKt {
38    method @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<androidx.compose.ui.unit.Dp> animateDpAsState(float targetValue, optional androidx.compose.animation.core.AnimationSpec<androidx.compose.ui.unit.Dp> animationSpec, optional String label, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.unit.Dp,kotlin.Unit>? finishedListener);
39    method @Deprecated @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<androidx.compose.ui.unit.Dp> animateDpAsState(float targetValue, optional androidx.compose.animation.core.AnimationSpec<androidx.compose.ui.unit.Dp> animationSpec, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.unit.Dp,kotlin.Unit>? finishedListener);
40    method @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<java.lang.Float> animateFloatAsState(float targetValue, optional androidx.compose.animation.core.AnimationSpec<java.lang.Float> animationSpec, optional float visibilityThreshold, optional String label, optional kotlin.jvm.functions.Function1<? super java.lang.Float,kotlin.Unit>? finishedListener);
41    method @Deprecated @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<java.lang.Float> animateFloatAsState(float targetValue, optional androidx.compose.animation.core.AnimationSpec<java.lang.Float> animationSpec, optional float visibilityThreshold, optional kotlin.jvm.functions.Function1<? super java.lang.Float,kotlin.Unit>? finishedListener);
42    method @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<java.lang.Integer> animateIntAsState(int targetValue, optional androidx.compose.animation.core.AnimationSpec<java.lang.Integer> animationSpec, optional String label, optional kotlin.jvm.functions.Function1<? super java.lang.Integer,kotlin.Unit>? finishedListener);
43    method @Deprecated @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<java.lang.Integer> animateIntAsState(int targetValue, optional androidx.compose.animation.core.AnimationSpec<java.lang.Integer> animationSpec, optional kotlin.jvm.functions.Function1<? super java.lang.Integer,kotlin.Unit>? finishedListener);
44    method @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<androidx.compose.ui.unit.IntOffset> animateIntOffsetAsState(long targetValue, optional androidx.compose.animation.core.AnimationSpec<androidx.compose.ui.unit.IntOffset> animationSpec, optional String label, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.unit.IntOffset,kotlin.Unit>? finishedListener);
45    method @Deprecated @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<androidx.compose.ui.unit.IntOffset> animateIntOffsetAsState(long targetValue, optional androidx.compose.animation.core.AnimationSpec<androidx.compose.ui.unit.IntOffset> animationSpec, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.unit.IntOffset,kotlin.Unit>? finishedListener);
46    method @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<androidx.compose.ui.unit.IntSize> animateIntSizeAsState(long targetValue, optional androidx.compose.animation.core.AnimationSpec<androidx.compose.ui.unit.IntSize> animationSpec, optional String label, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.unit.IntSize,kotlin.Unit>? finishedListener);
47    method @Deprecated @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<androidx.compose.ui.unit.IntSize> animateIntSizeAsState(long targetValue, optional androidx.compose.animation.core.AnimationSpec<androidx.compose.ui.unit.IntSize> animationSpec, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.unit.IntSize,kotlin.Unit>? finishedListener);
48    method @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<androidx.compose.ui.geometry.Offset> animateOffsetAsState(long targetValue, optional androidx.compose.animation.core.AnimationSpec<androidx.compose.ui.geometry.Offset> animationSpec, optional String label, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.geometry.Offset,kotlin.Unit>? finishedListener);
49    method @Deprecated @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<androidx.compose.ui.geometry.Offset> animateOffsetAsState(long targetValue, optional androidx.compose.animation.core.AnimationSpec<androidx.compose.ui.geometry.Offset> animationSpec, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.geometry.Offset,kotlin.Unit>? finishedListener);
50    method @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<androidx.compose.ui.geometry.Rect> animateRectAsState(androidx.compose.ui.geometry.Rect targetValue, optional androidx.compose.animation.core.AnimationSpec<androidx.compose.ui.geometry.Rect> animationSpec, optional String label, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.geometry.Rect,kotlin.Unit>? finishedListener);
51    method @Deprecated @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<androidx.compose.ui.geometry.Rect> animateRectAsState(androidx.compose.ui.geometry.Rect targetValue, optional androidx.compose.animation.core.AnimationSpec<androidx.compose.ui.geometry.Rect> animationSpec, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.geometry.Rect,kotlin.Unit>? finishedListener);
52    method @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<androidx.compose.ui.geometry.Size> animateSizeAsState(long targetValue, optional androidx.compose.animation.core.AnimationSpec<androidx.compose.ui.geometry.Size> animationSpec, optional String label, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.geometry.Size,kotlin.Unit>? finishedListener);
53    method @Deprecated @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<androidx.compose.ui.geometry.Size> animateSizeAsState(long targetValue, optional androidx.compose.animation.core.AnimationSpec<androidx.compose.ui.geometry.Size> animationSpec, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.geometry.Size,kotlin.Unit>? finishedListener);
54    method @androidx.compose.runtime.Composable public static <T, V extends androidx.compose.animation.core.AnimationVector> androidx.compose.runtime.State<T> animateValueAsState(T targetValue, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, optional androidx.compose.animation.core.AnimationSpec<T> animationSpec, optional T? visibilityThreshold, optional String label, optional kotlin.jvm.functions.Function1<? super T,kotlin.Unit>? finishedListener);
55    method @Deprecated @androidx.compose.runtime.Composable public static <T, V extends androidx.compose.animation.core.AnimationVector> androidx.compose.runtime.State<T> animateValueAsState(T targetValue, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, optional androidx.compose.animation.core.AnimationSpec<T> animationSpec, optional T? visibilityThreshold, optional kotlin.jvm.functions.Function1<? super T,kotlin.Unit>? finishedListener);
56  }
57
58  @kotlin.jvm.JvmDefaultWithCompatibility public interface Animation<T, V extends androidx.compose.animation.core.AnimationVector> {
59    method public long getDurationNanos();
60    method public T getTargetValue();
61    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
62    method public T getValueFromNanos(long playTimeNanos);
63    method public V getVelocityVectorFromNanos(long playTimeNanos);
64    method public default boolean isFinishedFromNanos(long playTimeNanos);
65    method public boolean isInfinite();
66    property public abstract long durationNanos;
67    property public abstract boolean isInfinite;
68    property public abstract T targetValue;
69    property public abstract androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
70  }
71
72  public final class AnimationConstants {
73    field public static final int DefaultDurationMillis = 300; // 0x12c
74    field public static final androidx.compose.animation.core.AnimationConstants INSTANCE;
75    field public static final long UnspecifiedTime = -9223372036854775808L; // 0x8000000000000000L
76  }
77
78  public enum AnimationEndReason {
79    enum_constant public static final androidx.compose.animation.core.AnimationEndReason BoundReached;
80    enum_constant public static final androidx.compose.animation.core.AnimationEndReason Finished;
81  }
82
83  public final class AnimationKt {
84    method public static androidx.compose.animation.core.DecayAnimation<java.lang.Float,androidx.compose.animation.core.AnimationVector1D> DecayAnimation(androidx.compose.animation.core.FloatDecayAnimationSpec animationSpec, float initialValue, optional float initialVelocity);
85    method public static <T, V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.TargetBasedAnimation<T,V> TargetBasedAnimation(androidx.compose.animation.core.AnimationSpec<T> animationSpec, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, T initialValue, T targetValue, T initialVelocity);
86    method public static <T, V extends androidx.compose.animation.core.AnimationVector> T getVelocityFromNanos(androidx.compose.animation.core.Animation<T,V>, long playTimeNanos);
87  }
88
89  public final class AnimationResult<T, V extends androidx.compose.animation.core.AnimationVector> {
90    ctor public AnimationResult(androidx.compose.animation.core.AnimationState<T,V> endState, androidx.compose.animation.core.AnimationEndReason endReason);
91    method public androidx.compose.animation.core.AnimationEndReason getEndReason();
92    method public androidx.compose.animation.core.AnimationState<T,V> getEndState();
93    property public final androidx.compose.animation.core.AnimationEndReason endReason;
94    property public final androidx.compose.animation.core.AnimationState<T,V> endState;
95  }
96
97  public final class AnimationScope<T, V extends androidx.compose.animation.core.AnimationVector> {
98    method public void cancelAnimation();
99    method public long getFinishedTimeNanos();
100    method public long getLastFrameTimeNanos();
101    method public long getStartTimeNanos();
102    method public T getTargetValue();
103    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
104    method public T getValue();
105    method public T getVelocity();
106    method public V getVelocityVector();
107    method public boolean isRunning();
108    method public androidx.compose.animation.core.AnimationState<T,V> toAnimationState();
109    property public final long finishedTimeNanos;
110    property public final boolean isRunning;
111    property public final long lastFrameTimeNanos;
112    property public final long startTimeNanos;
113    property public final T targetValue;
114    property public final androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
115    property public final T value;
116    property public final T velocity;
117    property public final V velocityVector;
118  }
119
120  public interface AnimationSpec<T> {
121    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
122  }
123
124  public final class AnimationSpecKt {
125    method @Deprecated @androidx.compose.runtime.Stable public static <T> androidx.compose.animation.core.InfiniteRepeatableSpec<T> infiniteRepeatable(androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation, optional androidx.compose.animation.core.RepeatMode repeatMode);
126    method @androidx.compose.runtime.Stable public static <T> androidx.compose.animation.core.InfiniteRepeatableSpec<T> infiniteRepeatable(androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation, optional androidx.compose.animation.core.RepeatMode repeatMode, optional long initialStartOffset);
127    method @androidx.compose.runtime.Stable public static <T> androidx.compose.animation.core.KeyframesSpec<T> keyframes(kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.KeyframesSpec.KeyframesSpecConfig<T>,kotlin.Unit> init);
128    method @SuppressCompatibility @androidx.compose.animation.core.ExperimentalAnimationSpecApi @androidx.compose.runtime.Stable public static <T> androidx.compose.animation.core.KeyframesWithSplineSpec<T> keyframesWithSpline(kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.KeyframesWithSplineSpec.KeyframesWithSplineSpecConfig<T>,kotlin.Unit> init);
129    method @Deprecated @androidx.compose.runtime.Stable public static <T> androidx.compose.animation.core.RepeatableSpec<T> repeatable(int iterations, androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation, optional androidx.compose.animation.core.RepeatMode repeatMode);
130    method @androidx.compose.runtime.Stable public static <T> androidx.compose.animation.core.RepeatableSpec<T> repeatable(int iterations, androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation, optional androidx.compose.animation.core.RepeatMode repeatMode, optional long initialStartOffset);
131    method @androidx.compose.runtime.Stable public static <T> androidx.compose.animation.core.SnapSpec<T> snap(optional int delayMillis);
132    method @androidx.compose.runtime.Stable public static <T> androidx.compose.animation.core.SpringSpec<T> spring(optional float dampingRatio, optional float stiffness, optional T? visibilityThreshold);
133    method @androidx.compose.runtime.Stable public static <T> androidx.compose.animation.core.TweenSpec<T> tween(optional int durationMillis, optional int delayMillis, optional androidx.compose.animation.core.Easing easing);
134  }
135
136  public final class AnimationState<T, V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.runtime.State<T> {
137    ctor public AnimationState(androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, T initialValue, optional V? initialVelocityVector, optional long lastFrameTimeNanos, optional long finishedTimeNanos, optional boolean isRunning);
138    method public long getFinishedTimeNanos();
139    method public long getLastFrameTimeNanos();
140    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
141    method public T getValue();
142    method public T getVelocity();
143    method public V getVelocityVector();
144    method public boolean isRunning();
145    property public final long finishedTimeNanos;
146    property public final boolean isRunning;
147    property public final long lastFrameTimeNanos;
148    property public final androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
149    property public T value;
150    property public final T velocity;
151    property public final V velocityVector;
152  }
153
154  public final class AnimationStateKt {
155    method public static <T, V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.AnimationState<T,V> AnimationState(androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, T initialValue, T initialVelocity, optional long lastFrameTimeNanos, optional long finishedTimeNanos, optional boolean isRunning);
156    method public static androidx.compose.animation.core.AnimationState<java.lang.Float,androidx.compose.animation.core.AnimationVector1D> AnimationState(float initialValue, optional float initialVelocity, optional long lastFrameTimeNanos, optional long finishedTimeNanos, optional boolean isRunning);
157    method public static androidx.compose.animation.core.AnimationState<java.lang.Float,androidx.compose.animation.core.AnimationVector1D> copy(androidx.compose.animation.core.AnimationState<java.lang.Float,androidx.compose.animation.core.AnimationVector1D>, optional float value, optional float velocity, optional long lastFrameTimeNanos, optional long finishedTimeNanos, optional boolean isRunning);
158    method public static <T, V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.AnimationState<T,V> copy(androidx.compose.animation.core.AnimationState<T,V>, optional T value, optional V? velocityVector, optional long lastFrameTimeNanos, optional long finishedTimeNanos, optional boolean isRunning);
159    method public static <T, V extends androidx.compose.animation.core.AnimationVector> V createZeroVectorFrom(androidx.compose.animation.core.TwoWayConverter<T,V>, T value);
160    method public static boolean isFinished(androidx.compose.animation.core.AnimationState<?,?>);
161  }
162
163  public abstract sealed class AnimationVector {
164  }
165
166  public final class AnimationVector1D extends androidx.compose.animation.core.AnimationVector {
167    ctor public AnimationVector1D(float initVal);
168    method public float getValue();
169    property public final float value;
170  }
171
172  public final class AnimationVector2D extends androidx.compose.animation.core.AnimationVector {
173    ctor public AnimationVector2D(float v1, float v2);
174    method public float getV1();
175    method public float getV2();
176    property public final float v1;
177    property public final float v2;
178  }
179
180  public final class AnimationVector3D extends androidx.compose.animation.core.AnimationVector {
181    ctor public AnimationVector3D(float v1, float v2, float v3);
182    method public float getV1();
183    method public float getV2();
184    method public float getV3();
185    property public final float v1;
186    property public final float v2;
187    property public final float v3;
188  }
189
190  public final class AnimationVector4D extends androidx.compose.animation.core.AnimationVector {
191    ctor public AnimationVector4D(float v1, float v2, float v3, float v4);
192    method public float getV1();
193    method public float getV2();
194    method public float getV3();
195    method public float getV4();
196    property public final float v1;
197    property public final float v2;
198    property public final float v3;
199    property public final float v4;
200  }
201
202  public final class AnimationVectorsKt {
203    method public static androidx.compose.animation.core.AnimationVector1D AnimationVector(float v1);
204    method public static androidx.compose.animation.core.AnimationVector2D AnimationVector(float v1, float v2);
205    method public static androidx.compose.animation.core.AnimationVector3D AnimationVector(float v1, float v2, float v3);
206    method public static androidx.compose.animation.core.AnimationVector4D AnimationVector(float v1, float v2, float v3, float v4);
207  }
208
209  @androidx.compose.runtime.Immutable public final class CubicBezierEasing implements androidx.compose.animation.core.Easing {
210    ctor public CubicBezierEasing(float a, float b, float c, float d);
211    method public float transform(float fraction);
212  }
213
214  public final class DecayAnimation<T, V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.Animation<T,V> {
215    ctor public DecayAnimation(androidx.compose.animation.core.DecayAnimationSpec<T> animationSpec, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, T initialValue, T initialVelocity);
216    ctor public DecayAnimation(androidx.compose.animation.core.DecayAnimationSpec<T> animationSpec, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, T initialValue, V initialVelocityVector);
217    ctor public DecayAnimation(androidx.compose.animation.core.VectorizedDecayAnimationSpec<V> animationSpec, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, T initialValue, V initialVelocityVector);
218    method public long getDurationNanos();
219    method public T getInitialValue();
220    method public V getInitialVelocityVector();
221    method public T getTargetValue();
222    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
223    method public T getValueFromNanos(long playTimeNanos);
224    method public V getVelocityVectorFromNanos(long playTimeNanos);
225    method public boolean isInfinite();
226    property public long durationNanos;
227    property public final T initialValue;
228    property public final V initialVelocityVector;
229    property public boolean isInfinite;
230    property public T targetValue;
231    property public androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
232  }
233
234  public interface DecayAnimationSpec<T> {
235    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedDecayAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter);
236  }
237
238  public final class DecayAnimationSpecKt {
239    method public static float calculateTargetValue(androidx.compose.animation.core.DecayAnimationSpec<java.lang.Float>, float initialValue, float initialVelocity);
240    method public static <T, V extends androidx.compose.animation.core.AnimationVector> T calculateTargetValue(androidx.compose.animation.core.DecayAnimationSpec<T>, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, T initialValue, T initialVelocity);
241    method public static <T> androidx.compose.animation.core.DecayAnimationSpec<T> exponentialDecay(optional @FloatRange(from=0.0, fromInclusive=false) float frictionMultiplier, optional @FloatRange(from=0.0, fromInclusive=false) float absVelocityThreshold);
242    method public static <T> androidx.compose.animation.core.DecayAnimationSpec<T> generateDecayAnimationSpec(androidx.compose.animation.core.FloatDecayAnimationSpec);
243  }
244
245  public interface DurationBasedAnimationSpec<T> extends androidx.compose.animation.core.FiniteAnimationSpec<T> {
246    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
247  }
248
249  @androidx.compose.runtime.Stable public fun interface Easing {
250    method public float transform(float fraction);
251  }
252
253  public final class EasingFunctionsKt {
254    method public static androidx.compose.animation.core.Easing getEase();
255    method public static androidx.compose.animation.core.Easing getEaseIn();
256    method public static androidx.compose.animation.core.Easing getEaseInBack();
257    method public static androidx.compose.animation.core.Easing getEaseInBounce();
258    method public static androidx.compose.animation.core.Easing getEaseInCirc();
259    method public static androidx.compose.animation.core.Easing getEaseInCubic();
260    method public static androidx.compose.animation.core.Easing getEaseInElastic();
261    method public static androidx.compose.animation.core.Easing getEaseInExpo();
262    method public static androidx.compose.animation.core.Easing getEaseInOut();
263    method public static androidx.compose.animation.core.Easing getEaseInOutBack();
264    method public static androidx.compose.animation.core.Easing getEaseInOutBounce();
265    method public static androidx.compose.animation.core.Easing getEaseInOutCirc();
266    method public static androidx.compose.animation.core.Easing getEaseInOutCubic();
267    method public static androidx.compose.animation.core.Easing getEaseInOutElastic();
268    method public static androidx.compose.animation.core.Easing getEaseInOutExpo();
269    method public static androidx.compose.animation.core.Easing getEaseInOutQuad();
270    method public static androidx.compose.animation.core.Easing getEaseInOutQuart();
271    method public static androidx.compose.animation.core.Easing getEaseInOutQuint();
272    method public static androidx.compose.animation.core.Easing getEaseInOutSine();
273    method public static androidx.compose.animation.core.Easing getEaseInQuad();
274    method public static androidx.compose.animation.core.Easing getEaseInQuart();
275    method public static androidx.compose.animation.core.Easing getEaseInQuint();
276    method public static androidx.compose.animation.core.Easing getEaseInSine();
277    method public static androidx.compose.animation.core.Easing getEaseOut();
278    method public static androidx.compose.animation.core.Easing getEaseOutBack();
279    method public static androidx.compose.animation.core.Easing getEaseOutBounce();
280    method public static androidx.compose.animation.core.Easing getEaseOutCirc();
281    method public static androidx.compose.animation.core.Easing getEaseOutCubic();
282    method public static androidx.compose.animation.core.Easing getEaseOutElastic();
283    method public static androidx.compose.animation.core.Easing getEaseOutExpo();
284    method public static androidx.compose.animation.core.Easing getEaseOutQuad();
285    method public static androidx.compose.animation.core.Easing getEaseOutQuart();
286    method public static androidx.compose.animation.core.Easing getEaseOutQuint();
287    method public static androidx.compose.animation.core.Easing getEaseOutSine();
288    property public static final androidx.compose.animation.core.Easing Ease;
289    property public static final androidx.compose.animation.core.Easing EaseIn;
290    property public static final androidx.compose.animation.core.Easing EaseInBack;
291    property public static final androidx.compose.animation.core.Easing EaseInBounce;
292    property public static final androidx.compose.animation.core.Easing EaseInCirc;
293    property public static final androidx.compose.animation.core.Easing EaseInCubic;
294    property public static final androidx.compose.animation.core.Easing EaseInElastic;
295    property public static final androidx.compose.animation.core.Easing EaseInExpo;
296    property public static final androidx.compose.animation.core.Easing EaseInOut;
297    property public static final androidx.compose.animation.core.Easing EaseInOutBack;
298    property public static final androidx.compose.animation.core.Easing EaseInOutBounce;
299    property public static final androidx.compose.animation.core.Easing EaseInOutCirc;
300    property public static final androidx.compose.animation.core.Easing EaseInOutCubic;
301    property public static final androidx.compose.animation.core.Easing EaseInOutElastic;
302    property public static final androidx.compose.animation.core.Easing EaseInOutExpo;
303    property public static final androidx.compose.animation.core.Easing EaseInOutQuad;
304    property public static final androidx.compose.animation.core.Easing EaseInOutQuart;
305    property public static final androidx.compose.animation.core.Easing EaseInOutQuint;
306    property public static final androidx.compose.animation.core.Easing EaseInOutSine;
307    property public static final androidx.compose.animation.core.Easing EaseInQuad;
308    property public static final androidx.compose.animation.core.Easing EaseInQuart;
309    property public static final androidx.compose.animation.core.Easing EaseInQuint;
310    property public static final androidx.compose.animation.core.Easing EaseInSine;
311    property public static final androidx.compose.animation.core.Easing EaseOut;
312    property public static final androidx.compose.animation.core.Easing EaseOutBack;
313    property public static final androidx.compose.animation.core.Easing EaseOutBounce;
314    property public static final androidx.compose.animation.core.Easing EaseOutCirc;
315    property public static final androidx.compose.animation.core.Easing EaseOutCubic;
316    property public static final androidx.compose.animation.core.Easing EaseOutElastic;
317    property public static final androidx.compose.animation.core.Easing EaseOutExpo;
318    property public static final androidx.compose.animation.core.Easing EaseOutQuad;
319    property public static final androidx.compose.animation.core.Easing EaseOutQuart;
320    property public static final androidx.compose.animation.core.Easing EaseOutQuint;
321    property public static final androidx.compose.animation.core.Easing EaseOutSine;
322  }
323
324  public final class EasingKt {
325    method public static androidx.compose.animation.core.Easing getFastOutLinearInEasing();
326    method public static androidx.compose.animation.core.Easing getFastOutSlowInEasing();
327    method public static androidx.compose.animation.core.Easing getLinearEasing();
328    method public static androidx.compose.animation.core.Easing getLinearOutSlowInEasing();
329    property public static final androidx.compose.animation.core.Easing FastOutLinearInEasing;
330    property public static final androidx.compose.animation.core.Easing FastOutSlowInEasing;
331    property public static final androidx.compose.animation.core.Easing LinearEasing;
332    property public static final androidx.compose.animation.core.Easing LinearOutSlowInEasing;
333  }
334
335  @SuppressCompatibility @kotlin.RequiresOptIn(message="This is an experimental animation API for AnimationSpec. " + "It may change in the future.") @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention.BINARY) public @interface ExperimentalAnimationSpecApi {
336  }
337
338  @SuppressCompatibility @kotlin.RequiresOptIn(message="This is an experimental animation API for Transition. It may change in the future.") @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention.BINARY) public @interface ExperimentalTransitionApi {
339  }
340
341  public interface FiniteAnimationSpec<T> extends androidx.compose.animation.core.AnimationSpec<T> {
342    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
343  }
344
345  @kotlin.jvm.JvmDefaultWithCompatibility public interface FloatAnimationSpec extends androidx.compose.animation.core.AnimationSpec<java.lang.Float> {
346    method public long getDurationNanos(float initialValue, float targetValue, float initialVelocity);
347    method public default float getEndVelocity(float initialValue, float targetValue, float initialVelocity);
348    method public float getValueFromNanos(long playTimeNanos, float initialValue, float targetValue, float initialVelocity);
349    method public float getVelocityFromNanos(long playTimeNanos, float initialValue, float targetValue, float initialVelocity);
350    method public default <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedFloatAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<java.lang.Float,V> converter);
351  }
352
353  public interface FloatDecayAnimationSpec {
354    method public float getAbsVelocityThreshold();
355    method public long getDurationNanos(float initialValue, float initialVelocity);
356    method public float getTargetValue(float initialValue, float initialVelocity);
357    method public float getValueFromNanos(long playTimeNanos, float initialValue, float initialVelocity);
358    method public float getVelocityFromNanos(long playTimeNanos, float initialValue, float initialVelocity);
359    property public abstract float absVelocityThreshold;
360  }
361
362  public final class FloatExponentialDecaySpec implements androidx.compose.animation.core.FloatDecayAnimationSpec {
363    ctor public FloatExponentialDecaySpec(optional @FloatRange(from=0.0, fromInclusive=false) float frictionMultiplier, optional @FloatRange(from=0.0, fromInclusive=false) float absVelocityThreshold);
364    method public float getAbsVelocityThreshold();
365    method public long getDurationNanos(float initialValue, float initialVelocity);
366    method public float getTargetValue(float initialValue, float initialVelocity);
367    method public float getValueFromNanos(long playTimeNanos, float initialValue, float initialVelocity);
368    method public float getVelocityFromNanos(long playTimeNanos, float initialValue, float initialVelocity);
369    property public float absVelocityThreshold;
370  }
371
372  public final class FloatSpringSpec implements androidx.compose.animation.core.FloatAnimationSpec {
373    ctor public FloatSpringSpec(optional float dampingRatio, optional float stiffness, optional float visibilityThreshold);
374    method public float getDampingRatio();
375    method public long getDurationNanos(float initialValue, float targetValue, float initialVelocity);
376    method public float getStiffness();
377    method public float getValueFromNanos(long playTimeNanos, float initialValue, float targetValue, float initialVelocity);
378    method public float getVelocityFromNanos(long playTimeNanos, float initialValue, float targetValue, float initialVelocity);
379    property public final float dampingRatio;
380    property public final float stiffness;
381  }
382
383  public final class FloatTweenSpec implements androidx.compose.animation.core.FloatAnimationSpec {
384    ctor public FloatTweenSpec(optional int duration, optional int delay, optional androidx.compose.animation.core.Easing easing);
385    method public int getDelay();
386    method public int getDuration();
387    method public long getDurationNanos(float initialValue, float targetValue, float initialVelocity);
388    method public float getValueFromNanos(long playTimeNanos, float initialValue, float targetValue, float initialVelocity);
389    method public float getVelocityFromNanos(long playTimeNanos, float initialValue, float targetValue, float initialVelocity);
390    property public final int delay;
391    property public final int duration;
392  }
393
394  public final class InfiniteAnimationPolicyKt {
395    method public static suspend inline <R> Object? withInfiniteAnimationFrameMillis(kotlin.jvm.functions.Function1<? super java.lang.Long,? extends R> onFrame, kotlin.coroutines.Continuation<? super R>);
396    method public static suspend <R> Object? withInfiniteAnimationFrameNanos(kotlin.jvm.functions.Function1<? super java.lang.Long,? extends R> onFrame, kotlin.coroutines.Continuation<? super R>);
397  }
398
399  public final class InfiniteRepeatableSpec<T> implements androidx.compose.animation.core.AnimationSpec<T> {
400    ctor @Deprecated public InfiniteRepeatableSpec(androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation, optional androidx.compose.animation.core.RepeatMode repeatMode);
401    ctor public InfiniteRepeatableSpec(androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation, optional androidx.compose.animation.core.RepeatMode repeatMode, optional long initialStartOffset);
402    method public androidx.compose.animation.core.DurationBasedAnimationSpec<T> getAnimation();
403    method public long getInitialStartOffset();
404    method public androidx.compose.animation.core.RepeatMode getRepeatMode();
405    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
406    property public final androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation;
407    property public final long initialStartOffset;
408    property public final androidx.compose.animation.core.RepeatMode repeatMode;
409  }
410
411  public final class InfiniteTransition {
412    method public java.util.List<androidx.compose.animation.core.InfiniteTransition.TransitionAnimationState<?,?>> getAnimations();
413    method public String getLabel();
414    property public final java.util.List<androidx.compose.animation.core.InfiniteTransition.TransitionAnimationState<?,?>> animations;
415    property public final String label;
416  }
417
418  public final class InfiniteTransition.TransitionAnimationState<T, V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.runtime.State<T> {
419    method public androidx.compose.animation.core.TargetBasedAnimation<T,V> getAnimation();
420    method public androidx.compose.animation.core.AnimationSpec<T> getAnimationSpec();
421    method public String getLabel();
422    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
423    method public T getValue();
424    property public final androidx.compose.animation.core.TargetBasedAnimation<T,V> animation;
425    property public final androidx.compose.animation.core.AnimationSpec<T> animationSpec;
426    property public final String label;
427    property public final androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
428    property public T value;
429  }
430
431  public final class InfiniteTransitionKt {
432    method @Deprecated @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<java.lang.Float> animateFloat(androidx.compose.animation.core.InfiniteTransition, float initialValue, float targetValue, androidx.compose.animation.core.InfiniteRepeatableSpec<java.lang.Float> animationSpec);
433    method @androidx.compose.runtime.Composable public static androidx.compose.runtime.State<java.lang.Float> animateFloat(androidx.compose.animation.core.InfiniteTransition, float initialValue, float targetValue, androidx.compose.animation.core.InfiniteRepeatableSpec<java.lang.Float> animationSpec, optional String label);
434    method @Deprecated @androidx.compose.runtime.Composable public static <T, V extends androidx.compose.animation.core.AnimationVector> androidx.compose.runtime.State<T> animateValue(androidx.compose.animation.core.InfiniteTransition, T initialValue, T targetValue, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, androidx.compose.animation.core.InfiniteRepeatableSpec<T> animationSpec);
435    method @androidx.compose.runtime.Composable public static <T, V extends androidx.compose.animation.core.AnimationVector> androidx.compose.runtime.State<T> animateValue(androidx.compose.animation.core.InfiniteTransition, T initialValue, T targetValue, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, androidx.compose.animation.core.InfiniteRepeatableSpec<T> animationSpec, optional String label);
436    method @Deprecated @androidx.compose.runtime.Composable public static androidx.compose.animation.core.InfiniteTransition rememberInfiniteTransition();
437    method @androidx.compose.runtime.Composable public static androidx.compose.animation.core.InfiniteTransition rememberInfiniteTransition(optional String label);
438  }
439
440  @SuppressCompatibility @kotlin.RequiresOptIn(message="This API is internal to library.") @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention.BINARY) @kotlin.annotation.Target(allowedTargets={kotlin.annotation.AnnotationTarget.CLASS, kotlin.annotation.AnnotationTarget.FUNCTION, kotlin.annotation.AnnotationTarget.PROPERTY, kotlin.annotation.AnnotationTarget.FIELD, kotlin.annotation.AnnotationTarget.PROPERTY_GETTER}) public @interface InternalAnimationApi {
441  }
442
443  public abstract sealed class KeyframeBaseEntity<T> {
444  }
445
446  @androidx.compose.runtime.Immutable public final class KeyframesSpec<T> implements androidx.compose.animation.core.DurationBasedAnimationSpec<T> {
447    ctor public KeyframesSpec(androidx.compose.animation.core.KeyframesSpec.KeyframesSpecConfig<T> config);
448    method public androidx.compose.animation.core.KeyframesSpec.KeyframesSpecConfig<T> getConfig();
449    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedKeyframesSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
450    property public final androidx.compose.animation.core.KeyframesSpec.KeyframesSpecConfig<T> config;
451  }
452
453  public static final class KeyframesSpec.KeyframeEntity<T> extends androidx.compose.animation.core.KeyframeBaseEntity<T> {
454  }
455
456  public static final class KeyframesSpec.KeyframesSpecConfig<T> extends androidx.compose.animation.core.KeyframesSpecBaseConfig<T,androidx.compose.animation.core.KeyframesSpec.KeyframeEntity<T>> {
457    ctor public KeyframesSpec.KeyframesSpecConfig();
458    method @Deprecated public infix void with(androidx.compose.animation.core.KeyframesSpec.KeyframeEntity<T>, androidx.compose.animation.core.Easing easing);
459  }
460
461  public abstract sealed class KeyframesSpecBaseConfig<T, E extends androidx.compose.animation.core.KeyframeBaseEntity<T>> {
462    method public final infix E at(T, @IntRange(from=0L) int timeStamp);
463    method public final infix E atFraction(T, float fraction);
464    method @IntRange(from=0L) public final int getDelayMillis();
465    method @IntRange(from=0L) public final int getDurationMillis();
466    method public final void setDelayMillis(int);
467    method public final void setDurationMillis(int);
468    method public final infix E using(E, androidx.compose.animation.core.Easing easing);
469    property @IntRange(from=0L) public final int delayMillis;
470    property @IntRange(from=0L) public final int durationMillis;
471  }
472
473  @SuppressCompatibility @androidx.compose.animation.core.ExperimentalAnimationSpecApi @androidx.compose.runtime.Immutable public final class KeyframesWithSplineSpec<T> implements androidx.compose.animation.core.DurationBasedAnimationSpec<T> {
474    ctor public KeyframesWithSplineSpec(androidx.compose.animation.core.KeyframesWithSplineSpec.KeyframesWithSplineSpecConfig<T> config);
475    method public androidx.compose.animation.core.KeyframesWithSplineSpec.KeyframesWithSplineSpecConfig<T> getConfig();
476    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
477    property public final androidx.compose.animation.core.KeyframesWithSplineSpec.KeyframesWithSplineSpecConfig<T> config;
478  }
479
480  @SuppressCompatibility @androidx.compose.animation.core.ExperimentalAnimationSpecApi public static final class KeyframesWithSplineSpec.KeyframesWithSplineSpecConfig<T> extends androidx.compose.animation.core.KeyframesSpecBaseConfig<T,androidx.compose.animation.core.KeyframesSpec.KeyframeEntity<T>> {
481    ctor public KeyframesWithSplineSpec.KeyframesWithSplineSpecConfig();
482  }
483
484  public final class MutableTransitionState<S> extends androidx.compose.animation.core.TransitionState<S> {
485    ctor public MutableTransitionState(S initialState);
486    method public S getCurrentState();
487    method public S getTargetState();
488    method public boolean isIdle();
489    method public void setTargetState(S!);
490    property public S currentState;
491    property public final boolean isIdle;
492    property public S targetState;
493  }
494
495  @androidx.compose.runtime.Immutable public final class PathEasing implements androidx.compose.animation.core.Easing {
496    ctor public PathEasing(androidx.compose.ui.graphics.Path path);
497    method public float transform(float fraction);
498  }
499
500  public enum RepeatMode {
501    enum_constant public static final androidx.compose.animation.core.RepeatMode Restart;
502    enum_constant public static final androidx.compose.animation.core.RepeatMode Reverse;
503  }
504
505  @androidx.compose.runtime.Immutable public final class RepeatableSpec<T> implements androidx.compose.animation.core.FiniteAnimationSpec<T> {
506    ctor @Deprecated public RepeatableSpec(int iterations, androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation, optional androidx.compose.animation.core.RepeatMode repeatMode);
507    ctor public RepeatableSpec(int iterations, androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation, optional androidx.compose.animation.core.RepeatMode repeatMode, optional long initialStartOffset);
508    method public androidx.compose.animation.core.DurationBasedAnimationSpec<T> getAnimation();
509    method public long getInitialStartOffset();
510    method public int getIterations();
511    method public androidx.compose.animation.core.RepeatMode getRepeatMode();
512    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
513    property public final androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation;
514    property public final long initialStartOffset;
515    property public final int iterations;
516    property public final androidx.compose.animation.core.RepeatMode repeatMode;
517  }
518
519  @SuppressCompatibility @androidx.compose.animation.core.ExperimentalTransitionApi public final class SeekableTransitionState<S> extends androidx.compose.animation.core.TransitionState<S> {
520    ctor public SeekableTransitionState(S initialState, S targetState);
521    method public suspend Object? animateToCurrentState(optional androidx.compose.animation.core.FiniteAnimationSpec<java.lang.Float> animationSpec, kotlin.coroutines.Continuation<? super kotlin.Unit>);
522    method public suspend Object? animateToTargetState(optional androidx.compose.animation.core.FiniteAnimationSpec<java.lang.Float> animationSpec, kotlin.coroutines.Continuation<? super kotlin.Unit>);
523    method public S getCurrentState();
524    method @FloatRange(from=0.0, to=1.0) public float getFraction();
525    method public S getTargetState();
526    method public suspend Object? snapToFraction(@FloatRange(from=0.0, to=1.0) float fraction, kotlin.coroutines.Continuation<? super kotlin.Unit>);
527    property public S currentState;
528    property @FloatRange(from=0.0, to=1.0) public final float fraction;
529    property public S targetState;
530  }
531
532  @androidx.compose.runtime.Immutable public final class SnapSpec<T> implements androidx.compose.animation.core.DurationBasedAnimationSpec<T> {
533    ctor public SnapSpec(optional int delay);
534    method public int getDelay();
535    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
536    property public final int delay;
537  }
538
539  public final class Spring {
540    field public static final float DampingRatioHighBouncy = 0.2f;
541    field public static final float DampingRatioLowBouncy = 0.75f;
542    field public static final float DampingRatioMediumBouncy = 0.5f;
543    field public static final float DampingRatioNoBouncy = 1.0f;
544    field public static final float DefaultDisplacementThreshold = 0.01f;
545    field public static final androidx.compose.animation.core.Spring INSTANCE;
546    field public static final float StiffnessHigh = 10000.0f;
547    field public static final float StiffnessLow = 200.0f;
548    field public static final float StiffnessMedium = 1500.0f;
549    field public static final float StiffnessMediumLow = 400.0f;
550    field public static final float StiffnessVeryLow = 50.0f;
551  }
552
553  public final class SpringEstimationKt {
554  }
555
556  @androidx.compose.runtime.Immutable public final class SpringSpec<T> implements androidx.compose.animation.core.FiniteAnimationSpec<T> {
557    ctor public SpringSpec(optional float dampingRatio, optional float stiffness, optional T? visibilityThreshold);
558    method public float getDampingRatio();
559    method public float getStiffness();
560    method public T? getVisibilityThreshold();
561    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedSpringSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
562    property public final float dampingRatio;
563    property public final float stiffness;
564    property public final T? visibilityThreshold;
565  }
566
567  @kotlin.jvm.JvmInline public final value class StartOffset {
568    ctor public StartOffset(int offsetMillis, optional int offsetType);
569    method public int getOffsetMillis();
570    method public int getOffsetType();
571    property public final int offsetMillis;
572    property public final int offsetType;
573  }
574
575  @kotlin.jvm.JvmInline public final value class StartOffsetType {
576    field public static final androidx.compose.animation.core.StartOffsetType.Companion Companion;
577  }
578
579  public static final class StartOffsetType.Companion {
580    method public int getDelay();
581    method public int getFastForward();
582    property public final int Delay;
583    property public final int FastForward;
584  }
585
586  public final class SuspendAnimationKt {
587    method public static suspend <T, V extends androidx.compose.animation.core.AnimationVector> Object? animate(androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, T initialValue, T targetValue, optional T? initialVelocity, optional androidx.compose.animation.core.AnimationSpec<T> animationSpec, kotlin.jvm.functions.Function2<? super T,? super T,kotlin.Unit> block, kotlin.coroutines.Continuation<? super kotlin.Unit>);
588    method public static suspend Object? animate(float initialValue, float targetValue, optional float initialVelocity, optional androidx.compose.animation.core.AnimationSpec<java.lang.Float> animationSpec, kotlin.jvm.functions.Function2<? super java.lang.Float,? super java.lang.Float,kotlin.Unit> block, kotlin.coroutines.Continuation<? super kotlin.Unit>);
589    method public static suspend <T, V extends androidx.compose.animation.core.AnimationVector> Object? animateDecay(androidx.compose.animation.core.AnimationState<T,V>, androidx.compose.animation.core.DecayAnimationSpec<T> animationSpec, optional boolean sequentialAnimation, optional kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.AnimationScope<T,V>,kotlin.Unit> block, kotlin.coroutines.Continuation<? super kotlin.Unit>);
590    method public static suspend Object? animateDecay(float initialValue, float initialVelocity, androidx.compose.animation.core.FloatDecayAnimationSpec animationSpec, kotlin.jvm.functions.Function2<? super java.lang.Float,? super java.lang.Float,kotlin.Unit> block, kotlin.coroutines.Continuation<? super kotlin.Unit>);
591    method public static suspend <T, V extends androidx.compose.animation.core.AnimationVector> Object? animateTo(androidx.compose.animation.core.AnimationState<T,V>, T targetValue, optional androidx.compose.animation.core.AnimationSpec<T> animationSpec, optional boolean sequentialAnimation, optional kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.AnimationScope<T,V>,kotlin.Unit> block, kotlin.coroutines.Continuation<? super kotlin.Unit>);
592  }
593
594  public final class TargetBasedAnimation<T, V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.Animation<T,V> {
595    ctor public TargetBasedAnimation(androidx.compose.animation.core.AnimationSpec<T> animationSpec, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, T initialValue, T targetValue, optional V? initialVelocityVector);
596    method public long getDurationNanos();
597    method public T getInitialValue();
598    method public T getTargetValue();
599    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
600    method public T getValueFromNanos(long playTimeNanos);
601    method public V getVelocityVectorFromNanos(long playTimeNanos);
602    method public boolean isInfinite();
603    property public long durationNanos;
604    property public final T initialValue;
605    property public boolean isInfinite;
606    property public T targetValue;
607    property public androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
608  }
609
610  @androidx.compose.runtime.Stable public final class Transition<S> {
611    ctor @kotlin.PublishedApi internal Transition(androidx.compose.animation.core.MutableTransitionState<S> transitionState, optional String? label);
612    ctor @kotlin.PublishedApi internal Transition(androidx.compose.animation.core.TransitionState<S> transitionState, optional String? label);
613    method public java.util.List<androidx.compose.animation.core.Transition<S>.TransitionAnimationState<?,?>> getAnimations();
614    method public S getCurrentState();
615    method public String? getLabel();
616    method public androidx.compose.animation.core.Transition.Segment<S> getSegment();
617    method public S getTargetState();
618    method public long getTotalDurationNanos();
619    method public java.util.List<androidx.compose.animation.core.Transition<?>> getTransitions();
620    method public boolean isRunning();
621    property public final java.util.List<androidx.compose.animation.core.Transition<S>.TransitionAnimationState<?,?>> animations;
622    property public final S currentState;
623    property public final boolean isRunning;
624    property public final String? label;
625    property public final androidx.compose.animation.core.Transition.Segment<S> segment;
626    property public final S targetState;
627    property public final long totalDurationNanos;
628    property public final java.util.List<androidx.compose.animation.core.Transition<?>> transitions;
629  }
630
631  @kotlin.jvm.JvmDefaultWithCompatibility public static interface Transition.Segment<S> {
632    method public S getInitialState();
633    method public S getTargetState();
634    method public default infix boolean isTransitioningTo(S, S targetState);
635    property public abstract S initialState;
636    property public abstract S targetState;
637  }
638
639  @androidx.compose.runtime.Stable public final class Transition.TransitionAnimationState<T, V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.runtime.State<T> {
640    method public androidx.compose.animation.core.TargetBasedAnimation<T,V> getAnimation();
641    method public androidx.compose.animation.core.FiniteAnimationSpec<T> getAnimationSpec();
642    method public String getLabel();
643    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
644    method public T getValue();
645    property public final androidx.compose.animation.core.TargetBasedAnimation<T,V> animation;
646    property public final androidx.compose.animation.core.FiniteAnimationSpec<T> animationSpec;
647    property public final String label;
648    property public final androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
649    property public T value;
650  }
651
652  public final class TransitionKt {
653    method @androidx.compose.runtime.Composable public static inline <S> androidx.compose.runtime.State<androidx.compose.ui.unit.Dp> animateDp(androidx.compose.animation.core.Transition<S>, optional kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.Transition.Segment<S>,? extends androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.Dp>> transitionSpec, optional String label, kotlin.jvm.functions.Function1<? super S,androidx.compose.ui.unit.Dp> targetValueByState);
654    method @androidx.compose.runtime.Composable public static inline <S> androidx.compose.runtime.State<java.lang.Float> animateFloat(androidx.compose.animation.core.Transition<S>, optional kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.Transition.Segment<S>,? extends androidx.compose.animation.core.FiniteAnimationSpec<java.lang.Float>> transitionSpec, optional String label, kotlin.jvm.functions.Function1<? super S,java.lang.Float> targetValueByState);
655    method @androidx.compose.runtime.Composable public static inline <S> androidx.compose.runtime.State<java.lang.Integer> animateInt(androidx.compose.animation.core.Transition<S>, optional kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.Transition.Segment<S>,? extends androidx.compose.animation.core.FiniteAnimationSpec<java.lang.Integer>> transitionSpec, optional String label, kotlin.jvm.functions.Function1<? super S,java.lang.Integer> targetValueByState);
656    method @androidx.compose.runtime.Composable public static inline <S> androidx.compose.runtime.State<androidx.compose.ui.unit.IntOffset> animateIntOffset(androidx.compose.animation.core.Transition<S>, optional kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.Transition.Segment<S>,? extends androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntOffset>> transitionSpec, optional String label, kotlin.jvm.functions.Function1<? super S,androidx.compose.ui.unit.IntOffset> targetValueByState);
657    method @androidx.compose.runtime.Composable public static inline <S> androidx.compose.runtime.State<androidx.compose.ui.unit.IntSize> animateIntSize(androidx.compose.animation.core.Transition<S>, optional kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.Transition.Segment<S>,? extends androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.unit.IntSize>> transitionSpec, optional String label, kotlin.jvm.functions.Function1<? super S,androidx.compose.ui.unit.IntSize> targetValueByState);
658    method @androidx.compose.runtime.Composable public static inline <S> androidx.compose.runtime.State<androidx.compose.ui.geometry.Offset> animateOffset(androidx.compose.animation.core.Transition<S>, optional kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.Transition.Segment<S>,? extends androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.geometry.Offset>> transitionSpec, optional String label, kotlin.jvm.functions.Function1<? super S,androidx.compose.ui.geometry.Offset> targetValueByState);
659    method @androidx.compose.runtime.Composable public static inline <S> androidx.compose.runtime.State<androidx.compose.ui.geometry.Rect> animateRect(androidx.compose.animation.core.Transition<S>, optional kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.Transition.Segment<S>,? extends androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.geometry.Rect>> transitionSpec, optional String label, kotlin.jvm.functions.Function1<? super S,androidx.compose.ui.geometry.Rect> targetValueByState);
660    method @androidx.compose.runtime.Composable public static inline <S> androidx.compose.runtime.State<androidx.compose.ui.geometry.Size> animateSize(androidx.compose.animation.core.Transition<S>, optional kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.Transition.Segment<S>,? extends androidx.compose.animation.core.FiniteAnimationSpec<androidx.compose.ui.geometry.Size>> transitionSpec, optional String label, kotlin.jvm.functions.Function1<? super S,androidx.compose.ui.geometry.Size> targetValueByState);
661    method @androidx.compose.runtime.Composable public static inline <S, T, V extends androidx.compose.animation.core.AnimationVector> androidx.compose.runtime.State<T> animateValue(androidx.compose.animation.core.Transition<S>, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, optional kotlin.jvm.functions.Function1<? super androidx.compose.animation.core.Transition.Segment<S>,? extends androidx.compose.animation.core.FiniteAnimationSpec<T>> transitionSpec, optional String label, kotlin.jvm.functions.Function1<? super S,? extends T> targetValueByState);
662    method @SuppressCompatibility @androidx.compose.animation.core.ExperimentalTransitionApi @androidx.compose.runtime.Composable public static inline <S, T> androidx.compose.animation.core.Transition<T> createChildTransition(androidx.compose.animation.core.Transition<S>, optional String label, kotlin.jvm.functions.Function1<? super S,? extends T> transformToChildState);
663    method @androidx.compose.runtime.Composable @kotlin.PublishedApi internal static <S, T> androidx.compose.animation.core.Transition<T> createChildTransitionInternal(androidx.compose.animation.core.Transition<S>, T initialState, T targetState, String childLabel);
664    method @androidx.compose.runtime.Composable @kotlin.PublishedApi internal static <S, T, V extends androidx.compose.animation.core.AnimationVector> androidx.compose.runtime.State<T> createTransitionAnimation(androidx.compose.animation.core.Transition<S>, T initialValue, T targetValue, androidx.compose.animation.core.FiniteAnimationSpec<T> animationSpec, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, String label);
665    method @SuppressCompatibility @androidx.compose.animation.core.ExperimentalTransitionApi @androidx.compose.runtime.Composable public static <T> androidx.compose.animation.core.Transition<T> rememberTransition(androidx.compose.animation.core.TransitionState<T> transitionState, optional String? label);
666    method @androidx.compose.runtime.Composable public static <T> androidx.compose.animation.core.Transition<T> updateTransition(androidx.compose.animation.core.MutableTransitionState<T> transitionState, optional String? label);
667    method @androidx.compose.runtime.Composable public static <T> androidx.compose.animation.core.Transition<T> updateTransition(T targetState, optional String? label);
668  }
669
670  public abstract sealed class TransitionState<S> {
671    method public abstract S getCurrentState();
672    method public abstract S getTargetState();
673    property public abstract S currentState;
674    property public abstract S targetState;
675  }
676
677  @androidx.compose.runtime.Immutable public final class TweenSpec<T> implements androidx.compose.animation.core.DurationBasedAnimationSpec<T> {
678    ctor public TweenSpec(optional int durationMillis, optional int delay, optional androidx.compose.animation.core.Easing easing);
679    method public int getDelay();
680    method public int getDurationMillis();
681    method public androidx.compose.animation.core.Easing getEasing();
682    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedTweenSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
683    property public final int delay;
684    property public final int durationMillis;
685    property public final androidx.compose.animation.core.Easing easing;
686  }
687
688  public interface TwoWayConverter<T, V extends androidx.compose.animation.core.AnimationVector> {
689    method public kotlin.jvm.functions.Function1<V,T> getConvertFromVector();
690    method public kotlin.jvm.functions.Function1<T,V> getConvertToVector();
691    property public abstract kotlin.jvm.functions.Function1<V,T> convertFromVector;
692    property public abstract kotlin.jvm.functions.Function1<T,V> convertToVector;
693  }
694
695  public final class VectorConvertersKt {
696    method public static <T, V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.TwoWayConverter<T,V> TwoWayConverter(kotlin.jvm.functions.Function1<? super T,? extends V> convertToVector, kotlin.jvm.functions.Function1<? super V,? extends T> convertFromVector);
697    method public static androidx.compose.animation.core.TwoWayConverter<androidx.compose.ui.geometry.Offset,androidx.compose.animation.core.AnimationVector2D> getVectorConverter(androidx.compose.ui.geometry.Offset.Companion);
698    method public static androidx.compose.animation.core.TwoWayConverter<androidx.compose.ui.geometry.Rect,androidx.compose.animation.core.AnimationVector4D> getVectorConverter(androidx.compose.ui.geometry.Rect.Companion);
699    method public static androidx.compose.animation.core.TwoWayConverter<androidx.compose.ui.geometry.Size,androidx.compose.animation.core.AnimationVector2D> getVectorConverter(androidx.compose.ui.geometry.Size.Companion);
700    method public static androidx.compose.animation.core.TwoWayConverter<androidx.compose.ui.unit.Dp,androidx.compose.animation.core.AnimationVector1D> getVectorConverter(androidx.compose.ui.unit.Dp.Companion);
701    method public static androidx.compose.animation.core.TwoWayConverter<androidx.compose.ui.unit.DpOffset,androidx.compose.animation.core.AnimationVector2D> getVectorConverter(androidx.compose.ui.unit.DpOffset.Companion);
702    method public static androidx.compose.animation.core.TwoWayConverter<androidx.compose.ui.unit.IntOffset,androidx.compose.animation.core.AnimationVector2D> getVectorConverter(androidx.compose.ui.unit.IntOffset.Companion);
703    method public static androidx.compose.animation.core.TwoWayConverter<androidx.compose.ui.unit.IntSize,androidx.compose.animation.core.AnimationVector2D> getVectorConverter(androidx.compose.ui.unit.IntSize.Companion);
704    method public static androidx.compose.animation.core.TwoWayConverter<java.lang.Float,androidx.compose.animation.core.AnimationVector1D> getVectorConverter(kotlin.jvm.internal.FloatCompanionObject);
705    method public static androidx.compose.animation.core.TwoWayConverter<java.lang.Integer,androidx.compose.animation.core.AnimationVector1D> getVectorConverter(kotlin.jvm.internal.IntCompanionObject);
706  }
707
708  @kotlin.jvm.JvmDefaultWithCompatibility public interface VectorizedAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> {
709    method public long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
710    method public default V getEndVelocity(V initialValue, V targetValue, V initialVelocity);
711    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
712    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
713    method public boolean isInfinite();
714    property public abstract boolean isInfinite;
715  }
716
717  public interface VectorizedDecayAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> {
718    method public float getAbsVelocityThreshold();
719    method public long getDurationNanos(V initialValue, V initialVelocity);
720    method public V getTargetValue(V initialValue, V initialVelocity);
721    method public V getValueFromNanos(long playTimeNanos, V initialValue, V initialVelocity);
722    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V initialVelocity);
723    property public abstract float absVelocityThreshold;
724  }
725
726  @kotlin.jvm.JvmDefaultWithCompatibility public interface VectorizedDurationBasedAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> extends androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> {
727    method public int getDelayMillis();
728    method public int getDurationMillis();
729    method public default long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
730    property public abstract int delayMillis;
731    property public abstract int durationMillis;
732  }
733
734  @kotlin.jvm.JvmDefaultWithCompatibility public interface VectorizedFiniteAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> extends androidx.compose.animation.core.VectorizedAnimationSpec<V> {
735    method public default boolean isInfinite();
736    property public default boolean isInfinite;
737  }
738
739  public final class VectorizedFloatAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> {
740    ctor public VectorizedFloatAnimationSpec(androidx.compose.animation.core.FloatAnimationSpec anim);
741    method public long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
742    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
743    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
744  }
745
746  public final class VectorizedInfiniteRepeatableSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedAnimationSpec<V> {
747    ctor @Deprecated public VectorizedInfiniteRepeatableSpec(androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> animation, optional androidx.compose.animation.core.RepeatMode repeatMode);
748    ctor public VectorizedInfiniteRepeatableSpec(androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> animation, optional androidx.compose.animation.core.RepeatMode repeatMode, optional long initialStartOffset);
749    method public long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
750    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
751    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
752    method public boolean isInfinite();
753    property public boolean isInfinite;
754  }
755
756  public final class VectorizedKeyframesSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> {
757    ctor public VectorizedKeyframesSpec(java.util.Map<java.lang.Integer,? extends kotlin.Pair<? extends V,? extends androidx.compose.animation.core.Easing>> keyframes, int durationMillis, optional int delayMillis);
758    method public int getDelayMillis();
759    method public int getDurationMillis();
760    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
761    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
762    property public int delayMillis;
763    property public int durationMillis;
764  }
765
766  public final class VectorizedRepeatableSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> {
767    ctor @Deprecated public VectorizedRepeatableSpec(int iterations, androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> animation, optional androidx.compose.animation.core.RepeatMode repeatMode);
768    ctor public VectorizedRepeatableSpec(int iterations, androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> animation, optional androidx.compose.animation.core.RepeatMode repeatMode, optional long initialStartOffset);
769    method public long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
770    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
771    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
772  }
773
774  public final class VectorizedSnapSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> {
775    ctor public VectorizedSnapSpec(optional int delayMillis);
776    method public int getDelayMillis();
777    method public int getDurationMillis();
778    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
779    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
780    property public int delayMillis;
781    property public int durationMillis;
782  }
783
784  public final class VectorizedSpringSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> {
785    ctor public VectorizedSpringSpec(optional float dampingRatio, optional float stiffness, optional V? visibilityThreshold);
786    method public float getDampingRatio();
787    method public float getStiffness();
788    property public final float dampingRatio;
789    property public final float stiffness;
790  }
791
792  public final class VectorizedTweenSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> {
793    ctor public VectorizedTweenSpec(optional int durationMillis, optional int delayMillis, optional androidx.compose.animation.core.Easing easing);
794    method public int getDelayMillis();
795    method public int getDurationMillis();
796    method public androidx.compose.animation.core.Easing getEasing();
797    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
798    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
799    property public int delayMillis;
800    property public int durationMillis;
801    property public final androidx.compose.animation.core.Easing easing;
802  }
803
804  public final class VisibilityThresholdsKt {
805    method public static long getVisibilityThreshold(androidx.compose.ui.geometry.Offset.Companion);
806    method public static androidx.compose.ui.geometry.Rect getVisibilityThreshold(androidx.compose.ui.geometry.Rect.Companion);
807    method public static long getVisibilityThreshold(androidx.compose.ui.geometry.Size.Companion);
808    method public static float getVisibilityThreshold(androidx.compose.ui.unit.Dp.Companion);
809    method public static long getVisibilityThreshold(androidx.compose.ui.unit.DpOffset.Companion);
810    method public static long getVisibilityThreshold(androidx.compose.ui.unit.IntOffset.Companion);
811    method public static long getVisibilityThreshold(androidx.compose.ui.unit.IntSize.Companion);
812    method public static int getVisibilityThreshold(kotlin.jvm.internal.IntCompanionObject);
813  }
814
815}
816
817