UNPKG

ocpp-messages

Version:

TypeScript definitions for Open Charge Point Protocol (OCPP)

213 lines (210 loc) 6.18 kB
/* tslint:disable */ /** * This file was automatically generated by json-schema-to-typescript. * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file, * and run json-schema-to-typescript to regenerate this file. */ /** * Attribute: Actual, MinSet, MaxSet, etc. * Defaults to Actual if absent. * */ export type AttributeEnumType = "Actual" | "Target" | "MinSet" | "MaxSet"; /** * Defines the mutability of this attribute. Default is ReadWrite when omitted. * */ export type MutabilityEnumType = "ReadOnly" | "WriteOnly" | "ReadWrite"; /** * Data type of this variable. * */ export type DataEnumType = | "string" | "decimal" | "integer" | "dateTime" | "boolean" | "OptionList" | "SequenceList" | "MemberList"; export interface UrnOCPPCp220203NotifyReportRequest { customData?: CustomDataType; /** * The id of the GetReportRequest or GetBaseReportRequest that requested this report * */ requestId: number; /** * Timestamp of the moment this message was generated at the Charging Station. * */ generatedAt: string; /** * @minItems 1 */ reportData?: [ReportDataType, ...ReportDataType[]]; /** * “to be continued” indicator. Indicates whether another part of the report follows in an upcoming notifyReportRequest message. Default value when omitted is false. * * */ tbc?: boolean; /** * Sequence number of this message. First message starts at 0. * */ seqNo: number; } /** * This class does not get 'AdditionalProperties = false' in the schema generation, so it can be extended with arbitrary JSON properties to allow adding custom data. */ export interface CustomDataType { vendorId: string; [k: string]: unknown; } /** * Class to report components, variables and variable attributes and characteristics. * */ export interface ReportDataType { customData?: CustomDataType; component: ComponentType; variable: VariableType; /** * @minItems 1 * @maxItems 4 */ variableAttribute: | [VariableAttributeType] | [VariableAttributeType, VariableAttributeType] | [VariableAttributeType, VariableAttributeType, VariableAttributeType] | [VariableAttributeType, VariableAttributeType, VariableAttributeType, VariableAttributeType]; variableCharacteristics?: VariableCharacteristicsType; } /** * A physical or logical component * */ export interface ComponentType { customData?: CustomDataType; evse?: EVSEType; /** * Name of the component. Name should be taken from the list of standardized component names whenever possible. Case Insensitive. strongly advised to use Camel Case. * */ name: string; /** * Name of instance in case the component exists as multiple instances. Case Insensitive. strongly advised to use Camel Case. * */ instance?: string; } /** * EVSE * urn:x-oca:ocpp:uid:2:233123 * Electric Vehicle Supply Equipment * */ export interface EVSEType { customData?: CustomDataType; /** * Identified_ Object. MRID. Numeric_ Identifier * urn:x-enexis:ecdm:uid:1:569198 * EVSE Identifier. This contains a number (> 0) designating an EVSE of the Charging Station. * */ id: number; /** * An id to designate a specific connector (on an EVSE) by connector index number. * */ connectorId?: number; } /** * Reference key to a component-variable. * */ export interface VariableType { customData?: CustomDataType; /** * Name of the variable. Name should be taken from the list of standardized variable names whenever possible. Case Insensitive. strongly advised to use Camel Case. * */ name: string; /** * Name of instance in case the variable exists as multiple instances. Case Insensitive. strongly advised to use Camel Case. * */ instance?: string; } /** * Attribute data of a variable. * */ export interface VariableAttributeType { customData?: CustomDataType; type?: AttributeEnumType; /** * Value of the attribute. May only be omitted when mutability is set to 'WriteOnly'. * * The Configuration Variable <<configkey-reporting-value-size,ReportingValueSize>> can be used to limit GetVariableResult.attributeValue, VariableAttribute.value and EventData.actualValue. The max size of these values will always remain equal. * */ value?: string; mutability?: MutabilityEnumType; /** * If true, value will be persistent across system reboots or power down. Default when omitted is false. * */ persistent?: boolean; /** * If true, value that will never be changed by the Charging Station at runtime. Default when omitted is false. * */ constant?: boolean; } /** * Fixed read-only parameters of a variable. * */ export interface VariableCharacteristicsType { customData?: CustomDataType; /** * Unit of the variable. When the transmitted value has a unit, this field SHALL be included. * */ unit?: string; dataType: DataEnumType; /** * Minimum possible value of this variable. * */ minLimit?: number; /** * Maximum possible value of this variable. When the datatype of this Variable is String, OptionList, SequenceList or MemberList, this field defines the maximum length of the (CSV) string. * */ maxLimit?: number; /** * Allowed values when variable is Option/Member/SequenceList. * * * OptionList: The (Actual) Variable value must be a single value from the reported (CSV) enumeration list. * * * MemberList: The (Actual) Variable value may be an (unordered) (sub-)set of the reported (CSV) valid values list. * * * SequenceList: The (Actual) Variable value may be an ordered (priority, etc) (sub-)set of the reported (CSV) valid values. * * This is a comma separated list. * * The Configuration Variable <<configkey-configuration-value-size,ConfigurationValueSize>> can be used to limit SetVariableData.attributeValue and VariableCharacteristics.valueList. The max size of these values will always remain equal. * * */ valuesList?: string; /** * Flag indicating if this variable supports monitoring. * */ supportsMonitoring: boolean; }