import { PorsennaDataSource } from "../../datasources/porsenna/PorsennaDataSource"; import { PorsennaBuildingsRepository } from "../../repositories/porsenna/PorsennaBuildingsRepository"; import { PorsennaConsumptionRepository } from "../../repositories/porsenna/PorsennaConsumptionRepository"; import { PorsennaDevicesRepository } from "../../repositories/porsenna/PorsennaDevicesRepository"; import { PorsennaConsumptionTransformation } from "../../transformations/porsenna/PorsennaConsumptionTransformation"; import { PorsennaGaugeTransformation } from "../../transformations/porsenna/PorsennaGaugeTransformation"; import { IDatabaseConnector } from "@golemio/core/dist/helpers/data-access/postgres/IDatabaseConnector"; import { AbstractTask } from "@golemio/core/dist/integration-engine"; import { IEnapoPorsennaDistributionParams } from "../interfaces/IEnapoPorsennaDistributionParams"; import { EnapoPorsennaDistributionParamsSchema } from "../schema/EnapoPorsennaDistributionParamsSchema"; export declare class PorsennaDistributionTask extends AbstractTask { protected datasource: PorsennaDataSource; protected dbConnector: IDatabaseConnector; protected porsennaConsumptionRepository: PorsennaConsumptionRepository; protected porsennaBuildingsRepository: PorsennaBuildingsRepository; protected porsennaDevicesRepository: PorsennaDevicesRepository; protected gaugeTransformation: PorsennaGaugeTransformation; protected consumptionTransformation: PorsennaConsumptionTransformation; queueName: string; queueTtl: number; schema: typeof EnapoPorsennaDistributionParamsSchema; constructor(datasource: PorsennaDataSource, dbConnector: IDatabaseConnector, porsennaConsumptionRepository: PorsennaConsumptionRepository, porsennaBuildingsRepository: PorsennaBuildingsRepository, porsennaDevicesRepository: PorsennaDevicesRepository, gaugeTransformation: PorsennaGaugeTransformation, consumptionTransformation: PorsennaConsumptionTransformation); execute(params: IEnapoPorsennaDistributionParams): Promise; private prepareData; private saveDataToDb; private appendUniqueBuilding; }