Skip to content
Grid LayoutAPI Reference

Grid Layout Complete API reference

This reference includes every export reachable from the npm package public entry points and every declaration member in the inventory. Search names and signatures to find the exact import path and type contract.

comins-grid-layout@0.3.0278 / 75 / 87 / 212 / 22

export identities / unique exports / reachable contracts / members / CSS variables

addDashboardWidget

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function addDashboardWidget<TData>(state: DashboardLayoutState<TData>, widget: DashboardWidget<TData>): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:4

applyDashboardLayoutSnapshot

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function applyDashboardLayoutSnapshot<TData>(state: DashboardLayoutState<TData>, snapshot: DashboardLayoutSnapshot): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:18

autoArrangeDashboardWidgets

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function autoArrangeDashboardWidgets<TData>(state: DashboardLayoutState<TData>): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:19

clampDashboardColumnCount

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function clampDashboardColumnCount(value: number): DashboardColumnCount;

dist/core/columns.d.ts:3

clearDashboardWidgets

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function clearDashboardWidgets<TData>(state: DashboardLayoutState<TData>): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:9

cominsGridLayoutPackage

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
cominsGridLayoutPackage = "comins-grid-layout"

dist/core/package.d.ts:1

createDashboardLayoutState

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function createDashboardLayoutState<TData = unknown>(snapshot: DashboardLayoutStateInput<TData>): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:3

createDashboardResizeScheduler

value
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export declare function createDashboardResizeScheduler(callback: (event: DashboardWidgetResizeFrameEvent) => void): DashboardResizeScheduler;

dist/browser/resize-scheduler.d.ts:3

DASHBOARD_COLUMN_COUNTS

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
DASHBOARD_COLUMN_COUNTS: readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]

dist/core/columns.d.ts:2

DashboardColumnCount

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardColumnCount = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;

dist/core/types.d.ts:1

DashboardColumnLayout

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardColumnLayout = "list" | "compact" | "moveScale" | "move" | "scale" | "none";

dist/core/types.d.ts:2

DashboardColumnLayoutSnapshot

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardColumnLayoutSnapshot = {
    widgets: DashboardWidgetLayout[];
    previousLayouts: Record<DashboardWidgetId, DashboardWidgetLayout>;
};

dist/core/types.d.ts:80

DashboardDragInPreviewLayout

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardDragInPreviewLayout = Pick<DashboardWidgetLayout, "w" | "h" | "minW" | "minH" | "maxW" | "maxH">;

dist/core/types.d.ts:59

DashboardDragOptions

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardDragOptions = {
    handle?: string;
    appendTo?: string;
    pause?: boolean | number;
    scroll?: boolean;
    cancel?: string;
};

dist/core/types.d.ts:40

DashboardExternalDropTarget

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardExternalDropTarget = {
    id: string;
    selector: string;
};

dist/core/types.d.ts:15

DashboardGrid

value
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
DashboardGrid: <TData = unknown>(props: DashboardGridProps<TData> & RefAttributes<DashboardGridHandle>) => ReactElement | null
_default: typeof __VLS_export

dist/components/DashboardGrid.d.ts:59 · dist/vue/DashboardGrid.vue.d.ts:42

DashboardGridAdapterOptionOverrides

type
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardGridAdapterOptionOverrides = {
    acceptWidgets?: GridStackOptions["acceptWidgets"];
};

dist/gridstack/option-mapper.d.ts:17

