1// Signature format: 4.0
2package androidx.compose.animation.core {
3
4  public final class ActualJvmKt {
5  }
6
7  public final class Animatable<T, V extends androidx.compose.animation.core.AnimationVector> {
8    ctor public Animatable(T? initialValue, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, optional T? visibilityThreshold);
9    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, optional kotlin.coroutines.Continuation<? super androidx.compose.animation.core.AnimationResult<T,V>> p);
10    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, optional kotlin.coroutines.Continuation<? super androidx.compose.animation.core.AnimationResult<T,V>> p);
11    method public androidx.compose.runtime.State<T> asState();
12    method public T? getLowerBound();
13    method public T! getTargetValue();
14    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
15    method public T? getUpperBound();
16    method public T! getValue();
17    method public T! getVelocity();
18    method public V getVelocityVector();
19    method public boolean isRunning();
20    method public suspend Object? snapTo(T? targetValue, kotlin.coroutines.Continuation<? super kotlin.Unit> p);
21    method public suspend Object? stop(kotlin.coroutines.Continuation<? super kotlin.Unit> p);
22    method public void updateBounds(optional T? lowerBound, optional T? upperBound);
23    property public final boolean isRunning;
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 kotlin.jvm.functions.Function1<? super androidx.compose.ui.unit.Dp,kotlin.Unit>? finishedListener);
39    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 kotlin.jvm.functions.Function1<? super java.lang.Float,kotlin.Unit>? finishedListener);
40    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 kotlin.jvm.functions.Function1<? super java.lang.Integer,kotlin.Unit>? finishedListener);
41    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 kotlin.jvm.functions.Function1<? super androidx.compose.ui.unit.IntOffset,kotlin.Unit>? finishedListener);
42    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 kotlin.jvm.functions.Function1<? super androidx.compose.ui.unit.IntSize,kotlin.Unit>? finishedListener);
43    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 kotlin.jvm.functions.Function1<? super androidx.compose.ui.geometry.Offset,kotlin.Unit>? finishedListener);
44    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 kotlin.jvm.functions.Function1<? super androidx.compose.ui.geometry.Rect,kotlin.Unit>? finishedListener);
45    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 kotlin.jvm.functions.Function1<? super androidx.compose.ui.geometry.Size,kotlin.Unit>? finishedListener);
46    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 kotlin.jvm.functions.Function1<? super T,kotlin.Unit>? finishedListener);
47  }
48
49  public interface Animation<T, V extends androidx.compose.animation.core.AnimationVector> {
50    method public long getDurationNanos();
51    method public T! getTargetValue();
52    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
53    method public T! getValueFromNanos(long playTimeNanos);
54    method public V getVelocityVectorFromNanos(long playTimeNanos);
55    method public default boolean isFinishedFromNanos(long playTimeNanos);
56    method public boolean isInfinite();
57    property public abstract long durationNanos;
58    property public abstract boolean isInfinite;
59    property public abstract T! targetValue;
60    property public abstract androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
61  }
62
63  public final class AnimationConstants {
64    field public static final int DefaultDurationMillis = 300; // 0x12c
65    field public static final androidx.compose.animation.core.AnimationConstants INSTANCE;
66    field public static final long UnspecifiedTime = -9223372036854775808L; // 0x8000000000000000L
67  }
68
69  public enum AnimationEndReason {
70    enum_constant public static final androidx.compose.animation.core.AnimationEndReason BoundReached;
71    enum_constant public static final androidx.compose.animation.core.AnimationEndReason Finished;
72  }
73
74  public final class AnimationKt {
75    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);
76    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);
77    method public static <T, V extends androidx.compose.animation.core.AnimationVector> T! getVelocityFromNanos(androidx.compose.animation.core.Animation<T,V>, long playTimeNanos);
78  }
79
80  public final class AnimationResult<T, V extends androidx.compose.animation.core.AnimationVector> {
81    ctor public AnimationResult(androidx.compose.animation.core.AnimationState<T,V> endState, androidx.compose.animation.core.AnimationEndReason endReason);
82    method public androidx.compose.animation.core.AnimationEndReason getEndReason();
83    method public androidx.compose.animation.core.AnimationState<T,V> getEndState();
84    property public final androidx.compose.animation.core.AnimationEndReason endReason;
85    property public final androidx.compose.animation.core.AnimationState<T,V> endState;
86  }
87
88  public final class AnimationScope<T, V extends androidx.compose.animation.core.AnimationVector> {
89    method public void cancelAnimation();
90    method public long getFinishedTimeNanos();
91    method public long getLastFrameTimeNanos();
92    method public long getStartTimeNanos();
93    method public T! getTargetValue();
94    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
95    method public T! getValue();
96    method public T! getVelocity();
97    method public V getVelocityVector();
98    method public boolean isRunning();
99    method public androidx.compose.animation.core.AnimationState<T,V> toAnimationState();
100    property public final long finishedTimeNanos;
101    property public final boolean isRunning;
102    property public final long lastFrameTimeNanos;
103    property public final long startTimeNanos;
104    property public final T! targetValue;
105    property public final androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
106    property public final T! value;
107    property public final T! velocity;
108    property public final V velocityVector;
109  }
110
111  public interface AnimationSpec<T> {
112    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
113  }
114
115  public final class AnimationSpecKt {
116    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);
117    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);
118    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);
119    method @androidx.compose.runtime.Stable public static <T> androidx.compose.animation.core.SnapSpec<T> snap(optional int delayMillis);
120    method @androidx.compose.runtime.Stable public static <T> androidx.compose.animation.core.SpringSpec<T> spring(optional float dampingRatio, optional float stiffness, optional T? visibilityThreshold);
121    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);
122  }
123
124  public final class AnimationState<T, V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.runtime.State<T> {
125    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);
126    method public long getFinishedTimeNanos();
127    method public long getLastFrameTimeNanos();
128    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
129    method public T! getValue();
130    method public T! getVelocity();
131    method public V getVelocityVector();
132    method public boolean isRunning();
133    property public final long finishedTimeNanos;
134    property public final boolean isRunning;
135    property public final long lastFrameTimeNanos;
136    property public final androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
137    property public T! value;
138    property public final T! velocity;
139    property public final V velocityVector;
140  }
141
142  public final class AnimationStateKt {
143    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);
144    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);
145    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);
146    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);
147    method public static <T, V extends androidx.compose.animation.core.AnimationVector> V createZeroVectorFrom(androidx.compose.animation.core.TwoWayConverter<T,V>, T? value);
148    method public static boolean isFinished(androidx.compose.animation.core.AnimationState<?,?>);
149  }
150
151  public abstract sealed class AnimationVector {
152  }
153
154  public final class AnimationVector1D extends androidx.compose.animation.core.AnimationVector {
155    ctor public AnimationVector1D(float initVal);
156    method public float getValue();
157    property public final float value;
158  }
159
160  public final class AnimationVector2D extends androidx.compose.animation.core.AnimationVector {
161    ctor public AnimationVector2D(float v1, float v2);
162    method public float getV1();
163    method public float getV2();
164    property public final float v1;
165    property public final float v2;
166  }
167
168  public final class AnimationVector3D extends androidx.compose.animation.core.AnimationVector {
169    ctor public AnimationVector3D(float v1, float v2, float v3);
170    method public float getV1();
171    method public float getV2();
172    method public float getV3();
173    property public final float v1;
174    property public final float v2;
175    property public final float v3;
176  }
177
178  public final class AnimationVector4D extends androidx.compose.animation.core.AnimationVector {
179    ctor public AnimationVector4D(float v1, float v2, float v3, float v4);
180    method public float getV1();
181    method public float getV2();
182    method public float getV3();
183    method public float getV4();
184    property public final float v1;
185    property public final float v2;
186    property public final float v3;
187    property public final float v4;
188  }
189
190  public final class AnimationVectorsKt {
191    method public static androidx.compose.animation.core.AnimationVector1D AnimationVector(float v1);
192    method public static androidx.compose.animation.core.AnimationVector2D AnimationVector(float v1, float v2);
193    method public static androidx.compose.animation.core.AnimationVector3D AnimationVector(float v1, float v2, float v3);
194    method public static androidx.compose.animation.core.AnimationVector4D AnimationVector(float v1, float v2, float v3, float v4);
195  }
196
197  public final class ComplexDoubleKt {
198  }
199
200  @androidx.compose.runtime.Immutable public final class CubicBezierEasing implements androidx.compose.animation.core.Easing {
201    ctor public CubicBezierEasing(float a, float b, float c, float d);
202    method public float transform(float fraction);
203  }
204
205  public final class DecayAnimation<T, V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.Animation<T,V> {
206    ctor public DecayAnimation(androidx.compose.animation.core.DecayAnimationSpec<T> animationSpec, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, T? initialValue, T? initialVelocity);
207    ctor public DecayAnimation(androidx.compose.animation.core.DecayAnimationSpec<T> animationSpec, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, T? initialValue, V initialVelocityVector);
208    ctor public DecayAnimation(androidx.compose.animation.core.VectorizedDecayAnimationSpec<V> animationSpec, androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter, T? initialValue, V initialVelocityVector);
209    method public long getDurationNanos();
210    method public T! getInitialValue();
211    method public V getInitialVelocityVector();
212    method public T! getTargetValue();
213    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
214    method public T! getValueFromNanos(long playTimeNanos);
215    method public V getVelocityVectorFromNanos(long playTimeNanos);
216    method public boolean isInfinite();
217    property public long durationNanos;
218    property public final T! initialValue;
219    property public final V initialVelocityVector;
220    property public boolean isInfinite;
221    property public T! targetValue;
222    property public androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
223  }
224
225  public interface DecayAnimationSpec<T> {
226    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedDecayAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter);
227  }
228
229  public final class DecayAnimationSpecKt {
230    method public static float calculateTargetValue(androidx.compose.animation.core.DecayAnimationSpec<java.lang.Float>, float initialValue, float initialVelocity);
231    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);
232    method public static <T> androidx.compose.animation.core.DecayAnimationSpec<T> exponentialDecay(optional float frictionMultiplier, optional float absVelocityThreshold);
233    method public static <T> androidx.compose.animation.core.DecayAnimationSpec<T> generateDecayAnimationSpec(androidx.compose.animation.core.FloatDecayAnimationSpec);
234  }
235
236  public interface DurationBasedAnimationSpec<T> extends androidx.compose.animation.core.FiniteAnimationSpec<T> {
237    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
238  }
239
240  @androidx.compose.runtime.Stable public fun interface Easing {
241    method public float transform(float fraction);
242  }
243
244  public final class EasingKt {
245    method public static androidx.compose.animation.core.Easing getFastOutLinearInEasing();
246    method public static androidx.compose.animation.core.Easing getFastOutSlowInEasing();
247    method public static androidx.compose.animation.core.Easing getLinearEasing();
248    method public static androidx.compose.animation.core.Easing getLinearOutSlowInEasing();
249  }
250
251  @kotlin.RequiresOptIn(message="This is an experimental animation API for Transition. It may change in the future.") public @interface ExperimentalTransitionApi {
252  }
253
254  public interface FiniteAnimationSpec<T> extends androidx.compose.animation.core.AnimationSpec<T> {
255    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
256  }
257
258  public interface FloatAnimationSpec extends androidx.compose.animation.core.AnimationSpec<java.lang.Float> {
259    method public long getDurationNanos(float initialValue, float targetValue, float initialVelocity);
260    method public default float getEndVelocity(float initialValue, float targetValue, float initialVelocity);
261    method public float getValueFromNanos(long playTimeNanos, float initialValue, float targetValue, float initialVelocity);
262    method public float getVelocityFromNanos(long playTimeNanos, float initialValue, float targetValue, float initialVelocity);
263    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);
264  }
265
266  public interface FloatDecayAnimationSpec {
267    method public float getAbsVelocityThreshold();
268    method public long getDurationNanos(float initialValue, float initialVelocity);
269    method public float getTargetValue(float initialValue, float initialVelocity);
270    method public float getValueFromNanos(long playTimeNanos, float initialValue, float initialVelocity);
271    method public float getVelocityFromNanos(long playTimeNanos, float initialValue, float initialVelocity);
272    property public abstract float absVelocityThreshold;
273  }
274
275  public final class FloatDecayAnimationSpecKt {
276  }
277
278  public final class FloatExponentialDecaySpec implements androidx.compose.animation.core.FloatDecayAnimationSpec {
279    ctor public FloatExponentialDecaySpec(optional float frictionMultiplier, optional float absVelocityThreshold);
280    method public float getAbsVelocityThreshold();
281    method public long getDurationNanos(float initialValue, float initialVelocity);
282    method public float getTargetValue(float initialValue, float initialVelocity);
283    method public float getValueFromNanos(long playTimeNanos, float initialValue, float initialVelocity);
284    method public float getVelocityFromNanos(long playTimeNanos, float initialValue, float initialVelocity);
285    property public float absVelocityThreshold;
286  }
287
288  public final class FloatSpringSpec implements androidx.compose.animation.core.FloatAnimationSpec {
289    ctor public FloatSpringSpec(optional float dampingRatio, optional float stiffness, optional float visibilityThreshold);
290    method public float getDampingRatio();
291    method public long getDurationNanos(float initialValue, float targetValue, float initialVelocity);
292    method public float getStiffness();
293    method public float getValueFromNanos(long playTimeNanos, float initialValue, float targetValue, float initialVelocity);
294    method public float getVelocityFromNanos(long playTimeNanos, float initialValue, float targetValue, float initialVelocity);
295    property public final float dampingRatio;
296    property public final float stiffness;
297  }
298
299  public final class FloatTweenSpec implements androidx.compose.animation.core.FloatAnimationSpec {
300    ctor public FloatTweenSpec(optional int duration, optional int delay, optional androidx.compose.animation.core.Easing easing);
301    method public int getDelay();
302    method public int getDuration();
303    method public long getDurationNanos(float initialValue, float targetValue, float initialVelocity);
304    method public float getValueFromNanos(long playTimeNanos, float initialValue, float targetValue, float initialVelocity);
305    method public float getVelocityFromNanos(long playTimeNanos, float initialValue, float targetValue, float initialVelocity);
306    property public final int delay;
307    property public final int duration;
308  }
309
310  public interface InfiniteAnimationPolicy extends kotlin.coroutines.CoroutineContext.Element {
311    method public default kotlin.coroutines.CoroutineContext.Key<?> getKey();
312    method public suspend <R> Object? onInfiniteOperation(kotlin.jvm.functions.Function1<? super kotlin.coroutines.Continuation<? super R>,?> block, kotlin.coroutines.Continuation<? super R> p);
313    property public default kotlin.coroutines.CoroutineContext.Key<?> key;
314    field public static final androidx.compose.animation.core.InfiniteAnimationPolicy.Key Key;
315  }
316
317  public static final class InfiniteAnimationPolicy.Key implements kotlin.coroutines.CoroutineContext.Key<androidx.compose.animation.core.InfiniteAnimationPolicy> {
318  }
319
320  public final class InfiniteAnimationPolicyKt {
321    method public static suspend inline <R> Object? withInfiniteAnimationFrameMillis(kotlin.jvm.functions.Function1<? super java.lang.Long,? extends R> onFrame, kotlin.coroutines.Continuation<? super R> p);
322    method public static suspend <R> Object? withInfiniteAnimationFrameNanos(kotlin.jvm.functions.Function1<? super java.lang.Long,? extends R> onFrame, kotlin.coroutines.Continuation<? super R> p);
323  }
324
325  public final class InfiniteRepeatableSpec<T> implements androidx.compose.animation.core.AnimationSpec<T> {
326    ctor public InfiniteRepeatableSpec(androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation, optional androidx.compose.animation.core.RepeatMode repeatMode);
327    method public androidx.compose.animation.core.DurationBasedAnimationSpec<T> getAnimation();
328    method public androidx.compose.animation.core.RepeatMode getRepeatMode();
329    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
330    property public final androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation;
331    property public final androidx.compose.animation.core.RepeatMode repeatMode;
332  }
333
334  public final class InfiniteTransition {
335  }
336
337  public final class InfiniteTransitionKt {
338    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);
339    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);
340    method @androidx.compose.runtime.Composable public static androidx.compose.animation.core.InfiniteTransition rememberInfiniteTransition();
341  }
342
343  @kotlin.RequiresOptIn(message="This API is internal to library.") @kotlin.annotation.Target(allowedTargets={kotlin.annotation.AnnotationTarget, kotlin.annotation.AnnotationTarget, kotlin.annotation.AnnotationTarget}) public @interface InternalAnimationApi {
344  }
345
346  @androidx.compose.runtime.Immutable public final class KeyframesSpec<T> implements androidx.compose.animation.core.DurationBasedAnimationSpec<T> {
347    ctor public KeyframesSpec(androidx.compose.animation.core.KeyframesSpec.KeyframesSpecConfig<T> config);
348    method public androidx.compose.animation.core.KeyframesSpec.KeyframesSpecConfig<T> getConfig();
349    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedKeyframesSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
350    property public final androidx.compose.animation.core.KeyframesSpec.KeyframesSpecConfig<T> config;
351  }
352
353  public static final class KeyframesSpec.KeyframeEntity<T> {
354  }
355
356  public static final class KeyframesSpec.KeyframesSpecConfig<T> {
357    ctor public KeyframesSpec.KeyframesSpecConfig();
358    method public infix androidx.compose.animation.core.KeyframesSpec.KeyframeEntity<T> at(T?, int timeStamp);
359    method public int getDelayMillis();
360    method public int getDurationMillis();
361    method public void setDelayMillis(int delayMillis);
362    method public void setDurationMillis(int durationMillis);
363    method public infix void with(androidx.compose.animation.core.KeyframesSpec.KeyframeEntity<T>, androidx.compose.animation.core.Easing easing);
364    property public final int delayMillis;
365    property public final int durationMillis;
366  }
367
368  public final class ManualFrameClock implements androidx.compose.runtime.MonotonicFrameClock {
369    ctor public ManualFrameClock(optional long initialTime);
370    method public void advanceClock(long nanos);
371    method public long getCurrentTime();
372    method public boolean getHasAwaiters();
373    method public suspend <R> Object? withFrameNanos(kotlin.jvm.functions.Function1<? super java.lang.Long,? extends R> onFrame, kotlin.coroutines.Continuation<? super R> p);
374    property public final long currentTime;
375    property public final boolean hasAwaiters;
376  }
377
378  public final class ManualFrameClockKt {
379    method public static void advanceClockMillis(androidx.compose.animation.core.ManualFrameClock, long millis);
380  }
381
382  public final class MutableTransitionState<S> {
383    ctor public MutableTransitionState(S? initialState);
384    method public S! getCurrentState();
385    method public S! getTargetState();
386    method @androidx.compose.animation.core.ExperimentalTransitionApi public boolean isIdle();
387    method public void setTargetState(S! targetState);
388    property public final S! currentState;
389    property @androidx.compose.animation.core.ExperimentalTransitionApi public final boolean isIdle;
390    property public final S! targetState;
391  }
392
393  public enum RepeatMode {
394    enum_constant public static final androidx.compose.animation.core.RepeatMode Restart;
395    enum_constant public static final androidx.compose.animation.core.RepeatMode Reverse;
396  }
397
398  @androidx.compose.runtime.Immutable public final class RepeatableSpec<T> implements androidx.compose.animation.core.FiniteAnimationSpec<T> {
399    ctor public RepeatableSpec(int iterations, androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation, optional androidx.compose.animation.core.RepeatMode repeatMode);
400    method public androidx.compose.animation.core.DurationBasedAnimationSpec<T> getAnimation();
401    method public int getIterations();
402    method public androidx.compose.animation.core.RepeatMode getRepeatMode();
403    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
404    property public final androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation;
405    property public final int iterations;
406    property public final androidx.compose.animation.core.RepeatMode repeatMode;
407  }
408
409  @androidx.compose.runtime.Immutable public final class SnapSpec<T> implements androidx.compose.animation.core.DurationBasedAnimationSpec<T> {
410    ctor public SnapSpec(optional int delay);
411    method public int getDelay();
412    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
413    property public final int delay;
414  }
415
416  public final class Spring {
417    field public static final float DampingRatioHighBouncy = 0.2f;
418    field public static final float DampingRatioLowBouncy = 0.75f;
419    field public static final float DampingRatioMediumBouncy = 0.5f;
420    field public static final float DampingRatioNoBouncy = 1.0f;
421    field public static final float DefaultDisplacementThreshold = 0.01f;
422    field public static final androidx.compose.animation.core.Spring INSTANCE;
423    field public static final float StiffnessHigh = 10000.0f;
424    field public static final float StiffnessLow = 200.0f;
425    field public static final float StiffnessMedium = 1500.0f;
426    field public static final float StiffnessVeryLow = 50.0f;
427  }
428
429  public final class SpringEstimationKt {
430  }
431
432  public final class SpringSimulationKt {
433  }
434
435  @androidx.compose.runtime.Immutable public final class SpringSpec<T> implements androidx.compose.animation.core.FiniteAnimationSpec<T> {
436    ctor public SpringSpec(optional float dampingRatio, optional float stiffness, optional T? visibilityThreshold);
437    method public float getDampingRatio();
438    method public float getStiffness();
439    method public T? getVisibilityThreshold();
440    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedSpringSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
441    property public final float dampingRatio;
442    property public final float stiffness;
443    property public final T? visibilityThreshold;
444  }
445
446  public final class SuspendAnimationKt {
447    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> p);
448    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> p);
449    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, optional kotlin.coroutines.Continuation<? super kotlin.Unit> p);
450    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> p);
451    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, optional kotlin.coroutines.Continuation<? super kotlin.Unit> p);
452  }
453
454  public final class TargetBasedAnimation<T, V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.Animation<T,V> {
455    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);
456    method public long getDurationNanos();
457    method public T! getInitialValue();
458    method public T! getTargetValue();
459    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
460    method public T! getValueFromNanos(long playTimeNanos);
461    method public V getVelocityVectorFromNanos(long playTimeNanos);
462    method public boolean isInfinite();
463    property public long durationNanos;
464    property public final T! initialValue;
465    property public boolean isInfinite;
466    property public T! targetValue;
467    property public androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
468  }
469
470  public final class Transition<S> {
471    method public S! getCurrentState();
472    method public String? getLabel();
473    method public androidx.compose.animation.core.Transition.Segment<S> getSegment();
474    method public S! getTargetState();
475    method public boolean isRunning();
476    property public final S! currentState;
477    property public final boolean isRunning;
478    property public final String? label;
479    property public final androidx.compose.animation.core.Transition.Segment<S> segment;
480    property public final S! targetState;
481  }
482
483  public static final class Transition.Segment<S> {
484    ctor public Transition.Segment(S? initialState, S? targetState);
485    method public S! getInitialState();
486    method public S! getTargetState();
487    method public infix boolean isTransitioningTo(S?, S? targetState);
488    property public final S! initialState;
489    property public final S! targetState;
490  }
491
492  public final class TransitionKt {
493    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);
494    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);
495    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);
496    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);
497    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);
498    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);
499    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);
500    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);
501    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);
502    method @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);
503    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);
504    method @androidx.compose.runtime.Composable public static <T> androidx.compose.animation.core.Transition<T> updateTransition(T? targetState, optional String? label);
505  }
506
507  @androidx.compose.runtime.Immutable public final class TweenSpec<T> implements androidx.compose.animation.core.DurationBasedAnimationSpec<T> {
508    ctor public TweenSpec(optional int durationMillis, optional int delay, optional androidx.compose.animation.core.Easing easing);
509    method public int getDelay();
510    method public int getDurationMillis();
511    method public androidx.compose.animation.core.Easing getEasing();
512    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedTweenSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
513    property public final int delay;
514    property public final int durationMillis;
515    property public final androidx.compose.animation.core.Easing easing;
516  }
517
518  public interface TwoWayConverter<T, V extends androidx.compose.animation.core.AnimationVector> {
519    method public kotlin.jvm.functions.Function1<V,T> getConvertFromVector();
520    method public kotlin.jvm.functions.Function1<T,V> getConvertToVector();
521    property public abstract kotlin.jvm.functions.Function1<V,T> convertFromVector;
522    property public abstract kotlin.jvm.functions.Function1<T,V> convertToVector;
523  }
524
525  public final class VectorConvertersKt {
526    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);
527    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);
528    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);
529    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);
530    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);
531    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);
532    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);
533    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);
534    method public static androidx.compose.animation.core.TwoWayConverter<java.lang.Float,androidx.compose.animation.core.AnimationVector1D> getVectorConverter(kotlin.jvm.internal.FloatCompanionObject);
535    method public static androidx.compose.animation.core.TwoWayConverter<java.lang.Integer,androidx.compose.animation.core.AnimationVector1D> getVectorConverter(kotlin.jvm.internal.IntCompanionObject);
536  }
537
538  public interface VectorizedAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> {
539    method public long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
540    method public default V getEndVelocity(V initialValue, V targetValue, V initialVelocity);
541    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
542    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
543    method public boolean isInfinite();
544    property public abstract boolean isInfinite;
545  }
546
547  public final class VectorizedAnimationSpecKt {
548  }
549
550  public interface VectorizedDecayAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> {
551    method public float getAbsVelocityThreshold();
552    method public long getDurationNanos(V initialValue, V initialVelocity);
553    method public V getTargetValue(V initialValue, V initialVelocity);
554    method public V getValueFromNanos(long playTimeNanos, V initialValue, V initialVelocity);
555    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V initialVelocity);
556    property public abstract float absVelocityThreshold;
557  }
558
559  public interface VectorizedDurationBasedAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> extends androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> {
560    method public int getDelayMillis();
561    method public int getDurationMillis();
562    method public default long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
563    property public abstract int delayMillis;
564    property public abstract int durationMillis;
565  }
566
567  public interface VectorizedFiniteAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> extends androidx.compose.animation.core.VectorizedAnimationSpec<V> {
568    method public default boolean isInfinite();
569    property public default boolean isInfinite;
570  }
571
572  public final class VectorizedFloatAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> {
573    ctor public VectorizedFloatAnimationSpec(androidx.compose.animation.core.FloatAnimationSpec anim);
574    method public long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
575    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
576    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
577  }
578
579  public final class VectorizedInfiniteRepeatableSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedAnimationSpec<V> {
580    ctor public VectorizedInfiniteRepeatableSpec(androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> animation, optional androidx.compose.animation.core.RepeatMode repeatMode);
581    method public long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
582    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
583    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
584    method public boolean isInfinite();
585    property public boolean isInfinite;
586  }
587
588  public final class VectorizedKeyframesSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> {
589    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);
590    method public int getDelayMillis();
591    method public int getDurationMillis();
592    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
593    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
594    property public int delayMillis;
595    property public int durationMillis;
596  }
597
598  public final class VectorizedRepeatableSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> {
599    ctor public VectorizedRepeatableSpec(int iterations, androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> animation, optional androidx.compose.animation.core.RepeatMode repeatMode);
600    method public long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
601    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
602    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
603  }
604
605  public final class VectorizedSnapSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> {
606    ctor public VectorizedSnapSpec(optional int delayMillis);
607    method public int getDelayMillis();
608    method public int getDurationMillis();
609    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
610    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
611    property public int delayMillis;
612    property public int durationMillis;
613  }
614
615  public final class VectorizedSpringSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> {
616    ctor public VectorizedSpringSpec(optional float dampingRatio, optional float stiffness, optional V? visibilityThreshold);
617    method public float getDampingRatio();
618    method public float getStiffness();
619    property public final float dampingRatio;
620    property public final float stiffness;
621  }
622
623  public final class VectorizedTweenSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> {
624    ctor public VectorizedTweenSpec(optional int durationMillis, optional int delayMillis, optional androidx.compose.animation.core.Easing easing);
625    method public int getDelayMillis();
626    method public int getDurationMillis();
627    method public androidx.compose.animation.core.Easing getEasing();
628    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
629    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
630    property public int delayMillis;
631    property public int durationMillis;
632    property public final androidx.compose.animation.core.Easing easing;
633  }
634
635  public final class VisibilityThresholdsKt {
636    method public static long getVisibilityThreshold(androidx.compose.ui.geometry.Offset.Companion);
637    method public static androidx.compose.ui.geometry.Rect getVisibilityThreshold(androidx.compose.ui.geometry.Rect.Companion);
638    method public static long getVisibilityThreshold(androidx.compose.ui.geometry.Size.Companion);
639    method public static float getVisibilityThreshold(androidx.compose.ui.unit.Dp.Companion);
640    method public static long getVisibilityThreshold(androidx.compose.ui.unit.DpOffset.Companion);
641    method public static long getVisibilityThreshold(androidx.compose.ui.unit.IntOffset.Companion);
642    method public static long getVisibilityThreshold(androidx.compose.ui.unit.IntSize.Companion);
643    method public static int getVisibilityThreshold(kotlin.jvm.internal.IntCompanionObject);
644  }
645
646}
647
648