@dvsa/cvs-type-definitions 3.0.12 → 3.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -18,7 +18,6 @@
18
18
  "techRecord_vehicleConfiguration",
19
19
  "techRecord_vehicleClass_code",
20
20
  "techRecord_vehicleClass_description",
21
- "techRecord_numberOfWheelsDriven",
22
21
  "techRecord_approvalType",
23
22
  "techRecord_manufactureYear",
24
23
  "techRecord_bodyType_code",
@@ -433,9 +432,17 @@
433
432
  },
434
433
  "techRecord_axles": {
435
434
  "type": "array",
435
+ "minItems": 1,
436
436
  "items": {
437
437
  "type": "object",
438
438
  "title": "HGV Axles",
439
+ "required": [
440
+ "weights_gbWeight",
441
+ "weights_designWeight",
442
+ "tyres_tyreCode",
443
+ "tyres_tyreSize",
444
+ "tyres_fitmentCode"
445
+ ],
439
446
  "additionalProperties": false,
440
447
  "properties": {
441
448
  "parkingBrakeMrk": {
@@ -592,31 +599,27 @@
592
599
  ]
593
600
  },
594
601
  "techRecord_euVehicleCategory": {
595
- "anyOf": [
596
- {
597
- "title": "EU vehicle category",
598
- "type": "string",
599
- "enum": [
600
- "m1",
601
- "m2",
602
- "m3",
603
- "n1",
604
- "n2",
605
- "n3",
606
- "o1",
607
- "o2",
608
- "o3",
609
- "o4",
610
- "l1e-a",
611
- "l1e",
612
- "l2e",
613
- "l3e",
614
- "l4e",
615
- "l5e",
616
- "l6e",
617
- "l7e"
618
- ]
619
- }
602
+ "title": "EU vehicle category",
603
+ "type": "string",
604
+ "enum": [
605
+ "m1",
606
+ "m2",
607
+ "m3",
608
+ "n1",
609
+ "n2",
610
+ "n3",
611
+ "o1",
612
+ "o2",
613
+ "o3",
614
+ "o4",
615
+ "l1e-a",
616
+ "l1e",
617
+ "l2e",
618
+ "l3e",
619
+ "l4e",
620
+ "l5e",
621
+ "l6e",
622
+ "l7e"
620
623
  ]
621
624
  },
622
625
  "techRecord_frontAxleToRearAxle": {
@@ -37,7 +37,8 @@
37
37
  "techRecord_bodyType_description",
38
38
  "techRecord_bodyType_code",
39
39
  "techRecord_vehicleConfiguration",
40
- "vin"
40
+ "vin",
41
+ "techRecord_euVehicleCategory"
41
42
  ],
42
43
  "properties": {
43
44
  "createdTimestamp": {
@@ -587,34 +588,27 @@
587
588
  "maximum": 99
588
589
  },
589
590
  "techRecord_euVehicleCategory": {
590
- "anyOf": [
591
- {
592
- "title": "EU vehicle category",
593
- "type": "string",
594
- "enum": [
595
- "m1",
596
- "m2",
597
- "m3",
598
- "n1",
599
- "n2",
600
- "n3",
601
- "o1",
602
- "o2",
603
- "o3",
604
- "o4",
605
- "l1e-a",
606
- "l1e",
607
- "l2e",
608
- "l3e",
609
- "l4e",
610
- "l5e",
611
- "l6e",
612
- "l7e"
613
- ]
614
- },
615
- {
616
- "type": "null"
617
- }
591
+ "title": "EU vehicle category",
592
+ "type": "string",
593
+ "enum": [
594
+ "m1",
595
+ "m2",
596
+ "m3",
597
+ "n1",
598
+ "n2",
599
+ "n3",
600
+ "o1",
601
+ "o2",
602
+ "o3",
603
+ "o4",
604
+ "l1e-a",
605
+ "l1e",
606
+ "l2e",
607
+ "l3e",
608
+ "l4e",
609
+ "l5e",
610
+ "l6e",
611
+ "l7e"
618
612
  ]
619
613
  },
620
614
  "techRecord_euroStandard": {
@@ -1236,23 +1230,25 @@
1236
1230
  "type": "string"
1237
1231
  },
1238
1232
  "techRecord_axles": {
1239
- "type": [
1240
- "null",
1241
- "array"
1242
- ],
1233
+ "type": "array",
1234
+ "minItems": 1,
1243
1235
  "items": {
1244
- "type": [
1245
- "null",
1246
- "object"
1247
- ],
1236
+ "type": "object",
1248
1237
  "title": "TRL Axles",
1249
1238
  "additionalProperties": false,
1239
+ "required": [
1240
+ "weights_gbWeight",
1241
+ "weights_designWeight",
1242
+ "tyres_tyreCode",
1243
+ "tyres_tyreSize",
1244
+ "tyres_fitmentCode",
1245
+ "parkingBrakeMrk",
1246
+ "brakes_brakeActuator",
1247
+ "brakes_leverLength"
1248
+ ],
1250
1249
  "properties": {
1251
1250
  "parkingBrakeMrk": {
1252
- "type": [
1253
- "boolean",
1254
- "null"
1255
- ]
1251
+ "type": "boolean"
1256
1252
  },
1257
1253
  "axleNumber": {
1258
1254
  "type": [
@@ -1261,18 +1257,12 @@
1261
1257
  ]
1262
1258
  },
1263
1259
  "brakes_brakeActuator": {
1264
- "type": [
1265
- "null",
1266
- "integer"
1267
- ],
1260
+ "type": "integer",
1268
1261
  "minimum": 0,
1269
1262
  "maximum": 999
1270
1263
  },
1271
1264
  "brakes_leverLength": {
1272
- "type": [
1273
- "null",
1274
- "integer"
1275
- ],
1265
+ "type": "integer",
1276
1266
  "minimum": 0,
1277
1267
  "maximum": 999
1278
1268
  },
@@ -1283,18 +1273,12 @@
1283
1273
  ]
1284
1274
  },
1285
1275
  "weights_gbWeight": {
1286
- "type": [
1287
- "integer",
1288
- "null"
1289
- ],
1276
+ "type": "integer",
1290
1277
  "minimum": 0,
1291
1278
  "maximum": 99999
1292
1279
  },
1293
1280
  "weights_designWeight": {
1294
- "type": [
1295
- "integer",
1296
- "null"
1297
- ],
1281
+ "type": "integer",
1298
1282
  "minimum": 0,
1299
1283
  "maximum": 99999
1300
1284
  },
@@ -1315,18 +1299,12 @@
1315
1299
  "maximum": 99999
1316
1300
  },
1317
1301
  "tyres_tyreCode": {
1318
- "type": [
1319
- "integer",
1320
- "null"
1321
- ],
1302
+ "type": "integer",
1322
1303
  "minimum": 0,
1323
1304
  "maximum": 99999
1324
1305
  },
1325
1306
  "tyres_tyreSize": {
1326
- "type": [
1327
- "string",
1328
- "null"
1329
- ],
1307
+ "type": "string",
1330
1308
  "maxLength": 12
1331
1309
  },
1332
1310
  "tyres_plyRating": {
@@ -1336,18 +1314,11 @@
1336
1314
  ]
1337
1315
  },
1338
1316
  "tyres_fitmentCode": {
1339
- "anyOf": [
1340
- {
1341
- "type": "null"
1342
- },
1343
- {
1344
- "title": "Fitment Code",
1345
- "type": "string",
1346
- "enum": [
1347
- "single",
1348
- "double"
1349
- ]
1350
- }
1317
+ "title": "Fitment Code",
1318
+ "type": "string",
1319
+ "enum": [
1320
+ "single",
1321
+ "double"
1351
1322
  ]
1352
1323
  },
1353
1324
  "tyres_dataTrAxles": {
@@ -332,7 +332,7 @@
332
332
  },
333
333
  "techRecord_alterationMarker": {
334
334
  "type": [
335
- "string",
335
+ "boolean",
336
336
  "null"
337
337
  ]
338
338
  },
@@ -476,7 +476,7 @@
476
476
  },
477
477
  "techRecord_brakes_antilockBrakingSystem": {
478
478
  "type": [
479
- "string",
479
+ "boolean",
480
480
  "null"
481
481
  ]
482
482
  },
@@ -1171,7 +1171,7 @@
1171
1171
  },
1172
1172
  "techRecord_roadFriendly": {
1173
1173
  "type": [
1174
- "string",
1174
+ "boolean",
1175
1175
  "null"
1176
1176
  ]
1177
1177
  },
@@ -335,7 +335,7 @@
335
335
  },
336
336
  "techRecord_alterationMarker": {
337
337
  "type": [
338
- "string",
338
+ "boolean",
339
339
  "null"
340
340
  ]
341
341
  },
@@ -10,7 +10,6 @@
10
10
  "techRecord_vehicleConfiguration",
11
11
  "techRecord_vehicleClass_code",
12
12
  "techRecord_vehicleClass_description",
13
- "techRecord_numberOfWheelsDriven",
14
13
  "techRecord_approvalType",
15
14
  "techRecord_manufactureYear",
16
15
  "techRecord_bodyType_code",
@@ -440,10 +439,18 @@
440
439
  },
441
440
  "techRecord_axles": {
442
441
  "type": "array",
442
+ "minItems": 1,
443
443
  "items": {
444
444
  "type": "object",
445
445
  "title": "HGV Axles",
446
446
  "additionalProperties": false,
447
+ "required": [
448
+ "weights_gbWeight",
449
+ "weights_designWeight",
450
+ "tyres_tyreCode",
451
+ "tyres_tyreSize",
452
+ "tyres_fitmentCode"
453
+ ],
447
454
  "properties": {
448
455
  "parkingBrakeMrk": {
449
456
  "type": "boolean"
@@ -590,31 +597,27 @@
590
597
  ]
591
598
  },
592
599
  "techRecord_euVehicleCategory": {
593
- "anyOf": [
594
- {
595
- "title": "EU vehicle category",
596
- "type": "string",
597
- "enum": [
598
- "m1",
599
- "m2",
600
- "m3",
601
- "n1",
602
- "n2",
603
- "n3",
604
- "o1",
605
- "o2",
606
- "o3",
607
- "o4",
608
- "l1e-a",
609
- "l1e",
610
- "l2e",
611
- "l3e",
612
- "l4e",
613
- "l5e",
614
- "l6e",
615
- "l7e"
616
- ]
617
- }
600
+ "title": "EU vehicle category",
601
+ "type": "string",
602
+ "enum": [
603
+ "m1",
604
+ "m2",
605
+ "m3",
606
+ "n1",
607
+ "n2",
608
+ "n3",
609
+ "o1",
610
+ "o2",
611
+ "o3",
612
+ "o4",
613
+ "l1e-a",
614
+ "l1e",
615
+ "l2e",
616
+ "l3e",
617
+ "l4e",
618
+ "l5e",
619
+ "l6e",
620
+ "l7e"
618
621
  ]
619
622
  },
620
623
  "techRecord_frontAxleToRearAxle": {
@@ -812,9 +815,6 @@
812
815
  "type": "string",
813
816
  "maxLength": 30
814
817
  },
815
- "techRecord_numberOfWheelsDriven": {
816
- "type": "integer"
817
- },
818
818
  "techRecord_noOfAxles": {
819
819
  "anyOf": [
820
820
  {
@@ -858,12 +858,6 @@
858
858
  ],
859
859
  "maxLength": 30
860
860
  },
861
- "techRecord_numberOfWheelsDriven": {
862
- "type": [
863
- "integer",
864
- "null"
865
- ]
866
- },
867
861
  "techRecord_noOfAxles": {
868
862
  "anyOf": [
869
863
  {
@@ -9,8 +9,7 @@
9
9
  "vin",
10
10
  "techRecord_vehicleConfiguration",
11
11
  "techRecord_vehicleClass_code",
12
- "techRecord_vehicleClass_description",
13
- "techRecord_numberOfWheelsDriven"
12
+ "techRecord_vehicleClass_description"
14
13
  ],
15
14
  "properties": {
16
15
  "secondaryVrms": {
@@ -844,9 +843,6 @@
844
843
  ],
845
844
  "maxLength": 30
846
845
  },
847
- "techRecord_numberOfWheelsDriven": {
848
- "type": "integer"
849
- },
850
846
  "techRecord_noOfAxles": {
851
847
  "anyOf": [
852
848
  {
@@ -29,7 +29,8 @@
29
29
  "techRecord_bodyType_description",
30
30
  "techRecord_bodyType_code",
31
31
  "techRecord_vehicleConfiguration",
32
- "vin"
32
+ "vin",
33
+ "techRecord_euVehicleCategory"
33
34
  ],
34
35
  "properties": {
35
36
  "partialVin": {
@@ -359,7 +360,7 @@
359
360
  },
360
361
  "techRecord_alterationMarker": {
361
362
  "type": [
362
- "string",
363
+ "boolean",
363
364
  "null"
364
365
  ]
365
366
  },
@@ -585,34 +586,27 @@
585
586
  "maximum": 99
586
587
  },
587
588
  "techRecord_euVehicleCategory": {
588
- "anyOf": [
589
- {
590
- "title": "EU vehicle category",
591
- "type": "string",
592
- "enum": [
593
- "m1",
594
- "m2",
595
- "m3",
596
- "n1",
597
- "n2",
598
- "n3",
599
- "o1",
600
- "o2",
601
- "o3",
602
- "o4",
603
- "l1e-a",
604
- "l1e",
605
- "l2e",
606
- "l3e",
607
- "l4e",
608
- "l5e",
609
- "l6e",
610
- "l7e"
611
- ]
612
- },
613
- {
614
- "type": "null"
615
- }
589
+ "title": "EU vehicle category",
590
+ "type": "string",
591
+ "enum": [
592
+ "m1",
593
+ "m2",
594
+ "m3",
595
+ "n1",
596
+ "n2",
597
+ "n3",
598
+ "o1",
599
+ "o2",
600
+ "o3",
601
+ "o4",
602
+ "l1e-a",
603
+ "l1e",
604
+ "l2e",
605
+ "l3e",
606
+ "l4e",
607
+ "l5e",
608
+ "l6e",
609
+ "l7e"
616
610
  ]
617
611
  },
618
612
  "techRecord_euroStandard": {
@@ -1207,20 +1201,25 @@
1207
1201
  "type": "string"
1208
1202
  },
1209
1203
  "techRecord_axles": {
1210
- "type": [
1211
- "null",
1212
- "array"
1213
- ],
1204
+ "type": "array",
1205
+ "minItems": 1,
1214
1206
  "items": {
1215
1207
  "type": "object",
1216
1208
  "title": "TRL Axles",
1217
1209
  "additionalProperties": false,
1210
+ "required": [
1211
+ "weights_gbWeight",
1212
+ "weights_designWeight",
1213
+ "tyres_tyreCode",
1214
+ "tyres_tyreSize",
1215
+ "tyres_fitmentCode",
1216
+ "parkingBrakeMrk",
1217
+ "brakes_brakeActuator",
1218
+ "brakes_leverLength"
1219
+ ],
1218
1220
  "properties": {
1219
1221
  "parkingBrakeMrk": {
1220
- "type": [
1221
- "boolean",
1222
- "null"
1223
- ]
1222
+ "type": "boolean"
1224
1223
  },
1225
1224
  "axleNumber": {
1226
1225
  "type": [
@@ -1229,18 +1228,12 @@
1229
1228
  ]
1230
1229
  },
1231
1230
  "brakes_brakeActuator": {
1232
- "type": [
1233
- "null",
1234
- "integer"
1235
- ],
1231
+ "type": "integer",
1236
1232
  "minimum": 0,
1237
1233
  "maximum": 999
1238
1234
  },
1239
1235
  "brakes_leverLength": {
1240
- "type": [
1241
- "null",
1242
- "integer"
1243
- ],
1236
+ "type": "integer",
1244
1237
  "minimum": 0,
1245
1238
  "maximum": 999
1246
1239
  },
@@ -1251,18 +1244,12 @@
1251
1244
  ]
1252
1245
  },
1253
1246
  "weights_gbWeight": {
1254
- "type": [
1255
- "integer",
1256
- "null"
1257
- ],
1247
+ "type": "integer",
1258
1248
  "minimum": 0,
1259
1249
  "maximum": 99999
1260
1250
  },
1261
1251
  "weights_designWeight": {
1262
- "type": [
1263
- "integer",
1264
- "null"
1265
- ],
1252
+ "type": "integer",
1266
1253
  "minimum": 0,
1267
1254
  "maximum": 99999
1268
1255
  },
@@ -1283,18 +1270,12 @@
1283
1270
  "maximum": 99999
1284
1271
  },
1285
1272
  "tyres_tyreCode": {
1286
- "type": [
1287
- "integer",
1288
- "null"
1289
- ],
1273
+ "type": "integer",
1290
1274
  "minimum": 0,
1291
1275
  "maximum": 99999
1292
1276
  },
1293
1277
  "tyres_tyreSize": {
1294
- "type": [
1295
- "string",
1296
- "null"
1297
- ],
1278
+ "type": "string",
1298
1279
  "maxLength": 12
1299
1280
  },
1300
1281
  "tyres_plyRating": {
@@ -1304,18 +1285,11 @@
1304
1285
  ]
1305
1286
  },
1306
1287
  "tyres_fitmentCode": {
1307
- "anyOf": [
1308
- {
1309
- "type": "null"
1310
- },
1311
- {
1312
- "title": "Fitment Code",
1313
- "type": "string",
1314
- "enum": [
1315
- "single",
1316
- "double"
1317
- ]
1318
- }
1288
+ "title": "Fitment Code",
1289
+ "type": "string",
1290
+ "enum": [
1291
+ "single",
1292
+ "double"
1319
1293
  ]
1320
1294
  },
1321
1295
  "tyres_dataTrAxles": {
@@ -382,7 +382,7 @@
382
382
  },
383
383
  "techRecord_alterationMarker": {
384
384
  "type": [
385
- "string",
385
+ "boolean",
386
386
  "null"
387
387
  ]
388
388
  },
@@ -465,7 +465,7 @@
465
465
  },
466
466
  "techRecord_brakes_antilockBrakingSystem": {
467
467
  "type": [
468
- "string",
468
+ "boolean",
469
469
  "null"
470
470
  ]
471
471
  },
@@ -988,7 +988,7 @@
988
988
  },
989
989
  "techRecord_roadFriendly": {
990
990
  "type": [
991
- "string",
991
+ "boolean",
992
992
  "null"
993
993
  ]
994
994
  },
@@ -386,7 +386,7 @@
386
386
  },
387
387
  "techRecord_alterationMarker": {
388
388
  "type": [
389
- "string",
389
+ "boolean",
390
390
  "null"
391
391
  ]
392
392
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dvsa/cvs-type-definitions",
3
- "version": "3.0.12",
3
+ "version": "3.0.14",
4
4
  "description": "type definitions for cvs vta application",
5
5
  "main": "index.js",
6
6
  "repository": {
@@ -2,12 +2,13 @@ import { ErrorObject } from "ajv";
2
2
  import { schemas } from "./schemas";
3
3
  export declare type Schema = typeof schemas[number];
4
4
  /**
5
- * Validate an object according to a JSON schema
6
- * @param {Schema} schemaName `enum` - the name of the JSON schema to validate against
7
- * @param {object} objectToValidate `object` - the object to validate
8
- * @param {boolean | undefined} returnErrors `boolean` - Optional. Toggles between returning a boolean or the validation errors. Defaults to false.
9
- * @param {boolean | undefined} logErrors `boolean` - Optional. Toggles the logging of errors to the console. Defaults to false.
10
- * @returns {boolean | ErrorObject[]}`boolean | validationErrors`, depending on `returnErrors` flag.
11
- */
5
+ * Validate an object according to a JSON schema
6
+ * @param {Schema} schemaName `enum` - the name of the JSON schema to validate against
7
+ * @param {object} objectToValidate `object` - the object to validate
8
+ * @param {boolean | undefined} returnErrors `boolean` - Optional. Toggles between returning a boolean or the validation errors. Defaults to false.
9
+ * @param {boolean | undefined} logErrors `boolean` - Optional. Toggles the logging of errors to the console. Defaults to false.
10
+ * @returns {boolean | ErrorObject[]}`boolean | validationErrors`, depending on `returnErrors` flag.
11
+ */
12
12
  export declare function isValidObject<B extends boolean | undefined>(schemaName: Schema, objectToValidate: object): boolean;
13
13
  export declare function isValidObject<B extends boolean | undefined>(schemaName: Schema, objectToValidate: object, returnErrors: B): B extends false ? boolean : ErrorObject[];
14
+ export declare function isValidObject<B extends boolean | undefined>(schemaName: Schema, objectToValidate: object, returnErrors: B, logErrors: boolean | undefined): B extends false ? boolean : ErrorObject[];
@@ -197,7 +197,10 @@ export interface TechRecordGETHGVComplete {
197
197
  techRecord_applicantDetails_telephoneNumber?: null | string;
198
198
  techRecord_applicantDetails_emailAddress?: null | string;
199
199
  techRecord_applicationId?: null | string;
200
- techRecord_axles: HGVAxles[];
200
+ /**
201
+ * @minItems 1
202
+ */
203
+ techRecord_axles: [HGVAxles, ...HGVAxles[]];
201
204
  techRecord_bodyType_code: string;
202
205
  techRecord_bodyType_description: string;
203
206
  techRecord_brakes_antilockBrakingSystem?: string | null;
@@ -235,7 +238,7 @@ export interface TechRecordGETHGVComplete {
235
238
  techRecord_microfilm_microfilmRollNumber?: string | null;
236
239
  techRecord_microfilm_microfilmSerialNumber?: string | null;
237
240
  techRecord_model: string;
238
- techRecord_numberOfWheelsDriven: number;
241
+ techRecord_numberOfWheelsDriven?: number;
239
242
  techRecord_noOfAxles?: number | null;
240
243
  techRecord_notes: string;
241
244
  techRecord_offRoad: boolean;
@@ -271,13 +274,13 @@ export interface TechRecordGETHGVComplete {
271
274
  export interface HGVAxles {
272
275
  parkingBrakeMrk?: boolean;
273
276
  axleNumber?: number;
274
- weights_gbWeight?: number;
275
- weights_designWeight?: number;
277
+ weights_gbWeight: number;
278
+ weights_designWeight: number;
276
279
  weights_eecWeight?: number | null;
277
- tyres_tyreCode?: number;
278
- tyres_tyreSize?: string;
280
+ tyres_tyreCode: number;
281
+ tyres_tyreSize: string;
279
282
  tyres_plyRating?: string | null;
280
- tyres_fitmentCode?: FitmentCode;
283
+ tyres_fitmentCode: FitmentCode;
281
284
  tyres_dataTrAxles?: null | number;
282
285
  }
283
286
  export interface AxleSpacing {
@@ -162,23 +162,6 @@ export type VehicleConfiguration =
162
162
  | "four-in-line"
163
163
  | "dolly"
164
164
  | "full drawbar";
165
- export type TRLAxles = null | {
166
- parkingBrakeMrk?: boolean | null;
167
- axleNumber?: number | null;
168
- brakes_brakeActuator?: null | number;
169
- brakes_leverLength?: null | number;
170
- brakes_springBrakeParking?: null | boolean;
171
- weights_gbWeight?: number | null;
172
- weights_designWeight?: number | null;
173
- weights_ladenWeight?: number | null;
174
- weights_kerbWeight?: number | null;
175
- tyres_tyreCode?: number | null;
176
- tyres_tyreSize?: string | null;
177
- tyres_plyRating?: string | null;
178
- tyres_fitmentCode?: null | FitmentCode;
179
- tyres_dataTrAxles?: null | number;
180
- tyres_speedCategorySymbol?: SpeedCategorySymbol | null;
181
- };
182
165
  export type FitmentCode = "single" | "double";
183
166
  export type SpeedCategorySymbol =
184
167
  | "a7"
@@ -275,7 +258,7 @@ export interface TechRecordGETTRLComplete {
275
258
  techRecord_dimensions_width: number | null;
276
259
  drawbarCouplingFitted?: null | string;
277
260
  techRecord_emissionsLimit?: null | number;
278
- techRecord_euVehicleCategory?: EUVehicleCategory | null;
261
+ techRecord_euVehicleCategory: EUVehicleCategory;
279
262
  techRecord_euroStandard?: null | EuroStandard;
280
263
  frontAxleTo5thWheelMax?: number | null;
281
264
  techRecord_frontAxleTo5thWheelMin?: number | null;
@@ -342,7 +325,10 @@ export interface TechRecordGETTRLComplete {
342
325
  techRecord_vehicleType: "trl";
343
326
  trailerId: string;
344
327
  vin: string;
345
- techRecord_axles?: null | TRLAxles[];
328
+ /**
329
+ * @minItems 1
330
+ */
331
+ techRecord_axles?: [TRLAxles, ...TRLAxles[]];
346
332
  techRecord_hiddenInVta?: null | boolean;
347
333
  techRecord_updateType?: null | string;
348
334
  techRecord_authIntoService_cocIssueDate?: string | null;
@@ -358,6 +344,23 @@ export interface TRLPlates {
358
344
  plateReasonForIssue?: null | PlateReasonForIssue;
359
345
  plateIssuer?: string | null;
360
346
  }
347
+ export interface TRLAxles {
348
+ parkingBrakeMrk: boolean;
349
+ axleNumber?: number | null;
350
+ brakes_brakeActuator: number;
351
+ brakes_leverLength: number;
352
+ brakes_springBrakeParking?: null | boolean;
353
+ weights_gbWeight: number;
354
+ weights_designWeight: number;
355
+ weights_ladenWeight?: number | null;
356
+ weights_kerbWeight?: number | null;
357
+ tyres_tyreCode: number;
358
+ tyres_tyreSize: string;
359
+ tyres_plyRating?: string | null;
360
+ tyres_fitmentCode: FitmentCode;
361
+ tyres_dataTrAxles?: null | number;
362
+ tyres_speedCategorySymbol?: SpeedCategorySymbol | null;
363
+ }
361
364
  export interface AxleSpacing {
362
365
  axles?: string;
363
366
  value?: number | null;
@@ -204,7 +204,7 @@ export interface TechRecordGETTRLSkeleton {
204
204
  techRecord_adrDetails_tank_tankDetails_tankStatement_productListRefNo?: string | null;
205
205
  techRecord_adrDetails_tank_tankDetails_tankStatement_productListUnNo?: string[] | null;
206
206
  techRecord_adrDetails_tank_tankDetails_tankStatement_productList?: string | null;
207
- techRecord_alterationMarker?: string | null;
207
+ techRecord_alterationMarker?: boolean | null;
208
208
  techRecord_applicantDetails_name?: string | null;
209
209
  techRecord_applicantDetails_address1?: null | string;
210
210
  techRecord_applicantDetails_address2?: null | string;
@@ -223,7 +223,7 @@ export interface TechRecordGETTRLSkeleton {
223
223
  techRecord_batchId?: string | null;
224
224
  techRecord_bodyType_code?: null | string;
225
225
  techRecord_bodyType_description?: null | string;
226
- techRecord_brakes_antilockBrakingSystem?: string | null;
226
+ techRecord_brakes_antilockBrakingSystem?: boolean | null;
227
227
  techRecord_brakes_dtpNumber?: string | null;
228
228
  techRecord_brakes_loadSensingValve?: boolean | null;
229
229
  techRecord_centreOfRearmostAxleToRearOfTrl?: number | null;
@@ -280,7 +280,7 @@ export interface TechRecordGETTRLSkeleton {
280
280
  techRecord_reasonForCreation: string;
281
281
  techRecord_recordCompleteness: "skeleton";
282
282
  techRecord_regnDate?: string | null;
283
- techRecord_roadFriendly?: string | null;
283
+ techRecord_roadFriendly?: boolean | null;
284
284
  techRecord_statusCode: StatusCode;
285
285
  techRecord_suspensionType?: string | null;
286
286
  techRecord_tyreUseCode?: string | null;
@@ -204,7 +204,7 @@ export interface TechRecordGETTRLTestable {
204
204
  techRecord_adrDetails_tank_tankDetails_tankStatement_productListRefNo?: string | null;
205
205
  techRecord_adrDetails_tank_tankDetails_tankStatement_productListUnNo?: string[] | null;
206
206
  techRecord_adrDetails_tank_tankDetails_tankStatement_productList?: string | null;
207
- techRecord_alterationMarker?: string | null;
207
+ techRecord_alterationMarker?: boolean | null;
208
208
  techRecord_applicantDetails_name?: string | null;
209
209
  techRecord_applicantDetails_address1?: null | string;
210
210
  techRecord_applicantDetails_address2?: null | string;
@@ -198,7 +198,10 @@ export interface TechRecordPUTHGVComplete {
198
198
  techRecord_applicantDetails_telephoneNumber?: null | string;
199
199
  techRecord_applicantDetails_emailAddress?: null | string;
200
200
  techRecord_applicationId?: null | string;
201
- techRecord_axles: HGVAxles[];
201
+ /**
202
+ * @minItems 1
203
+ */
204
+ techRecord_axles: [HGVAxles, ...HGVAxles[]];
202
205
  techRecord_bodyType_code: string;
203
206
  techRecord_bodyType_description: string;
204
207
  techRecord_brakes_antilockBrakingSystem?: string | null;
@@ -232,7 +235,6 @@ export interface TechRecordPUTHGVComplete {
232
235
  techRecord_microfilm_microfilmRollNumber?: string | null;
233
236
  techRecord_microfilm_microfilmSerialNumber?: string | null;
234
237
  techRecord_model: string;
235
- techRecord_numberOfWheelsDriven: number;
236
238
  techRecord_noOfAxles?: number | null;
237
239
  techRecord_notes: string;
238
240
  techRecord_offRoad: boolean;
@@ -264,13 +266,13 @@ export interface TechRecordPUTHGVComplete {
264
266
  export interface HGVAxles {
265
267
  parkingBrakeMrk?: boolean;
266
268
  axleNumber?: number;
267
- weights_gbWeight?: number;
268
- weights_designWeight?: number;
269
+ weights_gbWeight: number;
270
+ weights_designWeight: number;
269
271
  weights_eecWeight?: number | null;
270
- tyres_tyreCode?: number;
271
- tyres_tyreSize?: string;
272
+ tyres_tyreCode: number;
273
+ tyres_tyreSize: string;
272
274
  tyres_plyRating?: string | null;
273
- tyres_fitmentCode?: FitmentCode;
275
+ tyres_fitmentCode: FitmentCode;
274
276
  tyres_dataTrAxles?: null | number;
275
277
  }
276
278
  export interface AxleSpacing {
@@ -232,7 +232,6 @@ export interface TechRecordPUTHGVSkeleton {
232
232
  techRecord_microfilm_microfilmRollNumber?: string | null;
233
233
  techRecord_microfilm_microfilmSerialNumber?: string | null;
234
234
  techRecord_model?: string | null;
235
- techRecord_numberOfWheelsDriven?: number | null;
236
235
  techRecord_noOfAxles?: number | null;
237
236
  techRecord_notes?: string | null;
238
237
  techRecord_offRoad?: boolean | null;
@@ -232,7 +232,6 @@ export interface TechRecordPUTHGVTestable {
232
232
  techRecord_microfilm_microfilmRollNumber?: string | null;
233
233
  techRecord_microfilm_microfilmSerialNumber?: string | null;
234
234
  techRecord_model?: string | null;
235
- techRecord_numberOfWheelsDriven: number;
236
235
  techRecord_noOfAxles?: number | null;
237
236
  techRecord_notes?: string | null;
238
237
  techRecord_offRoad?: boolean | null;
@@ -225,7 +225,7 @@ export interface TechRecordPUTTRLComplete {
225
225
  techRecord_adrDetails_tank_tankDetails_tankStatement_productListRefNo?: string | null;
226
226
  techRecord_adrDetails_tank_tankDetails_tankStatement_productListUnNo?: string[] | null;
227
227
  techRecord_adrDetails_tank_tankDetails_tankStatement_productList?: string | null;
228
- techRecord_alterationMarker?: string | null;
228
+ techRecord_alterationMarker?: boolean | null;
229
229
  techRecord_applicantDetails_name?: string | null;
230
230
  techRecord_applicantDetails_address1?: null | string;
231
231
  techRecord_applicantDetails_address2?: null | string;
@@ -256,7 +256,7 @@ export interface TechRecordPUTTRLComplete {
256
256
  techRecord_dimensions_width: number | null;
257
257
  drawbarCouplingFitted?: null | string;
258
258
  techRecord_emissionsLimit?: null | number;
259
- techRecord_euVehicleCategory?: EUVehicleCategory | null;
259
+ techRecord_euVehicleCategory: EUVehicleCategory;
260
260
  techRecord_euroStandard?: null | EuroStandard;
261
261
  frontAxleTo5thWheelMax?: number | null;
262
262
  techRecord_frontAxleTo5thWheelMin?: number | null;
@@ -318,7 +318,10 @@ export interface TechRecordPUTTRLComplete {
318
318
  techRecord_vehicleType: "trl";
319
319
  trailerId?: string;
320
320
  vin: string;
321
- techRecord_axles?: null | TRLAxles[];
321
+ /**
322
+ * @minItems 1
323
+ */
324
+ techRecord_axles?: [TRLAxles, ...TRLAxles[]];
322
325
  techRecord_hiddenInVta?: null | boolean;
323
326
  techRecord_updateType?: null | string;
324
327
  techRecord_authIntoService_cocIssueDate?: string | null;
@@ -335,19 +338,19 @@ export interface TRLPlates {
335
338
  plateIssuer?: string | null;
336
339
  }
337
340
  export interface TRLAxles {
338
- parkingBrakeMrk?: boolean | null;
341
+ parkingBrakeMrk: boolean;
339
342
  axleNumber?: number | null;
340
- brakes_brakeActuator?: null | number;
341
- brakes_leverLength?: null | number;
343
+ brakes_brakeActuator: number;
344
+ brakes_leverLength: number;
342
345
  brakes_springBrakeParking?: null | boolean;
343
- weights_gbWeight?: number | null;
344
- weights_designWeight?: number | null;
346
+ weights_gbWeight: number;
347
+ weights_designWeight: number;
345
348
  weights_ladenWeight?: number | null;
346
349
  weights_kerbWeight?: number | null;
347
- tyres_tyreCode?: number | null;
348
- tyres_tyreSize?: string | null;
350
+ tyres_tyreCode: number;
351
+ tyres_tyreSize: string;
349
352
  tyres_plyRating?: string | null;
350
- tyres_fitmentCode?: null | FitmentCode;
353
+ tyres_fitmentCode: FitmentCode;
351
354
  tyres_dataTrAxles?: null | number;
352
355
  tyres_speedCategorySymbol?: SpeedCategorySymbol | null;
353
356
  }
@@ -210,7 +210,7 @@ export interface TechRecordPUTTRLSkeleton {
210
210
  techRecord_adrDetails_tank_tankDetails_tankStatement_productListRefNo?: string | null;
211
211
  techRecord_adrDetails_tank_tankDetails_tankStatement_productListUnNo?: string[] | null;
212
212
  techRecord_adrDetails_tank_tankDetails_tankStatement_productList?: string | null;
213
- techRecord_alterationMarker?: string | null;
213
+ techRecord_alterationMarker?: boolean | null;
214
214
  techRecord_applicantDetails_name?: string | null;
215
215
  techRecord_applicantDetails_address1?: null | string;
216
216
  techRecord_applicantDetails_address2?: null | string;
@@ -224,7 +224,7 @@ export interface TechRecordPUTTRLSkeleton {
224
224
  techRecord_batchId?: string | null;
225
225
  techRecord_bodyType_code?: string;
226
226
  techRecord_bodyType_description?: string;
227
- techRecord_brakes_antilockBrakingSystem?: string | null;
227
+ techRecord_brakes_antilockBrakingSystem?: boolean | null;
228
228
  techRecord_brakes_dtpNumber?: string | null;
229
229
  techRecord_brakes_loadSensingValve?: boolean | null;
230
230
  techRecord_centreOfRearmostAxleToRearOfTrl?: number | null;
@@ -275,7 +275,7 @@ export interface TechRecordPUTTRLSkeleton {
275
275
  techRecord_rearAxleToRearTrl?: number | null;
276
276
  techRecord_reasonForCreation: string;
277
277
  techRecord_regnDate?: string | null;
278
- techRecord_roadFriendly?: string | null;
278
+ techRecord_roadFriendly?: boolean | null;
279
279
  techRecord_statusCode: StatusCode;
280
280
  techRecord_suspensionType?: string | null;
281
281
  techRecord_tyreUseCode?: string | null;
@@ -210,7 +210,7 @@ export interface TechRecordPUTTRLTestable {
210
210
  techRecord_adrDetails_tank_tankDetails_tankStatement_productListRefNo?: string | null;
211
211
  techRecord_adrDetails_tank_tankDetails_tankStatement_productListUnNo?: string[] | null;
212
212
  techRecord_adrDetails_tank_tankDetails_tankStatement_productList?: string | null;
213
- techRecord_alterationMarker?: string | null;
213
+ techRecord_alterationMarker?: boolean | null;
214
214
  techRecord_applicantDetails_name?: string | null;
215
215
  techRecord_applicantDetails_address1?: null | string;
216
216
  techRecord_applicantDetails_address2?: null | string;