DashboardGridCommands

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardGridCommands<TData = unknown> = {
    addWidget: (widget: DashboardWidget<TData>) => void;
    insertWidgetAt: (widget: DashboardWidget<TData>, targetLayout: DashboardWidgetLayout, targetSnapshot: DashboardLayoutSnapshot) => void;
    updateWidget: (id: DashboardWidgetId, patch: Partial<DashboardWidget<TData>>) => void;
    updateWidgetLayout: (id: DashboardWidgetId, patch: Partial<Omit<DashboardWidgetLayout, "id">>) => void;
    removeWidget: (id: DashboardWidgetId) => void;
    clearWidgets: () => void;
    /** @deprecated Use resizeWidget(id, { w, h }). Retains the legacy full-width behavior. */
    maximizeWidget: (id: DashboardWidgetId) => void;
    /** @deprecated Use resizeWidget(id, { w, h }). Retains the legacy one-row behavior. */
    minimizeWidget: (id: DashboardWidgetId) => void;
    resizeWidget: (id: DashboardWidgetId, size: Pick<DashboardWidgetLayout, "w" | "h">) => void;
    restoreWidget: (id: DashboardWidgetId) => void;
    autoArrangeWidgets: () => void;
    fitWidgetsToColumns: () => void;
    fitWidgetToColumns: (id: DashboardWidgetId) => void;
    setColumns: (columns: number) => void;
    applyLayoutSnapshot: (snapshot: DashboardLayoutSnapshot) => void;
    resetLayout: (snapshot?: DashboardLayoutSnapshot | DashboardStateSnapshotInput<TData>) => void;
    restoreLayout: (snapshot: DashboardStateSnapshotInput<TData>) => void;
    refreshLayout: () => void;
    serializeLayout: () => DashboardLayoutSnapshot;
    serializeState: () => DashboardStateSnapshot<TData>;
};

dist/core/controller-types.d.ts:7

DashboardGridConfiguration

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardGridConfiguration<TData = unknown> = {
    engineOptions?: DashboardGridEngineOptions;
    responsive?: DashboardResponsiveOptions;
    externalDropTargets?: ReadonlyArray<DashboardExternalDropTarget>;
    gridId?: string;
    acceptExternalWidgets?: boolean | ((candidate: DashboardWidgetDropCandidate<TData>) => boolean);
    gridTransferMode?: DashboardWidgetTransferMode;
};

dist/core/configuration.d.ts:5

DashboardGridConfigurationError

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare class DashboardGridConfigurationError extends Error {
    constructor();
}

dist/core/configuration.d.ts:2

DashboardGridEmits

type
comins-grid-layout/vue
export type DashboardGridEmits<TData = unknown> = {
    columnsChange: [columns: DashboardColumnCount];
    layoutCommit: [snapshot: DashboardLayoutSnapshot];
    widgetLayoutChange: [id: string, layout: DashboardWidgetLayout];
    widgetResizeFrame: [event: DashboardWidgetResizeFrameEvent];
    widgetExternalDrop: [event: DashboardWidgetExternalDropEvent];
    widgetDropRequest: [request: DashboardWidgetDropRequest<TData>];
    beforeMove: [event: DashboardWidgetInteractionEvent];
    move: [event: DashboardWidgetInteractionEvent];
    afterMove: [event: DashboardWidgetInteractionEvent];
    beforeResize: [event: DashboardWidgetInteractionEvent];
    resize: [event: DashboardWidgetInteractionEvent];
    afterResize: [event: DashboardWidgetInteractionEvent];
    beforeTitleDoubleClick: [event: DashboardWidgetInteractionEvent];
    titleDoubleClick: [event: DashboardWidgetInteractionEvent];
    afterTitleDoubleClick: [event: DashboardWidgetInteractionEvent];
    /** @deprecated Use a custom action calling resizeWidget. */
    maximizeWidget: [id: string];
    /** @deprecated Use a custom action calling resizeWidget. */
    minimizeWidget: [id: string];
    restoreWidget: [id: string];
    removeWidget: [id: string];
};

dist/vue/types.d.ts:25

DashboardGridEngineOptions

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardGridEngineOptions = {
    cellHeight?: number | string;
    margin?: number | string;
    float?: boolean;
    animate?: boolean;
    staticGrid?: boolean;
    rtl?: boolean | "auto";
    minRow?: number;
    maxRow?: number;
    sizeToContent?: boolean;
    /**
     * @deprecated GridStack native lazy loading does not defer React-owned widget content.
     * Use DashboardGrid.lazyRenderWidget with DashboardWidget.lazyLoad instead.
     * This option remains mapped for 0.2.x compatibility and is planned for removal in 0.3.0.
     */
    lazyLoad?: boolean;
    dragHandle?: string;
    resizeHandles?: string;
    alwaysShowResizeHandle?: boolean | "mobile";
    nonce?: string;
};

dist/core/types.d.ts:19

DashboardGridHandle

