export type TwoDimensionalIndex = 0 | 1; export type TwoDimensionalComponent = 'x' | 'y'; export interface TwoDimensional { readonly x: T1; readonly y: T2; readonly 0: T1; readonly 1: T2; } export type ThreeDimensionalIndex = TwoDimensionalIndex | 2; export type ThreeDimensionalComponent = TwoDimensionalComponent | 'z'; export interface ThreeDimensional extends TwoDimensional { readonly z: T3; readonly 2: T3; } export type FourDimensionalIndex = ThreeDimensionalIndex | 3; export type FourDimensionalComponent = ThreeDimensionalComponent | 'w'; export interface FourDimensional extends ThreeDimensional { readonly w: T4; readonly 3: T4; } export declare const toTwoDimensionalIndex: (input: TwoDimensionalIndex | TwoDimensionalComponent) => TwoDimensionalIndex; export declare const toThreeDimensionalIndex: (input: ThreeDimensionalIndex | ThreeDimensionalComponent) => ThreeDimensionalIndex; export declare const toFourDimensionalIndex: (input: FourDimensionalIndex | FourDimensionalComponent) => FourDimensionalIndex;