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 {};