type
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export interface DashboardGridHandle {
    getGridStack(): GridStack | null;
    getColumnCount(): number | null;
    getRowCount(): number | null;
    getFloat(): boolean | null;
    isAreaEmpty(layout: Omit<DashboardWidgetLayout, "id">): boolean | null;
    willItFit(layout: Omit<DashboardWidgetLayout, "id">): boolean | null;
    refresh(): void;
    compact(layout?: CompactOptions, doSort?: boolean): DashboardLayoutSnapshot | null;
    commitLayout(): DashboardLayoutSnapshot | null;
}

dist/gridstack/adapter.d.ts:39

DashboardGridOptionInput

type
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardGridOptionInput = DashboardInteractionOptions & {
    columns?: number;
    engineOptions?: DashboardGridEngineOptions;
    responsive?: DashboardResponsiveOptions;
    /** @deprecated Use engineOptions.cellHeight. Planned for removal in 0.3.0. */
    cellHeight?: GridStackOptions["cellHeight"];
    /** @deprecated Use engineOptions.margin. Planned for removal in 0.3.0. */
    margin?: GridStackOptions["margin"];
};

dist/gridstack/option-mapper.d.ts:4

DashboardGridProps

type
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardGridProps<TData = unknown> = DashboardInteractionOptions & {
    widgets: DashboardWidgetModel<TData>[];
    columns?: DashboardColumnCount;
    engineOptions?: DashboardGridEngineOptions;
    responsive?: DashboardResponsiveOptions;
    externalDropTargets?: ReadonlyArray<DashboardExternalDropTarget>;
    gridId?: string;
    acceptExternalWidgets?: boolean | ((candidate: DashboardWidgetDropCandidate<TData>) => boolean);
    gridTransferMode?: DashboardWidgetTransferMode;
    className?: string;
    refreshKey?: number;
    showControls?: boolean;
    /** Default title double-click fills the current row's unused columns. */
    titleDoubleClickAction?: 'fill' | 'none';
    lazyRenderWidget?: boolean;
    actionLabels?: Partial<DashboardWidgetActionLabels>;
    renderWidget: (widget: DashboardWidgetModel<TData>) => ReactNode;
    renderWidgetActions?: (widget: DashboardWidgetModel<TData>) => ReactNode;
    onColumnsChange?: (columns: DashboardColumnCount) => void;
    onLayoutCommit?: (snapshot: DashboardLayoutSnapshot) => void;
    onWidgetLayoutChange?: (id: string, layout: DashboardWidgetModel<TData>["layout"]) => void;
    onWidgetResizeFrame?: (event: DashboardWidgetResizeFrameEvent) => void;
    onWidgetExternalDrop?: (event: DashboardWidgetExternalDropEvent) => void;
    onWidgetDropRequest?: (request: DashboardWidgetDropRequest<TData>) => void;
    /** @deprecated Use onBeforeMove. Planned for removal in 0.3.0. */
    onWidgetDragStart?: (event: DashboardWidgetInteractionEvent) => void;
    /** @deprecated Use onAfterMove. Planned for removal in 0.3.0. */
    onWidgetDragStop?: (event: DashboardWidgetInteractionEvent) => void;
    /** @deprecated Use onBeforeResize. Planned for removal in 0.3.0. */
    onWidgetResizeStart?: (event: DashboardWidgetInteractionEvent) => void;
    /** @deprecated Use onAfterResize. Planned for removal in 0.3.0. */
    onWidgetResizeStop?: (event: DashboardWidgetInteractionEvent) => void;
    onBeforeMove?: (event: DashboardWidgetInteractionEvent) => void;
    onMove?: (event: DashboardWidgetInteractionEvent) => void;
    onAfterMove?: (event: DashboardWidgetInteractionEvent) => void;
    onBeforeResize?: (event: DashboardWidgetInteractionEvent) => void;
    onResize?: (event: DashboardWidgetInteractionEvent) => void;
    onAfterResize?: (event: DashboardWidgetInteractionEvent) => void;
    onBeforeTitleDoubleClick?: (event: DashboardWidgetInteractionEvent) => void;
    onTitleDoubleClick?: (event: DashboardWidgetInteractionEvent) => void;
    onAfterTitleDoubleClick?: (event: DashboardWidgetInteractionEvent) => void;
    /** @deprecated Supply a custom action using resizeWidget. */
    onMaximizeWidget?: (id: string) => void;
    /** @deprecated Supply a custom action using resizeWidget. */
    onMinimizeWidget?: (id: string) => void;
    onRestoreWidget?: (id: string) => void;
    onRemoveWidget?: (id: string) => void;
    /**
     * @deprecated This is a title-only legacy alias. Use onTitleDoubleClick.
     * Planned for removal in 0.3.0.
     */
    onWidgetHeaderDoubleClick?: (id: string) => void;
};
export type DashboardGridProps<TData = unknown> = {
    widgets: DashboardWidget<TData>[];
    columns?: DashboardColumnCount;
    editable?: boolean;
    movable?: boolean;
    resizable?: boolean;
    engineOptions?: DashboardGridEngineOptions;
    responsive?: DashboardResponsiveOptions;
    externalDropTargets?: ReadonlyArray<DashboardExternalDropTarget>;
    gridId?: string;
    acceptExternalWidgets?: boolean | ((candidate: DashboardWidgetDropCandidate<TData>) => boolean);
    gridTransferMode?: DashboardWidgetTransferMode;
    refreshKey?: number;
    showControls?: boolean;
    /** Default title double-click fills the current row's unused columns. */
    titleDoubleClickAction?: 'fill' | 'none';
    lazyRenderWidget?: boolean;
    actionLabels?: Partial<DashboardWidgetActionLabels>;
};

