-import type { EVSEType, StatusInfoType } from './Common.js'
import type { JsonObject } from '../../JsonType.js'
+import type { EVSEType, StatusInfoType } from './Common.js'
enum OCPP20ComponentName {
AlignedDataCtrlr = 'AlignedDataCtrlr',
MaxSet = 'MaxSet'
}
-type ComponentType = {
+interface ComponentType extends JsonObject {
name: string | OCPP20ComponentName
instance?: string
evse?: EVSEType
-} & JsonObject
+}
type VariableName =
| string
| OCPP20OptionalVariableName
| OCPP20VendorVariableName
-type VariableType = {
+interface VariableType extends JsonObject {
name: VariableName
instance?: string
-} & JsonObject
+}
-export type OCPP20SetVariableDataType = {
+export interface OCPP20SetVariableDataType extends JsonObject {
attributeType?: AttributeEnumType
attributeValue: string
component: ComponentType
variable: VariableType
-} & JsonObject
+}
enum SetVariableStatusEnumType {
Accepted = 'Accepted',
RebootRequired = 'RebootRequired'
}
-export type OCPP20SetVariableResultType = {
+export interface OCPP20SetVariableResultType extends JsonObject {
attributeType?: AttributeEnumType
attributeStatus: SetVariableStatusEnumType
component: ComponentType
variable: VariableType
attributeStatusInfo?: StatusInfoType
-} & JsonObject
+}
-export type OCPP20ComponentVariableType = {
+export interface OCPP20ComponentVariableType extends JsonObject {
component: ComponentType
variable?: VariableType
-} & JsonObject
+}