@planning-inspectorate/data-model 2.21.2 → 2.22.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.
Files changed (36) hide show
  1. package/docs/appeal-has-anyof-grid-reference.md +46 -0
  2. package/docs/appeal-has-anyof-site-address.md +65 -0
  3. package/docs/appeal-has.md +2 -2
  4. package/docs/appeal-s78-anyof-grid-reference.md +46 -0
  5. package/docs/appeal-s78-anyof-site-address.md +65 -0
  6. package/docs/appeal-s78.md +2 -2
  7. package/package.json +1 -1
  8. package/pins_data_model/models/model_appeal_document.py +1 -1
  9. package/pins_data_model/models/model_appeal_event.py +1 -1
  10. package/pins_data_model/models/model_appeal_event_estimate.py +1 -1
  11. package/pins_data_model/models/model_appeal_has.py +1 -1
  12. package/pins_data_model/models/model_appeal_representation.py +1 -1
  13. package/pins_data_model/models/model_appeal_s78.py +1 -1
  14. package/pins_data_model/models/model_dart_response.py +1 -1
  15. package/pins_data_model/models/model_entraid.py +1 -1
  16. package/pins_data_model/models/model_folder.py +1 -1
  17. package/pins_data_model/models/model_gettimesheets_response.py +1 -1
  18. package/pins_data_model/models/model_listed_building.py +1 -1
  19. package/pins_data_model/models/model_listed_buildings.py +1 -1
  20. package/pins_data_model/models/model_nsip_document.py +1 -1
  21. package/pins_data_model/models/model_nsip_exam_timetable.py +1 -1
  22. package/pins_data_model/models/model_nsip_invoice.py +1 -1
  23. package/pins_data_model/models/model_nsip_meeting.py +1 -1
  24. package/pins_data_model/models/model_nsip_project.py +1 -1
  25. package/pins_data_model/models/model_nsip_project_update.py +1 -1
  26. package/pins_data_model/models/model_nsip_representation.py +1 -1
  27. package/pins_data_model/models/model_nsip_subscription.py +1 -1
  28. package/pins_data_model/models/model_pins_inspector.py +1 -1
  29. package/pins_data_model/models/model_pins_lpa.py +1 -1
  30. package/pins_data_model/models/model_s51_advice.py +1 -1
  31. package/pins_data_model/models/model_service_user.py +1 -1
  32. package/schemas/appeal-has.schema.json +2 -0
  33. package/schemas/appeal-s78.schema.json +2 -0
  34. package/schemas/commands/appeals-components/lpa-questionnaire-enforcement.schema.json +0 -2
  35. package/src/lib/gen-docs.js +1 -1
  36. package/src/schemas.d.ts +22 -22