dist/components/DashboardGrid.d.ts:6 · dist/vue/types.d.ts:6

DashboardInteractionOptions

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardInteractionOptions = {
    editable?: boolean;
    movable?: boolean;
    resizable?: boolean;
};

dist/core/types.d.ts:97

DashboardLayoutMutationEvent

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardLayoutMutationEvent<TData = unknown> = {
    kind: DashboardLayoutMutationKind;
    widgetIds: DashboardWidgetId[];
    columns: DashboardColumnCount;
    snapshot: DashboardStateSnapshot<TData>;
};

dist/core/types.d.ts:163

DashboardLayoutMutationKind

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardLayoutMutationKind = "widget:add" | "widget:update" | "widget:remove" | "widgets:clear" | "layout:commit" | "layout:reset" | "layout:restore" | "layout:arrange" | "layout:fill" | "columns:change";

dist/core/types.d.ts:162

DashboardLayoutsByColumn

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardLayoutsByColumn = Partial<Record<DashboardColumnCount, DashboardColumnLayoutSnapshot>>;

dist/core/types.d.ts:84

DashboardLayoutSnapshot

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardLayoutSnapshot = {
    columns: DashboardColumnCount;
    widgets: DashboardWidgetLayout[];
};

dist/core/types.d.ts:76

DashboardLayoutState

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardLayoutState<TData = unknown> = {
    columns: DashboardColumnCount;
    widgets: DashboardWidget<TData>[];
    previousLayouts: Record<DashboardWidgetId, DashboardWidgetLayout | undefined>;
    layoutsByColumn: DashboardLayoutsByColumn;
    refreshVersion: number;
};

dist/core/types.d.ts:102

DashboardResizeScheduler

type
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardResizeScheduler = {
    schedule: (event: DashboardWidgetResizeFrameEvent) => void;
    cancel: () => void;
};

dist/browser/types.d.ts:10

DashboardResponsiveBreakpoint

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardResponsiveBreakpoint = {
    maxWidth: number;
    columns: DashboardColumnCount;
    layout?: DashboardColumnLayout;
};

dist/core/types.d.ts:3

DashboardResponsiveOptions

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardResponsiveOptions = {
    columnWidth?: number;
    columnMax?: DashboardColumnCount;
    breakpoints?: ReadonlyArray<DashboardResponsiveBreakpoint>;
    breakpointForWindow?: boolean;
    layout?: DashboardColumnLayout;
};

dist/core/types.d.ts:8

DashboardStateSnapshot

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardStateSnapshot<TData = unknown> = {
    columns: DashboardColumnCount;
    widgets: DashboardWidget<TData>[];
    previousLayouts: Record<DashboardWidgetId, DashboardWidgetLayout>;
    layoutsByColumn: DashboardLayoutsByColumn;
};

dist/core/types.d.ts:85

DashboardStateSnapshotInput

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardStateSnapshotInput<TData = unknown> = {
    columns: number;
    widgets: DashboardWidget<TData>[];
    previousLayouts?: Record<DashboardWidgetId, DashboardWidgetLayout>;
    layoutsByColumn?: DashboardLayoutsByColumn;
};

