## API Report File for "@jsplumb/test"

> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).

```ts

import { BrowserJsPlumbInstance } from '@jsplumb/browser-ui';
import { Connection } from '@jsplumb/core';
import { Endpoint } from '@jsplumb/core';
import { EventManager } from '@jsplumb/browser-ui';
import { Overlay } from '@jsplumb/core';

// @public (undocumented)
export class BrowserUITestSupport {
    constructor(_jsPlumb: BrowserJsPlumbInstance, ok: (b: boolean, m: string) => any, equal: (v1: any, v2: any, m?: string) => any);
    addDiv(id: string, parent?: Element, className?: string, x?: number, y?: number, w?: number, h?: number): Element;
    // (undocumented)
    addDivs(ids: Array<string>, parent?: Element): void;
    // (undocumented)
    assertEndpointCount(el: Element, count: number): void;
    assertManagedConnectionCount(el: Element, count: number): void;
    // (undocumented)
    _assertManagedConnectionCount(el: Element, count: number): void;
    assertManagedEndpointCount(el: Element, count: number): void;
    // (undocumented)
    _assertManagedEndpointCount(el: Element, count: number): void;
    aSyncDragConnection(d1: Element | Endpoint, d2: Element | Endpoint, events?: EventHandlers<Connection>): void;
    aSyncDragNodeBy(el: Element, x: number, y: number, events?: EventHandlers): void;
    cleanup(): void;
    clickOnConnection(connection: Connection): void;
    clickOnElement(element: Element, clickCount?: number): void;
    clickOnOverlay(connection: Connection, overlayId: string): void;
    dblClickOnConnection(connection: Connection): void;
    dblClickOnElement(element: Element): void;
    dblClickOnOverlay(connection: Connection, overlayId: string): void;
    dblTapOnConnection(connection: Connection): void;
    dblTapOnElement(element: Element): void;
    dblTapOnOverlay(connection: Connection, overlayId: string): void;
    detachAndReattachConnection(e: Endpoint, events?: EventHandlers): void;
    detachConnection(e: Endpoint, events?: EventHandlers): void;
    detachConnectionByTarget(c: Connection, events?: EventHandlers): void;
    // (undocumented)
    _divs: Array<string>;
    dragAndAbortConnection(d1: Element | Endpoint): void;
    dragANodeAround(el: HTMLElement, functionToAssertWhileDragging?: () => boolean, assertMessage?: string): void;
    dragConnection(d1: Element | Endpoint, d2: Element | Endpoint, mouseUpOnTarget?: boolean, events?: EventHandlers<Connection>): Connection;
    dragNodeBy(el: Element, x: number, y: number, events?: EventHandlers): void;
    dragNodeTo(el: Element, x: number, y: number, events?: EventHandlers): void;
    dragToGroup(el: Element, targetGroupId: string, events?: EventHandlers): void;
    fireEventOnConnection(connection: Connection, ...events: Array<string>): void;
    fireEventOnElement(e: Element, ...events: Array<string>): void;
    fireEventOnEndpoint(ep: Endpoint, ...events: Array<string>): void;
    fireEventOnOverlay(connection: Connection, overlayId: string, event: string): void;
    // (undocumented)
    getAttribute(el: Element, att: string): string;
    getCanvas(epOrEl: any): any;
    getConnectionCanvas(c: Connection): HTMLElement;
    getEndpointCanvas(ep: Endpoint): HTMLElement;
    // (undocumented)
    getEndpointCanvasPosition(ep: Endpoint): {
        x: number;
        y: number;
        w: string;
        h: string;
    };
    getOverlayCanvas(overlay: Overlay): any;
    head(obj: any): any;
    length(obj: any): number;
    makeContent(s: string): ChildNode;
    makeEvent(el: Element): any;
    // (undocumented)
    mottle: EventManager;
    // (undocumented)
    _registerDiv(div: string): void;
    relocate(conn: Connection, idx: number, newEl: Element, events?: EventHandlers): void;
    relocateSource(conn: Connection, newEl: Element, events?: EventHandlers): void;
    relocateTarget(conn: Connection, newEl: Element, events?: EventHandlers): void;
    tapOnConnection(connection: Connection): void;
    tapOnElement(element: Element): void;
    tapOnOverlay(connection: Connection, overlayId: string): void;
    uuid(): string;
    within(val: number, target: number, msg: string): void;
}

// @public
export interface EventHandlers<T = any> {
    after?: (payload?: T) => any;
    before?: () => any;
    beforeMouseMove?: () => any;
    beforeMouseUp?: () => any;
}

// @public (undocumented)
export function getInstance(instance: BrowserJsPlumbInstance, ok: (b: boolean, m: string) => any, equal: (v1: any, v2: any, m?: string) => any): BrowserUITestSupport;

// @public (undocumented)
export function getInstanceQUnit(instance: BrowserJsPlumbInstance): BrowserUITestSupport;

```
