import { ExportArcSavedRequest, ExportArcHistoryRequest, ExportArcProjects } from '../legacy/DataExport.js';
export declare const dataValue: unique symbol;
/**
 * Base class for all transformers.
 * Has common functions for the transformers.
 */
export declare class BaseTransformer {
    [dataValue]: unknown;
    /**
     * @param data Data to be transformed.
     */
    constructor(data: unknown);
    /**
     * Generates request's datastore ID value.
     *
     * @param item A request object property.
     * @param projectId If set it adds project information to the ID.
     * @return Request ID value.
     */
    generateRequestId(item: ExportArcSavedRequest | ExportArcHistoryRequest, projectId?: string): string;
    /**
     * Computes history item ID
     *
     * @param timestamp The timestamp to use
     * @param item History item
     * @return Datastore ID
     */
    generateHistoryId(timestamp: number | undefined, item: ExportArcHistoryRequest): string;
    /**
     * Sets hours, minutes, seconds and ms to 0 and returns timestamp.
     *
     * @param timestamp Day's timestamp.
     * @returns Timestamp to the day.
     */
    getDayToday(timestamp: number): number;
    /**
     * Adds project reference to a request object.
     * @param request Request object to alter
     * @param id Project id
     */
    addProjectReference(request: ExportArcSavedRequest, id?: string): void;
    /**
     * Adds request reference to a project object.
     * @param project Project object to alter
     * @param id Request id
     */
    addRequestReference(project: ExportArcProjects, id: string): void;
}
//# sourceMappingURL=BaseTransformer.d.ts.map