dist/core/types.d.ts:91

DashboardWidget

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidget<TData = unknown> = {
    id: DashboardWidgetId;
    title?: string;
    layout: DashboardWidgetLayout;
    data?: TData;
    minimized?: boolean;
    maximized?: boolean;
    locked?: boolean;
    movable?: boolean;
    resizable?: boolean;
    lazyLoad?: boolean;
    sizeToContent?: boolean | number;
    resizeToContentParent?: string;
};

dist/core/types.d.ts:60

DashboardWidgetActionLabels

type
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetActionLabels = {
    /** @deprecated No default maximize button is rendered. */
    maximize: string;
    /** @deprecated No default minimize button is rendered. */
    minimize: string;
    restore: string;
    remove: string;
};

dist/ui/widget-actions.d.ts:1

DashboardWidgetDropCandidate

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetDropCandidate<TData = unknown> = {
    source: {
        kind: "palette";
        sourceId: string;
    } | {
        kind: "grid";
        gridId: string;
        widgetId: DashboardWidgetId;
    };
    targetGridId: string;
    widget: DashboardWidget<TData>;
    mode: DashboardWidgetTransferMode;
};

dist/core/types.d.ts:135

DashboardWidgetDropRequest

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetDropRequest<TData = unknown> = DashboardWidgetDropCandidate<TData> & {
    operationId: string;
    targetLayout: DashboardWidgetLayout;
    targetSnapshot: DashboardLayoutSnapshot;
};

dist/core/types.d.ts:148

DashboardWidgetExternalDropEvent

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetExternalDropEvent = {
    widgetId: DashboardWidgetId;
    targetId: string;
    columns: DashboardColumnCount;
    layout: DashboardWidgetLayout;
};

dist/core/types.d.ts:169

DashboardWidgetId

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetId = string;

dist/core/types.d.ts:47

DashboardWidgetInsertionResult

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetInsertionResult<TData = unknown> = {
    accepted: true;
    state: DashboardLayoutState<TData>;
} | {
    accepted: false;
    reason: Extract<DashboardWidgetTransferRejection, "duplicate-id" | "invalid-layout">;
    state: DashboardLayoutState<TData>;
};

dist/core/types.d.ts:109

DashboardWidgetInteractionEvent

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetInteractionEvent = {
    id: DashboardWidgetId;
    layout: DashboardWidgetLayout;
};

dist/core/types.d.ts:158

DashboardWidgetLayout

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetLayout = {
    id: DashboardWidgetId;
    x: number;
    y: number;
    w: number;
    h: number;
    minW?: number;
    minH?: number;
    maxW?: number;
    maxH?: number;
};

dist/core/types.d.ts:48

DashboardWidgetResizeFrameEvent

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetResizeFrameEvent = {
    id: DashboardWidgetId;
    width: number;
    height: number;
};

dist/core/types.d.ts:153

DashboardWidgetShell

value
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export declare function DashboardWidgetShell<TData = unknown>({ widget, children, showControls, labels, onRestore, onRemove, onHeaderDoubleClick, onBeforeTitleDoubleClick, onTitleDoubleClick, onAfterTitleDoubleClick, renderActions, }: DashboardWidgetShellProps<TData>): import("react").JSX.Element;
_default: typeof __VLS_export

dist/components/DashboardWidget.d.ts:26 · dist/vue/DashboardWidgetShell.vue.d.ts:29

DashboardWidgetShellEmits

type
comins-grid-layout/vue
export type DashboardWidgetShellEmits = {
    /** @deprecated Use a custom action calling resizeWidget. */
    maximize: [id: string];
    /** @deprecated Use a custom action calling resizeWidget. */
    minimize: [id: string];
    restore: [id: string];
    remove: [id: string];
    beforeTitleDoubleClick: [event: DashboardWidgetInteractionEvent];
    titleDoubleClick: [event: DashboardWidgetInteractionEvent];
    afterTitleDoubleClick: [event: DashboardWidgetInteractionEvent];
};

dist/vue/types.d.ts:53

DashboardWidgetShellProps

