import { AnyConfig } from '../config.js';
import GridData from '../grid.js';
import { Color, RuleState } from '../primitives.js';
import Rule, { SearchVariant } from './rule.js';
export default class RegionAreaRule extends Rule {
    readonly color: Color;
    readonly size: number;
    private static readonly CONFIGS;
    private static readonly EXAMPLE_GRID_DARK;
    private static readonly EXAMPLE_GRID_LIGHT;
    private static readonly EXAMPLE_GRID_GRAY;
    private static readonly SEARCH_VARIANTS;
    /**
     * **All &lt;color&gt; regions have area &lt;size&gt;**
     *
     * @param color - The color of the regions.
     * @param size - The area of the regions.
     */
    constructor(color: Color, size: number);
    get id(): string;
    get explanation(): string;
    get configs(): readonly AnyConfig[] | null;
    createExampleGrid(): GridData;
    get searchVariants(): SearchVariant[];
    validateGrid(grid: GridData): RuleState;
    copyWith({ color, size }: {
        color?: Color;
        size?: number;
    }): this;
    withColor(color: Color): this;
    withSize(size: number): this;
}
export declare const instance: RegionAreaRule;
