UNPKG

@citrineos/base

Version:

The base module for OCPP v2.0.1 including all interfaces. This module is not intended to be used directly, but rather as a dependency for other modules.

828 lines 654 kB
import { z } from 'zod'; export declare const ChargingProfileSchema: z.ZodObject<{ tenantId: z.ZodOptional<z.ZodNumber>; tenant: z.ZodOptional<z.ZodObject<{ id: z.ZodOptional<z.ZodNumber>; name: z.ZodString; url: z.ZodOptional<z.ZodNullable<z.ZodString>>; countryCode: z.ZodOptional<z.ZodNullable<z.ZodString>>; partyId: z.ZodOptional<z.ZodNullable<z.ZodString>>; serverProfileOCPI: z.ZodOptional<z.ZodNullable<z.ZodObject<{ credentialsRole: z.ZodObject<{ role: z.ZodEnum<{ CPO: "CPO"; EMSP: "EMSP"; HUB: "HUB"; NAP: "NAP"; NSP: "NSP"; SCSP: "SCSP"; }>; businessDetails: z.ZodObject<{ name: z.ZodString; website: z.ZodOptional<z.ZodString>; logo: z.ZodOptional<z.ZodObject<{ url: z.ZodString; type: z.ZodString; category: z.ZodString; width: z.ZodOptional<z.ZodNumber>; height: z.ZodOptional<z.ZodNumber>; }, z.core.$strip>>; }, z.core.$strip>; }, z.core.$strip>; versionDetails: z.ZodArray<z.ZodObject<{ version: z.ZodEnum<{ "2.2.1": "2.2.1"; }>; versionDetailsUrl: z.ZodOptional<z.ZodString>; }, z.core.$strip>>; versionEndpoints: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{ identifier: z.ZodString; url: z.ZodString; }, z.core.$strip>>>; }, z.core.$strip>>>; isUserTenant: z.ZodDefault<z.ZodBoolean>; maxChargingStations: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; updatedAt: z.ZodOptional<z.ZodDate>; createdAt: z.ZodOptional<z.ZodDate>; }, z.core.$strip>>; updatedAt: z.ZodOptional<z.ZodDate>; createdAt: z.ZodOptional<z.ZodDate>; databaseId: z.ZodNumber; ocppConnectionName: z.ZodString; id: z.ZodOptional<z.ZodNumber>; chargingProfileKind: z.ZodEnum<{ Absolute: "Absolute"; Recurring: "Recurring"; Relative: "Relative"; }>; chargingProfilePurpose: z.ZodEnum<{ ChargingStationExternalConstraints: "ChargingStationExternalConstraints"; ChargingStationMaxProfile: "ChargingStationMaxProfile"; TxDefaultProfile: "TxDefaultProfile"; TxProfile: "TxProfile"; }>; recurrencyKind: z.ZodOptional<z.ZodNullable<z.ZodEnum<{ Daily: "Daily"; Weekly: "Weekly"; }>>>; stackLevel: z.ZodNumber; validFrom: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>; validTo: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>; evseId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; isActive: z.ZodDefault<z.ZodBoolean>; chargingLimitSource: z.ZodOptional<z.ZodNullable<z.ZodDefault<z.ZodEnum<{ EMS: "EMS"; Other: "Other"; SO: "SO"; CSO: "CSO"; }>>>>; chargingSchedule: z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ tenantId: z.ZodOptional<z.ZodNumber>; tenant: z.ZodOptional<z.ZodObject<{ id: z.ZodOptional<z.ZodNumber>; name: z.ZodString; url: z.ZodOptional<z.ZodNullable<z.ZodString>>; countryCode: z.ZodOptional<z.ZodNullable<z.ZodString>>; partyId: z.ZodOptional<z.ZodNullable<z.ZodString>>; serverProfileOCPI: z.ZodOptional<z.ZodNullable<z.ZodObject<{ credentialsRole: z.ZodObject<{ role: z.ZodEnum<{ CPO: "CPO"; EMSP: "EMSP"; HUB: "HUB"; NAP: "NAP"; NSP: "NSP"; SCSP: "SCSP"; }>; businessDetails: z.ZodObject<{ name: z.ZodString; website: z.ZodOptional<z.ZodString>; logo: z.ZodOptional<z.ZodObject<{ url: z.ZodString; type: z.ZodString; category: z.ZodString; width: z.ZodOptional<z.ZodNumber>; height: z.ZodOptional<z.ZodNumber>; }, z.core.$strip>>; }, z.core.$strip>; }, z.core.$strip>; versionDetails: z.ZodArray<z.ZodObject<{ version: z.ZodEnum<{ "2.2.1": "2.2.1"; }>; versionDetailsUrl: z.ZodOptional<z.ZodString>; }, z.core.$strip>>; versionEndpoints: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{ identifier: z.ZodString; url: z.ZodString; }, z.core.$strip>>>; }, z.core.$strip>>>; isUserTenant: z.ZodDefault<z.ZodBoolean>; maxChargingStations: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; updatedAt: z.ZodOptional<z.ZodDate>; createdAt: z.ZodOptional<z.ZodDate>; }, z.core.$strip>>; updatedAt: z.ZodOptional<z.ZodDate>; createdAt: z.ZodOptional<z.ZodDate>; databaseId: z.ZodNumber; id: z.ZodNumber; ocppConnectionName: z.ZodString; chargingRateUnit: z.ZodEnum<{ W: "W"; A: "A"; }>; chargingSchedulePeriod: z.ZodTuple<[z.ZodAny], z.ZodAny>; duration: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; minChargingRate: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; startSchedule: z.ZodOptional<z.ZodNullable<z.ZodString>>; timeBase: z.ZodOptional<z.ZodISODateTime>; chargingProfileDatabaseId: z.ZodOptional<z.ZodNumber>; salesTariff: z.ZodOptional<z.ZodObject<{ tenantId: z.ZodOptional<z.ZodNumber>; tenant: z.ZodOptional<z.ZodObject<{ id: z.ZodOptional<z.ZodNumber>; name: z.ZodString; url: z.ZodOptional<z.ZodNullable<z.ZodString>>; countryCode: z.ZodOptional<z.ZodNullable<z.ZodString>>; partyId: z.ZodOptional<z.ZodNullable<z.ZodString>>; serverProfileOCPI: z.ZodOptional<z.ZodNullable<z.ZodObject<{ credentialsRole: z.ZodObject<{ role: z.ZodEnum<{ CPO: "CPO"; EMSP: "EMSP"; HUB: "HUB"; NAP: "NAP"; NSP: "NSP"; SCSP: "SCSP"; }>; businessDetails: z.ZodObject<{ name: z.ZodString; website: z.ZodOptional<z.ZodString>; logo: z.ZodOptional<z.ZodObject<{ url: z.ZodString; type: z.ZodString; category: z.ZodString; width: z.ZodOptional<z.ZodNumber>; height: z.ZodOptional<z.ZodNumber>; }, z.core.$strip>>; }, z.core.$strip>; }, z.core.$strip>; versionDetails: z.ZodArray<z.ZodObject<{ version: z.ZodEnum<{ "2.2.1": "2.2.1"; }>; versionDetailsUrl: z.ZodOptional<z.ZodString>; }, z.core.$strip>>; versionEndpoints: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{ identifier: z.ZodString; url: z.ZodString; }, z.core.$strip>>>; }, z.core.$strip>>>; isUserTenant: z.ZodDefault<z.ZodBoolean>; maxChargingStations: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; updatedAt: z.ZodOptional<z.ZodDate>; createdAt: z.ZodOptional<z.ZodDate>; }, z.core.$strip>>; updatedAt: z.ZodOptional<z.ZodDate>; createdAt: z.ZodOptional<z.ZodDate>; databaseId: z.ZodNumber; id: z.ZodNumber; numEPriceLevels: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; salesTariffDescription: z.ZodOptional<z.ZodNullable<z.ZodString>>; salesTariffEntry: z.ZodTuple<[z.ZodObject<{ relativeTimeInterval: z.ZodObject<{ start: z.ZodNumber; duration: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>; ePriceLevel: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; consumptionCost: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ startValue: z.ZodNumber; cost: z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>]>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ startValue: z.ZodNumber; cost: z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>]>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ startValue: z.ZodNumber; cost: z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>]>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ startValue: z.ZodNumber; cost: z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>]>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ startValue: z.ZodNumber; cost: z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>]>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ startValue: z.ZodNumber; cost: z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>]>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>]>>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], z.ZodObject<{ relativeTimeInterval: z.ZodObject<{ start: z.ZodNumber; duration: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>; ePriceLevel: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; consumptionCost: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ startValue: z.ZodNumber; cost: z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>]>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ startValue: z.ZodNumber; cost: z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>]>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ startValue: z.ZodNumber; cost: z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>]>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ startValue: z.ZodNumber; cost: z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>]>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ startValue: z.ZodNumber; cost: z.ZodUnion<readonly [z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>], null>, z.ZodTuple<[z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEmission: "CarbonDioxideEmission"; RelativePricePercentage: "RelativePricePercentage"; RenewableGenerationPercentage: "RenewableGenerationPercentage"; }>; amount: z.ZodNumber; amountMultiplier: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; customData: z.ZodOptional<z.ZodNullable<z.ZodAny>>; }, z.core.$strip>, z.ZodObject<{ costKind: z.ZodEnum<{ CarbonDioxideEm