import type { WidgetsPanelLayout } from '../../../../domains/dashboarding/dashboard-model/types.js'; /** * Location of a widget cell within the layout structure. */ export type WidgetCellLocation = { columnIndex: number; rowIndex: number; cellIndex: number; }; /** * Finds the location of a widget cell in the layout. * * @param layout - The widgets panel layout. * @param widgetId - The ID of the widget to find. * @returns The cell location, or undefined if not found. */ export declare const getWidgetCellLocation: (layout: Readonly, widgetId: string) => WidgetCellLocation | undefined; /** * Transformer: Inserts a new cell into the same row as the original cell. * Splits the original cell's widthPercentage in half: original and new cell each get 50%. * * @param originalCellLocation - The location of the original cell. * @param newWidgetId - The ID of the new widget. * @returns A pure transformer that produces the updated layout. */ export declare const withNewCellInsertedToTheSameRow: (originalCellLocation: WidgetCellLocation, newWidgetId: string) => (layout: Readonly) => WidgetsPanelLayout; /** * Transformer: Replaces a widget ID with another in all cells of the layout. * * @param oldWidgetId - The widget ID to replace. * @param newWidgetId - The new widget ID. * @returns A pure transformer that produces the updated layout (immutable). */ export declare const withReplacedWidgetId: (oldWidgetId: string, newWidgetId: string) => (layout: Readonly) => WidgetsPanelLayout;