react-native-redash
Version:
Utility library for React Native Reanimated
111 lines (110 loc) • 3.17 kB
TypeScript
export declare type Vec2 = readonly [number, number];
declare type Vec3 = readonly [number, number, number];
export declare type Matrix3 = readonly [
number,
number,
number,
number,
number,
number,
number,
number,
number
];
export interface TransformProp {
transform: Transforms2d;
}
declare type Transformations = {
translateX: number;
translateY: number;
scale: number;
skewX: string;
skewY: string;
scaleX: number;
scaleY: number;
rotateZ: string;
rotate: string;
};
export declare type Transforms2d = (Pick<Transformations, "translateX"> | Pick<Transformations, "translateY"> | Pick<Transformations, "scale"> | Pick<Transformations, "scaleX"> | Pick<Transformations, "scaleY"> | Pick<Transformations, "skewX"> | Pick<Transformations, "skewY"> | Pick<Transformations, "rotate"> | Pick<Transformations, "rotateZ">)[];
/**
* @worklet
*/
export declare const parseAngle: (angle: string) => number;
/**
* @worklet
*/
export declare const isTranslateX: (transform: Transforms2d[0]) => transform is Pick<Transformations, "translateX">;
/**
* @worklet
*/
export declare const isTranslateY: (transform: Transforms2d[0]) => transform is Pick<Transformations, "translateY">;
/**
* @worklet
*/
export declare const isScale: (transform: Transforms2d[0]) => transform is Pick<Transformations, "scale">;
/**
* @worklet
*/
export declare const isScaleX: (transform: Transforms2d[0]) => transform is Pick<Transformations, "scaleX">;
/**
* @worklet
*/
export declare const isScaleY: (transform: Transforms2d[0]) => transform is Pick<Transformations, "scaleY">;
/**
* @worklet
*/
export declare const isSkewX: (transform: Transforms2d[0]) => transform is Pick<Transformations, "skewX">;
/**
* @worklet
*/
export declare const isSkewY: (transform: Transforms2d[0]) => transform is Pick<Transformations, "skewY">;
/**
* @worklet
*/
export declare const isRotate: (transform: Transforms2d[0]) => transform is Pick<Transformations, "rotate">;
/**
* @worklet
*/
export declare const isRotateZ: (transform: Transforms2d[0]) => transform is Pick<Transformations, "rotateZ">;
export declare const identity3: Matrix3;
/**
* @worklet
*/
export declare const dot3: (row: Vec3, col: Vec3) => number;
/**
* @worklet
*/
export declare const matrixVecMul3: (m: Matrix3, v: Vec3) => readonly [number, number, number];
/**
* @worklet
*/
export declare const mapPoint: (m: Matrix3, v: Vec2) => readonly [number, number];
/**
* @worklet
*/
export declare const multiply3: (m1: Matrix3, m2: Matrix3) => readonly [number, number, number, number, number, number, number, number, number];
/**
* @worklet
*/
export declare const svgMatrix: (transforms: Transforms2d) => string;
/**
* @worklet
*/
export declare const processTransform2d: (transforms: Transforms2d) => Matrix3;
/**
* @worklet
*/
export declare const decompose2d: (arg: Matrix3 | Transforms2d) => readonly [{
readonly translateX: number;
}, {
readonly translateY: number;
}, {
readonly rotateZ: number;
}, {
readonly scaleX: number;
}, {
readonly scaleY: number;
}, {
readonly rotateZ: number;
}];
export {};