import { type LRUCache } from "lru-cache"; import { type IDashboardLayoutItem, type IDashboardWidget, type IInsight, type ObjRef } from "@gooddata/sdk-model"; import { type DashboardLayoutItemModifications } from "../../_staging/dashboard/flexibleLayout/builder/interfaces.js"; /** * We need to aggressively memoize the widget sanitization results in order to prevent expensive re-renders * down the line - we need to keep the widgets referentially equal whenever they are not changed. */ export declare const getMemoizedWidgetSanitizer: (cache: LRUCache, unknown>) => (getInsightByRef: (insightRef: ObjRef) => IInsight | undefined) => DashboardLayoutItemModifications; /** * Ensure that areObjRefsEqual() and other predicates will be working with uncontrolled user ref inputs * in custom layout transformation and/or custom widget/item renderers. * * @internal */ export declare function polluteWidgetRefsWithBothIdAndUri(getInsightByRef: (insightRef: ObjRef) => IInsight | undefined): DashboardLayoutItemModifications; /** * Ensure the insight widgets conform to their allowed sizes. * * @internal */ export declare function validateItemsSize(getInsightByRef: (insightRef: ObjRef) => IInsight | undefined): DashboardLayoutItemModifications; //# sourceMappingURL=DefaultDashboardLayoutUtils.d.ts.map