import type { SeriesChangeCallback, SeriesConfig, SeriesSubscriber, SubscriptionOptions } from './types';
export default class SeriesManager {
    private seriesMap;
    private changeCallbacks;
    private subscribers;
    constructor(initialSeries?: SeriesConfig[]);
    private initializeSeries;
    addSeries(config: SeriesConfig): void;
    getSeries(name: string): SeriesConfig | undefined;
    getAllSeries(): SeriesConfig[];
    getAllConfigs(): Record<string, SeriesConfig>;
    setSeriesProperty<K extends keyof SeriesConfig>(name: string, property: K, value: SeriesConfig[K]): boolean;
    removeSeries(name: string): boolean;
    hasSeries(name: string): boolean;
    onChange(callback: SeriesChangeCallback): void;
    offChange(callback: SeriesChangeCallback): void;
    private notifyChange;
    clear(): void;
    size(): number;
    subscribe(subscriber: SeriesSubscriber, options?: SubscriptionOptions): () => void;
    unsubscribe(subscriber: SeriesSubscriber): void;
    private emitEvent;
    private shouldNotifySubscriber;
}
