export type Point2D = [number, number];
export declare const TRIANGLE_TEMPLATES: Point2D[][];
export type ShapeType = 'circle' | 'dot' | 'triangle' | 'diamond' | 'cross' | 'stripes' | null;
export interface CellConfig {
    x: number;
    y: number;
    width: number;
    height: number;
    bgColorIndex: number;
    shapeColorIndex: number;
    shapeType: ShapeType;
    triangleIndex?: number;
    stripeDirection?: 0 | 1;
    stripeCount?: number;
    stripeMask?: boolean[];
    animationDelay: number;
    animationDuration: number;
    animationScaleFrom?: number;
    dotScale?: number;
    animationType?: 'breathe' | 'pulse' | 'opacity';
    animationPhase?: number;
}
export declare function getRandomInt(min: number, max: number, rng: () => number): number;
export declare function createSeededRandom(seed: number): () => number;
export type PatternEdge = 'top' | 'right' | 'bottom' | 'left';
export declare function generatePattern(stripWidth: number, stripHeight: number, boxSize: number, colorCount: number, rng: () => number, edge?: PatternEdge, stripDensity?: number): CellConfig[];
