import { vec3, mat3 } from '@antv/matrix-util'; export declare type TransformCallback = (x: number, y: number, width: number, height: number) => Transformer; declare type Translate = ['translate', number, number]; declare type Cartesian = ['cartesian']; declare type Custom = ['custom', TransformCallback]; declare type Matrix = ['matrix', Matrix3]; declare type Polar = ['polar', number, number, number, number]; declare type Transpose = ['transpose']; declare type Scale = ['scale', number, number]; declare type ShearX = ['shear.x', number]; declare type ShearY = ['shear.y', number]; declare type Reflect = ['reflect']; declare type ReflectX = ['reflect.x']; declare type ReflectY = ['reflect.y']; declare type Rotate = ['rotate', number]; declare type Helix = ['helix', number, number, number, number]; declare type Parallel = ['parallel', number, number, number, number]; declare type Fisheye = ['fisheye', number, number, number, number]; declare type FisheyeX = ['fisheye.x', number, number]; declare type FisheyeY = ['fisheye.y', number, number]; declare type FisheyeCircular = ['fisheye.circular', number, number, number, number]; export declare type Transformation = Translate | Cartesian | Custom | Matrix | Polar | Transpose | Scale | ShearX | ShearY | Reflect | ReflectX | ReflectY | Rotate | Helix | Parallel | Fisheye | FisheyeX | FisheyeY | FisheyeCircular; export declare type Options = { x?: number; y?: number; width?: number; height?: number; transformations?: Transformation[]; }; export declare type Vector2 = [number, number]; export declare type Vector3 = vec3; export declare type Vector = number[]; export declare type Matrix3 = mat3; export declare type Transform = (vector: Vector2 | Vector) => Vector2 | Vector; export declare type Transformer = { transform?: Transform; untransform?: Transform; }; export declare type CreateTransformer = (params: number[] | [TransformCallback] | [Matrix3], x: number, y: number, width: number, height: number) => Transformer | Matrix3; export {};