import { type BoardInitializeParams } from ".";
import { Mino } from "../queue";
export type ConnectedBoardSquare = {
    mino: Mino;
    connection: number;
} | null;
export declare class ConnectedBoard {
    state: ConnectedBoardSquare[][];
    private _height;
    private _width;
    private _buffer;
    constructor(options: BoardInitializeParams);
    get height(): number;
    set height(value: number);
    get width(): number;
    set width(value: number);
    get buffer(): number;
    set buffer(value: number);
    get fullHeight(): number;
    add(...blocks: [ConnectedBoardSquare, number, number][]): void;
    clearLines(): {
        lines: number;
        garbageCleared: number;
    };
    clearBombs(placedBlocks: [number, number][]): {
        lines: number;
        garbageCleared: number;
    };
    clearBombsAndLines(placedBlocks: [number, number][]): {
        lines: number;
        garbageCleared: number;
    };
    get perfectClear(): boolean;
    insertGarbage({ amount, size, column, bombs, isBeginning, isEnd }: {
        amount: number;
        size: number;
        column: number;
        bombs: boolean;
        isBeginning: boolean;
        isEnd: boolean;
    }): void;
}
export * from "./connected";
//# sourceMappingURL=connected.d.ts.map