import { AveApiDtoUnion, ICommodityProviderDataSourceFactory } from "../../datasources/interfaces/ICommodityProviderDataSourceFactory"; import { IAveConfig, PpasAveApiHelper } from "../../datasources/ppas-ave-api/helpers/PpasAveApiHelper"; import { IAveApiDeviceDataParams } from "../../datasources/ppas-ave-api/interfaces/IAveApiDeviceDataParams"; import { MeasurementRepository } from "../../repositories/MeasurementRepository"; import { StaticMeterSettingsRepository } from "../../repositories/StaticMeterSettingsRepository"; import { AveMeasurementTransformation } from "../../transformations/AveMeasurementTransformation"; import { IAveApiDeviceDataDto } from "../../../../schema-definitions/datasources/commodity-providers/interfaces/IAveApiDeviceDataDto"; import { IMeasurementOption } from "../../../../schema-definitions/datasources/interfaces/IStaticMeterSettings"; import { ILogger } from "@golemio/core/dist/helpers"; import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig"; import { IPpasMeasurementsParams } from "../interfaces/IPpasMeasurementsParams"; import { PpasMeasurementsValidationSchema } from "../schema/PpasMeasurementsSchema"; import { AbstractFetchMeasurementsTask } from "./AbstractFetchMeasurementsTask"; export declare class FetchPpasMeasurementsTask extends AbstractFetchMeasurementsTask { protected config: ISimpleConfig; protected logger: ILogger; protected dataSourceFactory: ICommodityProviderDataSourceFactory; protected measurementTransformation: AveMeasurementTransformation; protected measurementRepository: MeasurementRepository; protected meterSettingsRepository: StaticMeterSettingsRepository; queueName: string; queueTtl: number; schema: typeof PpasMeasurementsValidationSchema; constructor(config: ISimpleConfig, logger: ILogger, dataSourceFactory: ICommodityProviderDataSourceFactory, measurementTransformation: AveMeasurementTransformation, measurementRepository: MeasurementRepository, meterSettingsRepository: StaticMeterSettingsRepository); execute(data: IPpasMeasurementsParams): Promise; protected getProviderConfig(data: IPpasMeasurementsParams): { baseUrl: string; config: IAveConfig; }; /** Splits the measurement options into individual options (multiple variables) */ protected splitOptionsByVars(options: IMeasurementOption[]): IMeasurementOption[]; protected generateMeasurements(data: IPpasMeasurementsParams & { placeId: number; }, sessionId: string): AsyncGenerator; protected getDataFromDataSource(resourceTypeKey: keyof typeof PpasAveApiHelper.resourceType, sessionId: string, params?: IAveApiDeviceDataParams): Promise; }