import { type IDashboardLayout, type IInsight, type ISettings, type ScreenSize } from "@gooddata/sdk-model";
import { type ObjRefMap } from "../../../_staging/metadata/objRefMap.js";
import { type ILayoutItemPath } from "../../../types.js";
import { type ExtendedDashboardWidget, type IItemWithWidth } from "../../types/layoutTypes.js";
export declare const getUpdatedSizesOnly: (layout: IDashboardLayout<ExtendedDashboardWidget>, itemsWithSizes: IItemWithWidth[], screen: ScreenSize) => IItemWithWidth[];
/**
 * Collects layout paths of all child widgets that need width updates when a nested layout is resized.
 * For nested layouts with a "column" direction, it processes children recursively.
 * For other widgets (including nested layouts with "row" direction), it returns their paths directly unless
 * the processAllContainers is true.
 *
 * @param layoutItem - The layout item to process
 * @param layoutItemPath - The path to the provided layout item (this could be a nested layout, and we need to know his preceding path)
 * @param processAllContainers - If true, process all containers, including those with a "row" direction, otherwise only process containers with a "column" direction
 */
export declare function getChildWidgetLayoutPaths(layoutItem: IDashboardLayout<ExtendedDashboardWidget>, layoutItemPath: ILayoutItemPath, processAllContainers?: boolean): ILayoutItemPath[];
/**
 * Collects layout paths and default minimum widths of all child widgets that need width updates when
 * a nested layout is resized. For nested layouts with a "column" direction, it processes children recursively.
 * For other widgets (including nested layouts with "row" direction), it returns their paths and
 * minimum widths directly.
 */
export declare function getChildWidgetLayoutPathsWithMinWidths(layout: IDashboardLayout<ExtendedDashboardWidget>, parentPath: ILayoutItemPath, settings: ISettings, insightMap: ObjRefMap<IInsight>, screen: ScreenSize): IItemWithWidth[];
//# sourceMappingURL=containerWidthSanitization.d.ts.map