import { IProperty } from '../../services/propertiesService/IProperty.js';
import { ServiceContainer } from '../../services/ServiceContainer.js';
import { BaseCustomWebComponentLazyAppend } from '@node-projects/base-custom-webcomponent';
import { IPropertyEditor } from '../../services/propertiesService/IPropertyEditor.js';
import { IDesignItem } from '../../item/IDesignItem.js';
import { IPropertiesService } from '../../services/propertiesService/IPropertiesService.js';
import { IPropertyGroup } from '../../services/propertiesService/IPropertyGroup.js';
import { IContextMenuItem } from '../../helper/contextMenu/IContextMenuItem.js';
export declare class PropertyGridPropertyList extends BaseCustomWebComponentLazyAppend {
    private _div;
    private _propertyMap;
    private _serviceContainer;
    private _propertiesService;
    private _designItems;
    private _lastClassType;
    private _addCounter;
    propertyGroupHover: (group: IPropertyGroup, part: 'name' | 'desc') => boolean;
    propertyGroupClick: (group: IPropertyGroup, part: 'name' | 'desc') => void;
    propertyContextMenuProvider: (designItems: IDesignItem[], property: IProperty) => IContextMenuItem[];
    get propertiesService(): IPropertiesService;
    static get style(): CSSStyleSheet;
    constructor(serviceContainer: ServiceContainer);
    setPropertiesService(propertiesService: IPropertiesService): void;
    createElements(designItem: IDesignItem): Promise<boolean>;
    private _shouldCreateElements;
    private _rebuildElements;
    private createPropertyGroups;
    private expandOrCollapsePropertyGroups;
    private createPropertyEditors;
    private _onDragLeave;
    private _onDragOver;
    private _onDrop;
    openContextMenu(event: MouseEvent, property: IProperty): void;
    designItemsChanged(designItems: IDesignItem[]): void;
    refreshForDesignItems(items: IDesignItem[]): void;
    static refreshIsSetElementAndEditorForDesignItems(isSetElement: HTMLElement, property: IProperty, items: IDesignItem[], propertiesService: IPropertiesService, editor?: IPropertyEditor): void;
}
