import type { Chart, QueryChart } from './types';
import type { ChartHandlerInterface } from '../types';
import type { RequestContextVariables } from '../utils/context-variables';
import type ContextVariablesInstantiator from '../utils/context-variables-instantiator';
export type ChartRequest<C extends Chart = Chart> = C & {
    contextVariables?: RequestContextVariables;
};
export default class ChartHandlerService implements ChartHandlerInterface {
    private readonly contextVariablesInstantiator;
    constructor(contextVariablesInstantiator: ContextVariablesInstantiator);
    getChartWithContextInjected({ userId, renderingId, chartRequest, }: {
        userId: string | number;
        renderingId: string | number;
        chartRequest: ChartRequest;
    }): Promise<Chart>;
    getQueryForChart({ userId, renderingId, chartRequest, }: {
        userId: string | number;
        renderingId: string | number;
        chartRequest: ChartRequest<QueryChart>;
    }): Promise<{
        query: string;
        contextVariables: Record<string, unknown>;
    }>;
}
//# sourceMappingURL=chart-handler.d.ts.map