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.

511 lines (510 loc) 24.7 kB
import { OCPP1_6 } from '../ocpp/model/index.js'; import { OCPP_CallAction, type OCPPVersionType } from '../ocpp/rpc/message.js'; import { z } from 'zod'; export declare const oidcClientConfigSchema: z.ZodOptional<z.ZodObject<{ tokenUrl: z.ZodString; clientId: z.ZodString; clientSecret: z.ZodString; audience: z.ZodString; }, z.core.$strip>>; export declare const OCPP_VERSION_LIST: OCPPVersionType[]; export declare const websocketServerInputSchema: z.ZodObject<{ id: z.ZodOptional<z.ZodString>; host: z.ZodOptional<z.ZodDefault<z.ZodString>>; port: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; pingInterval: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; protocols: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodEnum<{ "ocpp1.6": "ocpp1.6"; "ocpp2.0.1": "ocpp2.0.1"; "ocpp2.1": "ocpp2.1"; }>>>>; securityProfile: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; allowUnknownChargingStations: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; ignoreAuthenticationHeaders: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; tlsKeyFilePath: z.ZodOptional<z.ZodString>; tlsCertificateChainFilePath: z.ZodOptional<z.ZodString>; mtlsCertificateAuthorityKeyFilePath: z.ZodOptional<z.ZodString>; rootCACertificateFilePath: z.ZodOptional<z.ZodString>; tenantId: z.ZodOptional<z.ZodNumber>; tenantPathMapping: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>; dynamicTenantResolution: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>; forceProtocol: z.ZodOptional<z.ZodEnum<{ "ocpp1.6": "ocpp1.6"; "ocpp2.0.1": "ocpp2.0.1"; "ocpp2.1": "ocpp2.1"; }>>; }, z.core.$strip>; export declare const HUBJECT_DEFAULT_BASEURL = "https://open.plugncharge-test.hubject.com"; export declare const HUBJECT_DEFAULT_TOKENURL = "https://hubject.stoplight.io/api/v1/projects/cHJqOjk0NTg5/nodes/6bb8b3bc79c2e-authorization-token"; export declare const HUBJECT_DEFAULT_CLIENTID = "YOUR_CLIENT_ID"; export declare const HUBJECT_DEFAULT_CLIENTSECRET = "YOUR_CLIENT_SECRET"; export declare const systemConfigInputSchema: z.ZodObject<{ env: z.ZodEnum<{ development: "development"; production: "production"; }>; centralSystem: z.ZodObject<{ host: z.ZodOptional<z.ZodDefault<z.ZodString>>; port: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; }, z.core.$strip>; modules: z.ZodObject<{ certificates: z.ZodOptional<z.ZodObject<{ endpointPrefix: z.ZodOptional<z.ZodDefault<z.ZodString>>; host: z.ZodOptional<z.ZodDefault<z.ZodString>>; port: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; }, z.core.$strip>>; configuration: z.ZodObject<{ heartbeatInterval: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; bootRetryInterval: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; ocpp2_0_1: z.ZodOptional<z.ZodObject<{ unknownChargerStatus: z.ZodOptional<z.ZodDefault<z.ZodEnum<{ Accepted: "Accepted"; Pending: "Pending"; Rejected: "Rejected"; }>>>; getBaseReportOnPending: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; bootWithRejectedVariables: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; autoAccept: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; }, z.core.$strip>>; ocpp2_1: z.ZodOptional<z.ZodObject<{ unknownChargerStatus: z.ZodOptional<z.ZodDefault<z.ZodEnum<{ Accepted: "Accepted"; Pending: "Pending"; Rejected: "Rejected"; }>>>; getBaseReportOnPending: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; bootWithRejectedVariables: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; autoAccept: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; }, z.core.$strip>>; ocpp1_6: z.ZodOptional<z.ZodObject<{ unknownChargerStatus: z.ZodOptional<z.ZodDefault<z.ZodEnum<{ Accepted: OCPP1_6.BootNotificationResponseStatus.Accepted; Pending: OCPP1_6.BootNotificationResponseStatus.Pending; Rejected: OCPP1_6.BootNotificationResponseStatus.Rejected; }>>>; }, z.core.$strip>>; endpointPrefix: z.ZodOptional<z.ZodDefault<z.ZodString>>; host: z.ZodOptional<z.ZodDefault<z.ZodString>>; port: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; }, z.core.$strip>; evdriver: z.ZodObject<{ endpointPrefix: z.ZodOptional<z.ZodDefault<z.ZodString>>; host: z.ZodOptional<z.ZodDefault<z.ZodString>>; port: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; enableGetChargingProfilesOnStartTransaction: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; }, z.core.$strip>; monitoring: z.ZodObject<{ endpointPrefix: z.ZodOptional<z.ZodDefault<z.ZodString>>; host: z.ZodOptional<z.ZodDefault<z.ZodString>>; port: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; }, z.core.$strip>; reporting: z.ZodObject<{ endpointPrefix: z.ZodOptional<z.ZodDefault<z.ZodString>>; host: z.ZodOptional<z.ZodDefault<z.ZodString>>; port: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; }, z.core.$strip>; smartcharging: z.ZodOptional<z.ZodObject<{ endpointPrefix: z.ZodOptional<z.ZodDefault<z.ZodString>>; host: z.ZodOptional<z.ZodDefault<z.ZodString>>; port: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; }, z.core.$strip>>; tenant: z.ZodOptional<z.ZodObject<{ endpointPrefix: z.ZodOptional<z.ZodDefault<z.ZodString>>; host: z.ZodOptional<z.ZodDefault<z.ZodString>>; port: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; ocppRouterBaseUrl: z.ZodOptional<z.ZodString>; }, z.core.$strip>>; transactions: z.ZodObject<{ endpointPrefix: z.ZodOptional<z.ZodDefault<z.ZodString>>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; host: z.ZodOptional<z.ZodDefault<z.ZodString>>; port: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; costUpdatedInterval: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; sendCostUpdatedOnMeterValue: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; signedMeterValuesConfiguration: z.ZodOptional<z.ZodObject<{ publicKeyFileId: z.ZodString; signingMethod: z.ZodEnum<{ "RSASSA-PKCS1-v1_5": "RSASSA-PKCS1-v1_5"; ECDSA: "ECDSA"; SECP192R1: "SECP192R1"; }>; rejectUnsupportedSignedMeterValues: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; }, z.core.$strip>>; receiptBaseUrl: z.ZodOptional<z.ZodString>; }, z.core.$strip>; }, z.core.$strip>; util: z.ZodObject<{ cache: z.ZodObject<{ memory: z.ZodOptional<z.ZodBoolean>; redis: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{ host: z.ZodOptional<z.ZodDefault<z.ZodString>>; port: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; }, z.core.$strip>, z.ZodObject<{ url: z.ZodURL; }, z.core.$strip>]>>; }, z.core.$strip>; messageBroker: z.ZodObject<{ amqp: z.ZodOptional<z.ZodObject<{ url: z.ZodString; exchange: z.ZodString; instanceIdentifier: z.ZodOptional<z.ZodString>; }, z.core.$strip>>; }, z.core.$strip>; authProvider: z.ZodObject<{ oidc: z.ZodOptional<z.ZodObject<{ jwksUri: z.ZodString; issuer: z.ZodString; audience: z.ZodString; cacheTime: z.ZodOptional<z.ZodNumber>; rateLimit: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; }, z.core.$strip>>; localByPass: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; }, z.core.$strip>; swagger: z.ZodOptional<z.ZodObject<{ path: z.ZodOptional<z.ZodDefault<z.ZodString>>; logoPath: z.ZodString; exposeData: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; exposeMessage: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; }, z.core.$strip>>; networkConnection: z.ZodObject<{ websocketServers: z.ZodArray<z.ZodOptional<z.ZodObject<{ id: z.ZodOptional<z.ZodString>; host: z.ZodOptional<z.ZodDefault<z.ZodString>>; port: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; pingInterval: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; protocols: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodEnum<{ "ocpp1.6": "ocpp1.6"; "ocpp2.0.1": "ocpp2.0.1"; "ocpp2.1": "ocpp2.1"; }>>>>; securityProfile: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; allowUnknownChargingStations: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; ignoreAuthenticationHeaders: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; tlsKeyFilePath: z.ZodOptional<z.ZodString>; tlsCertificateChainFilePath: z.ZodOptional<z.ZodString>; mtlsCertificateAuthorityKeyFilePath: z.ZodOptional<z.ZodString>; rootCACertificateFilePath: z.ZodOptional<z.ZodString>; tenantId: z.ZodOptional<z.ZodNumber>; tenantPathMapping: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>; dynamicTenantResolution: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>; forceProtocol: z.ZodOptional<z.ZodEnum<{ "ocpp1.6": "ocpp1.6"; "ocpp2.0.1": "ocpp2.0.1"; "ocpp2.1": "ocpp2.1"; }>>; }, z.core.$strip>>>; }, z.core.$strip>; certificateAuthority: z.ZodObject<{ v2gCA: z.ZodObject<{ name: z.ZodDefault<z.ZodEnum<{ hubject: "hubject"; }>>; hubject: z.ZodOptional<z.ZodObject<{ baseUrl: z.ZodDefault<z.ZodString>; tokenUrl: z.ZodDefault<z.ZodString>; clientId: z.ZodDefault<z.ZodString>; clientSecret: z.ZodDefault<z.ZodString>; }, z.core.$strip>>; }, z.core.$strip>; chargingStationCA: z.ZodObject<{ name: z.ZodDefault<z.ZodEnum<{ acme: "acme"; }>>; acme: z.ZodOptional<z.ZodObject<{ env: z.ZodDefault<z.ZodEnum<{ production: "production"; staging: "staging"; }>>; accountKeyFilePath: z.ZodString; email: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>; }, z.core.$strip>; }, z.core.$strip>; logLevel: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; maxCallLengthSeconds: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; maxCachingSeconds: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; maxReconnectDelay: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; shutdownGracePeriodSeconds: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; ocpiServer: z.ZodObject<{ host: z.ZodOptional<z.ZodDefault<z.ZodString>>; port: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; }, z.core.$strip>; userPreferences: z.ZodObject<{ telemetryConsent: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; }, z.core.$strip>; rbacRulesFileName: z.ZodOptional<z.ZodDefault<z.ZodString>>; rbacRulesDir: z.ZodOptional<z.ZodString>; realTimeAuthDefaultTimeoutSeconds: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; notReadyThresholdSeconds: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; }, z.core.$strip>; export type SystemConfigInput = z.infer<typeof systemConfigInputSchema>; export declare const websocketServerSchema: z.ZodObject<{ id: z.ZodString; host: z.ZodString; port: z.ZodNumber; pingInterval: z.ZodNumber; protocols: z.ZodArray<z.ZodEnum<{ "ocpp1.6": "ocpp1.6"; "ocpp2.0.1": "ocpp2.0.1"; "ocpp2.1": "ocpp2.1"; }>>; securityProfile: z.ZodNumber; allowUnknownChargingStations: z.ZodBoolean; ignoreAuthenticationHeaders: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; tlsKeyFilePath: z.ZodOptional<z.ZodString>; tlsCertificateChainFilePath: z.ZodOptional<z.ZodString>; mtlsCertificateAuthorityKeyFilePath: z.ZodOptional<z.ZodString>; rootCACertificateFilePath: z.ZodOptional<z.ZodString>; tenantId: z.ZodOptional<z.ZodNumber>; tenantPathMapping: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>; dynamicTenantResolution: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>; forceProtocol: z.ZodOptional<z.ZodEnum<{ "ocpp1.6": "ocpp1.6"; "ocpp2.0.1": "ocpp2.0.1"; "ocpp2.1": "ocpp2.1"; }>>; }, z.core.$strip>; export declare const systemConfigSchema: z.ZodObject<{ env: z.ZodEnum<{ development: "development"; production: "production"; }>; centralSystem: z.ZodObject<{ host: z.ZodString; port: z.ZodNumber; }, z.core.$strip>; modules: z.ZodObject<{ certificates: z.ZodOptional<z.ZodObject<{ endpointPrefix: z.ZodString; host: z.ZodOptional<z.ZodString>; port: z.ZodOptional<z.ZodNumber>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; }, z.core.$strip>>; evdriver: z.ZodObject<{ endpointPrefix: z.ZodString; host: z.ZodOptional<z.ZodString>; port: z.ZodOptional<z.ZodNumber>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; enableGetChargingProfilesOnStartTransaction: z.ZodOptional<z.ZodBoolean>; }, z.core.$strip>; configuration: z.ZodObject<{ heartbeatInterval: z.ZodNumber; bootRetryInterval: z.ZodNumber; ocpp2_0_1: z.ZodOptional<z.ZodObject<{ unknownChargerStatus: z.ZodEnum<{ Accepted: "Accepted"; Pending: "Pending"; Rejected: "Rejected"; }>; getBaseReportOnPending: z.ZodBoolean; bootWithRejectedVariables: z.ZodBoolean; autoAccept: z.ZodBoolean; }, z.core.$strip>>; ocpp2_1: z.ZodOptional<z.ZodObject<{ unknownChargerStatus: z.ZodEnum<{ Accepted: "Accepted"; Pending: "Pending"; Rejected: "Rejected"; }>; getBaseReportOnPending: z.ZodBoolean; bootWithRejectedVariables: z.ZodBoolean; autoAccept: z.ZodBoolean; }, z.core.$strip>>; ocpp1_6: z.ZodOptional<z.ZodObject<{ unknownChargerStatus: z.ZodEnum<{ Accepted: OCPP1_6.BootNotificationResponseStatus.Accepted; Pending: OCPP1_6.BootNotificationResponseStatus.Pending; Rejected: OCPP1_6.BootNotificationResponseStatus.Rejected; }>; }, z.core.$strip>>; endpointPrefix: z.ZodString; host: z.ZodOptional<z.ZodString>; port: z.ZodOptional<z.ZodNumber>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; }, z.core.$strip>; monitoring: z.ZodObject<{ endpointPrefix: z.ZodString; host: z.ZodOptional<z.ZodString>; port: z.ZodOptional<z.ZodNumber>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; }, z.core.$strip>; reporting: z.ZodObject<{ endpointPrefix: z.ZodString; host: z.ZodOptional<z.ZodString>; port: z.ZodOptional<z.ZodNumber>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; }, z.core.$strip>; smartcharging: z.ZodOptional<z.ZodObject<{ endpointPrefix: z.ZodString; host: z.ZodOptional<z.ZodString>; port: z.ZodOptional<z.ZodNumber>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; }, z.core.$strip>>; tenant: z.ZodObject<{ endpointPrefix: z.ZodString; host: z.ZodOptional<z.ZodString>; port: z.ZodOptional<z.ZodNumber>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; ocppRouterBaseUrl: z.ZodOptional<z.ZodString>; }, z.core.$strip>; transactions: z.ZodObject<{ endpointPrefix: z.ZodString; host: z.ZodOptional<z.ZodString>; port: z.ZodOptional<z.ZodNumber>; costUpdatedInterval: z.ZodOptional<z.ZodNumber>; sendCostUpdatedOnMeterValue: z.ZodOptional<z.ZodBoolean>; requests: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; responses: z.ZodArray<z.ZodEnum<typeof OCPP_CallAction>>; signedMeterValuesConfiguration: z.ZodOptional<z.ZodObject<{ publicKeyFileId: z.ZodString; signingMethod: z.ZodEnum<{ "RSASSA-PKCS1-v1_5": "RSASSA-PKCS1-v1_5"; ECDSA: "ECDSA"; SECP192R1: "SECP192R1"; }>; rejectUnsupportedSignedMeterValues: z.ZodOptional<z.ZodBoolean>; }, z.core.$strip>>; receiptBaseUrl: z.ZodOptional<z.ZodString>; }, z.core.$strip>; }, z.core.$strip>; util: z.ZodObject<{ cache: z.ZodObject<{ memory: z.ZodOptional<z.ZodBoolean>; redis: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{ host: z.ZodString; port: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ url: z.ZodURL; }, z.core.$strip>]>>; }, z.core.$strip>; messageBroker: z.ZodObject<{ amqp: z.ZodOptional<z.ZodObject<{ url: z.ZodString; exchange: z.ZodString; instanceIdentifier: z.ZodOptional<z.ZodString>; }, z.core.$strip>>; }, z.core.$strip>; authProvider: z.ZodObject<{ oidc: z.ZodOptional<z.ZodObject<{ jwksUri: z.ZodString; issuer: z.ZodString; audience: z.ZodString; cacheTime: z.ZodOptional<z.ZodNumber>; rateLimit: z.ZodBoolean; }, z.core.$strip>>; localByPass: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; }, z.core.$strip>; swagger: z.ZodOptional<z.ZodObject<{ path: z.ZodString; logoPath: z.ZodString; exposeData: z.ZodBoolean; exposeMessage: z.ZodBoolean; }, z.core.$strip>>; networkConnection: z.ZodObject<{ websocketServers: z.ZodArray<z.ZodObject<{ id: z.ZodString; host: z.ZodString; port: z.ZodNumber; pingInterval: z.ZodNumber; protocols: z.ZodArray<z.ZodEnum<{ "ocpp1.6": "ocpp1.6"; "ocpp2.0.1": "ocpp2.0.1"; "ocpp2.1": "ocpp2.1"; }>>; securityProfile: z.ZodNumber; allowUnknownChargingStations: z.ZodBoolean; ignoreAuthenticationHeaders: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; tlsKeyFilePath: z.ZodOptional<z.ZodString>; tlsCertificateChainFilePath: z.ZodOptional<z.ZodString>; mtlsCertificateAuthorityKeyFilePath: z.ZodOptional<z.ZodString>; rootCACertificateFilePath: z.ZodOptional<z.ZodString>; tenantId: z.ZodOptional<z.ZodNumber>; tenantPathMapping: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>; dynamicTenantResolution: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>; forceProtocol: z.ZodOptional<z.ZodEnum<{ "ocpp1.6": "ocpp1.6"; "ocpp2.0.1": "ocpp2.0.1"; "ocpp2.1": "ocpp2.1"; }>>; }, z.core.$strip>>; }, z.core.$strip>; certificateAuthority: z.ZodObject<{ v2gCA: z.ZodObject<{ name: z.ZodEnum<{ hubject: "hubject"; }>; hubject: z.ZodOptional<z.ZodObject<{ baseUrl: z.ZodString; tokenUrl: z.ZodString; clientId: z.ZodString; clientSecret: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>; chargingStationCA: z.ZodObject<{ name: z.ZodEnum<{ acme: "acme"; }>; acme: z.ZodOptional<z.ZodObject<{ env: z.ZodEnum<{ production: "production"; staging: "staging"; }>; accountKeyFilePath: z.ZodString; email: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>; }, z.core.$strip>; }, z.core.$strip>; logLevel: z.ZodNumber; maxCallLengthSeconds: z.ZodNumber; maxCachingSeconds: z.ZodNumber; maxReconnectDelay: z.ZodDefault<z.ZodNumber>; shutdownGracePeriodSeconds: z.ZodDefault<z.ZodNumber>; ocpiServer: z.ZodObject<{ host: z.ZodString; port: z.ZodNumber; }, z.core.$strip>; userPreferences: z.ZodObject<{ telemetryConsent: z.ZodOptional<z.ZodBoolean>; }, z.core.$strip>; rbacRulesFileName: z.ZodOptional<z.ZodString>; rbacRulesDir: z.ZodOptional<z.ZodString>; oidcClient: z.ZodOptional<z.ZodObject<{ tokenUrl: z.ZodString; clientId: z.ZodString; clientSecret: z.ZodString; audience: z.ZodString; }, z.core.$strip>>; realTimeAuthDefaultTimeoutSeconds: z.ZodDefault<z.ZodNumber>; notReadyThresholdSeconds: z.ZodDefault<z.ZodNumber>; }, z.core.$strip>; export declare const HttpMethodSchema: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>; export declare const UrlPatternSchema: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>; export declare const TenantSchema: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>; export declare const RbacRulesSchema: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>; export type RbacRules = z.infer<typeof RbacRulesSchema>; export type WebsocketServerConfig = z.infer<typeof websocketServerSchema>; export type SystemConfig = z.infer<typeof systemConfigSchema>;