@checkdigit/eslint-plugin 7.18.0-PR.143-b064 → 7.18.0-PR.143-b6d4

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 (40) hide show
  1. package/dist-mjs/athena/athena.mjs +82 -36
  2. package/dist-mjs/athena/visitor.mjs +27 -1
  3. package/dist-mjs/openapi/service-schema-generator.mjs +26 -64
  4. package/dist-types/athena/visitor.d.ts +4 -0
  5. package/package.json +1 -1
  6. package/src/athena/athena.ts +93 -43
  7. package/src/athena/visitor.ts +28 -0
  8. package/src/openapi/service-schema-generator.ts +26 -74
  9. package/src/services/interchange/v1/swagger.schema.deref.json +16 -15
  10. package/src/services/ledger/v1/swagger.schema.deref.json +81 -81
  11. package/src/services/ledger/v2/swagger.schema.deref.json +4119 -0
  12. package/src/services/link/v1/swagger.schema.deref.json +13 -12
  13. package/src/services/link/{v1/swagger.schema.json → v2/swagger.schema.deref.json} +98 -28
  14. package/src/services/message/v1/swagger.schema.deref.json +731 -731
  15. package/src/services/message/v2/swagger.schema.deref.json +1017 -1017
  16. package/src/services/paymentCard/v1/swagger.schema.deref.json +248 -238
  17. package/src/services/paymentCard/v2/swagger.schema.deref.json +257 -274
  18. package/src/services/paymentCard/v3/swagger.schema.deref.json +2843 -0
  19. package/src/services/person/v1/swagger.schema.deref.json +111 -96
  20. package/src/services/person/v2/swagger.schema.deref.json +4931 -0
  21. package/src/services/teampayApproval/v1/swagger.schema.deref.json +2 -165
  22. package/src/services/teampayCardManagement/v1/swagger.schema.deref.json +220 -1768
  23. package/src/services/teampayClientManagement/v1/swagger.schema.deref.json +217 -217
  24. package/src/services/interchange/v1/swagger.schema.json +0 -423
  25. package/src/services/interchange/v1/swagger.yml +0 -414
  26. package/src/services/ledger/v1/swagger.schema.json +0 -1048
  27. package/src/services/ledger/v1/swagger.yml +0 -1094
  28. package/src/services/link/v1/swagger.yml +0 -343
  29. package/src/services/message/v1/swagger.schema.json +0 -2944
  30. package/src/services/message/v1/swagger.yml +0 -2798
  31. package/src/services/message/v2/swagger.schema.json +0 -3040
  32. package/src/services/message/v2/swagger.yml +0 -3009
  33. package/src/services/paymentCard/v1/swagger.schema.json +0 -1687
  34. package/src/services/paymentCard/v1/swagger.yml +0 -1161
  35. package/src/services/paymentCard/v2/swagger.schema.json +0 -1649
  36. package/src/services/paymentCard/v2/swagger.yml +0 -1149
  37. package/src/services/person/v1/swagger.schema.json +0 -979
  38. package/src/services/person/v1/swagger.yml +0 -1157
  39. package/src/services/teampayClientManagement/v1/swagger.schema.json +0 -1598
  40. package/src/services/teampayClientManagement/v1/swagger.yml +0 -1376
