UNPKG

material-motion

Version:

Makes it easy to add rich, interactive motion to your application.

16 lines (15 loc) 1.18 kB
import { Constructor, Dimensions, MotionMathOperable, Observable, ObservableWithMotionOperators, Point2D } from '../types'; import { _ReactiveMapOptions } from './foundation/_reactiveMap'; export declare type SubtractedByValue<U> = U | Observable<U>; export declare type SubtractedByArgs<U> = _ReactiveMapOptions & { value$: SubtractedByValue<U>; }; export interface MotionSubtractable<T> { subtractedBy<U extends T & number>(kwargs: SubtractedByArgs<U>): ObservableWithMotionOperators<number>; subtractedBy<U extends T & number>(value$: SubtractedByValue<U>): ObservableWithMotionOperators<number>; subtractedBy<U extends T & Point2D>(kwargs: SubtractedByArgs<U>): ObservableWithMotionOperators<U>; subtractedBy<U extends T & Point2D>(value$: SubtractedByValue<U>): ObservableWithMotionOperators<U>; subtractedBy<U extends T & Dimensions>(kwargs: SubtractedByArgs<U>): ObservableWithMotionOperators<U>; subtractedBy<U extends T & Dimensions>(value$: SubtractedByValue<U>): ObservableWithMotionOperators<U>; } export declare function withSubtractedBy<T, S extends Constructor<MotionMathOperable<T>>>(superclass: S): S & Constructor<MotionSubtractable<T>>;