@eudiplo/cli 7.1.1 → 7.2.0-main.20c3901

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 (268) hide show
  1. package/README.md +259 -15
  2. package/dist/commands/commands/index.d.ts +4 -0
  3. package/dist/commands/commands/index.d.ts.map +1 -0
  4. package/dist/commands/commands/index.js +13 -0
  5. package/dist/commands/commands/index.js.map +1 -0
  6. package/dist/commands/commands/render.d.ts +4 -0
  7. package/dist/commands/commands/render.d.ts.map +1 -0
  8. package/dist/commands/commands/render.js +52 -0
  9. package/dist/commands/commands/render.js.map +1 -0
  10. package/dist/commands/completion/action.d.ts +6 -0
  11. package/dist/commands/completion/action.d.ts.map +1 -0
  12. package/dist/commands/completion/action.js +133 -0
  13. package/dist/commands/completion/action.js.map +1 -0
  14. package/dist/commands/completion/index.d.ts +6 -0
  15. package/dist/commands/completion/index.d.ts.map +1 -0
  16. package/dist/commands/completion/index.js +23 -0
  17. package/dist/commands/completion/index.js.map +1 -0
  18. package/dist/commands/config/action.d.ts +4 -0
  19. package/dist/commands/config/action.d.ts.map +1 -0
  20. package/dist/commands/config/action.js +33 -0
  21. package/dist/commands/config/action.js.map +1 -0
  22. package/dist/commands/config/editor/action.d.ts +3 -0
  23. package/dist/commands/config/editor/action.d.ts.map +1 -0
  24. package/dist/commands/config/editor/action.js +112 -0
  25. package/dist/commands/config/editor/action.js.map +1 -0
  26. package/dist/commands/config/editor/index.d.ts +5 -0
  27. package/dist/commands/config/editor/index.d.ts.map +1 -0
  28. package/dist/commands/config/editor/index.js +20 -0
  29. package/dist/commands/config/editor/index.js.map +1 -0
  30. package/dist/commands/config/index.d.ts +5 -0
  31. package/dist/commands/config/index.d.ts.map +1 -0
  32. package/dist/commands/config/index.js +37 -0
  33. package/dist/commands/config/index.js.map +1 -0
  34. package/dist/commands/config/portability/action.d.ts +5 -0
  35. package/dist/commands/config/portability/action.d.ts.map +1 -0
  36. package/dist/commands/config/portability/action.js +164 -0
  37. package/dist/commands/config/portability/action.js.map +1 -0
  38. package/dist/commands/config/portability/index.d.ts +5 -0
  39. package/dist/commands/config/portability/index.d.ts.map +1 -0
  40. package/dist/commands/config/portability/index.js +44 -0
  41. package/dist/commands/config/portability/index.js.map +1 -0
  42. package/dist/commands/config/portability/migrations.d.ts +24 -0
  43. package/dist/commands/config/portability/migrations.d.ts.map +1 -0
  44. package/dist/commands/config/portability/migrations.js +95 -0
  45. package/dist/commands/config/portability/migrations.js.map +1 -0
  46. package/dist/commands/config/portability/migrations.spec.d.ts +2 -0
  47. package/dist/commands/config/portability/migrations.spec.d.ts.map +1 -0
  48. package/dist/commands/config/portability/migrations.spec.js +32 -0
  49. package/dist/commands/config/portability/migrations.spec.js.map +1 -0
  50. package/dist/commands/config/tenant/action.d.ts +3 -0
  51. package/dist/commands/config/tenant/action.d.ts.map +1 -0
  52. package/dist/commands/config/tenant/action.js +301 -0
  53. package/dist/commands/config/tenant/action.js.map +1 -0
  54. package/dist/commands/config/tenant/index.d.ts +5 -0
  55. package/dist/commands/config/tenant/index.d.ts.map +1 -0
  56. package/dist/commands/config/tenant/index.js +61 -0
  57. package/dist/commands/config/tenant/index.js.map +1 -0
  58. package/dist/commands/config/validate/action.d.ts +4 -0
  59. package/dist/commands/config/validate/action.d.ts.map +1 -0
  60. package/dist/commands/config/validate/action.js +47 -0
  61. package/dist/commands/config/validate/action.js.map +1 -0
  62. package/dist/commands/config/validate/index.d.ts +5 -0
  63. package/dist/commands/config/validate/index.d.ts.map +1 -0
  64. package/dist/commands/config/validate/index.js +18 -0
  65. package/dist/commands/config/validate/index.js.map +1 -0
  66. package/dist/commands/config/validate/registry.d.ts +6 -0
  67. package/dist/commands/config/validate/registry.d.ts.map +1 -0
  68. package/dist/{config-validate → commands/config/validate}/registry.js +2 -2
  69. package/dist/commands/config/validate/registry.js.map +1 -0
  70. package/dist/{config-validate → commands/config/validate}/registry.json +11 -22
  71. package/dist/commands/config/validate/report.d.ts.map +1 -0
  72. package/dist/{config-validate → commands/config/validate}/report.js +6 -1
  73. package/dist/commands/config/validate/report.js.map +1 -0
  74. package/dist/commands/config/validate/schemas.d.ts +3 -0
  75. package/dist/commands/config/validate/schemas.d.ts.map +1 -0
  76. package/dist/commands/config/validate/schemas.js +35 -0
  77. package/dist/commands/config/validate/schemas.js.map +1 -0
  78. package/dist/{config-validate → commands/config/validate}/types.d.ts +1 -1
  79. package/dist/commands/config/validate/types.d.ts.map +1 -0
  80. package/dist/commands/config/validate/types.js.map +1 -0
  81. package/dist/commands/config/validate/validator.d.ts.map +1 -0
  82. package/dist/{config-validate → commands/config/validate}/validator.js +17 -9
  83. package/dist/commands/config/validate/validator.js.map +1 -0
  84. package/dist/commands/demo/action.d.ts +3 -0
  85. package/dist/commands/demo/action.d.ts.map +1 -0
  86. package/dist/commands/demo/action.js +73 -0
  87. package/dist/commands/demo/action.js.map +1 -0
  88. package/dist/commands/demo/index.d.ts +5 -0
  89. package/dist/commands/demo/index.d.ts.map +1 -0
  90. package/dist/commands/demo/index.js +19 -0
  91. package/dist/commands/demo/index.js.map +1 -0
  92. package/dist/commands/deployment/action.d.ts +3 -0
  93. package/dist/commands/deployment/action.d.ts.map +1 -0
  94. package/dist/commands/deployment/action.js +23 -0
  95. package/dist/commands/deployment/action.js.map +1 -0
  96. package/dist/commands/deployment/index.d.ts +5 -0
  97. package/dist/commands/deployment/index.d.ts.map +1 -0
  98. package/dist/commands/deployment/index.js +19 -0
  99. package/dist/commands/deployment/index.js.map +1 -0
  100. package/dist/commands/doctor/action.d.ts +3 -0
  101. package/dist/commands/doctor/action.d.ts.map +1 -0
  102. package/dist/commands/doctor/action.js +12 -0
  103. package/dist/commands/doctor/action.js.map +1 -0
  104. package/dist/commands/doctor/index.d.ts +5 -0
  105. package/dist/commands/doctor/index.d.ts.map +1 -0
  106. package/dist/commands/doctor/index.js +13 -0
  107. package/dist/commands/doctor/index.js.map +1 -0
  108. package/dist/commands/init/action.d.ts +3 -0
  109. package/dist/commands/init/action.d.ts.map +1 -0
  110. package/dist/commands/init/action.js +255 -0
  111. package/dist/commands/init/action.js.map +1 -0
  112. package/dist/commands/init/index.d.ts +5 -0
  113. package/dist/commands/init/index.d.ts.map +1 -0
  114. package/dist/commands/init/index.js +35 -0
  115. package/dist/commands/init/index.js.map +1 -0
  116. package/dist/commands/instance/action.d.ts +7 -0
  117. package/dist/commands/instance/action.d.ts.map +1 -0
  118. package/dist/commands/instance/action.js +85 -0
  119. package/dist/commands/instance/action.js.map +1 -0
  120. package/dist/commands/instance/index.d.ts +5 -0
  121. package/dist/commands/instance/index.d.ts.map +1 -0
  122. package/dist/commands/instance/index.js +53 -0
  123. package/dist/commands/instance/index.js.map +1 -0
  124. package/dist/commands/shared.d.ts +14 -0
  125. package/dist/commands/shared.d.ts.map +1 -0
  126. package/dist/commands/shared.js +39 -0
  127. package/dist/commands/shared.js.map +1 -0
  128. package/dist/commands/status/action.d.ts +3 -0
  129. package/dist/commands/status/action.d.ts.map +1 -0
  130. package/dist/commands/status/action.js +13 -0
  131. package/dist/commands/status/action.js.map +1 -0
  132. package/dist/commands/status/index.d.ts +5 -0
  133. package/dist/commands/status/index.d.ts.map +1 -0
  134. package/dist/commands/status/index.js +13 -0
  135. package/dist/commands/status/index.js.map +1 -0
  136. package/dist/commands/version/action.d.ts +4 -0
  137. package/dist/commands/version/action.d.ts.map +1 -0
  138. package/dist/commands/version/action.js +70 -0
  139. package/dist/commands/version/action.js.map +1 -0
  140. package/dist/commands/version/index.d.ts +6 -0
  141. package/dist/commands/version/index.d.ts.map +1 -0
  142. package/dist/commands/version/index.js +12 -0
  143. package/dist/commands/version/index.js.map +1 -0
  144. package/dist/index.js +0 -0
  145. package/dist/options.d.ts +2 -0
  146. package/dist/options.d.ts.map +1 -0
  147. package/dist/options.js +5 -0
  148. package/dist/options.js.map +1 -0
  149. package/dist/runtime.d.ts +2 -0
  150. package/dist/runtime.d.ts.map +1 -1
  151. package/dist/runtime.js +61 -465
  152. package/dist/runtime.js.map +1 -1
  153. package/dist/sea-assets.d.ts +4 -2
  154. package/dist/sea-assets.d.ts.map +1 -1
  155. package/dist/sea-assets.js +6 -3
  156. package/dist/sea-assets.js.map +1 -1
  157. package/dist/{config.d.ts → services/cli-config.d.ts} +4 -2
  158. package/dist/services/cli-config.d.ts.map +1 -0
  159. package/dist/{config.js → services/cli-config.js} +30 -4
  160. package/dist/services/cli-config.js.map +1 -0
  161. package/dist/{compose-template.d.ts → services/compose-project.d.ts} +14 -4
  162. package/dist/services/compose-project.d.ts.map +1 -0
  163. package/dist/services/compose-project.js +189 -0
  164. package/dist/services/compose-project.js.map +1 -0
  165. package/dist/{drivers.d.ts → services/deployment-drivers.d.ts} +16 -3
  166. package/dist/services/deployment-drivers.d.ts.map +1 -0
  167. package/dist/services/deployment-drivers.js +288 -0
  168. package/dist/services/deployment-drivers.js.map +1 -0
  169. package/dist/services/deployment-target.d.ts +3 -0
  170. package/dist/services/deployment-target.d.ts.map +1 -0
  171. package/dist/services/deployment-target.js +7 -0
  172. package/dist/services/deployment-target.js.map +1 -0
  173. package/dist/{doctor.d.ts → services/diagnostics.d.ts} +2 -2
  174. package/dist/services/diagnostics.d.ts.map +1 -0
  175. package/dist/{doctor.js → services/diagnostics.js} +4 -2
  176. package/dist/services/diagnostics.js.map +1 -0
  177. package/dist/services/instance-selection.d.ts +3 -0
  178. package/dist/services/instance-selection.d.ts.map +1 -0
  179. package/dist/services/instance-selection.js +13 -0
  180. package/dist/services/instance-selection.js.map +1 -0
  181. package/dist/services/project-directory.d.ts +3 -0
  182. package/dist/services/project-directory.d.ts.map +1 -0
  183. package/dist/services/project-directory.js +14 -0
  184. package/dist/services/project-directory.js.map +1 -0
  185. package/dist/types.d.ts +4 -0
  186. package/dist/types.d.ts.map +1 -1
  187. package/package.json +7 -4
  188. package/templates/demo-config/issuance/issuance.json +20 -12
  189. package/templates/demo-config/key-chains/access.json +13 -2
  190. package/templates/demo-config/key-chains/attestation.json +15 -4
  191. package/templates/demo-config/key-chains/status-list.json +15 -4
  192. package/templates/demo-config/key-chains/trust-list.json +13 -2
  193. package/templates/demo-config/presentation/age-over-18.json +46 -53
  194. package/templates/demo-config/presentation/pid.json +44 -0
  195. package/templates/demo-config.manifest.json +1 -0
  196. package/templates/docker-compose.yml +5 -4
  197. package/templates/schemas/AttributeProviderAuth.schema.json +60 -0
  198. package/templates/schemas/AttributeProviderConfigFile.schema.json +37 -0
  199. package/templates/schemas/CertImportDto.schema.json +35 -0
  200. package/templates/schemas/ClientConfigFile.schema.json +37 -0
  201. package/templates/schemas/ConfigDocumentMetadata.schema.json +25 -0
  202. package/templates/schemas/CreateClientDto.schema.json +1 -0
  203. package/templates/schemas/CreateStatusListDto.schema.json +46 -0
  204. package/templates/schemas/CreateTenantDto.schema.json +116 -0
  205. package/templates/schemas/CredentialConfigCreate.schema.json +55 -0
  206. package/templates/schemas/CredentialConfigFile.schema.json +37 -0
  207. package/templates/schemas/DCQL.schema.json +401 -0
  208. package/templates/schemas/EmbeddedDisclosurePolicy.schema.json +106 -0
  209. package/templates/schemas/ImportTenantDto.schema.json +69 -0
  210. package/templates/schemas/IssuanceConfig.schema.json +26 -6
  211. package/templates/schemas/IssuanceConfigFile.schema.json +32 -0
  212. package/templates/schemas/KeyChainConfigFile.schema.json +101 -0
  213. package/templates/schemas/KeyChainCreateDto.schema.json +66 -0
  214. package/templates/schemas/KeyChainUpdateDto.schema.json +40 -0
  215. package/templates/schemas/KmsConfigFile.schema.json +37 -0
  216. package/templates/schemas/PresentationConfigFile.schema.json +32 -0
  217. package/templates/schemas/RegistrarConfigFile.schema.json +37 -0
  218. package/templates/schemas/RotationPolicyCreateDto.schema.json +28 -0
  219. package/templates/schemas/RotationPolicyUpdateDto.schema.json +25 -0
  220. package/templates/schemas/SessionStorageConfig.schema.json +24 -0
  221. package/templates/schemas/StatusListConfig.schema.json +51 -0
  222. package/templates/schemas/StatusListConfigFile.schema.json +37 -0
  223. package/templates/schemas/TransactionData.schema.json +24 -0
  224. package/templates/schemas/TrustListConfigFile.schema.json +37 -0
  225. package/templates/schemas/UpdateAttributeProviderDto.schema.json +93 -0
  226. package/templates/schemas/UpdateClientDto.schema.json +62 -0
  227. package/templates/schemas/UpdateStatusListConfigDto.schema.json +85 -0
  228. package/templates/schemas/UpdateStatusListDto.schema.json +33 -0
  229. package/templates/schemas/UpdateTenantDto.schema.json +96 -0
  230. package/templates/schemas/UpdateWebhookEndpointDto.schema.json +93 -0
  231. package/templates/schemas/VCT.schema.json +37 -0
  232. package/templates/schemas/WebhookConfig.schema.json +80 -0
  233. package/templates/schemas/WebhookEndpointConfigFile.schema.json +37 -0
  234. package/templates/schemas.manifest.json +34 -1
  235. package/dist/args.d.ts +0 -4
  236. package/dist/args.d.ts.map +0 -1
  237. package/dist/args.js +0 -46
  238. package/dist/args.js.map +0 -1
  239. package/dist/compose-template.d.ts.map +0 -1
  240. package/dist/compose-template.js +0 -105
  241. package/dist/compose-template.js.map +0 -1
  242. package/dist/config-validate/index.d.ts +0 -4
  243. package/dist/config-validate/index.d.ts.map +0 -1
  244. package/dist/config-validate/index.js +0 -4
  245. package/dist/config-validate/index.js.map +0 -1
  246. package/dist/config-validate/registry.d.ts +0 -5
  247. package/dist/config-validate/registry.d.ts.map +0 -1
  248. package/dist/config-validate/registry.js.map +0 -1
  249. package/dist/config-validate/report.d.ts.map +0 -1
  250. package/dist/config-validate/report.js.map +0 -1
  251. package/dist/config-validate/schemas.d.ts +0 -2
  252. package/dist/config-validate/schemas.d.ts.map +0 -1
  253. package/dist/config-validate/schemas.js +0 -24
  254. package/dist/config-validate/schemas.js.map +0 -1
  255. package/dist/config-validate/types.d.ts.map +0 -1
  256. package/dist/config-validate/types.js.map +0 -1
  257. package/dist/config-validate/validator.d.ts.map +0 -1
  258. package/dist/config-validate/validator.js.map +0 -1
  259. package/dist/config.d.ts.map +0 -1
  260. package/dist/config.js.map +0 -1
  261. package/dist/doctor.d.ts.map +0 -1
  262. package/dist/doctor.js.map +0 -1
  263. package/dist/drivers.d.ts.map +0 -1
  264. package/dist/drivers.js +0 -170
  265. package/dist/drivers.js.map +0 -1
  266. /package/dist/{config-validate → commands/config/validate}/report.d.ts +0 -0
  267. /package/dist/{config-validate → commands/config/validate}/types.js +0 -0
  268. /package/dist/{config-validate → commands/config/validate}/validator.d.ts +0 -0
