import type { UmbBlockGridLayoutModel, UmbBlockGridTypeAreaType, UmbBlockGridTypeModel, UmbBlockGridValueModel } from '../../types.js'; import { UMB_BLOCK_GRID_MANAGER_CONTEXT } from '../../block-grid-manager/constants.js'; import { type UmbBlockGridWorkspaceOriginData } from '../../workspace/index.js'; import type { UmbBlockGridScalableContainerContext } from '../../context/block-grid-scale-manager/block-grid-scale-manager.controller.js'; import type { UmbControllerHost } from '../../../../../libs/controller-api/index.js'; import type { UmbNumberRangeValueType } from '../../../../core/models/index.js'; import { UmbBlockEntriesContext, type UmbBlockDataModel } from '../../../block/index.js'; interface UmbBlockGridAreaTypeInvalidRuleType { groupKey?: string; key?: string; name: string; amount: number; minRequirement: number; maxRequirement: number; } export declare class UmbBlockGridEntriesContext extends UmbBlockEntriesContext implements UmbBlockGridScalableContainerContext { #private; readonly layoutColumns: import("rxjs").Observable; areaType: import("rxjs").Observable; areaTypeCreateLabel: import("rxjs").Observable; readonly rangeLimits: import("rxjs").Observable; readonly allowedBlockTypes: import("rxjs").Observable; readonly amountOfAllowedBlockTypes: import("rxjs").Observable; readonly canCreate: import("rxjs").Observable; readonly hasTypeLimits: import("rxjs").Observable; firstAllowedBlockTypeName(): import("rxjs").Observable; setParentUnique(contentKey: string | null): void; getParentUnique(): string | null | undefined; setAreaKey(areaKey: string | null): void; getAreaKey(): string | null | undefined; setLayoutColumns(columns: number | undefined): void; getLayoutColumns(): number | undefined; getMinAllowed(): number; getMaxAllowed(): number; getLayoutContainerElement(): HTMLElement | undefined; constructor(host: UmbControllerHost); protected _gotBlockManager(): void; getPathForCreateBlock(index: number): string | undefined; getPathForClipboard(index: number): string | undefined; isBlockTypeAllowed(contentTypeKey: string): import("rxjs").Observable; create(contentElementTypeKey: string, partialLayoutEntry?: Omit, originData?: UmbBlockGridWorkspaceOriginData): Promise<{ layout: UmbBlockGridLayoutModel; content: { key: string; contentTypeKey: string; values: import("../../../../content/content/index.js").UmbElementValueModel[]; }; settings: UmbBlockDataModel | undefined; } | undefined>; insert(layoutEntry: UmbBlockGridLayoutModel, content: UmbBlockDataModel, settings: UmbBlockDataModel | undefined, originData: UmbBlockGridWorkspaceOriginData): Promise; delete(contentKey: string): Promise; protected _insertFromPropertyValue(value: UmbBlockGridValueModel, originData: UmbBlockGridWorkspaceOriginData): Promise; protected _insertBlockFromPropertyValue(layoutEntry: UmbBlockGridLayoutModel, value: UmbBlockGridValueModel, originData: UmbBlockGridWorkspaceOriginData): Promise; getInvalidBlockTypeLimits(): UmbBlockGridAreaTypeInvalidRuleType[]; /** * @internal * @returns {boolean} - True if the block type limits are valid, otherwise false. */ checkBlockTypeLimitsValidity(): boolean; getInvalidBlockTypeConfigurations(): string[]; /** * @internal * @returns {boolean} - True if the block type limits are valid, otherwise false. */ checkBlockTypeConfigurationValidity(): boolean; /** * Check if given contentKey is allowed in the current area. * @param {string} contentKey - The contentKey of the content to check. * @returns {boolean} - True if the content is allowed in the current area, otherwise false. */ allowDrop(contentKey: string): boolean; onDragStart(): void; onDragEnd(): void; } export {};