import ArrayIterator from "./ArrayIterator"; import ArrayAxisIterator from "./ArrayAxisIterator"; /** * Takes a 2D array and provides recursive iteration over it (just like * iterating over the original array). * It supports rotation, which returns another ArrayIterator2D instance, which * keeps the original data array but provides different iterators. * Useful when displaying bitmap like data in reactive frontend template loops * with the need of rotating without rotating the data itself. */ export default class ArrayIterator2D { readonly a: T[][]; readonly rotation: number; readonly uniqueId: string; constructor(a: T[][], rotation?: number); [Symbol.iterator](): Generator | ArrayAxisIterator>; rotate(degrees?: number): ArrayIterator2D; }