@planning-inspectorate/data-model 2.55.0 → 2.57.0

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.
@@ -172,11 +172,15 @@ class Address(BaseModel):
172
172
  model_config = ConfigDict(
173
173
  extra="allow",
174
174
  )
175
+ addressId: str
176
+ """
177
+ The source system Primary Key for an address.
178
+ """
175
179
  line1: str | None = None
176
180
  line2: str | None = None
177
181
  townCity: str | None = None
178
182
  county: str | None = None
179
- postcode: str
183
+ postcode: str | None = None
180
184
 
181
185
 
182
186
  class Organisation(BaseModel):
@@ -1,15 +1,20 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
3
  "$id": "address.schema.json",
4
- "title": "PINS Address Schema",
4
+ "title": "Address",
5
5
  "description": "A schema to define the structure of an Address object in PINS.",
6
6
  "type": "object",
7
7
  "additionalProperties": true,
8
- "required": ["addressDimKey", "caseReference", "caseId", "caseType"],
8
+ "required": ["addressId", "caseReference", "caseId", "caseType"],
9
9
  "properties": {
10
+ "addressId": {
11
+ "type": "string",
12
+ "description": "The source system Primary Key for an address.",
13
+ "example": "BBBBBBBBB-1234-1234-1234-AAAAAAAAAAAA"
14
+ },
10
15
  "addressDimKey": {
11
- "type": "number",
12
- "description": "Primary Key for an Address.",
16
+ "type": ["number", "null"],
17
+ "description": "ODW Address Dimension Primary Key.",
13
18
  "example": 12345
14
19
  },
15
20
  "addressType": {
@@ -137,6 +137,7 @@
137
137
  "documentType": {
138
138
  "type": ["string", "null"],
139
139
  "enum": [
140
+ "appellantCase",
140
141
  "appellantCaseCorrespondence",
141
142
  "appellantCaseWithdrawalLetter",
142
143
  "appellantCostsApplication",
@@ -151,6 +152,7 @@
151
152
  "whoNotifiedLetterToNeighbours",
152
153
  "whoNotifiedPressAdvert",
153
154
  "conservationMap",
155
+ "lpaQuestionnaire",
154
156
  "lpaCaseCorrespondence",
155
157
  "lpaCostsApplication",
156
158
  "lpaCostsCorrespondence",
@@ -0,0 +1,385 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "appeal-group-c.schema.json",
4
+ "title": "Appeal Group C Case",
5
+ "description": "Group C - Schema defining the metadata for generic and low-volume appeals",
6
+ "type": "object",
7
+ "additionalProperties": true,
8
+ "required": [
9
+ "caseId",
10
+ "caseReference",
11
+ "caseStatus",
12
+ "caseType",
13
+ "caseProcedure",
14
+ "lpaCode",
15
+ "caseOfficerId",
16
+ "inspectorId",
17
+ "padsSapId",
18
+ "allocationLevel",
19
+ "allocationBand",
20
+ "caseSpecialisms",
21
+ "caseCreatedDate",
22
+ "caseSubmittedDate",
23
+ "caseUpdatedDate",
24
+ "caseValidDate",
25
+ "caseValidationDate",
26
+ "caseValidationOutcome",
27
+ "caseStartedDate",
28
+ "casePublishedDate",
29
+ "lpaQuestionnaireCreatedDate",
30
+ "lpaQuestionnaireSubmittedDate",
31
+ "lpaQuestionnaireValidationOutcome",
32
+ "lpaQuestionnaireDueDate",
33
+ "caseWithdrawnDate",
34
+ "caseTransferredDate",
35
+ "caseDecisionOutcomeDate",
36
+ "caseDecisionOutcome",
37
+ "caseCompletedDate",
38
+ "siteAddressLine1",
39
+ "siteAddressLine2",
40
+ "siteAddressTown",
41
+ "siteAddressCounty",
42
+ "siteAddressPostcode"
43
+ ],
44
+ "properties": {
45
+ "caseId": {
46
+ "type": ["integer", "null"],
47
+ "examples": [6000001],
48
+ "description": "Internal case identifier"
49
+ },
50
+ "caseReference": {
51
+ "type": "string",
52
+ "pattern": "^6\\d{6}$",
53
+ "examples": ["6000001"],
54
+ "description": "External case identifier for Group C appeals (7 digit number starting in 6)"
55
+ },
56
+ "caseType": {
57
+ "type": "string",
58
+ "enum": ["C", "D", "F", "G", "H", "L", "Q", "S", "V", "W", "X", "Y", "Z", "ZA", "ZP"],
59
+ "description": "The internal letter code for an appeal type, e.g. W (Environmental)"
60
+ },
61
+ "caseStatus": {
62
+ "type": "string",
63
+ "enum": [
64
+ "assign_case_officer",
65
+ "validation",
66
+ "ready_to_start",
67
+ "lpa_questionnaire",
68
+ "issue_determination",
69
+ "statements",
70
+ "evidence",
71
+ "witnesses",
72
+ "final_comments",
73
+ "complete",
74
+ "invalid",
75
+ "closed",
76
+ "withdrawn",
77
+ "awaiting_transfer",
78
+ "transferred",
79
+ "event",
80
+ "awaiting_event",
81
+ "notice_withdrawn",
82
+ "closed_opened_in_error"
83
+ ],
84
+ "description": "The processing status for the appeal"
85
+ },
86
+ "caseProcedure": {
87
+ "type": ["string", "null"],
88
+ "enum": ["written", "hearing", "inquiry", "writtenPart1", "writtenPart2", null],
89
+ "description": "The type of procedure for the appeal"
90
+ },
91
+ "caseCreatedDate": {
92
+ "type": "string",
93
+ "format": "date-time",
94
+ "examples": ["2026-07-27T20:30:00.000Z"],
95
+ "description": "The date the appeal was received"
96
+ },
97
+ "caseSubmittedDate": {
98
+ "type": ["string", "null"],
99
+ "format": "date-time",
100
+ "examples": ["2026-07-27T20:30:00.000Z"],
101
+ "description": "The date the appeal was submitted by the appellant"
102
+ },
103
+ "caseUpdatedDate": {
104
+ "type": ["string", "null"],
105
+ "format": "date-time",
106
+ "examples": ["2026-07-27T20:30:00.000Z"],
107
+ "description": "The date the appeal was last updated in the back-office"
108
+ },
109
+ "caseValidDate": {
110
+ "type": ["string", "null"],
111
+ "format": "date-time",
112
+ "examples": ["2026-07-27T20:30:00.000Z"],
113
+ "description": "The date since when the appeal was considered valid"
114
+ },
115
+ "caseValidationDate": {
116
+ "type": ["string", "null"],
117
+ "format": "date-time",
118
+ "examples": ["2026-07-27T20:30:00.000Z"],
119
+ "description": "The date the appeal was validated in the back-office"
120
+ },
121
+ "caseValidationOutcome": {
122
+ "type": ["string", "null"],
123
+ "enum": ["valid", "invalid", "incomplete", null],
124
+ "description": "The outcome of the validation action"
125
+ },
126
+ "caseStartedDate": {
127
+ "type": ["string", "null"],
128
+ "format": "date-time",
129
+ "examples": ["2026-07-27T20:30:00.000Z"],
130
+ "description": "A date indicating when the case was started, resulting in the creation of a timetable"
131
+ },
132
+ "casePublishedDate": {
133
+ "type": ["string", "null"],
134
+ "format": "date-time",
135
+ "examples": ["2026-07-27T20:30:00.000Z"],
136
+ "description": "A date indicating when the case was published"
137
+ },
138
+ "lpaQuestionnaireCreatedDate": {
139
+ "type": ["string", "null"],
140
+ "format": "date-time",
141
+ "examples": ["2026-07-27T20:30:00.000Z"],
142
+ "description": "The date the LPA response was received"
143
+ },
144
+ "lpaQuestionnaireSubmittedDate": {
145
+ "type": ["string", "null"],
146
+ "format": "date-time",
147
+ "examples": ["2026-07-27T20:30:00.000Z"],
148
+ "description": "The date the LPA provided a response to the case"
149
+ },
150
+ "lpaQuestionnaireValidationOutcome": {
151
+ "type": ["string", "null"],
152
+ "enum": ["complete", "incomplete", null],
153
+ "description": "The outcome of the LPA questionnaire validation action"
154
+ },
155
+ "lpaQuestionnaireDueDate": {
156
+ "type": ["string", "null"],
157
+ "format": "date-time",
158
+ "examples": ["2026-07-27T20:30:00.000Z"],
159
+ "description": "If the case is started and has a timetable, a deadline for the LPA to provide a response"
160
+ },
161
+ "caseDecisionOutcomeDate": {
162
+ "type": ["string", "null"],
163
+ "format": "date-time",
164
+ "examples": ["2026-07-27T20:30:00.000Z"],
165
+ "description": "The date of the appeal decision"
166
+ },
167
+ "caseDecisionOutcome": {
168
+ "type": ["string", "null"],
169
+ "enum": [
170
+ "allowed",
171
+ "split_decision",
172
+ "dismissed",
173
+ "invalid",
174
+ "notice_upheld",
175
+ "planning_permission_granted",
176
+ "quashed_on_legal_grounds",
177
+ "notice_varied_and_upheld",
178
+ "notice_quashed",
179
+ null
180
+ ],
181
+ "description": "The final outcome for the decision"
182
+ },
183
+ "caseCompletedDate": {
184
+ "type": ["string", "null"],
185
+ "format": "date-time",
186
+ "examples": ["2026-07-27T20:30:00.000Z"],
187
+ "description": "The date the appeal decision letter was issued"
188
+ },
189
+ "lpaCode": {
190
+ "type": ["string", "null"],
191
+ "examples": ["Q9999"],
192
+ "description": "A unique identifier for the Local Planning Authority"
193
+ },
194
+ "caseOfficerId": {
195
+ "type": ["string", "null"],
196
+ "description": "Unique identifier for the case officer assigned to the case"
197
+ },
198
+ "inspectorId": {
199
+ "type": ["string", "null"],
200
+ "description": "Unique identifier for the inspector assigned to the case"
201
+ },
202
+ "padsSapId": {
203
+ "type": ["string", "null"],
204
+ "description": "padsSapId for PADS inspectors"
205
+ },
206
+ "allocationLevel": {
207
+ "type": ["string", "null"],
208
+ "enum": ["A", "B", "C", "D", "E", "F", "G", "H", null],
209
+ "description": "A level used for allocation purposes"
210
+ },
211
+ "allocationBand": {
212
+ "type": ["number", "null"],
213
+ "enum": [1, 2, 3, null],
214
+ "description": "A band used for allocation purposes"
215
+ },
216
+ "caseSpecialisms": {
217
+ "type": ["array", "null"],
218
+ "items": {
219
+ "type": "string"
220
+ },
221
+ "examples": [["Environmental", "SSSI"]],
222
+ "description": "A list of specialisms for allocation purposes"
223
+ },
224
+ "siteAddressLine1": {
225
+ "type": ["string", "null"],
226
+ "examples": ["96 The Avenue"],
227
+ "description": "First line of address for the appeal site"
228
+ },
229
+ "siteAddressLine2": {
230
+ "type": ["string", "null"],
231
+ "description": "Second line of address for the appeal site"
232
+ },
233
+ "siteAddressTown": {
234
+ "type": ["string", "null"],
235
+ "examples": ["Maidstone"],
236
+ "description": "Town / City of the site address"
237
+ },
238
+ "siteAddressCounty": {
239
+ "type": ["string", "null"],
240
+ "examples": ["Kent"],
241
+ "description": "County of the site address"
242
+ },
243
+ "siteAddressPostcode": {
244
+ "type": ["string", "null"],
245
+ "examples": ["MD21 5XY"],
246
+ "description": "Postal code of the site address"
247
+ },
248
+ "caseManagementConferenceDate": {
249
+ "type": ["string", "null"],
250
+ "format": "date-time",
251
+ "examples": ["2026-07-27T20:30:00.000Z"],
252
+ "description": "The date of the Case Management Conference (CMC)"
253
+ },
254
+ "statementDueDate": {
255
+ "type": ["string", "null"],
256
+ "format": "date-time",
257
+ "examples": ["2026-07-27T20:30:00.000Z"],
258
+ "description": "Deadline for statements"
259
+ },
260
+ "proofsOfEvidenceDueDate": {
261
+ "type": ["string", "null"],
262
+ "format": "date-time",
263
+ "examples": ["2026-07-27T20:30:00.000Z"],
264
+ "description": "Deadline for proofs of evidence"
265
+ },
266
+ "finalCommentsDueDate": {
267
+ "type": ["string", "null"],
268
+ "format": "date-time",
269
+ "examples": ["2026-07-27T20:30:00.000Z"],
270
+ "description": "Deadline for final comments"
271
+ },
272
+ "interestedPartyRepsDueDate": {
273
+ "type": ["string", "null"],
274
+ "format": "date-time",
275
+ "examples": ["2026-07-27T20:30:00.000Z"],
276
+ "description": "Deadline for interested party representations"
277
+ },
278
+ "statementOfCommonGroundDueDate": {
279
+ "type": ["string", "null"],
280
+ "format": "date-time",
281
+ "examples": ["2026-07-27T20:30:00.000Z"],
282
+ "description": "Deadline for statement of common ground"
283
+ },
284
+ "planningObligationDueDate": {
285
+ "type": ["string", "null"],
286
+ "format": "date-time",
287
+ "examples": ["2026-07-27T20:30:00.000Z"],
288
+ "description": "Deadline for planning obligation"
289
+ },
290
+ "typeOfPlanningApplication": {
291
+ "type": ["string", "null"],
292
+ "enum": [
293
+ "full-appeal",
294
+ "householder-planning",
295
+ "outline-planning",
296
+ "prior-approval",
297
+ "reserved-matters",
298
+ "removal-or-variation-of-conditions",
299
+ "listed-building",
300
+ "minor-commercial-development",
301
+ "advertisement",
302
+ "lawful-development-certificate",
303
+ "discontinuance-notice",
304
+ "permission-in-principle",
305
+ "tree-preservation-order",
306
+ "tree-replacement-notice",
307
+ "high-hedge-appeal",
308
+ "hedgerows-appeal",
309
+ "community-infrastructure-levy",
310
+ "planning-obligation",
311
+ "environmental",
312
+ null
313
+ ],
314
+ "description": "The type of application or notice that is the subject of the appeal"
315
+ },
316
+ "caseSubType": {
317
+ "type": ["string", "null"],
318
+ "enum": [
319
+ "anti_pollution_works_notice",
320
+ "contaminated_land",
321
+ "marine_licensing",
322
+ "waste_carriers",
323
+ "water_abstraction",
324
+ "environmental_liability",
325
+ "environmental_permitting",
326
+ "hazardous_substances",
327
+ "silage_and_slurry",
328
+ "sssi",
329
+ "affordable_housing",
330
+ null
331
+ ],
332
+ "description": "Sub-type categorization for generic/low-volume appeals"
333
+ },
334
+ "caseWithdrawnDate": {
335
+ "type": ["string", "null"],
336
+ "format": "date-time",
337
+ "examples": ["2026-07-27T20:30:00.000Z"],
338
+ "description": "The date the appeal was withdrawn by the appellant"
339
+ },
340
+ "caseTransferredDate": {
341
+ "type": ["string", "null"],
342
+ "format": "date-time",
343
+ "examples": ["2026-07-27T20:30:00.000Z"],
344
+ "description": "The date the appeal was transferred to a new case of a different type"
345
+ },
346
+ "enforcementNoticeReference": {
347
+ "type": ["string", "null"],
348
+ "examples": ["myC45e-123"],
349
+ "description": "The reference number of the enforcement notice"
350
+ },
351
+ "applicationReference": {
352
+ "type": ["string", "null"],
353
+ "examples": ["43010/APP/1/290572"],
354
+ "description": "The unique identifier of the LPA or regulator application"
355
+ },
356
+ "linkedCaseStatus": {
357
+ "type": ["string", "null"],
358
+ "enum": ["lead", "child", null],
359
+ "description": "Indicates if the case is linked, and the type of relationship"
360
+ },
361
+ "leadCaseReference": {
362
+ "type": ["string", "null"],
363
+ "examples": ["6000001"],
364
+ "description": "The reference of the lead case, if the case is a child case"
365
+ },
366
+ "environmentalPermitSubtypes": {
367
+ "type": ["string", "null"],
368
+ "enum": [
369
+ "refusal_of_a_permit",
370
+ "deemed_refusal",
371
+ "conditions_attached_to_a_permit",
372
+ "decision_to_impose_conditions_by_regulator",
373
+ "deemed_withdrawal",
374
+ "enforcement_notice",
375
+ "suspension_notice",
376
+ "closure_notice",
377
+ "flood_risk_activity",
378
+ "revocation_notice",
379
+ "prohibition_notice",
380
+ null
381
+ ],
382
+ "description": "Case sub-division applying to Environmental Permitting caseSubType"
383
+ }
384
+ }
385
+ }
@@ -460,6 +460,7 @@
460
460
  "planning_permission_granted",
461
461
  "quashed_on_legal_grounds",
462
462
  "notice_varied_and_upheld",
463
+ "notice_quashed",
463
464
  null
464
465
  ],
465
466
  "description": "The final outcome for the decision",
@@ -1049,6 +1050,13 @@
1049
1050
  "lawful-development-certificate",
1050
1051
  "discontinuance-notice",
1051
1052
  "permission-in-principle",
1053
+ "tree-preservation-order",
1054
+ "tree-replacement-notice",
1055
+ "high-hedge-appeal",
1056
+ "hedgerows-appeal",
1057
+ "community-infrastructure-levy",
1058
+ "planning-obligation",
1059
+ "environmental",
1052
1060
  null
1053
1061
  ]
1054
1062
  },
