@dvsa/cvs-type-definitions 1.0.11
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.
- package/README.md +53 -0
- package/json-schemas/.DS_Store +0 -0
- package/json-schemas/activity/index.json +62 -0
- package/json-schemas/defect-category-reference-data/index.json +440 -0
- package/json-schemas/defect-details/index.json +265 -0
- package/json-schemas/defect-location/index.json +49 -0
- package/json-schemas/reason-item/index.json +17 -0
- package/json-schemas/tech-record/index.json +639 -0
- package/json-schemas/test/index.json +1843 -0
- package/json-schemas/test-result/index.json +636 -0
- package/json-schemas/test-station/index.json +67 -0
- package/json-schemas/test-type/index.json +479 -0
- package/json-schemas/vehicle/index.json +1804 -0
- package/json-schemas/vehicle-tech-record/index.json +683 -0
- package/json-schemas/visit/index.json +1895 -0
- package/lib/schemas.d.ts +1 -0
- package/lib/schemas.js +18 -0
- package/lib/src/schema-validation/schema-validator.d.ts +3 -0
- package/lib/src/schema-validation/schema-validator.js +22 -0
- package/package.json +35 -0
- package/types/activity/index.d.ts +23 -0
- package/types/defect-category-reference-data/index.d.ts +52 -0
- package/types/defect-details/index.d.ts +53 -0
- package/types/defect-location/index.d.ts +16 -0
- package/types/reason-item/index.d.ts +11 -0
- package/types/tech-record/index.d.ts +202 -0
- package/types/test/index.d.ts +353 -0
- package/types/test-result/index.d.ts +136 -0
- package/types/test-station/index.d.ts +23 -0
- package/types/test-type/index.d.ts +98 -0
- package/types/vehicle/index.d.ts +345 -0
- package/types/vehicle-tech-record/index.d.ts +212 -0
- package/types/visit/index.d.ts +366 -0
|
@@ -0,0 +1,353 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/**
|
|
3
|
+
* This file was automatically generated by json-schema-to-typescript.
|
|
4
|
+
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
|
|
5
|
+
* and run json-schema-to-typescript to regenerate this file.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
export interface CommercialVehicleTestSchema {
|
|
9
|
+
testResultId?: string;
|
|
10
|
+
startTime: string;
|
|
11
|
+
endTime: string;
|
|
12
|
+
status: "submitted" | "cancelled" | null;
|
|
13
|
+
reasonForCancellation: string;
|
|
14
|
+
vehicles: VehicleSchema[];
|
|
15
|
+
}
|
|
16
|
+
export interface VehicleSchema {
|
|
17
|
+
systemNumber: string;
|
|
18
|
+
vrm: string;
|
|
19
|
+
vin: string;
|
|
20
|
+
techRecord: TechRecordSchema;
|
|
21
|
+
testResultsHistory?: TestResultSchema[];
|
|
22
|
+
countryOfRegistration?: string;
|
|
23
|
+
euVehicleCategory?: string;
|
|
24
|
+
odometerReading?: string;
|
|
25
|
+
odometerMetric?: string;
|
|
26
|
+
preparerId?: string;
|
|
27
|
+
preparerName?: string;
|
|
28
|
+
testTypes?: TestTypeSchema[];
|
|
29
|
+
/**
|
|
30
|
+
* trailer only
|
|
31
|
+
*/
|
|
32
|
+
trailerId?: string;
|
|
33
|
+
}
|
|
34
|
+
export interface TechRecordSchema {
|
|
35
|
+
bodyType: {
|
|
36
|
+
code: string;
|
|
37
|
+
description: string;
|
|
38
|
+
};
|
|
39
|
+
manufactureYear: number;
|
|
40
|
+
regnDate: string;
|
|
41
|
+
ntaNumber: string;
|
|
42
|
+
conversionRefNo: string;
|
|
43
|
+
speedLimiterMrk: boolean;
|
|
44
|
+
tachoExemptMrk: boolean;
|
|
45
|
+
reasonForCreation: string;
|
|
46
|
+
statusCode: string;
|
|
47
|
+
grossKerbWeight: number;
|
|
48
|
+
grossLadenWeight: number;
|
|
49
|
+
noOfAxles: number;
|
|
50
|
+
brakeCode: string;
|
|
51
|
+
vehicleType: string;
|
|
52
|
+
euVehicleCategory: string;
|
|
53
|
+
axles: AxleSchema[];
|
|
54
|
+
vehicleClass: VehicleClassSchema;
|
|
55
|
+
vehicleSubclass: string[];
|
|
56
|
+
vehicleConfiguration: string;
|
|
57
|
+
recordCompleteness?: string;
|
|
58
|
+
chassisMake?: string;
|
|
59
|
+
chassisModel?: string;
|
|
60
|
+
bodyMake?: string;
|
|
61
|
+
bodyModel?: string;
|
|
62
|
+
vehicleSize?: string;
|
|
63
|
+
coifDate?: string;
|
|
64
|
+
unladenWeight?: number;
|
|
65
|
+
grossGbWeight?: number;
|
|
66
|
+
grossDesignWeight?: number;
|
|
67
|
+
grossUnladenWeight?: number;
|
|
68
|
+
seatsLowerDeck?: number;
|
|
69
|
+
seatsUpperDeck?: number;
|
|
70
|
+
standingCapacity?: number;
|
|
71
|
+
speedRestriction?: number;
|
|
72
|
+
dispensations?: string;
|
|
73
|
+
remarks?: string;
|
|
74
|
+
brakes?: Brake;
|
|
75
|
+
make?: string;
|
|
76
|
+
model?: string;
|
|
77
|
+
functionCode?: string;
|
|
78
|
+
typeUseCode?: string;
|
|
79
|
+
roadFriendly?: boolean;
|
|
80
|
+
drawbarCouplingFitted?: boolean;
|
|
81
|
+
dimensions?: DimensionsSchema;
|
|
82
|
+
notes: string;
|
|
83
|
+
adrDetails?: ADRDetailsSchema;
|
|
84
|
+
trainGbWeight?: number;
|
|
85
|
+
trainDesignWeight?: number;
|
|
86
|
+
maxTrainGbWeight?: number;
|
|
87
|
+
maxTrainDesignWeight?: number;
|
|
88
|
+
euroStandard?: number;
|
|
89
|
+
frontAxleTo5thWheelMin?: number;
|
|
90
|
+
frontAxleTo5thWheelMax?: number;
|
|
91
|
+
frontAxleTo5thWheelCouplingMin?: number;
|
|
92
|
+
frontAxleTo5thWheelCouplingMax?: number;
|
|
93
|
+
firstUseDate?: string;
|
|
94
|
+
maxLoadOnCoupling?: number;
|
|
95
|
+
suspensionType?: string;
|
|
96
|
+
couplingType?: string;
|
|
97
|
+
frontAxleToRearAxle?: number;
|
|
98
|
+
rearAxleToRearTrl?: number;
|
|
99
|
+
couplingCenterToRearAxleMin?: number;
|
|
100
|
+
couplingCenterToRearAxleMax?: number;
|
|
101
|
+
couplingCenterToRearTrlMin?: number;
|
|
102
|
+
couplingCenterToRearTrlMax?: number;
|
|
103
|
+
numberOfWheelsDriven?: number;
|
|
104
|
+
}
|
|
105
|
+
export interface AxleSchema {
|
|
106
|
+
parkingBrakeMrk?: boolean;
|
|
107
|
+
axleNumber: number;
|
|
108
|
+
weights?: WeightsSchema;
|
|
109
|
+
tyres: TyresSchema;
|
|
110
|
+
brakes?: AxleBrakePropertiesSchema;
|
|
111
|
+
}
|
|
112
|
+
export interface WeightsSchema {
|
|
113
|
+
kerbWeight?: number;
|
|
114
|
+
ladenWeight?: number;
|
|
115
|
+
gbWeight: number;
|
|
116
|
+
designWeight: number;
|
|
117
|
+
}
|
|
118
|
+
export interface TyresSchema {
|
|
119
|
+
tyreSize: string;
|
|
120
|
+
plyRating: string;
|
|
121
|
+
fitmentCode: string;
|
|
122
|
+
dataTrPsvAxles?: number;
|
|
123
|
+
tyreCode: number;
|
|
124
|
+
dataTrAxles?: number;
|
|
125
|
+
/**
|
|
126
|
+
* PSV only
|
|
127
|
+
*/
|
|
128
|
+
speedCategorySymbol?: string;
|
|
129
|
+
}
|
|
130
|
+
export interface AxleBrakePropertiesSchema {
|
|
131
|
+
brakeActuator: number;
|
|
132
|
+
leverLength: number;
|
|
133
|
+
springBrakeParking: boolean;
|
|
134
|
+
}
|
|
135
|
+
export interface VehicleClassSchema {
|
|
136
|
+
code: string;
|
|
137
|
+
description: string;
|
|
138
|
+
}
|
|
139
|
+
export interface Brake {
|
|
140
|
+
brakeCode?: string;
|
|
141
|
+
dataTrBrakeOne?: string;
|
|
142
|
+
dataTrBrakeTwo?: string;
|
|
143
|
+
dataTrBrakeThree?: string;
|
|
144
|
+
retarderBrakeOne?: string;
|
|
145
|
+
retarderBrakeTwo?: string;
|
|
146
|
+
brakeCodeOriginal?: string;
|
|
147
|
+
brakeForceWheelsNotLocked?: BrakeForceWheel;
|
|
148
|
+
brakeForceWheelsUpToHalfLocked?: BrakeForceWheel;
|
|
149
|
+
dtpNumber?: string;
|
|
150
|
+
loadSensingValve?: boolean;
|
|
151
|
+
antilockBrakingSystem?: boolean;
|
|
152
|
+
}
|
|
153
|
+
export interface BrakeForceWheel {
|
|
154
|
+
serviceBrakeForce: number;
|
|
155
|
+
secondaryBrakeForce: number;
|
|
156
|
+
parkingBrakeForce: number;
|
|
157
|
+
}
|
|
158
|
+
export interface DimensionsSchema {
|
|
159
|
+
length: number;
|
|
160
|
+
width: number;
|
|
161
|
+
/**
|
|
162
|
+
* @minItems 1
|
|
163
|
+
* @maxItems 1
|
|
164
|
+
*/
|
|
165
|
+
axleSpacing: [
|
|
166
|
+
{
|
|
167
|
+
axles: string;
|
|
168
|
+
value: number;
|
|
169
|
+
}
|
|
170
|
+
];
|
|
171
|
+
}
|
|
172
|
+
export interface ADRDetailsSchema {
|
|
173
|
+
vehicleDetails?: {
|
|
174
|
+
type?: string;
|
|
175
|
+
approvalDate?: string;
|
|
176
|
+
};
|
|
177
|
+
listStatementApplicable?: boolean;
|
|
178
|
+
batteryListNumber?: string;
|
|
179
|
+
permittedDangerousGoods?: string[];
|
|
180
|
+
additionalExaminerNotes?: string;
|
|
181
|
+
applicantDetails?: ApplicantDetailsSchema;
|
|
182
|
+
memosApply?: string[];
|
|
183
|
+
additionalNotes?: {
|
|
184
|
+
number?: string[];
|
|
185
|
+
guidanceNotes?: string[];
|
|
186
|
+
};
|
|
187
|
+
adrTypeApprovalNo?: string;
|
|
188
|
+
compatibilityGroupJ?: boolean;
|
|
189
|
+
tank?: TankSchema;
|
|
190
|
+
}
|
|
191
|
+
export interface ApplicantDetailsSchema {
|
|
192
|
+
name?: string;
|
|
193
|
+
street?: string;
|
|
194
|
+
town?: string;
|
|
195
|
+
city?: string;
|
|
196
|
+
postcode?: string;
|
|
197
|
+
}
|
|
198
|
+
export interface TankSchema {
|
|
199
|
+
tankDetails?: TankDetailsSchema;
|
|
200
|
+
tankStatement?: TankStatementSchema;
|
|
201
|
+
}
|
|
202
|
+
export interface TankDetailsSchema {
|
|
203
|
+
tankManufacturer?: string;
|
|
204
|
+
tc2Details?: TC2DetailsSchema;
|
|
205
|
+
tc3Details?: TC3DetailsSchema[];
|
|
206
|
+
yearOfManufacture?: string;
|
|
207
|
+
tankCode?: string;
|
|
208
|
+
specialProvisions?: string;
|
|
209
|
+
tankManufacturerSerialNo?: string;
|
|
210
|
+
tankTypeAppNo?: string;
|
|
211
|
+
}
|
|
212
|
+
export interface TC2DetailsSchema {
|
|
213
|
+
tc2Type?: string;
|
|
214
|
+
tc2IntermediateApprovalNo?: string;
|
|
215
|
+
tc2IntermediateExpiryDate?: string;
|
|
216
|
+
}
|
|
217
|
+
export interface TC3DetailsSchema {
|
|
218
|
+
tc3Type?: string;
|
|
219
|
+
tc3IntermediateApprovalNo?: string;
|
|
220
|
+
tc3IntermediateExpiryDate?: string;
|
|
221
|
+
}
|
|
222
|
+
export interface TankStatementSchema {
|
|
223
|
+
substancesPermitted?: string;
|
|
224
|
+
statement?: string;
|
|
225
|
+
productList?: string;
|
|
226
|
+
productListRefNo?: string;
|
|
227
|
+
productListUnNo?: string[];
|
|
228
|
+
}
|
|
229
|
+
export interface TestResultSchema {
|
|
230
|
+
testResultId: string;
|
|
231
|
+
testStationName: string;
|
|
232
|
+
testStationPNumber: string;
|
|
233
|
+
testStationType: string;
|
|
234
|
+
testerName: string;
|
|
235
|
+
testerStaffId: string;
|
|
236
|
+
testerEmailAddress: string;
|
|
237
|
+
testStartTimestamp: string;
|
|
238
|
+
testEndTimestamp: string;
|
|
239
|
+
testStatus: string;
|
|
240
|
+
reasonForCancellation: string | null;
|
|
241
|
+
systemNumber: string;
|
|
242
|
+
vrm?: string;
|
|
243
|
+
trailerId?: string;
|
|
244
|
+
vin: string;
|
|
245
|
+
vehicleClass: VehicleClassSchema;
|
|
246
|
+
vehicleSubclass?: string[];
|
|
247
|
+
vehicleType: string;
|
|
248
|
+
vehicleConfiguration: string;
|
|
249
|
+
odometerReading?: number | null;
|
|
250
|
+
odometerReadingUnits?: string | null;
|
|
251
|
+
preparerId: string;
|
|
252
|
+
preparerName: string;
|
|
253
|
+
euVehicleCategory: string;
|
|
254
|
+
countryOfRegistration: string | null;
|
|
255
|
+
noOfAxles: number;
|
|
256
|
+
numberOfWheelsDriven: number;
|
|
257
|
+
vehicleSize?: string;
|
|
258
|
+
numberOfSeats?: number;
|
|
259
|
+
regnDate?: string;
|
|
260
|
+
firstUseDate?: string;
|
|
261
|
+
testTypes: TestTypeSchema[];
|
|
262
|
+
}
|
|
263
|
+
export interface TestTypeSchema {
|
|
264
|
+
testTypeName: string;
|
|
265
|
+
name: string;
|
|
266
|
+
testTypeId: string;
|
|
267
|
+
certificateNumber: string | null;
|
|
268
|
+
secondaryCertificateNumber: string | null;
|
|
269
|
+
testTypeStartTimestamp: string | null;
|
|
270
|
+
testTypeEndTimestamp: string | null;
|
|
271
|
+
testResult: string | null;
|
|
272
|
+
prohibitionIssued: boolean | null;
|
|
273
|
+
reasonForAbandoning: string | null;
|
|
274
|
+
additionalNotesRecorded: string | null;
|
|
275
|
+
additionalCommentsForAbandon: string | null;
|
|
276
|
+
numberOfSeatbeltsFitted?: number | null;
|
|
277
|
+
lastSeatbeltInstallationCheckDate?: string | null;
|
|
278
|
+
seatbeltInstallationCheckDate?: boolean | null;
|
|
279
|
+
testExpiryDate?: string;
|
|
280
|
+
modType?: ModTypeSchema | string | null;
|
|
281
|
+
emissionStandard?: string;
|
|
282
|
+
fuelType?: string;
|
|
283
|
+
modificationTypeUsed?: string;
|
|
284
|
+
smokeTestKLimitApplied?: string;
|
|
285
|
+
particulateTrapFitted?: string;
|
|
286
|
+
particulateTrapSerialNumber?: string;
|
|
287
|
+
defects: DefectDetailsSchema[];
|
|
288
|
+
customDefects?: SpecialistCustomDefectsSchema[];
|
|
289
|
+
completionStatus?: string;
|
|
290
|
+
testTypeCategoryName?: string;
|
|
291
|
+
reasons?: string[];
|
|
292
|
+
testNumber?: string;
|
|
293
|
+
linkedIds?: string[] | null;
|
|
294
|
+
}
|
|
295
|
+
export interface ModTypeSchema {
|
|
296
|
+
code: string;
|
|
297
|
+
description: string;
|
|
298
|
+
}
|
|
299
|
+
export interface DefectDetailsSchema {
|
|
300
|
+
imNumber: number;
|
|
301
|
+
imDescription: string;
|
|
302
|
+
additionalInformation: {
|
|
303
|
+
location: DefectLocationSchema;
|
|
304
|
+
notes: string;
|
|
305
|
+
};
|
|
306
|
+
itemNumber: number;
|
|
307
|
+
itemDescription: string;
|
|
308
|
+
deficiencyRef: string;
|
|
309
|
+
deficiencyId: string | null;
|
|
310
|
+
deficiencySubId: string | null;
|
|
311
|
+
deficiencyCategory: string;
|
|
312
|
+
deficiencyText: string | null;
|
|
313
|
+
stdForProhibition: boolean | null;
|
|
314
|
+
prs: boolean | null;
|
|
315
|
+
prohibitionIssued: boolean | null;
|
|
316
|
+
metadata: DefectMetadataSchema;
|
|
317
|
+
}
|
|
318
|
+
export interface DefectLocationSchema {
|
|
319
|
+
vertical?: string | null;
|
|
320
|
+
horizontal?: string | null;
|
|
321
|
+
lateral?: string | null;
|
|
322
|
+
longitudinal?: string | null;
|
|
323
|
+
rowNumber?: number | null;
|
|
324
|
+
seatNumber?: number | null;
|
|
325
|
+
axleNumber?: number | null;
|
|
326
|
+
}
|
|
327
|
+
export interface DefectMetadataSchema {
|
|
328
|
+
category: {
|
|
329
|
+
additionalInfo?: DefectAdditionalDetailsMetadataSchema;
|
|
330
|
+
};
|
|
331
|
+
}
|
|
332
|
+
export interface DefectAdditionalDetailsMetadataSchema {
|
|
333
|
+
location: DefectLocationMetadataSchema;
|
|
334
|
+
notes: boolean;
|
|
335
|
+
}
|
|
336
|
+
export interface DefectLocationMetadataSchema {
|
|
337
|
+
vertical?: string[] | null;
|
|
338
|
+
horizontal?: string[] | null;
|
|
339
|
+
lateral?: string[] | null;
|
|
340
|
+
longitudinal?: string[] | null;
|
|
341
|
+
rowNumber?: number[] | null;
|
|
342
|
+
seatNumber?: number[] | null;
|
|
343
|
+
axleNumber?: number[] | null;
|
|
344
|
+
}
|
|
345
|
+
export interface SpecialistCustomDefectsSchema {
|
|
346
|
+
referenceNumber: string;
|
|
347
|
+
defectName: string;
|
|
348
|
+
defectNotes: string;
|
|
349
|
+
/**
|
|
350
|
+
* FE only
|
|
351
|
+
*/
|
|
352
|
+
hasAllMandatoryFields?: boolean;
|
|
353
|
+
}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/**
|
|
3
|
+
* This file was automatically generated by json-schema-to-typescript.
|
|
4
|
+
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
|
|
5
|
+
* and run json-schema-to-typescript to regenerate this file.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
export interface TestResultSchema {
|
|
9
|
+
testResultId: string;
|
|
10
|
+
testStationName: string;
|
|
11
|
+
testStationPNumber: string;
|
|
12
|
+
testStationType: string;
|
|
13
|
+
testerName: string;
|
|
14
|
+
testerStaffId: string;
|
|
15
|
+
testerEmailAddress: string;
|
|
16
|
+
testStartTimestamp: string;
|
|
17
|
+
testEndTimestamp: string;
|
|
18
|
+
testStatus: string;
|
|
19
|
+
reasonForCancellation: string | null;
|
|
20
|
+
systemNumber: string;
|
|
21
|
+
vrm?: string;
|
|
22
|
+
trailerId?: string;
|
|
23
|
+
vin: string;
|
|
24
|
+
vehicleClass: VehicleClassSchema;
|
|
25
|
+
vehicleSubclass?: string[];
|
|
26
|
+
vehicleType: string;
|
|
27
|
+
vehicleConfiguration: string;
|
|
28
|
+
odometerReading?: number | null;
|
|
29
|
+
odometerReadingUnits?: string | null;
|
|
30
|
+
preparerId: string;
|
|
31
|
+
preparerName: string;
|
|
32
|
+
euVehicleCategory: string;
|
|
33
|
+
countryOfRegistration: string | null;
|
|
34
|
+
noOfAxles: number;
|
|
35
|
+
numberOfWheelsDriven: number;
|
|
36
|
+
vehicleSize?: string;
|
|
37
|
+
numberOfSeats?: number;
|
|
38
|
+
regnDate?: string;
|
|
39
|
+
firstUseDate?: string;
|
|
40
|
+
testTypes: TestTypeSchema[];
|
|
41
|
+
}
|
|
42
|
+
export interface VehicleClassSchema {
|
|
43
|
+
code: string;
|
|
44
|
+
description: string;
|
|
45
|
+
}
|
|
46
|
+
export interface TestTypeSchema {
|
|
47
|
+
testTypeName: string;
|
|
48
|
+
name: string;
|
|
49
|
+
testTypeId: string;
|
|
50
|
+
certificateNumber: string | null;
|
|
51
|
+
secondaryCertificateNumber: string | null;
|
|
52
|
+
testTypeStartTimestamp: string | null;
|
|
53
|
+
testTypeEndTimestamp: string | null;
|
|
54
|
+
testResult: string | null;
|
|
55
|
+
prohibitionIssued: boolean | null;
|
|
56
|
+
reasonForAbandoning: string | null;
|
|
57
|
+
additionalNotesRecorded: string | null;
|
|
58
|
+
additionalCommentsForAbandon: string | null;
|
|
59
|
+
numberOfSeatbeltsFitted?: number | null;
|
|
60
|
+
lastSeatbeltInstallationCheckDate?: string | null;
|
|
61
|
+
seatbeltInstallationCheckDate?: boolean | null;
|
|
62
|
+
testExpiryDate?: string;
|
|
63
|
+
modType?: ModTypeSchema | string | null;
|
|
64
|
+
emissionStandard?: string;
|
|
65
|
+
fuelType?: string;
|
|
66
|
+
modificationTypeUsed?: string;
|
|
67
|
+
smokeTestKLimitApplied?: string;
|
|
68
|
+
particulateTrapFitted?: string;
|
|
69
|
+
particulateTrapSerialNumber?: string;
|
|
70
|
+
defects: DefectDetailsSchema[];
|
|
71
|
+
customDefects?: SpecialistCustomDefectsSchema[];
|
|
72
|
+
completionStatus?: string;
|
|
73
|
+
testTypeCategoryName?: string;
|
|
74
|
+
reasons?: string[];
|
|
75
|
+
testNumber?: string;
|
|
76
|
+
linkedIds?: string[] | null;
|
|
77
|
+
}
|
|
78
|
+
export interface ModTypeSchema {
|
|
79
|
+
code: string;
|
|
80
|
+
description: string;
|
|
81
|
+
}
|
|
82
|
+
export interface DefectDetailsSchema {
|
|
83
|
+
imNumber: number;
|
|
84
|
+
imDescription: string;
|
|
85
|
+
additionalInformation: {
|
|
86
|
+
location: DefectLocationSchema;
|
|
87
|
+
notes: string;
|
|
88
|
+
};
|
|
89
|
+
itemNumber: number;
|
|
90
|
+
itemDescription: string;
|
|
91
|
+
deficiencyRef: string;
|
|
92
|
+
deficiencyId: string | null;
|
|
93
|
+
deficiencySubId: string | null;
|
|
94
|
+
deficiencyCategory: string;
|
|
95
|
+
deficiencyText: string | null;
|
|
96
|
+
stdForProhibition: boolean | null;
|
|
97
|
+
prs: boolean | null;
|
|
98
|
+
prohibitionIssued: boolean | null;
|
|
99
|
+
metadata: DefectMetadataSchema;
|
|
100
|
+
}
|
|
101
|
+
export interface DefectLocationSchema {
|
|
102
|
+
vertical?: string | null;
|
|
103
|
+
horizontal?: string | null;
|
|
104
|
+
lateral?: string | null;
|
|
105
|
+
longitudinal?: string | null;
|
|
106
|
+
rowNumber?: number | null;
|
|
107
|
+
seatNumber?: number | null;
|
|
108
|
+
axleNumber?: number | null;
|
|
109
|
+
}
|
|
110
|
+
export interface DefectMetadataSchema {
|
|
111
|
+
category: {
|
|
112
|
+
additionalInfo?: DefectAdditionalDetailsMetadataSchema;
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
export interface DefectAdditionalDetailsMetadataSchema {
|
|
116
|
+
location: DefectLocationMetadataSchema;
|
|
117
|
+
notes: boolean;
|
|
118
|
+
}
|
|
119
|
+
export interface DefectLocationMetadataSchema {
|
|
120
|
+
vertical?: string[] | null;
|
|
121
|
+
horizontal?: string[] | null;
|
|
122
|
+
lateral?: string[] | null;
|
|
123
|
+
longitudinal?: string[] | null;
|
|
124
|
+
rowNumber?: number[] | null;
|
|
125
|
+
seatNumber?: number[] | null;
|
|
126
|
+
axleNumber?: number[] | null;
|
|
127
|
+
}
|
|
128
|
+
export interface SpecialistCustomDefectsSchema {
|
|
129
|
+
referenceNumber: string;
|
|
130
|
+
defectName: string;
|
|
131
|
+
defectNotes: string;
|
|
132
|
+
/**
|
|
133
|
+
* FE only
|
|
134
|
+
*/
|
|
135
|
+
hasAllMandatoryFields?: boolean;
|
|
136
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/**
|
|
3
|
+
* This file was automatically generated by json-schema-to-typescript.
|
|
4
|
+
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
|
|
5
|
+
* and run json-schema-to-typescript to regenerate this file.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
export interface TestStationSchema {
|
|
9
|
+
testStationId: string;
|
|
10
|
+
testStationPNumber: string;
|
|
11
|
+
testStationName: string;
|
|
12
|
+
testStationContactNumber: string;
|
|
13
|
+
testStationAccessNotes: string;
|
|
14
|
+
testStationGeneralNotes: string;
|
|
15
|
+
testStationTown: string;
|
|
16
|
+
testStationAddress: string;
|
|
17
|
+
testStationPostcode: string;
|
|
18
|
+
testStationLongitude: number;
|
|
19
|
+
testStationLatitude: number;
|
|
20
|
+
testStationType: string;
|
|
21
|
+
testStationEmails: string[];
|
|
22
|
+
searchProperty?: string;
|
|
23
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/**
|
|
3
|
+
* This file was automatically generated by json-schema-to-typescript.
|
|
4
|
+
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
|
|
5
|
+
* and run json-schema-to-typescript to regenerate this file.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
export interface TestTypeSchema {
|
|
9
|
+
testTypeName: string;
|
|
10
|
+
name: string;
|
|
11
|
+
testTypeId: string;
|
|
12
|
+
certificateNumber: string | null;
|
|
13
|
+
secondaryCertificateNumber: string | null;
|
|
14
|
+
testTypeStartTimestamp: string | null;
|
|
15
|
+
testTypeEndTimestamp: string | null;
|
|
16
|
+
testResult: string | null;
|
|
17
|
+
prohibitionIssued: boolean | null;
|
|
18
|
+
reasonForAbandoning: string | null;
|
|
19
|
+
additionalNotesRecorded: string | null;
|
|
20
|
+
additionalCommentsForAbandon: string | null;
|
|
21
|
+
numberOfSeatbeltsFitted?: number | null;
|
|
22
|
+
lastSeatbeltInstallationCheckDate?: string | null;
|
|
23
|
+
seatbeltInstallationCheckDate?: boolean | null;
|
|
24
|
+
testExpiryDate?: string;
|
|
25
|
+
modType?: ModTypeSchema | string | null;
|
|
26
|
+
emissionStandard?: string;
|
|
27
|
+
fuelType?: string;
|
|
28
|
+
modificationTypeUsed?: string;
|
|
29
|
+
smokeTestKLimitApplied?: string;
|
|
30
|
+
particulateTrapFitted?: string;
|
|
31
|
+
particulateTrapSerialNumber?: string;
|
|
32
|
+
defects: DefectDetailsSchema[];
|
|
33
|
+
customDefects?: SpecialistCustomDefectsSchema[];
|
|
34
|
+
completionStatus?: string;
|
|
35
|
+
testTypeCategoryName?: string;
|
|
36
|
+
reasons?: string[];
|
|
37
|
+
testNumber?: string;
|
|
38
|
+
linkedIds?: string[] | null;
|
|
39
|
+
}
|
|
40
|
+
export interface ModTypeSchema {
|
|
41
|
+
code: string;
|
|
42
|
+
description: string;
|
|
43
|
+
}
|
|
44
|
+
export interface DefectDetailsSchema {
|
|
45
|
+
imNumber: number;
|
|
46
|
+
imDescription: string;
|
|
47
|
+
additionalInformation: {
|
|
48
|
+
location: DefectLocationSchema;
|
|
49
|
+
notes: string;
|
|
50
|
+
};
|
|
51
|
+
itemNumber: number;
|
|
52
|
+
itemDescription: string;
|
|
53
|
+
deficiencyRef: string;
|
|
54
|
+
deficiencyId: string | null;
|
|
55
|
+
deficiencySubId: string | null;
|
|
56
|
+
deficiencyCategory: string;
|
|
57
|
+
deficiencyText: string | null;
|
|
58
|
+
stdForProhibition: boolean | null;
|
|
59
|
+
prs: boolean | null;
|
|
60
|
+
prohibitionIssued: boolean | null;
|
|
61
|
+
metadata: DefectMetadataSchema;
|
|
62
|
+
}
|
|
63
|
+
export interface DefectLocationSchema {
|
|
64
|
+
vertical?: string | null;
|
|
65
|
+
horizontal?: string | null;
|
|
66
|
+
lateral?: string | null;
|
|
67
|
+
longitudinal?: string | null;
|
|
68
|
+
rowNumber?: number | null;
|
|
69
|
+
seatNumber?: number | null;
|
|
70
|
+
axleNumber?: number | null;
|
|
71
|
+
}
|
|
72
|
+
export interface DefectMetadataSchema {
|
|
73
|
+
category: {
|
|
74
|
+
additionalInfo?: DefectAdditionalDetailsMetadataSchema;
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
export interface DefectAdditionalDetailsMetadataSchema {
|
|
78
|
+
location: DefectLocationMetadataSchema;
|
|
79
|
+
notes: boolean;
|
|
80
|
+
}
|
|
81
|
+
export interface DefectLocationMetadataSchema {
|
|
82
|
+
vertical?: string[] | null;
|
|
83
|
+
horizontal?: string[] | null;
|
|
84
|
+
lateral?: string[] | null;
|
|
85
|
+
longitudinal?: string[] | null;
|
|
86
|
+
rowNumber?: number[] | null;
|
|
87
|
+
seatNumber?: number[] | null;
|
|
88
|
+
axleNumber?: number[] | null;
|
|
89
|
+
}
|
|
90
|
+
export interface SpecialistCustomDefectsSchema {
|
|
91
|
+
referenceNumber: string;
|
|
92
|
+
defectName: string;
|
|
93
|
+
defectNotes: string;
|
|
94
|
+
/**
|
|
95
|
+
* FE only
|
|
96
|
+
*/
|
|
97
|
+
hasAllMandatoryFields?: boolean;
|
|
98
|
+
}
|