declare type SliceRange = [number, number]; declare class Array2D { private array; private width; private height; constructor(array: Array>); private updateWidth; private updateHeight; getHeight(): number; getWidth(): number; get(x: number, y: number): T; set(x: number, y: number, value: T): void; slice([xMin, xMax]: SliceRange, [yMin, yMax]: SliceRange): Array2D; forEach(callback: (item: T, x: number, y: number) => void): void; } export default Array2D;