import { DiagramPointHoverComponent } from './../diagram-point-hover/diagram-point-hover.component';
import { AfterContentInit, AfterViewInit, ElementRef, OnDestroy, Renderer2 } from '@angular/core';
import { LinearDiagram2D, LinearDiagram2DOptions } from '../../class/linear-diagram-2-d/linear-diagram-2-d';
import { DrawingContextInterface, DrawingSvgInterface, Rect } from '@obliczeniowo/elementary/drawing';
import { Subscription } from 'rxjs';
import { Point2D } from '@obliczeniowo/elementary/classes';
import * as i0 from "@angular/core";
export declare class LinearDiagram2DComponent implements OnDestroy, AfterViewInit, AfterContentInit {
    protected renderer: Renderer2;
    protected dc: DrawingSvgInterface;
    protected diagram2d?: LinearDiagram2D;
    protected mousePos: Point2D;
    protected selectArea?: Rect;
    readonly width = 800;
    readonly height = 528;
    diagram: ElementRef<SVGSVGElement>;
    legend: import("@angular/core").InputSignal<string[]>;
    points: import("@angular/core").InputSignal<Point2D[][]>;
    xFormatter: import("@angular/core").InputSignal<((x: number) => string) | undefined>;
    yFormatter: import("@angular/core").InputSignal<((x: number) => string) | undefined>;
    private pOptions;
    get options(): LinearDiagram2DOptions;
    set options(value: LinearDiagram2DOptions);
    protected pLabels: {
        x: string;
        y: string;
        title: string;
    };
    set labels(labels: {
        x: string;
        y: string;
        title: string;
    });
    diagramPointHover: DiagramPointHoverComponent;
    protected subscriptions: Subscription[];
    constructor(renderer: Renderer2);
    ngOnDestroy(): void;
    ngAfterContentInit(): void;
    ngAfterViewInit(): void;
    pdf(): void;
    draw(dc?: DrawingContextInterface): void;
    move(event: MouseEvent): void;
    keyup(event: MouseEvent): void;
    left(): void;
    right(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<LinearDiagram2DComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<LinearDiagram2DComponent, "obl-linear-diagram-2d", never, { "legend": { "alias": "legend"; "required": false; "isSignal": true; }; "points": { "alias": "points"; "required": false; "isSignal": true; }; "xFormatter": { "alias": "xFormatter"; "required": false; "isSignal": true; }; "yFormatter": { "alias": "yFormatter"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; }; "labels": { "alias": "labels"; "required": false; }; }, {}, ["diagramPointHover"], ["*"], false, never>;
}
