/** * @module vim-ts */ import { Vector2, Vector3, Vector4, AABox, AABox2D, AABox4D, Matrix4x4 } from "./structures"; export interface IConverter { get columns(): string[]; convertFromArray(array: number[]): T; convertToArray(value: T): number[]; } export declare class Vector2Converter implements IConverter { get columns(): string[]; convertFromArray(array: number[]): Vector2; convertToArray(value: Vector2): number[]; } export declare class Vector3Converter implements IConverter { get columns(): string[]; convertFromArray(array: number[]): Vector3; convertToArray(value: Vector3): number[]; } export declare class Vector4Converter implements IConverter { get columns(): string[]; convertFromArray(array: number[]): Vector4; convertToArray(value: Vector4): number[]; } export declare class AABox2DConverter implements IConverter { get columns(): string[]; convertFromArray(array: number[]): AABox2D; convertToArray(value: AABox2D): number[]; } export declare class AABoxConverter implements IConverter { get columns(): string[]; convertFromArray(array: number[]): AABox; convertToArray(value: AABox): number[]; } export declare class AABox4DConverter implements IConverter { get columns(): string[]; convertFromArray(array: number[]): AABox4D; convertToArray(value: AABox4D): number[]; } export declare class Matrix4x4Converter implements IConverter { get columns(): string[]; convertFromArray(array: number[]): Matrix4x4; convertToArray(value: Matrix4x4): number[]; } export declare function convert(converter: IConverter, array: (number | undefined)[]): T; export declare function convertArray(converter: IConverter, arrays: (number[] | undefined)[]): T[];