import { PerpectiveTransform, RotateTransform, RotateXTransform, RotateYTransform, RotateZTransform, ScaleTransform, ScaleXTransform, ScaleYTransform, TranslateXTransform, TranslateYTransform, SkewXTransform, SkewYTransform, MatrixTransform, ViewStyle, TextStyle, } from 'react-native'; import { Animation, AnimationObject } from './animation/commonTypes'; import { Context } from './hook/commonTypes'; export type TransformProperty = | PerpectiveTransform | RotateTransform | RotateXTransform | RotateYTransform | RotateZTransform | ScaleTransform | ScaleXTransform | ScaleYTransform | TranslateXTransform | TranslateYTransform | SkewXTransform | SkewYTransform | MatrixTransform; export interface StyleProps extends ViewStyle, TextStyle { originX?: number; originY?: number; [key: string]: any; } export interface AnimatedStyle extends Record> { [key: string]: any; transform?: Array>>; } export interface SharedValue { value: T; } export interface WorkletFunction { _closure?: Context; __workletHash?: number; __optimalization?: number; __worklet?: boolean; } export interface BasicWorkletFunction extends WorkletFunction { (): T; } export interface NativeEvent { nativeEvent: T; } export interface ComplexWorkletFunction extends WorkletFunction { (...args: A): R; } export interface NestedObject { [key: string]: NestedObjectValues; } export type NestedObjectValues = | T | Array> | NestedObject; export interface AdapterWorkletFunction extends WorkletFunction { (value: NestedObject): void; }