import { Cell } from "./cell";
export interface PainterOptions {
    ctx: CanvasRenderingContext2D;
    cellSize: number;
    padding: number;
}
export declare type Painter = (options: PainterOptions) => void;
export declare class Maze {
    private height;
    private width;
    private grid?;
    constructor(height: number, width: number);
    setNewDimensions(height: number, width: number): void;
    /** Run a recursive backtracking algorithm. */
    recursiveBacktracking(): void;
    /** Export the current grid's cells state. */
    exportMatrix(): Cell[][];
    generatePainter(): Painter;
}