@@ -1,979 +0,0 @@
1
- {
2
- "apis": {
3
- "/person/v1/ping": {},
4
- "/person/v1/public-key": {},
5
- "/person/v1/data-encryption-key/:dataEncryptionKeyId": {
6
- "put": {
7
- "request": {
8
- "$schema": "https://json-schema.org/draft/2020-12/schema",
9
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/api/DataEncryptionKeyPutRequestContext",
10
- "type": "object",
11
- "properties": {
12
- "params": {
13
- "type": "object",
14
- "additionalProperties": false,
15
- "properties": {
16
- "dataEncryptionKeyId": {
17
- "type": "string",
18
- "format": "uuid"
19
- }
20
- },
21
- "required": ["dataEncryptionKeyId"]
22
- },
23
- "headers": {
24
- "type": "object",
25
- "additionalProperties": true
26
- },
27
- "body": {
28
- "$ref": "/person/v1/schemas/definitions/DataEncryptionKeyRequest"
29
- }
30
- },
31
- "required": ["params", "body"],
32
- "additionalProperties": false
33
- },
34
- "responses": {
35
- "200": {
36
- "$schema": "https://json-schema.org/draft/2020-12/schema",
37
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/api/DataEncryptionKeyPutResponseOK",
38
- "type": "object",
39
- "properties": {
40
- "headers": {
41
- "type": "object",
42
- "properties": {
43
- "created-on": {
44
- "type": "string",
45
- "format": "date-time"
46
- },
47
- "updated-on": {
48
- "type": "string",
49
- "format": "date-time"
50
- },
51
- "last-modified": {
52
- "type": "string",
53
- "format": "date-time"
54
- }
55
- }
56
- },
57
- "body": {
58
- "$ref": "/person/v1/schemas/definitions/DataEncryptionKeyResponse"
59
- }
60
- },
61
- "required": ["body"],
62
- "additionalProperties": false
63
- },
64
- "default": {
65
- "$schema": "https://json-schema.org/draft/2020-12/schema",
66
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/api/DataEncryptionKeyPutResponseDefault",
67
- "type": "object",
68
- "properties": {
69
- "headers": {
70
- "type": "object",
71
- "additionalProperties": true
72
- },
73
- "body": {
74
- "$ref": "/person/v1/schemas/definitions/Error"
75
- }
76
- },
77
- "required": ["body"],
78
- "additionalProperties": false
79
- }
80
- }
81
- }
82
- },
83
- "/person/v1/person/:personId": {
84
- "put": {
85
- "request": {
86
- "$schema": "https://json-schema.org/draft/2020-12/schema",
87
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/api/PersonPutRequestContext",
88
- "type": "object",
89
- "properties": {
90
- "params": {
91
- "type": "object",
92
- "additionalProperties": false,
93
- "properties": {
94
- "personId": {
95
- "type": "string",
96
- "format": "uuid"
97
- }
98
- },
99
- "required": ["personId"]
100
- },
101
- "headers": {
102
- "type": "object",
103
- "additionalProperties": true,
104
- "properties": {
105
- "if-match": {
106
- "type": "string"
107
- },
108
- "created-on": {
109
- "type": "string",
110
- "format": "date-time"
111
- },
112
- "last-modified": {
113
- "type": "string",
114
- "format": "date-time"
115
- }
116
- }
117
- },
118
- "body": {
119
- "$ref": "/person/v1/schemas/definitions/PersonRequest"
120
- }
121
- },
122
- "required": ["params", "body"],
123
- "additionalProperties": false
124
- },
125
- "responses": {
126
- "200": {
127
- "$schema": "https://json-schema.org/draft/2020-12/schema",
128
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/api/PersonPutResponseOK",
129
- "type": "object",
130
- "properties": {
131
- "headers": {
132
- "type": "object",
133
- "properties": {
134
- "last-modified": {
135
- "type": "string",
136
- "format": "date-time"
137
- },
138
- "created-on": {
139
- "type": "string",
140
- "format": "date-time"
141
- },
142
- "updated-on": {
143
- "type": "string",
144
- "format": "date-time"
145
- },
146
- "etag": {
147
- "type": "string"
148
- }
149
- }
150
- },
151
- "body": {
152
- "$ref": "/person/v1/schemas/definitions/PersonResponse"
153
- }
154
- },
155
- "required": ["body"],
156
- "additionalProperties": false
157
- },
158
- "409": {
159
- "$schema": "https://json-schema.org/draft/2020-12/schema",
160
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/api/PersonPutResponseConflict",
161
- "type": "object",
162
- "properties": {
163
- "headers": {
164
- "type": "object",
165
- "additionalProperties": true
166
- }
167
- },
168
- "required": [],
169
- "additionalProperties": false
170
- },
171
- "412": {
172
- "$schema": "https://json-schema.org/draft/2020-12/schema",
173
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/api/PersonPutResponsePreconditionFailed",
174
- "type": "object",
175
- "properties": {
176
- "headers": {
177
- "type": "object",
178
- "additionalProperties": true
179
- }
180
- },
181
- "required": [],
182
- "additionalProperties": false
183
- },
184
- "default": {
185
- "$schema": "https://json-schema.org/draft/2020-12/schema",
186
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/api/PersonPutResponseDefault",
187
- "type": "object",
188
- "properties": {
189
- "headers": {
190
- "type": "object",
191
- "additionalProperties": true
192
- },
193
- "body": {
194
- "$ref": "/person/v1/schemas/definitions/Error"
195
- }
196
- },
197
- "required": ["body"],
198
- "additionalProperties": false
199
- }
200
- }
201
- }
202
- },
203
- "/person/v1/person/:personId/history": {},
204
- "/person/v1/person/:personId/masked": {}
205
- },
206
- "definitions": {
207
- "Ping": {
208
- "$schema": "https://json-schema.org/draft/2020-12/schema",
209
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/Ping",
210
- "type": "object",
211
- "additionalProperties": false,
212
- "required": ["serverTime"],
213
- "properties": {
214
- "serverTime": {
215
- "type": "string",
216
- "format": "date-time",
217
- "description": "Current server time"
218
- }
219
- }
220
- },
221
- "DataEncryptionKeyId": {
222
- "$schema": "https://json-schema.org/draft/2020-12/schema",
223
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/DataEncryptionKeyId",
224
- "type": "string",
225
- "description": "Reference to encryption keys Person Service used to encrypt the Person object.\n\nUpdates must use the same dataEncryptionKeyId.\n",
226
- "format": "uuid"
227
- },
228
- "DataEncryptionKeyResponse": {
229
- "$schema": "https://json-schema.org/draft/2020-12/schema",
230
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/DataEncryptionKeyResponse",
231
- "type": "object",
232
- "required": ["encryptedDataEncryptionKeys", "transmissionKey", "createdOn", "lastModified"],
233
- "properties": {
234
- "createdOn": {
235
- "description": "Time data was first stored",
236
- "type": "string",
237
- "format": "date-time"
238
- },
239
- "lastModified": {
240
- "description": "Time data was last modified",
241
- "type": "string",
242
- "format": "date-time"
243
- },
244
- "encryptedDataEncryptionKeys": {
245
- "type": "array",
246
- "items": {
247
- "$ref": "/person/v1/schemas/definitions/EncryptedDataEncryptionKey"
248
- }
249
- },
250
- "transmissionKey": {
251
- "type": "string",
252
- "description": "A PEM formatted public key to use when transmitting data to Person service.\nEncrypt the data encryption key used to encrypt data being sent using the transmissionKey.\n"
253
- }
254
- }
255
- },
256
- "DataEncryptionKeyRequest": {
257
- "$schema": "https://json-schema.org/draft/2020-12/schema",
258
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/DataEncryptionKeyRequest",
259
- "type": "object",
260
- "additionalProperties": false,
261
- "required": ["publicKeys"],
262
- "properties": {
263
- "publicKeys": {
264
- "type": "array",
265
- "minItems": 1,
266
- "description": "List of public keys in PEM format.\n\nAssociated private keys can be used to decrypt person data encrypted by Person Service.\n",
267
- "items": {
268
- "$ref": "/person/v1/schemas/definitions/PublicKey"
269
- }
270
- }
271
- }
272
- },
273
- "PersonRequest": {
274
- "$schema": "https://json-schema.org/draft/2020-12/schema",
275
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/PersonRequest",
276
- "type": "object",
277
- "additionalProperties": false,
278
- "required": ["dataEncryptionKeyId", "encryptedDataEncryptionKey", "person"],
279
- "properties": {
280
- "dataEncryptionKeyId": {
281
- "$ref": "/person/v1/schemas/definitions/DataEncryptionKeyId"
282
- },
283
- "encryptedDataEncryptionKey": {
284
- "description": "Encrypted version of AES-256 DEK",
285
- "type": "string"
286
- },
287
- "person": {
288
- "$ref": "/person/v1/schemas/definitions/Person"
289
- }
290
- }
291
- },
292
- "PersonRecord": {
293
- "$schema": "https://json-schema.org/draft/2020-12/schema",
294
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/PersonRecord",
295
- "type": "object",
296
- "additionalProperties": false,
297
- "description": "Encrypted version of object stored with created on and last modified metadata.",
298
- "required": ["createdOn", "updatedOn", "person"],
299
- "properties": {
300
- "createdOn": {
301
- "description": "Time data was first stored",
302
- "type": "string",
303
- "format": "date-time"
304
- },
305
- "updatedOn": {
306
- "description": "Time data was last stored",
307
- "type": "string",
308
- "format": "date-time"
309
- },
310
- "lastModified": {
311
- "description": "Time data was last stored (deprecated, use updatedOn)",
312
- "deprecated": true,
313
- "type": "string",
314
- "format": "date-time"
315
- },
316
- "person": {
317
- "$ref": "/person/v1/schemas/definitions/Person"
318
- }
319
- }
320
- },
321
- "PersonResponse": {
322
- "$schema": "https://json-schema.org/draft/2020-12/schema",
323
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/PersonResponse",
324
- "type": "object",
325
- "additionalProperties": false,
326
- "description": "Encrypted version of object stored and related ids and metadata. A encryptedDataEncryptionKey is included if\na publicKeyHash query parameter is supplied as part of request.\n",
327
- "required": ["dataEncryptionKeyId", "storageKeyId", "createdOn", "updatedOn", "person"],
328
- "properties": {
329
- "dataEncryptionKeyId": {
330
- "$ref": "/person/v1/schemas/definitions/DataEncryptionKeyId"
331
- },
332
- "storageKeyId": {
333
- "type": "string",
334
- "description": "DEK's non-derived identifier to be used by Check Digit services only.\n"
335
- },
336
- "encryptedDataEncryptionKey": {
337
- "description": "Encrypted DEK matching the publicKeyId sent in the request. Used to decrypt values in the Person object.\n",
338
- "type": "string"
339
- },
340
- "createdOn": {
341
- "description": "Time data was first stored",
342
- "type": "string",
343
- "format": "date-time"
344
- },
345
- "updatedOn": {
346
- "description": "Time data was last stored",
347
- "type": "string",
348
- "format": "date-time"
349
- },
350
- "lastModified": {
351
- "description": "Time data was last stored (deprecated, use updatedOn)",
352
- "deprecated": true,
353
- "type": "string",
354
- "format": "date-time"
355
- },
356
- "person": {
357
- "$ref": "/person/v1/schemas/definitions/Person"
358
- }
359
- }
360
- },
361
- "PersonMaskedResponse": {
362
- "$schema": "https://json-schema.org/draft/2020-12/schema",
363
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/PersonMaskedResponse",
364
- "type": "object",
365
- "additionalProperties": false,
366
- "description": "Encrypted version of object stored and related ids and metadata. A encryptedDataEncryptionKey is included if\na publicKeyHash query parameter is supplied as part of request.\n",
367
- "required": ["createdOn", "updatedOn", "person"],
368
- "properties": {
369
- "createdOn": {
370
- "description": "Time data was first stored",
371
- "type": "string",
372
- "format": "date-time"
373
- },
374
- "updatedOn": {
375
- "description": "Time data was last stored",
376
- "type": "string",
377
- "format": "date-time"
378
- },
379
- "person": {
380
- "$ref": "/person/v1/schemas/definitions/PersonMasked"
381
- }
382
- }
383
- },
384
- "PhoneType": {
385
- "$schema": "https://json-schema.org/draft/2020-12/schema",
386
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/PhoneType",
387
- "type": "string",
388
- "description": "Type of phone number.",
389
- "enum": ["HOME", "WORK", "MOBILE", "FAX", "MAIN", "OTHER"]
390
- },
391
- "PersonMasked": {
392
- "$schema": "https://json-schema.org/draft/2020-12/schema",
393
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/PersonMasked",
394
- "type": "object",
395
- "additionalProperties": false,
396
- "description": "This object includes masked person data.\n",
397
- "properties": {
398
- "company": {
399
- "type": "string",
400
- "description": "Masked company name."
401
- },
402
- "firstName": {
403
- "minLength": 1,
404
- "type": "string",
405
- "description": "Masked first name."
406
- },
407
- "middleName": {
408
- "minLength": 1,
409
- "type": "string",
410
- "description": "Masked middle name."
411
- },
412
- "lastName": {
413
- "minLength": 1,
414
- "type": "string",
415
- "description": "Masked last name."
416
- },
417
- "addresses": {
418
- "type": "array",
419
- "description": "Masked address information.",
420
- "items": {
421
- "$ref": "/person/v1/schemas/definitions/AddressMasked"
422
- }
423
- },
424
- "phones": {
425
- "type": "array",
426
- "description": "Masked phone information.",
427
- "items": {
428
- "required": ["number", "type"],
429
- "type": "object",
430
- "properties": {
431
- "type": {
432
- "$ref": "/person/v1/schemas/definitions/PhoneType"
433
- },
434
- "number": {
435
- "minLength": 1,
436
- "type": "string",
437
- "description": "Masked phone number."
438
- }
439
- }
440
- }
441
- },
442
- "email": {
443
- "minLength": 1,
444
- "type": "string",
445
- "description": "Masked email address."
446
- },
447
- "language": {
448
- "minLength": 1,
449
- "type": "string",
450
- "description": "Unmasked language preference."
451
- },
452
- "timeZone": {
453
- "minLength": 1,
454
- "type": "string",
455
- "description": "Unmasked time zone preference."
456
- }
457
- }
458
- },
459
- "EncryptedDataEncryptionKey": {
460
- "$schema": "https://json-schema.org/draft/2020-12/schema",
461
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/EncryptedDataEncryptionKey",
462
- "type": "object",
463
- "additionalProperties": false,
464
- "description": "An object that includes an encrypted data encryption key and a hashed version of the public key used to encrypt it.\n",
465
- "required": ["publicKeyHash", "encryptedDataEncryptionKey"],
466
- "properties": {
467
- "publicKeyHash": {
468
- "$ref": "/person/v1/schemas/definitions/PublicKeyHash"
469
- },
470
- "encryptedDataEncryptionKey": {
471
- "description": "Data encryption key encrypted with a public key.",
472
- "type": "string"
473
- }
474
- }
475
- },
476
- "PublicKeyHash": {
477
- "$schema": "https://json-schema.org/draft/2020-12/schema",
478
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/PublicKeyHash",
479
- "type": "string",
480
- "description": "UUID derived using @checkdigit/hash",
481
- "format": "uuid",
482
- "example": "15a85f64-5717-4562-b3fc-2c963f66afa6"
483
- },
484
- "Person": {
485
- "$schema": "https://json-schema.org/draft/2020-12/schema",
486
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/Person",
487
- "type": "object",
488
- "additionalProperties": false,
489
- "properties": {
490
- "company": {
491
- "minLength": 1,
492
- "type": "string",
493
- "description": "Encrypted company name using the AES algorithm"
494
- },
495
- "title": {
496
- "minLength": 1,
497
- "type": "string",
498
- "description": "Encrypted title using the AES algorithm"
499
- },
500
- "firstName": {
501
- "minLength": 1,
502
- "type": "string",
503
- "description": "Encrypted first name using the AES algorithm"
504
- },
505
- "middleName": {
506
- "minLength": 1,
507
- "type": "string",
508
- "description": "Encrypted middle name using the AES algorithm"
509
- },
510
- "lastName": {
511
- "minLength": 1,
512
- "type": "string",
513
- "description": "Encrypted last name using the AES algorithm"
514
- },
515
- "addresses": {
516
- "type": "array",
517
- "items": {
518
- "$ref": "/person/v1/schemas/definitions/Address"
519
- }
520
- },
521
- "phones": {
522
- "type": "array",
523
- "items": {
524
- "$ref": "/person/v1/schemas/definitions/Phone"
525
- }
526
- },
527
- "email": {
528
- "minLength": 1,
529
- "type": "string",
530
- "description": "Encrypted email address using the AES algorithm"
531
- },
532
- "language": {
533
- "minLength": 1,
534
- "type": "string",
535
- "description": "User's language preference"
536
- },
537
- "timeZone": {
538
- "minLength": 1,
539
- "type": "string",
540
- "description": "User's timezone"
541
- }
542
- }
543
- },
544
- "History": {
545
- "$schema": "https://json-schema.org/draft/2020-12/schema",
546
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/History",
547
- "type": "object",
548
- "additionalProperties": false,
549
- "required": ["updates"],
550
- "properties": {
551
- "dataEncryptionKeyId": {
552
- "type": "string",
553
- "description": "Reference to encryption keys Person Service used to encrypt the Person object.\n\nUpdates must use the same dataEncryptionKeyId.\n",
554
- "format": "uuid"
555
- },
556
- "storageKeyId": {
557
- "type": "string",
558
- "description": "DEK's non-derived identifier to be used by Check Digit services only.\n"
559
- },
560
- "encryptedDataEncryptionKey": {
561
- "description": "Encrypted DEK matching the publicKeyId sent in the request. Used to decrypt all the items in the list.\n",
562
- "type": "string"
563
- },
564
- "updates": {
565
- "type": "array",
566
- "description": "A list of PersonRecord objects. Each object represents a change to data in the Person object.\nObjects are sorted by the lastModified date with the most recent object first.\n",
567
- "items": {
568
- "$ref": "/person/v1/schemas/definitions/PersonRecord"
569
- }
570
- }
571
- }
572
- },
573
- "Address": {
574
- "$schema": "https://json-schema.org/draft/2020-12/schema",
575
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/Address",
576
- "required": ["country", "streetLines", "type"],
577
- "type": "object",
578
- "properties": {
579
- "type": {
580
- "type": "string",
581
- "description": "Type of address",
582
- "enum": ["BILLING", "SHIPPING", "STATEMENTS", "OTHER"]
583
- },
584
- "streetLines": {
585
- "maxItems": 4,
586
- "minItems": 1,
587
- "type": "array",
588
- "description": "Encrypted street lines using the AES algorithm",
589
- "items": {
590
- "minLength": 1,
591
- "type": "string",
592
- "description": "Street line"
593
- }
594
- },
595
- "city": {
596
- "minLength": 1,
597
- "type": "string",
598
- "description": "City"
599
- },
600
- "region": {
601
- "minLength": 1,
602
- "type": "string",
603
- "description": "Region, State or Province"
604
- },
605
- "postalCode": {
606
- "minLength": 1,
607
- "type": "string",
608
- "description": "AES encrypted postal code. This value should contain only alphanumeric characters.\nIncluding non-alphanumeric characters will result in a 400 when sent as a request.\n"
609
- },
610
- "reportablePostalCode": {
611
- "type": "string",
612
- "description": "Postal code for reporting purposes."
613
- },
614
- "country": {
615
- "$ref": "/person/v1/schemas/definitions/Country"
616
- }
617
- }
618
- },
619
- "AddressMasked": {
620
- "$schema": "https://json-schema.org/draft/2020-12/schema",
621
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/AddressMasked",
622
- "type": "object",
623
- "required": ["country", "streetLines", "type"],
624
- "properties": {
625
- "type": {
626
- "type": "string",
627
- "description": "Type of address.",
628
- "enum": ["BILLING", "SHIPPING", "STATEMENTS", "OTHER"]
629
- },
630
- "streetLines": {
631
- "maxItems": 4,
632
- "minItems": 1,
633
- "type": "array",
634
- "description": "Street lines with all non-numeric characters masked.",
635
- "items": {
636
- "minLength": 1,
637
- "type": "string",
638
- "description": "Masked street line."
639
- }
640
- },
641
- "city": {
642
- "minLength": 1,
643
- "type": "string",
644
- "description": "Unmasked city."
645
- },
646
- "region": {
647
- "minLength": 1,
648
- "type": "string",
649
- "description": "Unmasked region, state or province."
650
- },
651
- "country": {
652
- "$ref": "/person/v1/schemas/definitions/Country"
653
- },
654
- "postalCodeLongHash": {
655
- "minLength": 1,
656
- "type": "string",
657
- "description": "Long-form postal code hashed using @checkdigit/hash."
658
- },
659
- "postalCodeShortHash": {
660
- "minLength": 1,
661
- "type": "string",
662
- "description": "Short-form postal code hashed using @checkdigit/hash."
663
- }
664
- }
665
- },
666
- "Phone": {
667
- "$schema": "https://json-schema.org/draft/2020-12/schema",
668
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/Phone",
669
- "required": ["number", "type"],
670
- "type": "object",
671
- "properties": {
672
- "type": {
673
- "$ref": "/person/v1/schemas/definitions/PhoneType"
674
- },
675
- "number": {
676
- "minLength": 1,
677
- "type": "string",
678
- "description": "Encrypted phone number using the AES algorithm"
679
- },
680
- "extension": {
681
- "minLength": 1,
682
- "type": "string",
683
- "description": "Encrypted phone number extension using the AES algorithm"
684
- }
685
- }
686
- },
687
- "Error": {
688
- "$schema": "https://json-schema.org/draft/2020-12/schema",
689
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/Error",
690
- "type": "object",
691
- "properties": {
692
- "message": {
693
- "minLength": 1,
694
- "type": "string"
695
- },
696
- "code": {
697
- "type": "string"
698
- }
699
- },
700
- "description": "Error message"
701
- },
702
- "PublicKey": {
703
- "$schema": "https://json-schema.org/draft/2020-12/schema",
704
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/PublicKey",
705
- "description": "RSA generated public key in PEM format",
706
- "type": "string",
707
- "example": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwm2sxmRdTF7ZIBA6+ngO\n8jOTCHmID0PpQB1q85+hrcLSfB1rWY9bzNNLabBo/ajDnA4Pcadq/x6gpg70qZcR\n9Wxm6TttKzBPZsxasGXgSTDqEi2KcYZgq1mL4qyxUvyIms7/llGy+W9b5huZaVcO\nxdT1tw/zctbOhb6S2t5vH+zkta/2ncUXjG7i8XdLsJ1qe4K1kYbA4KVkOMmAtw7O\n4STk0TZDD0YARdmrciorJjbIVt0Xj1CrYQ5QbDGrlfeXgrcZwX5f9wT2MnKlY5oZ\n5Wtb57oGtLkVf8g6vN/2jGtAmOmHK2hHwNd/+zUet5G/S5uwEli4RgMPP4pUoKgd\nGQIDAQAB\n-----END PUBLIC KEY-----\n"
708
- },
709
- "PublicKeyResponse": {
710
- "$schema": "https://json-schema.org/draft/2020-12/schema",
711
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/PublicKeyResponse",
712
- "description": "This object contains the rsa generated public key for the Person Service. This public key must be used\nwhen transmitting encrypted data to Person Service APIs.\n",
713
- "type": "object",
714
- "required": ["publicKey"],
715
- "properties": {
716
- "publicKey": {
717
- "$ref": "/person/v1/schemas/definitions/PublicKey"
718
- }
719
- }
720
- },
721
- "Country": {
722
- "$schema": "https://json-schema.org/draft/2020-12/schema",
723
- "$id": "https://eslint-plugin.checkdigit/person/v1/schemas/definitions/Country",
724
- "type": "string",
725
- "description": "Country ISO 3166-1 alpha-2 codes",
726
- "enum": [
727
- "AD",
728
- "AE",
729
- "AF",
730
- "AG",
731
- "AI",
732
- "AL",
733
- "AM",
734
- "AO",
735
- "AQ",
736
- "AR",
737
- "AS",
738
- "AT",
739
- "AU",
740
- "AW",
741
- "AX",
742
- "AZ",
743
- "BA",
744
- "BB",
745
- "BD",
746
- "BE",
747
- "BF",
748
- "BG",
749
- "BH",
750
- "BI",
751
- "BJ",
752
- "BL",
753
- "BM",
754
- "BN",
755
- "BO",
756
- "BQ",
757
- "BR",
758
- "BS",
759
- "BT",
760
- "BV",
761
- "BW",
762
- "BY",
763
- "BZ",
764
- "CA",
765
- "CC",
766
- "CD",
767
- "CF",
768
- "CG",
769
- "CH",
770
- "CI",
771
- "CK",
772
- "CL",
773
- "CM",
774
- "CN",
775
- "CO",
776
- "CR",
777
- "CU",
778
- "CV",
779
- "CW",
780
- "CX",
781
- "CY",
782
- "CZ",
783
- "DE",
784
- "DJ",
785
- "DK",
786
- "DM",
787
- "DO",
788
- "DZ",
789
- "EC",
790
- "EE",
791
- "EG",
792
- "EH",
793
- "ER",
794
- "ES",
795
- "ET",
796
- "FI",
797
- "FJ",
798
- "FK",
799
- "FM",
800
- "FO",
801
- "FR",
802
- "GA",
803
- "GB",
804
- "GD",
805
- "GE",
806
- "GF",
807
- "GG",
808
- "GH",
809
- "GI",
810
- "GL",
811
- "GM",
812
- "GN",
813
- "GP",
814
- "GQ",
815
- "GR",
816
- "GS",
817
- "GT",
818
- "GU",
819
- "GW",
820
- "GY",
821
- "HK",
822
- "HM",
823
- "HN",
824
- "HR",
825
- "HT",
826
- "HU",
827
- "ID",
828
- "IE",
829
- "IL",
830
- "IM",
831
- "IN",
832
- "IO",
833
- "IQ",
834
- "IR",
835
- "IS",
836
- "IT",
837
- "JE",
838
- "JM",
839
- "JO",
840
- "JP",
841
- "KE",
842
- "KG",
843
- "KH",
844
- "KI",
845
- "KM",
846
- "KN",
847
- "KP",
848
- "KR",
849
- "KW",
850
- "KY",
851
- "KZ",
852
- "LA",
853
- "LB",
854
- "LC",
855
- "LI",
856
- "LK",
857
- "LR",
858
- "LS",
859
- "LT",
860
- "LU",
861
- "LV",
862
- "LY",
863
- "MA",
864
- "MC",
865
- "MD",
866
- "ME",
867
- "MF",
868
- "MG",
869
- "MH",
870
- "MK",
871
- "ML",
872
- "MM",
873
- "MN",
874
- "MO",
875
- "MP",
876
- "MQ",
877
- "MR",
878
- "MS",
879
- "MT",
880
- "MU",
881
- "MV",
882
- "MW",
883
- "MX",
884
- "MY",
885
- "MZ",
886
- "NA",
887
- "NC",
888
- "NE",
889
- "NF",
890
- "NG",
891
- "NI",
892
- "NL",
893
- "NO",
894
- "NP",
895
- "NR",
896
- "NU",
897
- "NZ",
898
- "OM",
899
- "PA",
900
- "PE",
901
- "PF",
902
- "PG",
903
- "PH",
904
- "PK",
905
- "PL",
906
- "PM",
907
- "PN",
908
- "PR",
909
- "PS",
910
- "PT",
911
- "PW",
912
- "PY",
913
- "QA",
914
- "RE",
915
- "RO",
916
- "RS",
917
- "RU",
918
- "RW",
919
- "SA",
920
- "SB",
921
- "SC",
922
- "SD",
923
- "SE",
924
- "SG",
925
- "SH",
926
- "SI",
927
- "SJ",
928
- "SK",
929
- "SL",
930
- "SM",
931
- "SN",
932
- "SO",
933
- "SR",
934
- "SS",
935
- "ST",
936
- "SV",
937
- "SX",
938
- "SY",
939
- "SZ",
940
- "TC",
941
- "TD",
942
- "TF",
943
- "TG",
944
- "TH",
945
- "TJ",
946
- "TK",
947
- "TL",
948
- "TM",
949
- "TN",
950
- "TO",
951
- "TR",
952
- "TT",
953
- "TV",
954
- "TW",
955
- "TZ",
956
- "UA",
957
- "UG",
958
- "UM",
959
- "US",
960
- "UY",
961
- "UZ",
962
- "VA",
963
- "VC",
964
- "VE",
965
- "VG",
966
- "VI",
967
- "VN",
968
- "VU",
969
- "WF",
970
- "WS",
971
- "YE",
972
- "YT",
973
- "ZA",
974
- "ZM",
975
- "ZW"
976
- ]
977
- }
978
- }
979
- }