import { type IDashboardLayout, type IDashboardLayoutItem, type IDashboardLayoutSize, type IDashboardLayoutSizeByScreenSize, type IDashboardWidget, type IInsightWidget, type IInsightWidgetDefinition, type IKpiWidget, type IKpiWidgetDefinition, type IWidget, type IWidgetDefinition, type ObjRef, type ScreenSize } from "@gooddata/sdk-model";
import { type ILayoutItemPath } from "../../../../types.js";
import { type IDashboardLayoutItemFacade, type IDashboardLayoutSectionFacade } from "./interfaces.js";
/**
 * @alpha
 */
export declare class DashboardLayoutItemFacade<TWidget> implements IDashboardLayoutItemFacade<TWidget> {
    protected readonly sectionFacade: IDashboardLayoutSectionFacade<TWidget>;
    protected readonly item: IDashboardLayoutItem<TWidget>;
    protected readonly itemIndex: ILayoutItemPath;
    protected constructor(sectionFacade: IDashboardLayoutSectionFacade<TWidget>, item: IDashboardLayoutItem<TWidget>, itemIndex: ILayoutItemPath);
    static for<TWidget>(sectionFacade: IDashboardLayoutSectionFacade<TWidget>, item: IDashboardLayoutItem<TWidget>, index: ILayoutItemPath): IDashboardLayoutItemFacade<TWidget>;
    raw(): IDashboardLayoutItem<TWidget>;
    section(): IDashboardLayoutSectionFacade<TWidget>;
    index(): ILayoutItemPath;
    indexIs(index: ILayoutItemPath): boolean;
    isFirstInSection(): boolean;
    isLastInSection(): boolean;
    isLastInRow(screen: ScreenSize): boolean;
    widget(): TWidget | undefined;
    ref(): ObjRef | undefined;
    widgetEquals(widget: TWidget | undefined): boolean;
    widgetIs(widget: TWidget): boolean;
    isEmpty(): boolean;
    size(): IDashboardLayoutSizeByScreenSize;
    sizeForScreen(screen: ScreenSize): IDashboardLayoutSize | undefined;
    sizeForScreenWithFallback(screen: ScreenSize): IDashboardLayoutSize;
    hasSizeForScreen(screen: ScreenSize): boolean;
    testRaw(pred: (column: IDashboardLayoutItem<TWidget>) => boolean): boolean;
    test(pred: (column: IDashboardLayoutItemFacade<TWidget>) => boolean): boolean;
    isWidgetItem(): this is DashboardLayoutItemFacade<IWidget>;
    isWidgetDefinitionItem(): this is DashboardLayoutItemFacade<IWidgetDefinition>;
    isKpiWidgetItem(): this is DashboardLayoutItemFacade<IKpiWidget>;
    isKpiWidgetDefinitionItem(): this is DashboardLayoutItemFacade<IKpiWidgetDefinition>;
    isInsightWidgetItem(): this is DashboardLayoutItemFacade<IInsightWidget>;
    isInsightWidgetDefinitionItem(): this is DashboardLayoutItemFacade<IInsightWidgetDefinition>;
    isLayoutItem(): this is DashboardLayoutItemFacade<IDashboardLayout<TWidget>>;
    isCustomItem(): this is DashboardLayoutItemFacade<Exclude<TWidget, IDashboardWidget>>;
    isWidgetItemWithRef(ref: ObjRef): boolean;
    isWidgetItemWithInsightRef(ref: ObjRef): boolean;
    isWidgetItemWithKpiRef(ref: ObjRef): boolean;
}
//# sourceMappingURL=item.d.ts.map