@cloud-carbon-footprint/core
Version:
The core logic to get cloud usage data and estimate energy and carbon emissions.
12 lines (11 loc) • 684 B
TypeScript
import { Cost } from '../cost';
import { FootprintEstimate, ICloudService, CloudConstantsEmissionsFactors, CloudConstants } from '../.';
import { ComputeUsage } from '.';
export default abstract class ServiceWithCPUUtilization implements ICloudService {
private readonly estimator;
protected constructor();
getEstimates(start: Date, end: Date, region: string, emissionsFactors: CloudConstantsEmissionsFactors, constants: CloudConstants): Promise<FootprintEstimate[]>;
abstract getUsage(start: Date, end: Date, region: string): Promise<ComputeUsage[]>;
abstract getCosts(start: Date, end: Date, region: string): Promise<Cost[]>;
abstract serviceName: string;
}