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 MutableTransitionState<S> {
369    ctor public MutableTransitionState(S? initialState);
370    method public S! getCurrentState();
371    method public S! getTargetState();
372    method @androidx.compose.animation.core.ExperimentalTransitionApi public boolean isIdle();
373    method public void setTargetState(S! targetState);
374    property public final S! currentState;
375    property @androidx.compose.animation.core.ExperimentalTransitionApi public final boolean isIdle;
376    property public final S! targetState;
377  }
378
379  public enum RepeatMode {
380    enum_constant public static final androidx.compose.animation.core.RepeatMode Restart;
381    enum_constant public static final androidx.compose.animation.core.RepeatMode Reverse;
382  }
383
384  @androidx.compose.runtime.Immutable public final class RepeatableSpec<T> implements androidx.compose.animation.core.FiniteAnimationSpec<T> {
385    ctor public RepeatableSpec(int iterations, androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation, optional androidx.compose.animation.core.RepeatMode repeatMode);
386    method public androidx.compose.animation.core.DurationBasedAnimationSpec<T> getAnimation();
387    method public int getIterations();
388    method public androidx.compose.animation.core.RepeatMode getRepeatMode();
389    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
390    property public final androidx.compose.animation.core.DurationBasedAnimationSpec<T> animation;
391    property public final int iterations;
392    property public final androidx.compose.animation.core.RepeatMode repeatMode;
393  }
394
395  @androidx.compose.runtime.Immutable public final class SnapSpec<T> implements androidx.compose.animation.core.DurationBasedAnimationSpec<T> {
396    ctor public SnapSpec(optional int delay);
397    method public int getDelay();
398    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
399    property public final int delay;
400  }
401
402  public final class Spring {
403    field public static final float DampingRatioHighBouncy = 0.2f;
404    field public static final float DampingRatioLowBouncy = 0.75f;
405    field public static final float DampingRatioMediumBouncy = 0.5f;
406    field public static final float DampingRatioNoBouncy = 1.0f;
407    field public static final float DefaultDisplacementThreshold = 0.01f;
408    field public static final androidx.compose.animation.core.Spring INSTANCE;
409    field public static final float StiffnessHigh = 10000.0f;
410    field public static final float StiffnessLow = 200.0f;
411    field public static final float StiffnessMedium = 1500.0f;
412    field public static final float StiffnessVeryLow = 50.0f;
413  }
414
415  public final class SpringEstimationKt {
416  }
417
418  public final class SpringSimulationKt {
419  }
420
421  @androidx.compose.runtime.Immutable public final class SpringSpec<T> implements androidx.compose.animation.core.FiniteAnimationSpec<T> {
422    ctor public SpringSpec(optional float dampingRatio, optional float stiffness, optional T? visibilityThreshold);
423    method public float getDampingRatio();
424    method public float getStiffness();
425    method public T? getVisibilityThreshold();
426    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedSpringSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
427    property public final float dampingRatio;
428    property public final float stiffness;
429    property public final T? visibilityThreshold;
430  }
431
432  public final class SuspendAnimationKt {
433    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);
434    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);
435    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);
436    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);
437    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);
438  }
439
440  public final class TargetBasedAnimation<T, V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.Animation<T,V> {
441    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);
442    method public long getDurationNanos();
443    method public T! getInitialValue();
444    method public T! getTargetValue();
445    method public androidx.compose.animation.core.TwoWayConverter<T,V> getTypeConverter();
446    method public T! getValueFromNanos(long playTimeNanos);
447    method public V getVelocityVectorFromNanos(long playTimeNanos);
448    method public boolean isInfinite();
449    property public long durationNanos;
450    property public final T! initialValue;
451    property public boolean isInfinite;
452    property public T! targetValue;
453    property public androidx.compose.animation.core.TwoWayConverter<T,V> typeConverter;
454  }
455
456  @androidx.compose.runtime.Stable public final class Transition<S> {
457    method public S! getCurrentState();
458    method public String? getLabel();
459    method public androidx.compose.animation.core.Transition.Segment<S> getSegment();
460    method public S! getTargetState();
461    method public boolean isRunning();
462    property public final S! currentState;
463    property public final boolean isRunning;
464    property public final String? label;
465    property public final androidx.compose.animation.core.Transition.Segment<S> segment;
466    property public final S! targetState;
467  }
468
469  public static interface Transition.Segment<S> {
470    method public S! getInitialState();
471    method public S! getTargetState();
472    method public default infix boolean isTransitioningTo(S?, S? targetState);
473    property public abstract S! initialState;
474    property public abstract S! targetState;
475  }
476
477  public final class TransitionKt {
478    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);
479    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);
480    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);
481    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);
482    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);
483    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);
484    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);
485    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);
486    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);
487    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);
488    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);
489    method @androidx.compose.runtime.Composable public static <T> androidx.compose.animation.core.Transition<T> updateTransition(T? targetState, optional String? label);
490  }
491
492  @androidx.compose.runtime.Immutable public final class TweenSpec<T> implements androidx.compose.animation.core.DurationBasedAnimationSpec<T> {
493    ctor public TweenSpec(optional int durationMillis, optional int delay, optional androidx.compose.animation.core.Easing easing);
494    method public int getDelay();
495    method public int getDurationMillis();
496    method public androidx.compose.animation.core.Easing getEasing();
497    method public <V extends androidx.compose.animation.core.AnimationVector> androidx.compose.animation.core.VectorizedTweenSpec<V> vectorize(androidx.compose.animation.core.TwoWayConverter<T,V> converter);
498    property public final int delay;
499    property public final int durationMillis;
500    property public final androidx.compose.animation.core.Easing easing;
501  }
502
503  public interface TwoWayConverter<T, V extends androidx.compose.animation.core.AnimationVector> {
504    method public kotlin.jvm.functions.Function1<V,T> getConvertFromVector();
505    method public kotlin.jvm.functions.Function1<T,V> getConvertToVector();
506    property public abstract kotlin.jvm.functions.Function1<V,T> convertFromVector;
507    property public abstract kotlin.jvm.functions.Function1<T,V> convertToVector;
508  }
509
510  public final class VectorConvertersKt {
511    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);
512    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);
513    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);
514    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);
515    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);
516    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);
517    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);
518    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);
519    method public static androidx.compose.animation.core.TwoWayConverter<java.lang.Float,androidx.compose.animation.core.AnimationVector1D> getVectorConverter(kotlin.jvm.internal.FloatCompanionObject);
520    method public static androidx.compose.animation.core.TwoWayConverter<java.lang.Integer,androidx.compose.animation.core.AnimationVector1D> getVectorConverter(kotlin.jvm.internal.IntCompanionObject);
521  }
522
523  public interface VectorizedAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> {
524    method public long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
525    method public default V getEndVelocity(V initialValue, V targetValue, V initialVelocity);
526    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
527    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
528    method public boolean isInfinite();
529    property public abstract boolean isInfinite;
530  }
531
532  public final class VectorizedAnimationSpecKt {
533  }
534
535  public interface VectorizedDecayAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> {
536    method public float getAbsVelocityThreshold();
537    method public long getDurationNanos(V initialValue, V initialVelocity);
538    method public V getTargetValue(V initialValue, V initialVelocity);
539    method public V getValueFromNanos(long playTimeNanos, V initialValue, V initialVelocity);
540    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V initialVelocity);
541    property public abstract float absVelocityThreshold;
542  }
543
544  public interface VectorizedDurationBasedAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> extends androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> {
545    method public int getDelayMillis();
546    method public int getDurationMillis();
547    method public default long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
548    property public abstract int delayMillis;
549    property public abstract int durationMillis;
550  }
551
552  public interface VectorizedFiniteAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> extends androidx.compose.animation.core.VectorizedAnimationSpec<V> {
553    method public default boolean isInfinite();
554    property public default boolean isInfinite;
555  }
556
557  public final class VectorizedFloatAnimationSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> {
558    ctor public VectorizedFloatAnimationSpec(androidx.compose.animation.core.FloatAnimationSpec anim);
559    method public long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
560    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
561    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
562  }
563
564  public final class VectorizedInfiniteRepeatableSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedAnimationSpec<V> {
565    ctor public VectorizedInfiniteRepeatableSpec(androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> animation, optional androidx.compose.animation.core.RepeatMode repeatMode);
566    method public long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
567    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
568    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
569    method public boolean isInfinite();
570    property public boolean isInfinite;
571  }
572
573  public final class VectorizedKeyframesSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> {
574    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);
575    method public int getDelayMillis();
576    method public int getDurationMillis();
577    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
578    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
579    property public int delayMillis;
580    property public int durationMillis;
581  }
582
583  public final class VectorizedRepeatableSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> {
584    ctor public VectorizedRepeatableSpec(int iterations, androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> animation, optional androidx.compose.animation.core.RepeatMode repeatMode);
585    method public long getDurationNanos(V initialValue, V targetValue, V initialVelocity);
586    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
587    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
588  }
589
590  public final class VectorizedSnapSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> {
591    ctor public VectorizedSnapSpec(optional int delayMillis);
592    method public int getDelayMillis();
593    method public int getDurationMillis();
594    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
595    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
596    property public int delayMillis;
597    property public int durationMillis;
598  }
599
600  public final class VectorizedSpringSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedFiniteAnimationSpec<V> {
601    ctor public VectorizedSpringSpec(optional float dampingRatio, optional float stiffness, optional V? visibilityThreshold);
602    method public float getDampingRatio();
603    method public float getStiffness();
604    property public final float dampingRatio;
605    property public final float stiffness;
606  }
607
608  public final class VectorizedTweenSpec<V extends androidx.compose.animation.core.AnimationVector> implements androidx.compose.animation.core.VectorizedDurationBasedAnimationSpec<V> {
609    ctor public VectorizedTweenSpec(optional int durationMillis, optional int delayMillis, optional androidx.compose.animation.core.Easing easing);
610    method public int getDelayMillis();
611    method public int getDurationMillis();
612    method public androidx.compose.animation.core.Easing getEasing();
613    method public V getValueFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
614    method public V getVelocityFromNanos(long playTimeNanos, V initialValue, V targetValue, V initialVelocity);
615    property public int delayMillis;
616    property public int durationMillis;
617    property public final androidx.compose.animation.core.Easing easing;
618  }
619
620  public final class VisibilityThresholdsKt {
621    method public static long getVisibilityThreshold(androidx.compose.ui.geometry.Offset.Companion);
622    method public static androidx.compose.ui.geometry.Rect getVisibilityThreshold(androidx.compose.ui.geometry.Rect.Companion);
623    method public static long getVisibilityThreshold(androidx.compose.ui.geometry.Size.Companion);
624    method public static float getVisibilityThreshold(androidx.compose.ui.unit.Dp.Companion);
625    method public static long getVisibilityThreshold(androidx.compose.ui.unit.DpOffset.Companion);
626    method public static long getVisibilityThreshold(androidx.compose.ui.unit.IntOffset.Companion);
627    method public static long getVisibilityThreshold(androidx.compose.ui.unit.IntSize.Companion);
628    method public static int getVisibilityThreshold(kotlin.jvm.internal.IntCompanionObject);
629  }
630
631}
632
633