import { Rectangle as Bounds } from "electron";
import { TilingConfig } from "@edenapp/types";
/**
 * Grid dimensions for a layout
 */
interface GridDimensions {
    rows: number;
    columns: number;
}
/**
 * Layout calculation parameters
 */
interface LayoutParams {
    workspace: Bounds;
    tileIndex: number;
    visibleCount: number;
    config: TilingConfig;
}
/**
 * LayoutCalculator
 *
 * Generic utility for calculating tile bounds in various layout modes.
 * Provides a pluggable system for different tiling strategies.
 */
export declare class LayoutCalculator {
    /**
     * Calculate bounds for a tile at a given index
     */
    static calculateTileBounds(params: LayoutParams): Bounds;
    /**
     * Apply padding to bounds
     */
    private static applyPadding;
    /**
     * Determine grid dimensions based on tiling mode
     */
    private static getGridDimensions;
    /**
     * Calculate bounds for a specific cell in a grid
     */
    private static calculateGridCell;
    /**
     * Calculate optimal grid dimensions for a given number of items
     * Useful for auto-layout modes
     */
    static calculateOptimalGrid(itemCount: number): GridDimensions;
}
export {};
//# sourceMappingURL=LayoutCalculator.d.ts.map