import { AsyncSummary } from '../../types/UserReports';
import { Template } from '../../types/Templates';
import { components } from '../../types/api';
import ReportQuery from '../../types/ReportQuery';
export declare class TemplateBuilder {
    variant: components['schemas']['VariantDefinition'];
    specification: components['schemas']['Specification'];
    columns: Array<string>;
    sections: Array<string>;
    data: Array<Record<string, string>>;
    fields: components['schemas']['FieldDefinition'][];
    sectionFields: components['schemas']['FieldDefinition'][];
    template: Template;
    reportQuery: ReportQuery;
    pageSummaries: AsyncSummary[];
    summaries: AsyncSummary[];
    constructor(variant: components['schemas']['VariantDefinition'], defId: string);
    withColumns(columns: string[]): this;
    withData(data: Array<Record<string, string>>): this;
    withQuery(reportQuery: ReportQuery): this;
    withSummaries(summariesData: AsyncSummary[]): this;
}