@@ -518,8 +518,12 @@
518
518
  "address": {
519
519
  "type": "object",
520
520
  "additionalProperties": true,
521
- "required": ["postcode"],
521
+ "required": ["addressId"],
522
522
  "properties": {
523
+ "addressId": {
524
+ "type": "string",
525
+ "description": "The source system Primary Key for an address."
526
+ },
523
527
  "line1": {
524
528
  "type": ["string", "null"]
525
529
  },
@@ -533,7 +537,7 @@
533
537
  "type": ["string", "null"]
534
538
  },
535
539
  "postcode": {
536
- "type": "string"
540
+ "type": ["string", "null"]
537
541
  }
538
542
  }
539
543
  }
package/src/enums.cjs CHANGED
@@ -90,6 +90,7 @@ const APPEAL_CASE_DECISION_OUTCOME = Object.freeze({
90
90
  ALLOWED: 'allowed',
91
91
  DISMISSED: 'dismissed',
92
92
  INVALID: 'invalid',
93
+ NOTICE_QUASHED: 'notice_quashed',
93
94
  NOTICE_UPHELD: 'notice_upheld',
94
95
  NOTICE_VARIED_AND_UPHELD: 'notice_varied_and_upheld',
95
96
  PLANNING_PERMISSION_GRANTED: 'planning_permission_granted',
@@ -141,6 +142,20 @@ const APPEAL_CASE_STATUS = Object.freeze({
141
142
  WITNESSES: 'witnesses',
142
143
  });
143
144
 
145
+ const APPEAL_CASE_SUB_TYPE = Object.freeze({
146
+ AFFORDABLE_HOUSING: 'affordable_housing',
147
+ ANTI_POLLUTION_WORKS_NOTICE: 'anti_pollution_works_notice',
148
+ CONTAMINATED_LAND: 'contaminated_land',
149
+ ENVIRONMENTAL_LIABILITY: 'environmental_liability',
150
+ ENVIRONMENTAL_PERMITTING: 'environmental_permitting',
151
+ HAZARDOUS_SUBSTANCES: 'hazardous_substances',
152
+ MARINE_LICENSING: 'marine_licensing',
153
+ SILAGE_AND_SLURRY: 'silage_and_slurry',
154
+ SSSI: 'sssi',
155
+ WASTE_CARRIERS: 'waste_carriers',
156
+ WATER_ABSTRACTION: 'water_abstraction',
157
+ });
158
+
144
159
  const APPEAL_CASE_TYPE = Object.freeze({
145
160
  C: 'C',
146
161
  D: 'D',
@@ -192,6 +207,7 @@ const APPEAL_DISCONTINUANCE_NOTICE_SERVED_REASON = Object.freeze({
192
207
  const APPEAL_DOCUMENT_TYPE = Object.freeze({
193
208
  ADDITIONAL_DOCUMENTS_LPA: 'additionalDocumentsLPA',
194
209
  APPEAL_NOTIFICATION: 'appealNotification',
210
+ APPELLANT_CASE: 'appellantCase',
195
211
  APPELLANT_CASE_CORRESPONDENCE: 'appellantCaseCorrespondence',
196
212
  APPELLANT_CASE_WITHDRAWAL_LETTER: 'appellantCaseWithdrawalLetter',
197
213
  APPELLANT_COSTS_APPLICATION: 'appellantCostsApplication',
@@ -258,6 +274,7 @@ const APPEAL_DOCUMENT_TYPE = Object.freeze({
258
274
  LPA_ENFORCEMENT_NOTICE_WITHDRAWAL: 'lpaEnforcementNoticeWithdrawal',
259
275
  LPA_FINAL_COMMENT: 'lpaFinalComment',
260
276
  LPA_PROOF_OF_EVIDENCE: 'lpaProofOfEvidence',
277
+ LPA_QUESTIONNAIRE: 'lpaQuestionnaire',
261
278
  LPA_STATEMENT: 'lpaStatement',
262
279
  LPA_WITNESSES_EVIDENCE: 'lpaWitnessesEvidence',
263
280
  MAIN_PARTY_CORRESPONDENCE: 'mainPartyCorrespondence',
@@ -313,6 +330,20 @@ const APPEAL_EIA_ENVIRONMENTAL_IMPACT_SCHEDULE = Object.freeze({
313
330
  SCHEDULE_2: 'schedule-2',
314
331
  });
315
332
 
333
+ const APPEAL_ENVIRONMENTAL_PERMIT_SUBTYPES = Object.freeze({
334
+ CLOSURE_NOTICE: 'closure_notice',
335
+ CONDITIONS_ATTACHED_TO_A_PERMIT: 'conditions_attached_to_a_permit',
336
+ DECISION_TO_IMPOSE_CONDITIONS_BY_REGULATOR: 'decision_to_impose_conditions_by_regulator',
337
+ DEEMED_REFUSAL: 'deemed_refusal',
338
+ DEEMED_WITHDRAWAL: 'deemed_withdrawal',
339
+ ENFORCEMENT_NOTICE: 'enforcement_notice',
340
+ FLOOD_RISK_ACTIVITY: 'flood_risk_activity',
341
+ PROHIBITION_NOTICE: 'prohibition_notice',
342
+ REFUSAL_OF_A_PERMIT: 'refusal_of_a_permit',
343
+ REVOCATION_NOTICE: 'revocation_notice',
344
+ SUSPENSION_NOTICE: 'suspension_notice',
345
+ });
346
+
316
347
  const APPEAL_EVENT_STATUS = Object.freeze({
317
348
  CHANGE_OF_PROCEDURE: 'change_of_procedure',
318
349
  CONFIRMED: 'confirmed',
@@ -430,17 +461,24 @@ const APPEAL_SOURCE_SYSTEM = Object.freeze({
430
461
 
431
462
  const APPEAL_TYPE_OF_PLANNING_APPLICATION = Object.freeze({
432
463
  ADVERTISEMENT: 'advertisement',
464
+ COMMUNITY_INFRASTRUCTURE_LEVY: 'community-infrastructure-levy',
433
465
  DISCONTINUANCE_NOTICE: 'discontinuance-notice',
466
+ ENVIRONMENTAL: 'environmental',
434
467
  FULL_APPEAL: 'full-appeal',
468
+ HEDGEROWS_APPEAL: 'hedgerows-appeal',
469
+ HIGH_HEDGE_APPEAL: 'high-hedge-appeal',
435
470
  HOUSEHOLDER_PLANNING: 'householder-planning',
436
471
  LAWFUL_DEVELOPMENT_CERTIFICATE: 'lawful-development-certificate',
437
472
  LISTED_BUILDING: 'listed-building',
438
473
  MINOR_COMMERCIAL_DEVELOPMENT: 'minor-commercial-development',
439
474
  OUTLINE_PLANNING: 'outline-planning',
440
475
  PERMISSION_IN_PRINCIPLE: 'permission-in-principle',
476
+ PLANNING_OBLIGATION: 'planning-obligation',
441
477
  PRIOR_APPROVAL: 'prior-approval',
442
478
  REMOVAL_OR_VARIATION_OF_CONDITIONS: 'removal-or-variation-of-conditions',
443
479
  RESERVED_MATTERS: 'reserved-matters',
480
+ TREE_PRESERVATION_ORDER: 'tree-preservation-order',
481
+ TREE_REPLACEMENT_NOTICE: 'tree-replacement-notice',
444
482
  });
445
483
 
446
484
  const APPEAL_VIRUS_CHECK_STATUS = Object.freeze({
@@ -987,6 +1025,7 @@ exports.APPEAL_CASE_DECISION_OUTCOME = APPEAL_CASE_DECISION_OUTCOME;
987
1025
  exports.APPEAL_CASE_PROCEDURE = APPEAL_CASE_PROCEDURE;
988
1026
  exports.APPEAL_CASE_STAGE = APPEAL_CASE_STAGE;
989
1027
  exports.APPEAL_CASE_STATUS = APPEAL_CASE_STATUS;
1028
+ exports.APPEAL_CASE_SUB_TYPE = APPEAL_CASE_SUB_TYPE;
990
1029
  exports.APPEAL_CASE_TYPE = APPEAL_CASE_TYPE;
991
1030
  exports.APPEAL_CASE_VALIDATION_OUTCOME = APPEAL_CASE_VALIDATION_OUTCOME;
992
1031
  exports.APPEAL_DEVELOPMENT_TYPE = APPEAL_DEVELOPMENT_TYPE;
@@ -994,6 +1033,7 @@ exports.APPEAL_DISCONTINUANCE_NOTICE_SERVED_REASON = APPEAL_DISCONTINUANCE_NOTIC
994
1033
  exports.APPEAL_DOCUMENT_TYPE = APPEAL_DOCUMENT_TYPE;
995
1034
  exports.APPEAL_EIA_DEVELOPMENT_DESCRIPTION = APPEAL_EIA_DEVELOPMENT_DESCRIPTION;
996
1035
  exports.APPEAL_EIA_ENVIRONMENTAL_IMPACT_SCHEDULE = APPEAL_EIA_ENVIRONMENTAL_IMPACT_SCHEDULE;
1036
+ exports.APPEAL_ENVIRONMENTAL_PERMIT_SUBTYPES = APPEAL_ENVIRONMENTAL_PERMIT_SUBTYPES;
997
1037
  exports.APPEAL_EVENT_STATUS = APPEAL_EVENT_STATUS;
998
1038
  exports.APPEAL_EVENT_TYPE = APPEAL_EVENT_TYPE;
999
1039
  exports.APPEAL_HAS_CASE_DECISION_OUTCOME = APPEAL_HAS_CASE_DECISION_OUTCOME;