import { ChangeDetectorRef, ElementRef } from '@angular/core';
import { RelationsNode, RelationsNodeBase } from '@anglr/dynamic/relations-editor';
import { ConfigureNodeEndpointData } from '@anglr/dynamic/layout-relations';
import { TitledDialogService } from '@anglr/common/material';
import { StateRelationsEditorOptions, StateRelationsOptions } from '../state.options';
import * as i0 from "@angular/core";
/**
 * Relations node component for state
 */
export declare class StateNodeSAComponent extends RelationsNodeBase<StateRelationsOptions, StateRelationsEditorOptions> implements RelationsNode<StateRelationsOptions, StateRelationsEditorOptions> {
    protected dialog: TitledDialogService;
    /**
     * Gets added input function names
     */
    protected get inputFunctions(): string[];
    constructor(changeDetector: ChangeDetectorRef, element: ElementRef<HTMLElement>, dialog: TitledDialogService);
    /**
     * Adds new input function
     */
    protected addInputFunc(): Promise<void>;
    /**
     * Removes input function
     * @param name - Name of input function to be removed
     */
    protected removeInputFunc(name: string): void;
    /**
     * Renames input func
     * @param name - Allows renaming of input func
     */
    protected rename(name: string): Promise<void>;
    /**
     * Configures endpoint
     * @param endpoint - Endpoint to be configured
     */
    protected configureEndpoint(endpoint: ConfigureNodeEndpointData): Promise<boolean>;
    /**
     * Shows code editor
     * @param name - Name of input func
     */
    protected showCodeEditor(name: string): Promise<void>;
    static ɵfac: i0.ɵɵFactoryDeclaration<StateNodeSAComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<StateNodeSAComponent, "state-node", never, {}, {}, never, never, true, never>;
}
//# sourceMappingURL=stateNode.component.d.ts.map