import { Point } from './Point.js';
import { Size } from './Size.js';
import { Color } from './Color.js';
export declare class Grid<T = boolean> {
    size: Size;
    protected _storage: T[];
    protected _maxX: number;
    protected _maxY: number;
    private _capacity;
    constructor(size: Size);
    _offset(point: Point): number;
    circular_index(index: number, modulus: number): number;
    set_all(val: boolean): void;
    set_value(val: T, point: Point): void;
    get_value(point: Point): T;
    get_points(): Generator<Point, void, unknown>;
    get_neighborhood(point: Point): Generator<Point[], void, unknown>;
    color_for_value(val: T): Color;
    colors(): number[];
}
