import { ChangeDetectorRef, Injector, OnDestroy, OnInit } from '@angular/core';
import { CurveFactory, CurveFactoryLineOnly } from 'd3';
import { Subject } from 'rxjs';
import { ChartData, ChartDataItem } from '../../../view-chart/types';
import { ContextChartService } from '../../chart.service';
import { SeriesData } from '../../types';
export declare abstract class ChartSeriesComponent implements OnInit, OnDestroy {
    protected injector: Injector;
    x: (d: unknown) => number | Date | string;
    y?: (d: unknown) => number;
    categories: string;
    unit: string;
    curveType: CurveFactory | CurveFactoryLineOnly;
    type: 'standard' | 'stacked';
    lineWidth: number;
    seriesType: 'line' | 'area' | 'bar';
    cdr: ChangeDetectorRef;
    context: ContextChartService;
    results: ChartData;
    activateLegend: string;
    seriesData: SeriesData[];
    destroy$$: Subject<void>;
    get disabledLegend(): Set<string>;
    get hasBar(): boolean;
    constructor(injector: Injector);
    ngOnInit(): void;
    initSeries(): void;
    legendActivate(): void;
    handleOpacity: (name: string, activateLegend: string) => 1 | 0.2;
    handleStrokeWidth: (name: string, activateLegend: string, width?: number) => number;
    handleChatData(data: ChartData[]): void;
    handleSeriesData(): void;
    getLineGenerator(): import("d3-shape").Line<ChartDataItem<object>>;
    getAraGenerator(): import("d3-shape").Area<ChartDataItem<object>>;
    ngOnDestroy(): void;
}