type
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetShellProps<TData = unknown> = {
    widget: DashboardWidgetModel<TData>;
    children: ReactNode;
    showControls?: boolean;
    labels?: DashboardWidgetActionLabels;
    /** @deprecated Supply a custom action using resizeWidget. */
    onMaximize?: (id: string) => void;
    /** @deprecated Supply a custom action using resizeWidget. */
    onMinimize?: (id: string) => void;
    onRestore?: (id: string) => void;
    onRemove?: (id: string) => void;
    /**
     * @deprecated This is a title-only legacy alias. Use onTitleDoubleClick.
     * Removal is deferred to a future release.
     */
    onHeaderDoubleClick?: (id: string) => void;
    onBeforeTitleDoubleClick?: (event: DashboardWidgetInteractionEvent) => void;
    onTitleDoubleClick?: (event: DashboardWidgetInteractionEvent) => void;
    onAfterTitleDoubleClick?: (event: DashboardWidgetInteractionEvent) => void;
    renderActions?: (widget: DashboardWidgetModel<TData>) => ReactNode;
};
export type DashboardWidgetShellProps<TData = unknown> = {
    widget: DashboardWidget<TData>;
    showControls?: boolean;
    labels?: DashboardWidgetActionLabels;
};

dist/components/DashboardWidget.d.ts:5 · dist/vue/types.d.ts:48

DashboardWidgetTransferInput

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetTransferInput<TData = unknown> = {
    source: DashboardLayoutState<TData>;
    target: DashboardLayoutState<TData>;
    widgetId: DashboardWidgetId;
    targetLayout: DashboardWidgetLayout;
    targetSnapshot: DashboardLayoutSnapshot;
    mode: DashboardWidgetTransferMode;
};

dist/core/types.d.ts:117

DashboardWidgetTransferMode

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetTransferMode = "copy" | "move";

dist/core/types.d.ts:74

DashboardWidgetTransferRejection

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetTransferRejection = "duplicate-id" | "missing-widget" | "not-transferable" | "invalid-layout";

dist/core/types.d.ts:75

DashboardWidgetTransferResult

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type DashboardWidgetTransferResult<TData = unknown> = {
    accepted: true;
    source: DashboardLayoutState<TData>;
    target: DashboardLayoutState<TData>;
} | {
    accepted: false;
    reason: DashboardWidgetTransferRejection;
    source: DashboardLayoutState<TData>;
    target: DashboardLayoutState<TData>;
};

dist/core/types.d.ts:125

fitDashboardWidgetsToColumns

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function fitDashboardWidgetsToColumns<TData>(state: DashboardLayoutState<TData>): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:20

fitDashboardWidgetToColumns

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function fitDashboardWidgetToColumns<TData>(state: DashboardLayoutState<TData>, id: DashboardWidgetId): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:21

insertDashboardWidgetAtLayout

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function insertDashboardWidgetAtLayout<TData>(state: DashboardLayoutState<TData>, widget: DashboardWidget<TData>, targetLayout: DashboardWidgetLayout, targetSnapshot: DashboardLayoutSnapshot): DashboardWidgetInsertionResult<TData>;

dist/core/layout-state.d.ts:5

mapDashboardGridOptions

value
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export declare function mapDashboardGridOptions(options?: DashboardGridOptionInput, 
/**
 * @deprecated Adapter-owned bridge. Consumers should configure
 * DashboardGrid.acceptExternalWidgets. Planned for removal in 0.3.0.
 */
adapterOverrides?: DashboardGridAdapterOptionOverrides): GridStackOptions;

dist/gridstack/option-mapper.d.ts:20

mapDashboardWidgetOptions

value
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export declare function mapDashboardWidgetOptions<TData>(widget: DashboardWidget<TData>, options: DashboardGridOptionInput): Pick<GridStackWidget, "locked" | "noMove" | "noResize" | "lazyLoad" | "sizeToContent" | "resizeToContentParent">;

dist/gridstack/option-mapper.d.ts:26

maximizeDashboardWidget

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function maximizeDashboardWidget<TData>(state: DashboardLayoutState<TData>, id: DashboardWidgetId): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:11

minimizeDashboardWidget

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function minimizeDashboardWidget<TData>(state: DashboardLayoutState<TData>, id: DashboardWidgetId): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:13

removeDashboardWidget

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function removeDashboardWidget<TData>(state: DashboardLayoutState<TData>, id: DashboardWidgetId): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:8

