import type { NodeEditor, NodeFactory } from '../editor'; import type { AreaExtra } from '../area'; import type { Schemes } from '../schemes'; import type { AreaPlugin, RenderSignal } from 'rete-area-plugin'; import { SetupClass, type SetupFunction } from './Setup'; import { ConnectionPlugin as BaseConnectionPlugin, type EventType, type SocketData, type Side } from 'rete-connection-plugin'; import type { Socket } from '../socket/Socket.svelte'; import type { Connection } from '../nodes'; import type { Scope } from 'rete'; import type { Position } from 'rete-connection-plugin/_types/types'; export declare class ConnectionPlugin extends BaseConnectionPlugin { protected factory: NodeFactory; protected area: AreaPlugin; picked: boolean; lastClickedSocket: boolean; lastPickedSockedData: (SocketData & { payload: Socket; }) | undefined; /** Last picked connection. */ lastConn?: Connection; constructor(factory: NodeFactory, area: AreaPlugin); setParent(scope: Scope | { type: 'unmount'; data: { element: HTMLElement; }; }), [ ]>): void; /** * Handles pointer down and up events to control interactive connection creation. * @param event * @param type */ pick(event: PointerEvent, type: EventType): Promise; } export declare class ConnectionSetup extends SetupClass { setup(editor: NodeEditor, area: AreaPlugin, factory: NodeFactory): void; } export declare const setupConnections: SetupFunction;