import { OnDestroy } from '@angular/core';
import { RelationNodeEndpointBase } from '../relationsNodeEndpointBase';
import { RelationsInput } from '../../interfaces';
import { NodeRelationPath } from '../../misc/nodeRelationPath';
import * as i0 from "@angular/core";
/**
 * Component used to display relation node input
 */
export declare class RelationNodeInputSAComponent extends RelationNodeEndpointBase implements RelationsInput, OnDestroy {
    /**
     * Temporary relation path when updating existing relation
     */
    private _tempRelation;
    /**
     * Called when component is destroyed
     */
    ngOnDestroy(): void;
    /**
     * @inheritdoc
     */
    addRelation(relation: NodeRelationPath): boolean;
    /**
     * @inheritdoc
     */
    endRelation(relation: NodeRelationPath): void;
    /**
     * Updates node output relation
     */
    updateRelation(): void;
    /**
     * Mouse enter event, marks input as active
     * @param event - Mouse event that occured
     */
    protected _onMouseEnter(event: MouseEvent): void;
    /**
     * Mouse leave event, clears marked active input
     * @param event - Mouse event that occured
     */
    protected _onMouseLeave(event: MouseEvent): void;
    /**
     * Mouse down event, starts dragging
     * @param event - Mouse event that occured
     */
    protected _onMouseDown(event: MouseEvent): void;
    /**
     * Mouse move event on whole window
     * @param event - Mouse event that occured
     */
    protected _onMouseMove(event: MouseEvent): void;
    /**
     * Mouse up event on whole window
     * @param event - Mouse event that occured
     */
    protected _onMouseUp(event: MouseEvent): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<RelationNodeInputSAComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<RelationNodeInputSAComponent, "relation-node-input", never, {}, {}, never, never, true, never>;
}
//# sourceMappingURL=relationsNodeInput.component.d.ts.map