UNPKG

@dvsa/smc-encounter-schema

Version:

Schemas required for Encounter submission as well as custom validators ## Developing ### Pre-requisites

105 lines (102 loc) 4.68 kB
import * as class_validator from 'class-validator'; import { ValidatorOptions } from 'class-validator/types/validation/ValidatorOptions'; import { EncounterReq } from './models/request/EncounterReq.js'; import './models/audit/AuditBase.js'; import './models/audit/AuditEventBase.js'; import './models/contact/Contact.js'; import './models/common/CommonTradingAs.js'; import './models/contact/Address.js'; import './models/common/CommonPostAddress.js'; import './models/contact/ContactType.js'; import './models/contact/GenericContact.js'; import './models/contact/RteArea.js'; import './models/contact/StoppingOfficer.js'; import './models/dangerous/DangerousCheckListBase.js'; import './models/dangerous/DangerousCheckListItemBase.js'; import './models/dangerous/DangerousCheckListItemDetailBase.js'; import './models/dangerous/DangerousContainerTypeBase.js'; import './models/defects/DefectProsecution.js'; import './models/common/CommonDeletion.js'; import './models/driver/Drivers.js'; import './models/minimum/Nationality.js'; import './models/payments/ActualPayment.js'; import './models/payments/PaymentReversalReason.js'; import './models/payments/PaymentStatus.js'; import './models/driver/DetailsOrigin.js'; import './models/driver/LicenceCategory.js'; import './models/driver/LicenceType.js'; import './models/journey/Journey.js'; import './models/journey/JourneyType.js'; import './models/journey/PortOfExit.js'; import './models/minimum/EncounterReason.js'; import './models/common/CommonCode.js'; import './models/minimum/EncounterTexts.js'; import './models/minimum/TextType.js'; import './models/minimum/EthnicityInfo.js'; import './models/minimum/ObservedEthnicityInfo.js'; import './models/minimum/CapturedEthnicity.js'; import './models/common/CommonDescription.js'; import './models/minimum/InspectionType.js'; import './models/minimum/Location.js'; import './models/minimum/Motor.js'; import './models/common/CommonVehicle.js'; import './models/trailer/PoliceDefect.js'; import './models/common/CommonVehicleWeights.js'; import './models/defects/Defect.js'; import './models/defects/Part.js'; import './models/defects/DefectSummary.js'; import './models/defects/SignificanceReason.js'; import './models/emissions/EmissionCheckBase.js'; import './models/emissions/FuelTypeBase.js'; import './models/notices/NoticeBase.js'; import './models/minimum/VehicleIdType.js'; import './models/common/CommonData.js'; import './models/notices/ExemptionConditionBaseType.js'; import './models/notices/NoticeClosureBaseType.js'; import './models/notices/NoticeType.js'; import './models/notices/NoticeTypeDetail.js'; import './models/notices/OffenceBaseType.js'; import './models/common/CommonVersion.js'; import './models/notices/Offences.js'; import './models/common/CommonOffence.js'; import './models/notices/PenaltyNotice.js'; import './models/notices/PenaltyNoticeStatus.js'; import './models/notices/ProhibitionClosureReasonBaseType.js'; import './models/notices/RemovalInstruction.js'; import './models/minimum/AxlesWeight.js'; import './models/minimum/BodyType.js'; import './models/minimum/Laden.js'; import './models/minimum/RoadsideVehicleType.js'; import './models/minimum/SpecialReturnCodeFlagType.js'; import './models/notices/ActualOffences.js'; import './models/notices/Offence.js'; import './models/notices/OffenceSanctionText.js'; import './models/common/CommonOffenceDetail.js'; import './models/notices/OffenceSeverityBand.js'; import './models/operator/Operator.js'; import './models/operator/ExistingOperatorDetail.js'; import './models/operator/ExistingTradingAs.js'; import './models/operator/RecordType.js'; import './models/operator/LicenceTypeCode.js'; import './models/operator/OCRSOperatorSnapshots.js'; import './models/operator/StateOfOpDisc.js'; import './models/roadworthiness/RoadWorthinessCheckList.js'; import './models/roadworthiness/RoadWorthinessCheckItem.js'; import './models/tax/TaxForm.js'; import './models/trailer/Trailer.js'; declare abstract class ValidatorBase { protected readonly encounterReq: Readonly<Partial<EncounterReq>>; protected constructor(encounterReq: Readonly<Partial<EncounterReq>>); } declare class EncounterSchema extends ValidatorBase { private validationOptions; private static readonly _defaultValidatorOptions; constructor(encounterReq: Partial<EncounterReq>, validationOptions?: ValidatorOptions); validate(): Promise<class_validator.ValidationError[]>; private initialiseRuntimeContext; private resolveEncounterType; private resolveExaminerOfficerType; private resolveRequestType; private hasValidationGroup; } export { EncounterSchema, ValidatorBase };