import { ElementRef, OnDestroy, OnInit } from "@angular/core";
import { FCanvasBase } from './f-canvas-base';
import { IPoint } from '@foblex/2d';
import { FCanvasChangeEvent } from './domain';
import * as i0 from "@angular/core";
export declare class FCanvasComponent extends FCanvasBase implements OnInit, OnDestroy {
    private readonly _fMediator;
    private readonly _elementReference;
    private readonly _injector;
    private _flowId;
    fCanvasChange: import("@angular/core").OutputEmitterRef<FCanvasChangeEvent>;
    readonly position: import("@angular/core").InputSignalWithTransform<IPoint, IPoint | null | undefined>;
    readonly scale: import("@angular/core").InputSignalWithTransform<number, unknown>;
    get hostElement(): HTMLElement;
    fGroupsContainer: import("@angular/core").Signal<ElementRef<HTMLElement>>;
    fNodesContainer: import("@angular/core").Signal<ElementRef<HTMLElement>>;
    fConnectionsContainer: import("@angular/core").Signal<ElementRef<HTMLElement>>;
    get flowId(): string;
    ngOnInit(): void;
    private _positionChange;
    private _scaleChange;
    redraw(): void;
    redrawWithAnimation(): void;
    centerGroupOrNode(id: string, animated?: boolean): void;
    fitToScreen(toCenter?: IPoint, animated?: boolean): void;
    resetScaleAndCenter(animated?: boolean): void;
    getScale(): number;
    /**
     *  @deprecated Method "setZoom" is deprecated. Use "setScale" instead. This method will be removed in version 18.0.0.`,
     */
    setZoom(scale: number, toPosition?: IPoint): void;
    setScale(scale: number, toPosition?: IPoint): void;
    /**
     *  @deprecated Method "resetZoom" is deprecated. Use "resetScale" instead. This method will be removed in version 18.0.0.`,
     */
    resetZoom(): void;
    resetScale(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<FCanvasComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<FCanvasComponent, "f-canvas", never, { "position": { "alias": "position"; "required": false; "isSignal": true; }; "scale": { "alias": "scale"; "required": false; "isSignal": true; }; }, { "fCanvasChange": "fCanvasChange"; }, never, ["[fGroup]", "f-snap-connection", "f-connection", "f-connection-for-create", "[fNode]"], true, never>;
}
