1 import type { WebSocket
} from
'ws'
3 import type { ChargingStationAutomaticTransactionGeneratorConfiguration
} from
'./AutomaticTransactionGenerator.js'
4 import { ChargingStationEvents
} from
'./ChargingStationEvents.js'
5 import type { ChargingStationInfo
} from
'./ChargingStationInfo.js'
6 import type { ChargingStationOcppConfiguration
} from
'./ChargingStationOcppConfiguration.js'
7 import type { ConnectorStatus
} from
'./ConnectorStatus.js'
8 import type { EvseStatus
} from
'./Evse.js'
9 import type { JsonObject
} from
'./JsonType.js'
10 import type { BootNotificationResponse
} from
'./ocpp/Responses.js'
11 import type { Statistics
} from
'./Statistics.js'
12 import { type WorkerData
, type WorkerMessage
, WorkerMessageEvents
} from
'../worker/index.js'
14 export interface ChargingStationOptions
extends JsonObject
{
18 export interface ChargingStationWorkerData
extends WorkerData
{
21 options
?: ChargingStationOptions
24 export type EvseStatusWorkerType
= Omit
<EvseStatus
, 'connectors'> & {
25 connectors
?: ConnectorStatus
[]
28 export interface ChargingStationData
extends WorkerData
{
30 stationInfo
: ChargingStationInfo
31 connectors
: ConnectorStatus
[]
32 evses
: EvseStatusWorkerType
[]
33 ocppConfiguration
: ChargingStationOcppConfiguration
34 supervisionUrl
: string
36 | typeof WebSocket
.CONNECTING
37 | typeof WebSocket
.OPEN
38 | typeof WebSocket
.CLOSING
39 | typeof WebSocket
.CLOSED
40 bootNotificationResponse
?: BootNotificationResponse
41 automaticTransactionGenerator
?: ChargingStationAutomaticTransactionGeneratorConfiguration
44 enum ChargingStationMessageEvents
{
45 performanceStatistics
= 'performanceStatistics'
48 export const ChargingStationWorkerMessageEvents
= {
49 ...WorkerMessageEvents
,
50 ...ChargingStationEvents
,
51 ...ChargingStationMessageEvents
53 // eslint-disable-next-line @typescript-eslint/no-redeclare
54 export type ChargingStationWorkerMessageEvents
=
56 | ChargingStationEvents
57 | ChargingStationMessageEvents
59 export interface ChargingStationWorkerEventError
extends WorkerData
{
60 event
: WorkerMessageEvents
66 export type ChargingStationWorkerMessageData
=
69 | ChargingStationWorkerEventError
71 export type ChargingStationWorkerMessage
<T
extends ChargingStationWorkerMessageData
> = Omit
<
75 event
: ChargingStationWorkerMessageEvents