@@ -0,0 +1,46 @@
1
+ ## 0 Type
2
+
3
+ unknown ([Grid Reference](appeal-has-anyof-grid-reference.md))
4
+
5
+ # 0 Properties
6
+
7
+ | Property | Type | Required | Nullable | Defined by |
8
+ | :------------------------------------------------------ | :------- | :------- | :------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
9
+ | [siteGridReferenceEasting](#sitegridreferenceeasting) | `string` | Required | cannot be null | [Appeal HAS Case](appeal-has-anyof-grid-reference-properties-sitegridreferenceeasting.md "appeal-has.schema.json#/anyOf/0/properties/siteGridReferenceEasting") |
10
+ | [siteGridReferenceNorthing](#sitegridreferencenorthing) | `string` | Required | cannot be null | [Appeal HAS Case](appeal-has-anyof-grid-reference-properties-sitegridreferencenorthing.md "appeal-has.schema.json#/anyOf/0/properties/siteGridReferenceNorthing") |
11
+
12
+ ## siteGridReferenceEasting
13
+
14
+
15
+
16
+ `siteGridReferenceEasting`
17
+
18
+ * is required
19
+
20
+ * Type: `string`
21
+
22
+ * cannot be null
23
+
24
+ * defined in: [Appeal HAS Case](appeal-has-anyof-grid-reference-properties-sitegridreferenceeasting.md "appeal-has.schema.json#/anyOf/0/properties/siteGridReferenceEasting")
25
+
26
+ ### siteGridReferenceEasting Type
27
+
28
+ `string`
29
+
30
+ ## siteGridReferenceNorthing
31
+
32
+
33
+
34
+ `siteGridReferenceNorthing`
35
+
36
+ * is required
37
+
38
+ * Type: `string`
39
+
40
+ * cannot be null
41
+
42
+ * defined in: [Appeal HAS Case](appeal-has-anyof-grid-reference-properties-sitegridreferencenorthing.md "appeal-has.schema.json#/anyOf/0/properties/siteGridReferenceNorthing")
43
+
44
+ ### siteGridReferenceNorthing Type
45
+
46
+ `string`
@@ -0,0 +1,65 @@
1
+ ## 1 Type
2
+
3
+ unknown ([Site address](appeal-has-anyof-site-address.md))
4
+
5
+ # 1 Properties
6
+
7
+ | Property | Type | Required | Nullable | Defined by |
8
+ | :------------------------------------------ | :------- | :------- | :------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------- |
9
+ | [siteAddressLine1](#siteaddressline1) | `string` | Required | cannot be null | [Appeal HAS Case](appeal-has-anyof-site-address-properties-siteaddressline1.md "appeal-has.schema.json#/anyOf/1/properties/siteAddressLine1") |
10
+ | [siteAddressTown](#siteaddresstown) | `string` | Required | cannot be null | [Appeal HAS Case](appeal-has-anyof-site-address-properties-siteaddresstown.md "appeal-has.schema.json#/anyOf/1/properties/siteAddressTown") |
11
+ | [siteAddressPostcode](#siteaddresspostcode) | `string` | Required | cannot be null | [Appeal HAS Case](appeal-has-anyof-site-address-properties-siteaddresspostcode.md "appeal-has.schema.json#/anyOf/1/properties/siteAddressPostcode") |
12
+
13
+ ## siteAddressLine1
14
+
15
+
16
+
17
+ `siteAddressLine1`
18
+
19
+ * is required
20
+
21
+ * Type: `string`
22
+
23
+ * cannot be null
24
+
25
+ * defined in: [Appeal HAS Case](appeal-has-anyof-site-address-properties-siteaddressline1.md "appeal-has.schema.json#/anyOf/1/properties/siteAddressLine1")
26
+
27
+ ### siteAddressLine1 Type
28
+
29
+ `string`
30
+
31
+ ## siteAddressTown
32
+
33
+
34
+
35
+ `siteAddressTown`
36
+
37
+ * is required
38
+
39
+ * Type: `string`
40
+
41
+ * cannot be null
42
+
43
+ * defined in: [Appeal HAS Case](appeal-has-anyof-site-address-properties-siteaddresstown.md "appeal-has.schema.json#/anyOf/1/properties/siteAddressTown")
44
+
45
+ ### siteAddressTown Type
46
+
47
+ `string`
48
+
49
+ ## siteAddressPostcode
50
+
51
+
52
+
53
+ `siteAddressPostcode`
54
+
55
+ * is required
56
+
57
+ * Type: `string`
58
+
59
+ * cannot be null
60
+
61
+ * defined in: [Appeal HAS Case](appeal-has-anyof-site-address-properties-siteaddresspostcode.md "appeal-has.schema.json#/anyOf/1/properties/siteAddressPostcode")
62
+
63
+ ### siteAddressPostcode Type
64
+
65
+ `string`
@@ -4,9 +4,9 @@
4
4
 
5
5
  any of
6
6
 
7
- * [Untitled undefined type in Appeal HAS Case](appeal-has-anyof-0.md "check type definition")
7
+ * [Grid Reference](appeal-has-anyof-grid-reference.md "check type definition")
8
8
 
9
- * [Untitled undefined type in Appeal HAS Case](appeal-has-anyof-1.md "check type definition")
9
+ * [Site address](appeal-has-anyof-site-address.md "check type definition")
10
10
 
11
11
  # Appeal HAS Case Properties
12
12
 
@@ -0,0 +1,46 @@
1
+ ## 0 Type
2
+
3
+ unknown ([Grid Reference](appeal-s78-anyof-grid-reference.md))
4
+
5
+ # 0 Properties
6
+
7
+ | Property | Type | Required | Nullable | Defined by |
8
+ | :------------------------------------------------------ | :------- | :------- | :------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
9
+ | [siteGridReferenceEasting](#sitegridreferenceeasting) | `string` | Required | cannot be null | [Appeal S78 Case](appeal-s78-anyof-grid-reference-properties-sitegridreferenceeasting.md "appeal-s78.schema.json#/anyOf/0/properties/siteGridReferenceEasting") |
10
+ | [siteGridReferenceNorthing](#sitegridreferencenorthing) | `string` | Required | cannot be null | [Appeal S78 Case](appeal-s78-anyof-grid-reference-properties-sitegridreferencenorthing.md "appeal-s78.schema.json#/anyOf/0/properties/siteGridReferenceNorthing") |
11
+
12
+ ## siteGridReferenceEasting
13
+
14
+
15
+
16
+ `siteGridReferenceEasting`
17
+
18
+ * is required
19
+
20
+ * Type: `string`
21
+
22
+ * cannot be null
23
+
24
+ * defined in: [Appeal S78 Case](appeal-s78-anyof-grid-reference-properties-sitegridreferenceeasting.md "appeal-s78.schema.json#/anyOf/0/properties/siteGridReferenceEasting")
25
+
26
+ ### siteGridReferenceEasting Type
27
+
28
+ `string`
29
+
30
+ ## siteGridReferenceNorthing
31
+
32
+
33
+
34
+ `siteGridReferenceNorthing`
35
+
36
+ * is required
37
+
38
+ * Type: `string`
39
+
40
+ * cannot be null
41
+
42
+ * defined in: [Appeal S78 Case](appeal-s78-anyof-grid-reference-properties-sitegridreferencenorthing.md "appeal-s78.schema.json#/anyOf/0/properties/siteGridReferenceNorthing")
43
+
44
+ ### siteGridReferenceNorthing Type
45
+
46
+ `string`
@@ -0,0 +1,65 @@
1
+ ## 1 Type
2
+
3
+ unknown ([Site address](appeal-s78-anyof-site-address.md))
4
+
5
+ # 1 Properties
6
+
7
+ | Property | Type | Required | Nullable | Defined by |
8
+ | :------------------------------------------ | :------- | :------- | :------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------- |
9
+ | [siteAddressLine1](#siteaddressline1) | `string` | Required | cannot be null | [Appeal S78 Case](appeal-s78-anyof-site-address-properties-siteaddressline1.md "appeal-s78.schema.json#/anyOf/1/properties/siteAddressLine1") |
10
+ | [siteAddressTown](#siteaddresstown) | `string` | Required | cannot be null | [Appeal S78 Case](appeal-s78-anyof-site-address-properties-siteaddresstown.md "appeal-s78.schema.json#/anyOf/1/properties/siteAddressTown") |
11
+ | [siteAddressPostcode](#siteaddresspostcode) | `string` | Required | cannot be null | [Appeal S78 Case](appeal-s78-anyof-site-address-properties-siteaddresspostcode.md "appeal-s78.schema.json#/anyOf/1/properties/siteAddressPostcode") |
12
+
13
+ ## siteAddressLine1
14
+
15
+
16
+
17
+ `siteAddressLine1`
18
+
19
+ * is required
20
+
21
+ * Type: `string`
22
+
23
+ * cannot be null
24
+
25
+ * defined in: [Appeal S78 Case](appeal-s78-anyof-site-address-properties-siteaddressline1.md "appeal-s78.schema.json#/anyOf/1/properties/siteAddressLine1")
26
+
27
+ ### siteAddressLine1 Type
28
+
29
+ `string`
30
+
31
+ ## siteAddressTown
32
+
33
+
34
+
35
+ `siteAddressTown`
36
+
37
+ * is required
38
+
39
+ * Type: `string`
40
+
41
+ * cannot be null
42
+
43
+ * defined in: [Appeal S78 Case](appeal-s78-anyof-site-address-properties-siteaddresstown.md "appeal-s78.schema.json#/anyOf/1/properties/siteAddressTown")
44
+
45
+ ### siteAddressTown Type
46
+
47
+ `string`
48
+
49
+ ## siteAddressPostcode
50
+
51
+
52
+
53
+ `siteAddressPostcode`
54
+
55
+ * is required
56
+
57
+ * Type: `string`
58
+
59
+ * cannot be null
60
+
61
+ * defined in: [Appeal S78 Case](appeal-s78-anyof-site-address-properties-siteaddresspostcode.md "appeal-s78.schema.json#/anyOf/1/properties/siteAddressPostcode")
62
+
63
+ ### siteAddressPostcode Type
64
+
65
+ `string`
@@ -4,9 +4,9 @@
4
4
 
5
5
  any of
6
6
 
7
- * [Untitled undefined type in Appeal S78 Case](appeal-s78-anyof-0.md "check type definition")
7
+ * [Grid Reference](appeal-s78-anyof-grid-reference.md "check type definition")
8
8
 
9
- * [Untitled undefined type in Appeal S78 Case](appeal-s78-anyof-1.md "check type definition")
9
+ * [Site address](appeal-s78-anyof-site-address.md "check type definition")
10
10
 
11
11
  # Appeal S78 Case Properties
12
12
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@planning-inspectorate/data-model",
3
- "version": "2.21.2",
3
+ "version": "2.22.0",
4
4
  "description": "JSON Schemas for the Planning Inspectorate's Data Model",
5
5
  "main": "src/index.js",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: appeal-document.schema.json
3
- # timestamp: 2026-02-14T15:08:43+00:00
3
+ # timestamp: 2026-02-16T16:31:41+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: appeal-event.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: appeal-event-estimate.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: appeal-has.schema.json
3
- # timestamp: 2026-02-14T15:08:43+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: appeal-representation.schema.json
3
- # timestamp: 2026-02-14T15:08:43+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: appeal-s78.schema.json
3
- # timestamp: 2026-02-14T15:08:43+00:00
3
+ # timestamp: 2026-02-16T16:31:41+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: dart-response.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: entraid.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: folder.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: gettimesheets-response.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: listed-building.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: listed-buildings.schema.json
3
- # timestamp: 2026-02-14T15:08:43+00:00
3
+ # timestamp: 2026-02-16T16:31:41+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-document.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-exam-timetable.schema.json
3
- # timestamp: 2026-02-14T15:08:43+00:00
3
+ # timestamp: 2026-02-16T16:31:41+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-invoice.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-meeting.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-project.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-project-update.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-representation.schema.json
3
- # timestamp: 2026-02-14T15:08:43+00:00
3
+ # timestamp: 2026-02-16T16:31:41+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-subscription.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: pins-inspector.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: pins-lpa.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: s51-advice.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: service-user.schema.json
3
- # timestamp: 2026-02-14T15:08:42+00:00
3
+ # timestamp: 2026-02-16T16:31:40+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -76,6 +76,7 @@
76
76
  ],
77
77
  "anyOf": [
78
78
  {
79
+ "title": "Grid Reference",
79
80
  "required": ["siteGridReferenceEasting", "siteGridReferenceNorthing"],
80
81
  "properties": {
81
82
  "siteGridReferenceEasting": { "type": "string" },
@@ -83,6 +84,7 @@
83
84
  }
84
85
  },
85
86
  {
87
+ "title": "Site address",
86
88
  "required": ["siteAddressLine1", "siteAddressTown", "siteAddressPostcode"],
87
89
  "properties": {
88
90
  "siteAddressLine1": { "type": "string" },
@@ -134,6 +134,7 @@
134
134
  ],
135
135
  "anyOf": [
136
136
  {
137
+ "title": "Grid Reference",
137
138
  "required": ["siteGridReferenceEasting", "siteGridReferenceNorthing"],
138
139
  "properties": {
139
140
  "siteGridReferenceEasting": { "type": "string" },
@@ -141,6 +142,7 @@
141
142
  }
142
143
  },
143
144
  {
145
+ "title": "Site address",
144
146
  "required": ["siteAddressLine1", "siteAddressTown", "siteAddressPostcode"],
145
147
  "properties": {
146
148
  "siteAddressLine1": { "type": "string" },
@@ -8,8 +8,6 @@
8
8
  "required": [
9
9
  "noticeRelatesToBuildingEngineeringMiningOther",
10
10
  "siteAreaSquareMetres",
11
- "hasAllegedBreachArea",
12
- "doesAllegedBreachCreateFloorSpace",
13
11
  "changeOfUseRefuseOrWaste",
14
12
  "changeOfUseMineralExtraction",
15
13
  "changeOfUseMineralStorage",
@@ -23,7 +23,7 @@ async function genDocs() {
23
23
  includeReadme: true
24
24
  });
25
25
  // remove all irrelevant docs
26
- const removePatterns = ['-properties-', '-properties.', '-anyof-'];
26
+ const removePatterns = ['-properties-', '-properties.'];
27
27
  for (const md of out.markdown) {
28
28
  const shouldRemove = removePatterns.some((pattern) => md.fileName.includes(pattern));
29
29
  if (shouldRemove) {
package/src/schemas.d.ts CHANGED
@@ -332,17 +332,7 @@ export interface AppealEvent {
332
332
  /**
333
333
  * Group A - Schema defining the metadata for an appeal
334
334
  */
335
- export type AppealHASCase = (
336
- | {
337
- siteGridReferenceEasting: string;
338
- siteGridReferenceNorthing: string;
339
- }
340
- | {
341
- siteAddressLine1: string;
342
- siteAddressTown: string;
343
- siteAddressPostcode: string;
344
- }
345
- ) & {
335
+ export type AppealHASCase = (GridReference | SiteAddress) & {
346
336
  /**
347
337
  * Internal case identifier
348
338
  */
@@ -836,6 +826,16 @@ export type AppealHASCase = (
836
826
  [k: string]: unknown;
837
827
  };
838
828
 
829
+ export interface GridReference {
830
+ siteGridReferenceEasting: string;
831
+ siteGridReferenceNorthing: string;
832
+ }
833
+ export interface SiteAddress {
834
+ siteAddressLine1: string;
835
+ siteAddressTown: string;
836
+ siteAddressPostcode: string;
837
+ }
838
+
839
839
  /**
840
840
  * Schema defining the metadata for appeal representations, such as statements, third-party comments and final comments
841
841
  */
@@ -925,17 +925,7 @@ export interface AppealRepresentation {
925
925
  /**
926
926
  * Group B - Schema defining the metadata for an appeal
927
927
  */
928
- export type AppealS78Case = (
929
- | {
930
- siteGridReferenceEasting: string;
931
- siteGridReferenceNorthing: string;
932
- }
933
- | {
934
- siteAddressLine1: string;
935
- siteAddressTown: string;
936
- siteAddressPostcode: string;
937
- }
938
- ) & {
928
+ export type AppealS78Case = (GridReference | SiteAddress) & {
939
929
  /**
940
930
  * Internal case identifier
941
931
  */
@@ -1690,6 +1680,16 @@ export type AppealS78Case = (
1690
1680
  [k: string]: unknown;
1691
1681
  };
1692
1682
 
1683
+ export interface GridReference {
1684
+ siteGridReferenceEasting: string;
1685
+ siteGridReferenceNorthing: string;
1686
+ }
1687
+ export interface SiteAddress {
1688
+ siteAddressLine1: string;
1689
+ siteAddressTown: string;
1690
+ siteAddressPostcode: string;
1691
+ }
1692
+
1693
1693
  /**
1694
1694
  * Schema defining the data returned by the DaRT API
1695
1695
  */