/** * @license * Copyright 2024 Nuraly, Laabidi Aymen * SPDX-License-Identifier: MIT */ import { LitElement } from 'lit'; import { WorkflowNode } from './workflow-canvas.types.js'; import '../icon/icon.component.js'; import '../button/button.component.js'; declare const WorkflowNodeElement_base: (new (...args: any[]) => import("@nuralyui/common/mixins").DependencyAware) & (new (...args: any[]) => import("@nuralyui/common/mixins").ThemeAware) & (new (...args: any[]) => import("@nuralyui/common/mixins").EventHandlerCapable) & (new (...args: any[]) => import("packages/common/src/shared/base-mixin.js").LightDomContent) & typeof LitElement; /** * Workflow node component for displaying individual nodes in the canvas * * @element workflow-node * @fires node-mousedown - When node is clicked for dragging * @fires port-mousedown - When a port is clicked to start connection * @fires port-mouseup - When mouse is released on a port * @fires node-dblclick - When node is double-clicked for editing * @fires node-preview - When preview button is clicked (for chatbot nodes) * @fires node-trigger - When trigger button is clicked (for start nodes) */ export declare class WorkflowNodeElement extends WorkflowNodeElement_base { static useShadowDom: boolean; static styles: import("lit").CSSResult[]; node: WorkflowNode; selected: boolean; dragging: boolean; connectingPortId: string | null; editing: boolean; remoteSelection: { userId: string; color: string; username: string; } | null; remoteTyping: { userId: string; username: string; color: string; } | null; private hoveredPort; updated(changedProperties: Map): void; private getNodeColor; private getNodeIcon; private handleNodeMouseDown; private handleNodeDblClick; private handleInsertClick; private handlePreviewClick; private isChatbotNode; private hasPreviewPanel; private isStartNode; private isDbTableNode; private isUiTableNode; private isNoteNode; private getNoteFontSize; /** * Render a Note node - sticky note style annotation */ private renderNoteNode; private handleNoteBlur; private handleNoteKeydown; private handleNoteResizeStart; private handleNoteSettingsClick; private getTriggerStateLabel; private renderTriggerStatus; private handleTriggerClick; /** * Get the icon for a column type */ private getColumnTypeIcon; /** * Render a DB Table node in ERD style */ private renderDbTableNode; /** * Render a UI Table node - shows configured columns on the canvas */ private renderUiTableNode; private handleUiTableResizeStart; private handlePortMouseDown; private handlePortMouseUp; private handlePortMouseEnter; private handlePortMouseLeave; private getPortClasses; private getStatusText; private renderPort; private renderConfigPort; private renderRemoteOverlays; private wrapWithRemoteOverlays; render(): import("lit-html").TemplateResult<1>; } declare global { interface HTMLElementTagNameMap { 'workflow-node': WorkflowNodeElement; } } export {}; //# sourceMappingURL=workflow-node.component.d.ts.map