import { Cost } from '../cost'; import { CloudConstants, CloudConstantsEmissionsFactors, IFootprintEstimator, FootprintEstimate, ICloudService } from '../.'; import { StorageUsage } from '.'; export default abstract class StorageService implements ICloudService { estimator: IFootprintEstimator; protected constructor(storageCoefficient: number); getEstimates(start: Date, end: Date, region: string, emissionsFactors: CloudConstantsEmissionsFactors, constants: CloudConstants): Promise; abstract getUsage(start: Date, end: Date, region: string): Promise; abstract getCosts(start: Date, end: Date, region: string): Promise; abstract serviceName: string; } export declare abstract class SSDStorageService extends StorageService { coefficient: number; protected constructor(coefficient: number); abstract getUsage(start: Date, end: Date, region: string): Promise; abstract serviceName: string; } export declare abstract class HDDStorageService extends StorageService { coefficient: number; protected constructor(coefficient: number); abstract getUsage(start: Date, end: Date, region: string): Promise; abstract serviceName: string; }