import type { Request, Response } from 'express';
import { QueryData } from '../../../../components/_async/async-filters-form/types';
import { AsyncReportQueryData, AsyncReportUrlData, ParamsConfig, RecentlyViewedReport } from '../../../../types/UserReports';
import { StoreItemBuilder, ReportData } from '../builder';
export declare class ViewedReportBuilder extends StoreItemBuilder {
    readonly req: Request;
    filters: ParamsConfig;
    sort: ParamsConfig;
    reportData: ReportData;
    requestUrls: AsyncReportUrlData | undefined;
    interactiveQuery: QueryData;
    asyncQueryData: AsyncReportQueryData | undefined;
    constructor(req: Request, res: Response);
    withReportData: (reportData: ReportData) => this;
    withRequestData: (asyncQueryData: AsyncReportQueryData | undefined, url: AsyncReportUrlData | undefined) => this;
    private withAsyncUrls;
    private withAsyncQuery;
    withInteractiveQuery: (interactiveQueryData: QueryData) => this;
    private buildReportData;
    private buildUrls;
    private buildReportUrls;
    private buildStatus;
    private buildTimestamp;
    private buildInteractiveQuery;
    build: () => RecentlyViewedReport;
}
