/* * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ #import #import #import static CGFloat RCTSingleFrameInterval = (CGFloat)(1.0 / 60.0); @class RCTValueAnimatedNode; NS_ASSUME_NONNULL_BEGIN @protocol RCTAnimationDriver @property (nonatomic, readonly) NSNumber *animationId; @property (nonatomic, readonly) RCTValueAnimatedNode *valueNode; @property (nonatomic, readonly) BOOL animationHasBegun; @property (nonatomic, readonly) BOOL animationHasFinished; - (instancetype)initWithId:(NSNumber *)animationId config:(NSDictionary *)config forNode:(RCTValueAnimatedNode *)valueNode callBack:(nullable RCTResponseSenderBlock)callback; - (void)startAnimation; - (void)stepAnimationWithTime:(NSTimeInterval)currentTime; - (void)stopAnimation; - (void)resetAnimationConfig:(NSDictionary *)config; NS_ASSUME_NONNULL_END @end