UNPKG

@shopify/react-native-skia

Version:

High-performance React Native Graphics using Skia

24 lines (19 loc) 531 B
export type AnimatedProp<T> = T | { value: T }; export type AnimatedProps<T, O extends keyof T | never = never> = { [K in keyof T]: K extends "children" ? T[K] : K extends O ? T[K] : AnimatedProp<T[K]>; }; export type SkiaProps< P = object, O extends keyof P | never = never, > = AnimatedProps<P, O>; type WithOptional<T extends object, N extends keyof T> = Omit<T, N> & { [K in N]?: T[K]; }; export type SkiaDefaultProps< T extends object, N extends keyof T, > = WithOptional<SkiaProps<T>, N>;