UNPKG

@gravity-ui/graph

Version:

Modern graph editor component

41 lines (40 loc) 2.12 kB
import { Graph } from "../../graph"; import { ESelectionStrategy } from "../../utils/types/types"; import { TBlockId } from "../block/Block"; import { RootStore } from "../index"; import { ConnectionState, TConnection, TConnectionId } from "./ConnectionState"; declare module "../../graphEvents" { interface GraphEventsDefinitions { "connection-selection-change": (event: SelectionEvent<TConnection>) => void; } } export declare class ConnectionsStore { rootStore: RootStore; protected graph: Graph; $connections: import("@preact/signals-core").ReadonlySignal<ConnectionState<TConnection>[]>; $connectionsMap: import("@preact/signals-core").Signal<Map<TConnectionId, ConnectionState<TConnection>>>; selectedConnections: Set<TConnectionId>; $selectedConnections: import("@preact/signals-core").ReadonlySignal<Set<ConnectionState<TConnection>>>; constructor(rootStore: RootStore, graph: Graph); getBlock(id: TBlockId): import("../block/Block").BlockState<import("../..").TBlock>; protected setSelection(connection: ConnectionState | ConnectionState["id"], selected: boolean, params?: { ignoreChange: boolean; }): boolean; updateConnections(connections: TConnection[]): void; setConnections(connections: TConnection[]): void; protected getOrCreateConnection(connections: TConnection): ConnectionState<TConnection>; addConnection(connection: TConnection): TConnectionId; protected notifyConnectionMapChanged(): void; deleteConnections(connections: ConnectionState[]): void; deleteSelectedConnections(): void; protected computeSelectionChange(ids: TConnectionId[], selected: boolean, strategy?: ESelectionStrategy): { add: ConnectionState<TConnection>[]; removed: ConnectionState<TConnection>[]; list: ConnectionState<TConnection>[]; }; setConnectionsSelection(ids: TConnectionId[], selected: boolean, strategy?: ESelectionStrategy): void; toJSON(): TConnection[]; resetSelection(): void; getConnections(ids?: ConnectionState["id"][]): ConnectionState<TConnection>[]; reset(): void; }