@@ -0,0 +1,101 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "./KeyChainConfigFile.schema.json",
4
+ "title": "KeyChainConfigFile",
5
+ "description": "A key-chain configuration file in legacy payload or versioned-envelope form.",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "./KeyChainImportDto.schema.json"
9
+ },
10
+ {
11
+ "type": "object",
12
+ "properties": {
13
+ "apiVersion": {
14
+ "type": "string",
15
+ "const": "eudiplo.io/key-chain/v2"
16
+ },
17
+ "kind": {
18
+ "type": "string",
19
+ "const": "KeyChain"
20
+ },
21
+ "metadata": {
22
+ "$ref": "./ConfigDocumentMetadata.schema.json"
23
+ },
24
+ "spec": {
25
+ "$ref": "#/$defs/portableSpec"
26
+ }
27
+ },
28
+ "required": ["apiVersion", "kind", "metadata", "spec"],
29
+ "additionalProperties": false
30
+ }
31
+ ],
32
+ "$defs": {
33
+ "ecPrivateJwk": {
34
+ "type": "object",
35
+ "properties": {
36
+ "kty": { "type": "string" },
37
+ "x": { "type": "string" },
38
+ "y": { "type": "string" },
39
+ "crv": { "type": "string" },
40
+ "d": { "type": "string" },
41
+ "alg": { "type": "string" },
42
+ "kid": { "type": "string" }
43
+ },
44
+ "required": ["kty", "x", "y", "crv", "d"],
45
+ "additionalProperties": false
46
+ },
47
+ "portableSpec": {
48
+ "type": "object",
49
+ "properties": {
50
+ "id": {
51
+ "type": "string",
52
+ "description": "Optional key-chain id duplicated from envelope metadata."
53
+ },
54
+ "description": { "type": "string" },
55
+ "usageType": {
56
+ "type": "string",
57
+ "enum": ["access", "attestation", "trustList", "statusList", "encrypt"]
58
+ },
59
+ "keySource": {
60
+ "type": "object",
61
+ "properties": {
62
+ "type": {
63
+ "type": "string",
64
+ "const": "private-jwk"
65
+ },
66
+ "jwk": {
67
+ "$ref": "#/$defs/ecPrivateJwk"
68
+ }
69
+ },
70
+ "required": ["type", "jwk"],
71
+ "additionalProperties": false
72
+ },
73
+ "crt": {
74
+ "type": "array",
75
+ "items": { "type": "string" }
76
+ },
77
+ "kmsProvider": { "type": "string" },
78
+ "rotationPolicy": {
79
+ "type": "object",
80
+ "properties": {
81
+ "enabled": { "type": "boolean" },
82
+ "intervalDays": {
83
+ "type": "number",
84
+ "minimum": 1,
85
+ "maximum": 3650
86
+ },
87
+ "certValidityDays": {
88
+ "type": "number",
89
+ "minimum": 1,
90
+ "maximum": 3650
91
+ }
92
+ },
93
+ "required": ["enabled"],
94
+ "additionalProperties": false
95
+ }
96
+ },
97
+ "required": ["usageType", "keySource"],
98
+ "additionalProperties": false
99
+ }
100
+ }
101
+ }
@@ -0,0 +1,66 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "usageType": {
6
+ "type": "string",
7
+ "enum": [
8
+ "access",
9
+ "attestation",
10
+ "trustList",
11
+ "statusList",
12
+ "encrypt"
13
+ ],
14
+ "description": "Key usage category for the key chain."
15
+ },
16
+ "type": {
17
+ "type": "string",
18
+ "enum": [
19
+ "standalone",
20
+ "internalChain"
21
+ ],
22
+ "description": "Key chain mode."
23
+ },
24
+ "description": {
25
+ "description": "Optional key chain description.",
26
+ "type": "string"
27
+ },
28
+ "kmsProvider": {
29
+ "description": "Optional KMS provider id for key storage operations.",
30
+ "type": "string"
31
+ },
32
+ "rotationPolicy": {
33
+ "description": "Optional rotation policy.",
34
+ "type": "object",
35
+ "properties": {
36
+ "enabled": {
37
+ "type": "boolean",
38
+ "description": "Enable or disable automatic key rotation."
39
+ },
40
+ "intervalDays": {
41
+ "description": "Rotation interval in days.",
42
+ "type": "number",
43
+ "minimum": 1,
44
+ "maximum": 3650
45
+ },
46
+ "certValidityDays": {
47
+ "description": "Certificate validity period in days for generated leaf certificates.",
48
+ "type": "number",
49
+ "minimum": 1,
50
+ "maximum": 3650
51
+ }
52
+ },
53
+ "required": [
54
+ "enabled"
55
+ ],
56
+ "additionalProperties": false
57
+ }
58
+ },
59
+ "required": [
60
+ "usageType",
61
+ "type"
62
+ ],
63
+ "additionalProperties": false,
64
+ "$id": "./KeyChainCreateDto.schema.json",
65
+ "title": "KeyChainCreateDto"
66
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "description": {
6
+ "description": "Optional replacement description.",
7
+ "type": "string"
8
+ },
9
+ "rotationPolicy": {
10
+ "description": "Optional rotation policy updates.",
11
+ "type": "object",
12
+ "properties": {
13
+ "enabled": {
14
+ "description": "Optional replacement for rotation enabled flag.",
15
+ "type": "boolean"
16
+ },
17
+ "intervalDays": {
18
+ "description": "Optional replacement for rotation interval in days.",
19
+ "type": "number",
20
+ "minimum": 1,
21
+ "maximum": 3650
22
+ },
23
+ "certValidityDays": {
24
+ "description": "Optional replacement for certificate validity period in days.",
25
+ "type": "number",
26
+ "minimum": 1,
27
+ "maximum": 3650
28
+ }
29
+ },
30
+ "additionalProperties": false
31
+ },
32
+ "activeCertificate": {
33
+ "description": "Optional active certificate override.",
34
+ "type": "string"
35
+ }
36
+ },
37
+ "additionalProperties": false,
38
+ "$id": "./KeyChainUpdateDto.schema.json",
39
+ "title": "KeyChainUpdateDto"
40
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "./KmsConfigFile.schema.json",
4
+ "title": "KmsConfigFile",
5
+ "description": "A tenant KMS configuration file in legacy payload or versioned-envelope form.",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "./KmsConfigDto.schema.json"
9
+ },
10
+ {
11
+ "type": "object",
12
+ "properties": {
13
+ "apiVersion": {
14
+ "type": "string",
15
+ "const": "eudiplo.io/kms-config/v1"
16
+ },
17
+ "kind": {
18
+ "type": "string",
19
+ "const": "KmsConfig"
20
+ },
21
+ "metadata": {
22
+ "$ref": "./ConfigDocumentMetadata.schema.json"
23
+ },
24
+ "spec": {
25
+ "$ref": "./KmsConfigDto.schema.json"
26
+ }
27
+ },
28
+ "required": [
29
+ "apiVersion",
30
+ "kind",
31
+ "metadata",
32
+ "spec"
33
+ ],
34
+ "additionalProperties": false
35
+ }
36
+ ]
37
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "./PresentationConfigFile.schema.json",
4
+ "title": "PresentationConfigFile",
5
+ "description": "A presentation configuration file in legacy payload or versioned-envelope form.",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "./PresentationConfigCreateDto.schema.json"
9
+ },
10
+ {
11
+ "type": "object",
12
+ "properties": {
13
+ "apiVersion": {
14
+ "type": "string",
15
+ "const": "eudiplo.io/presentation-config/v2"
16
+ },
17
+ "kind": {
18
+ "type": "string",
19
+ "const": "PresentationConfig"
20
+ },
21
+ "metadata": {
22
+ "$ref": "./ConfigDocumentMetadata.schema.json"
23
+ },
24
+ "spec": {
25
+ "$ref": "./PresentationConfigCreateDto.schema.json"
26
+ }
27
+ },
28
+ "required": ["apiVersion", "kind", "metadata", "spec"],
29
+ "additionalProperties": false
30
+ }
31
+ ]
32
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "./RegistrarConfigFile.schema.json",
4
+ "title": "RegistrarConfigFile",
5
+ "description": "A registrar configuration file in legacy payload or versioned-envelope form.",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "./CreateRegistrarConfigDto.schema.json"
9
+ },
10
+ {
11
+ "type": "object",
12
+ "properties": {
13
+ "apiVersion": {
14
+ "type": "string",
15
+ "const": "eudiplo.io/registrar-config/v1"
16
+ },
17
+ "kind": {
18
+ "type": "string",
19
+ "const": "RegistrarConfig"
20
+ },
21
+ "metadata": {
22
+ "$ref": "./ConfigDocumentMetadata.schema.json"
23
+ },
24
+ "spec": {
25
+ "$ref": "./CreateRegistrarConfigDto.schema.json"
26
+ }
27
+ },
28
+ "required": [
29
+ "apiVersion",
30
+ "kind",
31
+ "metadata",
32
+ "spec"
33
+ ],
34
+ "additionalProperties": false
35
+ }
36
+ ]
37
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "enabled": {
6
+ "type": "boolean",
7
+ "description": "Enable or disable automatic key rotation."
8
+ },
9
+ "intervalDays": {
10
+ "description": "Rotation interval in days.",
11
+ "type": "number",
12
+ "minimum": 1,
13
+ "maximum": 3650
14
+ },
15
+ "certValidityDays": {
16
+ "description": "Certificate validity period in days for generated leaf certificates.",
17
+ "type": "number",
18
+ "minimum": 1,
19
+ "maximum": 3650
20
+ }
21
+ },
22
+ "required": [
23
+ "enabled"
24
+ ],
25
+ "additionalProperties": false,
26
+ "$id": "./RotationPolicyCreateDto.schema.json",
27
+ "title": "RotationPolicyCreateDto"
28
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "enabled": {
6
+ "description": "Optional replacement for rotation enabled flag.",
7
+ "type": "boolean"
8
+ },
9
+ "intervalDays": {
10
+ "description": "Optional replacement for rotation interval in days.",
11
+ "type": "number",
12
+ "minimum": 1,
13
+ "maximum": 3650
14
+ },
15
+ "certValidityDays": {
16
+ "description": "Optional replacement for certificate validity period in days.",
17
+ "type": "number",
18
+ "minimum": 1,
19
+ "maximum": 3650
20
+ }
21
+ },
22
+ "additionalProperties": false,
23
+ "$id": "./RotationPolicyUpdateDto.schema.json",
24
+ "title": "RotationPolicyUpdateDto"
25
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "ttlSeconds": {
6
+ "description": "Session time-to-live in seconds.",
7
+ "type": "integer",
8
+ "minimum": 60,
9
+ "maximum": 9007199254740991
10
+ },
11
+ "cleanupMode": {
12
+ "description": "Whether to fully delete or anonymize expired sessions.",
13
+ "type": "string",
14
+ "enum": [
15
+ "full",
16
+ "anonymize"
17
+ ]
18
+ }
19
+ },
20
+ "additionalProperties": false,
21
+ "description": "Tenant session storage configuration.",
22
+ "$id": "./SessionStorageConfig.schema.json",
23
+ "title": "SessionStorageConfig"
24
+ }
@@ -0,0 +1,51 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "capacity": {
6
+ "description": "Default status list capacity.",
7
+ "type": "integer",
8
+ "minimum": 100,
9
+ "maximum": 9007199254740991
10
+ },
11
+ "bits": {
12
+ "description": "Bits-per-status setting (1, 2, 4, or 8).",
13
+ "anyOf": [
14
+ {
15
+ "type": "number",
16
+ "const": 1
17
+ },
18
+ {
19
+ "type": "number",
20
+ "const": 2
21
+ },
22
+ {
23
+ "type": "number",
24
+ "const": 4
25
+ },
26
+ {
27
+ "type": "number",
28
+ "const": 8
29
+ }
30
+ ]
31
+ },
32
+ "ttl": {
33
+ "description": "JWT TTL for status list tokens in seconds.",
34
+ "type": "integer",
35
+ "minimum": 60,
36
+ "maximum": 9007199254740991
37
+ },
38
+ "immediateUpdate": {
39
+ "description": "Regenerate status list JWTs immediately after status updates.",
40
+ "type": "boolean"
41
+ },
42
+ "enableAggregation": {
43
+ "description": "Include aggregation_uri in generated status list JWTs.",
44
+ "type": "boolean"
45
+ }
46
+ },
47
+ "additionalProperties": false,
48
+ "description": "Tenant defaults for status list generation and publishing behavior.",
49
+ "$id": "./StatusListConfig.schema.json",
50
+ "title": "StatusListConfig"
51
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "./StatusListConfigFile.schema.json",
4
+ "title": "StatusListConfigFile",
5
+ "description": "A status-list configuration file in legacy payload or versioned-envelope form.",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "./StatusListImportDto.schema.json"
9
+ },
10
+ {
11
+ "type": "object",
12
+ "properties": {
13
+ "apiVersion": {
14
+ "type": "string",
15
+ "const": "eudiplo.io/status-list/v1"
16
+ },
17
+ "kind": {
18
+ "type": "string",
19
+ "const": "StatusList"
20
+ },
21
+ "metadata": {
22
+ "$ref": "./ConfigDocumentMetadata.schema.json"
23
+ },
24
+ "spec": {
25
+ "$ref": "./StatusListImportDto.schema.json"
26
+ }
27
+ },
28
+ "required": [
29
+ "apiVersion",
30
+ "kind",
31
+ "metadata",
32
+ "spec"
33
+ ],
34
+ "additionalProperties": false
35
+ }
36
+ ]
37
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "type": {
6
+ "type": "string",
7
+ "description": "Transaction data type identifier."
8
+ },
9
+ "credential_ids": {
10
+ "type": "array",
11
+ "items": {
12
+ "type": "string"
13
+ },
14
+ "description": "Credential query ids this transaction data applies to."
15
+ }
16
+ },
17
+ "required": [
18
+ "type",
19
+ "credential_ids"
20
+ ],
21
+ "additionalProperties": {},
22
+ "$id": "./TransactionData.schema.json",
23
+ "title": "TransactionData"
24
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "./TrustListConfigFile.schema.json",
4
+ "title": "TrustListConfigFile",
5
+ "description": "A trust-list configuration file in legacy payload or versioned-envelope form.",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "./TrustListCreateDto.schema.json"
9
+ },
10
+ {
11
+ "type": "object",
12
+ "properties": {
13
+ "apiVersion": {
14
+ "type": "string",
15
+ "const": "eudiplo.io/trust-list/v1"
16
+ },
17
+ "kind": {
18
+ "type": "string",
19
+ "const": "TrustList"
20
+ },
21
+ "metadata": {
22
+ "$ref": "./ConfigDocumentMetadata.schema.json"
23
+ },
24
+ "spec": {
25
+ "$ref": "./TrustListCreateDto.schema.json"
26
+ }
27
+ },
28
+ "required": [
29
+ "apiVersion",
30
+ "kind",
31
+ "metadata",
32
+ "spec"
33
+ ],
34
+ "additionalProperties": false
35
+ }
36
+ ]
37
+ }
@@ -0,0 +1,93 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "id": {
6
+ "type": "string",
7
+ "minLength": 1,
8
+ "description": "Unique attribute provider identifier."
9
+ },
10
+ "name": {
11
+ "type": "string",
12
+ "minLength": 1,
13
+ "description": "Display name of the attribute provider."
14
+ },
15
+ "description": {
16
+ "anyOf": [
17
+ {
18
+ "type": "string",
19
+ "minLength": 1
20
+ },
21
+ {
22
+ "type": "null"
23
+ }
24
+ ],
25
+ "description": "Optional attribute provider description."
26
+ },
27
+ "url": {
28
+ "type": "string",
29
+ "format": "uri",
30
+ "description": "Base URL of the attribute provider endpoint."
31
+ },
32
+ "auth": {
33
+ "oneOf": [
34
+ {
35
+ "type": "object",
36
+ "properties": {
37
+ "type": {
38
+ "type": "string",
39
+ "const": "none",
40
+ "description": "Disable authentication for attribute provider calls."
41
+ }
42
+ },
43
+ "required": [
44
+ "type"
45
+ ],
46
+ "additionalProperties": false,
47
+ "description": "No authentication variant."
48
+ },
49
+ {
50
+ "type": "object",
51
+ "properties": {
52
+ "type": {
53
+ "type": "string",
54
+ "const": "apiKey",
55
+ "description": "Use API key authentication."
56
+ },
57
+ "config": {
58
+ "type": "object",
59
+ "properties": {
60
+ "headerName": {
61
+ "type": "string",
62
+ "minLength": 1,
63
+ "description": "HTTP header name carrying the API key."
64
+ },
65
+ "value": {
66
+ "type": "string",
67
+ "minLength": 1,
68
+ "description": "API key value."
69
+ }
70
+ },
71
+ "required": [
72
+ "headerName",
73
+ "value"
74
+ ],
75
+ "additionalProperties": false,
76
+ "description": "API key authentication settings."
77
+ }
78
+ },
79
+ "required": [
80
+ "type",
81
+ "config"
82
+ ],
83
+ "additionalProperties": false,
84
+ "description": "API key authentication variant."
85
+ }
86
+ ],
87
+ "description": "Authentication configuration for outbound provider requests."
88
+ }
89
+ },
90
+ "additionalProperties": false,
91
+ "$id": "./UpdateAttributeProviderDto.schema.json",
92
+ "title": "UpdateAttributeProviderDto"
93
+ }