resizeDashboardWidget

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function resizeDashboardWidget<TData>(state: DashboardLayoutState<TData>, id: DashboardWidgetId, size: Pick<DashboardWidgetLayout, "w" | "h">): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:15

restoreDashboardWidget

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function restoreDashboardWidget<TData>(state: DashboardLayoutState<TData>, id: DashboardWidgetId): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:16

serializeDashboardLayout

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function serializeDashboardLayout<TData>(state: DashboardLayoutState<TData>): DashboardLayoutSnapshot;

dist/core/layout-state.d.ts:22

serializeDashboardState

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function serializeDashboardState<TData>(state: DashboardLayoutState<TData>): DashboardStateSnapshot<TData>;

dist/core/layout-state.d.ts:23

setDashboardColumns

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function setDashboardColumns<TData>(state: DashboardLayoutState<TData>, columns: number): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:17

transferDashboardWidget

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function transferDashboardWidget<TData>(input: DashboardWidgetTransferInput<TData>): DashboardWidgetTransferResult<TData>;

dist/core/widget-transfer.d.ts:2

updateDashboardWidget

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function updateDashboardWidget<TData>(state: DashboardLayoutState<TData>, id: DashboardWidgetId, patch: Partial<DashboardWidget<TData>>): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:6

updateDashboardWidgetLayout

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function updateDashboardWidgetLayout<TData>(state: DashboardLayoutState<TData>, id: DashboardWidgetId, patch: Partial<Omit<DashboardWidgetLayout, "id">>): DashboardLayoutState<TData>;

dist/core/layout-state.d.ts:7

useDashboardDragIn

value
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export declare function useDashboardDragIn<TData>(options: UseDashboardDragInOptions<TData>): RefCallback<HTMLElement>;
export declare function useDashboardDragIn<TData>(options: MaybeRefOrGetter<UseDashboardDragInOptions<TData>>): ShallowRef<HTMLElement | null>;

dist/components/use-dashboard-drag-in.d.ts:4 · dist/vue/use-dashboard-drag-in.d.ts:3

UseDashboardDragInOptions

type
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export type UseDashboardDragInOptions<TData> = {
    sourceId: string;
    previewLayout: DashboardDragInPreviewLayout;
    createWidget: () => DashboardWidget<TData>;
    dragOptions?: DashboardDragOptions;
    disabled?: boolean;
};

dist/browser/types.d.ts:3

useDashboardGrid

value
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export declare function useDashboardGrid<TData = unknown>(options?: UseDashboardGridOptions<TData>): UseDashboardGridResult<TData>;
export declare function useDashboardGrid<TData = unknown>(options?: MaybeRefOrGetter<UseDashboardGridOptions<TData>>): UseDashboardGridResult<TData>;

dist/react/use-dashboard-grid.d.ts:11 · dist/vue/use-dashboard-grid.d.ts:4

UseDashboardGridOptions

type
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export type UseDashboardGridOptions<TData = unknown> = {
    initialColumns?: number;
    initialWidgets?: DashboardWidget<TData>[];
    onLayoutMutation?: (event: DashboardLayoutMutationEvent<TData>) => void;
};

dist/core/controller-types.d.ts:2

UseDashboardGridResult

type
comins-grid-layoutcomins-grid-layout/reactcomins-grid-layout/vue
export type UseDashboardGridResult<TData = unknown> = {
    state: DashboardLayoutState<TData>;
    widgets: DashboardWidget<TData>[];
    columns: DashboardLayoutState<TData>["columns"];
    refreshVersion: number;
    commands: DashboardGridCommands<TData>;
};
export type UseDashboardGridResult<TData = unknown> = {
    state: ComputedRef<DashboardLayoutState<TData>>;
    widgets: ComputedRef<DashboardWidget<TData>[]>;
    columns: ComputedRef<DashboardLayoutState<TData>["columns"]>;
    refreshVersion: ComputedRef<number>;
    commands: DashboardGridCommands<TData>;
};

dist/react/use-dashboard-grid.d.ts:4 · dist/vue/types.d.ts:64

validateDashboardGridConfiguration

value
comins-grid-layoutcomins-grid-layout/corecomins-grid-layout/reactcomins-grid-layout/vue
export declare function validateDashboardGridConfiguration<TData>(configuration: DashboardGridConfiguration<TData>): void;

dist/core/configuration.d.ts:13