import { IContext } from "@appglue/common/dist/Common/IContext";
import { MappingBuilderPage } from "./MappingBuilderPage";
import { MappingConfiguration } from "@appglue/common/dist/Mapping/MappingConfiguration";
import { IDesignPanelConfig } from "@appglue/common/dist/Common/IDesignPanelConfig";
export declare class MappingEditContext implements IContext {
    definition: MappingConfiguration;
    mode: MappingBuilderPage;
    isDragging: boolean;
    mappingBuilderName?: string;
    onSave?: () => void;
    onCancel?: () => void;
    designConfig?: IDesignPanelConfig | undefined;
    runtimeConfig?: IDesignPanelConfig | undefined;
    clipboardElement: any;
    lastSelectionElement: any;
    private _collapsedDestinationPaths;
    private _collapsedSourcePaths;
    private _highlightedRules;
    constructor(definition: MappingConfiguration);
    private _selectedDestination?;
    get selectedDestination(): string | undefined;
    set selectedDestination(sel: string | undefined);
    set hightlightedRules(ruleIds: string[]);
    set hoveredSource(path: string | undefined);
    private _hoveredExpression;
    get hoveredExpression(): string | undefined;
    set hoveredExpression(id: string | undefined);
    toggleDestinationCollapse(path: string): void;
    isDestinationCollapsed(path: string, forChildren?: boolean): boolean;
    toggleSourceCollapse(path: string): void;
    isSourceCollapsed(path: string, forChildren?: boolean): boolean;
    isHighlighted(ruleId: string): boolean;
    isHighlightedSource(path: string): boolean;
    sourceId(path: string): string;
    sourceConnectorIdForParent(path: string): string;
    sourceConnectorIdForChildren(path: string): string;
    sourceDragId(path: string): string;
    ruleId(id: string): string;
    ruleIdForSource(id: string): string;
    ruleIdForDestination(id: string): string;
    destinationId(path: string): string;
    destinationConnectorIdForParent(path: string): string;
    destinationConnectorIdForChildren(path: string): string;
    destinationDragId(id: string): string;
    onCopy(id?: string): void;
    onCut(id?: string): void;
    onDelete(id?: string): void;
    onPaste(id?: string): void;
}
