@eudiplo/cli 9.1.0-main.892d49e → 9.1.0-main.8be8b4e

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 (96) hide show
  1. package/dist/commands/completion/action.js +3 -1
  2. package/dist/commands/completion/action.js.map +1 -1
  3. package/dist/commands/config/portability/migrations.spec.js +5 -2
  4. package/dist/commands/config/portability/migrations.spec.js.map +1 -1
  5. package/dist/commands/config/portability/upgrade.d.ts.map +1 -1
  6. package/dist/commands/config/portability/upgrade.js +7 -8
  7. package/dist/commands/config/portability/upgrade.js.map +1 -1
  8. package/dist/commands/config/tenant/action.d.ts.map +1 -1
  9. package/dist/commands/config/tenant/action.js +3 -2
  10. package/dist/commands/config/tenant/action.js.map +1 -1
  11. package/dist/commands/config/validate/action.d.ts.map +1 -1
  12. package/dist/commands/config/validate/action.js +2 -1
  13. package/dist/commands/config/validate/action.js.map +1 -1
  14. package/dist/commands/config/validate/registry.json +21 -0
  15. package/dist/commands/init/action.d.ts.map +1 -1
  16. package/dist/commands/init/action.js +1 -11
  17. package/dist/commands/init/action.js.map +1 -1
  18. package/dist/commands/instance/action.d.ts +2 -0
  19. package/dist/commands/instance/action.d.ts.map +1 -1
  20. package/dist/commands/instance/action.js +68 -12
  21. package/dist/commands/instance/action.js.map +1 -1
  22. package/dist/commands/instance/index.d.ts.map +1 -1
  23. package/dist/commands/instance/index.js +21 -3
  24. package/dist/commands/instance/index.js.map +1 -1
  25. package/dist/commands/open/action.d.ts.map +1 -1
  26. package/dist/commands/open/action.js +13 -2
  27. package/dist/commands/open/action.js.map +1 -1
  28. package/dist/commands/status/action.d.ts.map +1 -1
  29. package/dist/commands/status/action.js +2 -1
  30. package/dist/commands/status/action.js.map +1 -1
  31. package/dist/index.js +21395 -5631
  32. package/dist/services/api-auth.d.ts.map +1 -1
  33. package/dist/services/api-auth.js +3 -2
  34. package/dist/services/api-auth.js.map +1 -1
  35. package/dist/services/browser.d.ts.map +1 -1
  36. package/dist/services/browser.js +3 -2
  37. package/dist/services/browser.js.map +1 -1
  38. package/dist/services/cli-config.d.ts +41 -1
  39. package/dist/services/cli-config.d.ts.map +1 -1
  40. package/dist/services/cli-config.js +217 -29
  41. package/dist/services/cli-config.js.map +1 -1
  42. package/dist/services/compose-project.d.ts +6 -0
  43. package/dist/services/compose-project.d.ts.map +1 -1
  44. package/dist/services/compose-project.js +13 -2
  45. package/dist/services/compose-project.js.map +1 -1
  46. package/dist/services/diagnostics.d.ts.map +1 -1
  47. package/dist/services/diagnostics.js +9 -8
  48. package/dist/services/diagnostics.js.map +1 -1
  49. package/dist/services/instance-selection.d.ts.map +1 -1
  50. package/dist/services/instance-selection.js +2 -5
  51. package/dist/services/instance-selection.js.map +1 -1
  52. package/dist/services/url.d.ts +21 -0
  53. package/dist/services/url.d.ts.map +1 -0
  54. package/dist/services/url.js +61 -0
  55. package/dist/services/url.js.map +1 -0
  56. package/package.json +6 -5
  57. package/templates/demo-config/clients/presentation-test.json +1 -1
  58. package/templates/demo-config/clients/test.json +7 -2
  59. package/templates/demo-config/info.json +1 -1
  60. package/templates/demo-config/issuance/credentials/citizen.json +1 -1
  61. package/templates/demo-config/issuance/credentials/pid-key.json +1 -1
  62. package/templates/demo-config/issuance/credentials/pid-mdoc.json +1 -1
  63. package/templates/demo-config/issuance/credentials/pid.json +1 -1
  64. package/templates/demo-config/issuance/issuance.json +1 -1
  65. package/templates/demo-config/key-chains/access.json +1 -1
  66. package/templates/demo-config/key-chains/attestation.json +3 -2
  67. package/templates/demo-config/key-chains/status-list.json +6 -5
  68. package/templates/demo-config/key-chains/trust-list.json +1 -1
  69. package/templates/demo-config/presentation/age-over-18.json +1 -1
  70. package/templates/demo-config/presentation/pid.json +1 -1
  71. package/templates/docker-compose.yml +2 -2
  72. package/templates/schemas/ClientConfigFile.schema.json +134 -1
  73. package/templates/schemas/CreateClientDto.schema.json +5 -1
  74. package/templates/schemas/CreateFederationTrustAnchorDto.schema.json +82 -0
  75. package/templates/schemas/CreateRegistrarConfigDto.schema.json +29 -0
  76. package/templates/schemas/CreateTenantDto.schema.json +8 -4
  77. package/templates/schemas/CredentialConfigCreate.schema.json +242 -11
  78. package/templates/schemas/CredentialConfigFile.schema.json +1592 -1
  79. package/templates/schemas/FederationTrustAnchorConfigFile.schema.json +60 -0
  80. package/templates/schemas/IssuanceConfig.schema.json +122 -9
  81. package/templates/schemas/IssuanceConfigFile.schema.json +2247 -1
  82. package/templates/schemas/KeyChainConfigFile.schema.json +875 -119
  83. package/templates/schemas/KeyChainCreateDto.schema.json +12 -1
  84. package/templates/schemas/KeyChainDefaultsConfigFile.schema.json +123 -0
  85. package/templates/schemas/KeyChainImportDto.schema.json +10 -0
  86. package/templates/schemas/KmsConfigDto.schema.json +186 -0
  87. package/templates/schemas/KmsConfigFile.schema.json +1026 -1
  88. package/templates/schemas/PresentationConfigCreateDto.schema.json +16 -0
  89. package/templates/schemas/PresentationConfigFile.schema.json +746 -1
  90. package/templates/schemas/RegistrarConfigFile.schema.json +101 -1
  91. package/templates/schemas/RotationPolicyCreateDto.schema.json +1 -1
  92. package/templates/schemas/TenantConfigFile.schema.json +334 -64
  93. package/templates/schemas/UpdateClientDto.schema.json +5 -1
  94. package/templates/schemas/UpdateFederationTrustAnchorDto.schema.json +70 -0
  95. package/templates/schemas/UpdateStatusListConfigDto.schema.json +5 -5
  96. package/templates/schemas.manifest.json +4 -0
@@ -9,7 +9,7 @@
9
9
  "properties": {
10
10
  "$schema": {
11
11
  "type": "string",
12
- "const": "https://eudiplo.dev/schemas/v3/PresentationConfigFile.schema.json"
12
+ "const": "https://eudiplo.dev/schemas/v4/PresentationConfigFile.schema.json"
13
13
  },
14
14
  "metadata": {
15
15
  "type": "object",
@@ -1496,6 +1496,751 @@
1496
1496
  "title": "PresentationConfigCreateDto"
1497
1497
  }
1498
1498
  }
1499
+ },
1500
+ {
1501
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
1502
+ "$id": "https://eudiplo.dev/schemas/v3/PresentationConfigFile.schema.json",
1503
+ "title": "PresentationConfigFile",
1504
+ "type": "object",
1505
+ "properties": {
1506
+ "$schema": {
1507
+ "type": "string",
1508
+ "const": "https://eudiplo.dev/schemas/v3/PresentationConfigFile.schema.json"
1509
+ },
1510
+ "metadata": {
1511
+ "type": "object",
1512
+ "properties": {
1513
+ "generation": {
1514
+ "type": "integer",
1515
+ "minimum": 1,
1516
+ "description": "Monotonically increasing configuration generation."
1517
+ },
1518
+ "ownership": {
1519
+ "type": "string",
1520
+ "enum": [
1521
+ "unmanaged",
1522
+ "file-managed"
1523
+ ],
1524
+ "description": "Requested ownership recorded when the document is applied."
1525
+ }
1526
+ },
1527
+ "additionalProperties": false
1528
+ },
1529
+ "spec": {
1530
+ "allOf": [
1531
+ {
1532
+ "$ref": "#/$defs/PresentationConfigCreateDto"
1533
+ },
1534
+ {
1535
+ "type": "object",
1536
+ "required": [
1537
+ "id"
1538
+ ],
1539
+ "properties": {
1540
+ "id": {
1541
+ "type": "string",
1542
+ "minLength": 1
1543
+ }
1544
+ }
1545
+ }
1546
+ ]
1547
+ }
1548
+ },
1549
+ "required": [
1550
+ "$schema",
1551
+ "spec"
1552
+ ],
1553
+ "additionalProperties": false,
1554
+ "$defs": {
1555
+ "PresentationConfigCreateDto": {
1556
+ "type": "object",
1557
+ "properties": {
1558
+ "id": {
1559
+ "type": "string",
1560
+ "minLength": 1,
1561
+ "description": "Presentation configuration identifier."
1562
+ },
1563
+ "description": {
1564
+ "description": "Optional presentation configuration description.",
1565
+ "type": [
1566
+ "string",
1567
+ "null"
1568
+ ]
1569
+ },
1570
+ "lifeTime": {
1571
+ "description": "Presentation request lifetime in seconds.",
1572
+ "type": "integer",
1573
+ "minimum": 1,
1574
+ "maximum": 9007199254740991
1575
+ },
1576
+ "skewSeconds": {
1577
+ "description": "Clock skew tolerance in seconds.",
1578
+ "type": "integer",
1579
+ "minimum": 0,
1580
+ "maximum": 9007199254740991
1581
+ },
1582
+ "statusCheckMode": {
1583
+ "description": "Revocation/status check mode.",
1584
+ "type": "string",
1585
+ "enum": [
1586
+ "strict",
1587
+ "best_effort",
1588
+ "disabled"
1589
+ ]
1590
+ },
1591
+ "dcql_query": {
1592
+ "type": "object",
1593
+ "properties": {
1594
+ "credentials": {
1595
+ "minItems": 1,
1596
+ "type": "array",
1597
+ "items": {
1598
+ "oneOf": [
1599
+ {
1600
+ "type": "object",
1601
+ "properties": {
1602
+ "id": {
1603
+ "type": "string",
1604
+ "minLength": 1,
1605
+ "pattern": "^[A-Za-z0-9_-]+$",
1606
+ "description": "Credential query identifier."
1607
+ },
1608
+ "multiple": {
1609
+ "description": "Allow multiple matching credentials.",
1610
+ "type": "boolean"
1611
+ },
1612
+ "claim_sets": {
1613
+ "description": "Optional claim set constraints.",
1614
+ "type": "array",
1615
+ "items": {
1616
+ "type": "array",
1617
+ "items": {
1618
+ "type": "string"
1619
+ }
1620
+ }
1621
+ },
1622
+ "trusted_authorities": {
1623
+ "description": "Optional trusted authority constraints.",
1624
+ "type": "array",
1625
+ "items": {
1626
+ "oneOf": [
1627
+ {
1628
+ "type": "object",
1629
+ "properties": {
1630
+ "type": {
1631
+ "type": "string",
1632
+ "const": "etsi_tl",
1633
+ "description": "Trusted authority type discriminator for ETSI trust lists."
1634
+ },
1635
+ "values": {
1636
+ "type": "array",
1637
+ "items": {
1638
+ "type": "object",
1639
+ "properties": {
1640
+ "trustListId": {
1641
+ "description": "Optional trust list id reference.",
1642
+ "type": "string"
1643
+ },
1644
+ "url": {
1645
+ "description": "Optional trust list URL reference.",
1646
+ "anyOf": [
1647
+ {
1648
+ "type": "string",
1649
+ "format": "uri"
1650
+ },
1651
+ {
1652
+ "type": "string",
1653
+ "pattern": "^<TENANT_URL>(?:\\/.*)?$"
1654
+ }
1655
+ ]
1656
+ },
1657
+ "verifierKey": {
1658
+ "description": "Optional verifier key material.",
1659
+ "type": "object",
1660
+ "propertyNames": {
1661
+ "type": "string"
1662
+ },
1663
+ "additionalProperties": {}
1664
+ },
1665
+ "verifierX509Der": {
1666
+ "description": "Optional verifier certificate in DER/base64 form.",
1667
+ "type": "string"
1668
+ }
1669
+ },
1670
+ "additionalProperties": false
1671
+ },
1672
+ "description": "Trust list references for ETSI TL verification."
1673
+ }
1674
+ },
1675
+ "required": [
1676
+ "type",
1677
+ "values"
1678
+ ],
1679
+ "additionalProperties": false
1680
+ },
1681
+ {
1682
+ "type": "object",
1683
+ "properties": {
1684
+ "type": {
1685
+ "type": "string",
1686
+ "const": "openid_federation",
1687
+ "description": "Trusted authority type discriminator for OpenID Federation."
1688
+ },
1689
+ "values": {
1690
+ "type": "array",
1691
+ "items": {
1692
+ "type": "string"
1693
+ },
1694
+ "description": "OpenID Federation authority identifiers."
1695
+ }
1696
+ },
1697
+ "required": [
1698
+ "type",
1699
+ "values"
1700
+ ],
1701
+ "additionalProperties": false
1702
+ }
1703
+ ]
1704
+ }
1705
+ },
1706
+ "format": {
1707
+ "type": "string",
1708
+ "const": "dc+sd-jwt",
1709
+ "description": "Credential format discriminator."
1710
+ },
1711
+ "meta": {
1712
+ "type": "object",
1713
+ "properties": {
1714
+ "vct_values": {
1715
+ "minItems": 1,
1716
+ "type": "array",
1717
+ "items": {
1718
+ "type": "string"
1719
+ },
1720
+ "description": "Accepted VCT values."
1721
+ }
1722
+ },
1723
+ "required": [
1724
+ "vct_values"
1725
+ ],
1726
+ "additionalProperties": false
1727
+ },
1728
+ "claims": {
1729
+ "description": "Optional claim-level constraints.",
1730
+ "type": "array",
1731
+ "items": {
1732
+ "type": "object",
1733
+ "properties": {
1734
+ "id": {
1735
+ "description": "Optional claim query id.",
1736
+ "type": "string"
1737
+ },
1738
+ "path": {
1739
+ "type": "array",
1740
+ "items": {
1741
+ "type": [
1742
+ "string",
1743
+ "number"
1744
+ ]
1745
+ },
1746
+ "description": "Path to the claim value in presented credentials."
1747
+ },
1748
+ "values": {
1749
+ "description": "Optional allowed values for the claim. A disclosed value must equal one of them in type and value.",
1750
+ "minItems": 1,
1751
+ "type": "array",
1752
+ "items": {
1753
+ "anyOf": [
1754
+ {
1755
+ "type": "string"
1756
+ },
1757
+ {
1758
+ "type": "integer",
1759
+ "minimum": -9007199254740991,
1760
+ "maximum": 9007199254740991
1761
+ },
1762
+ {
1763
+ "type": "boolean"
1764
+ }
1765
+ ]
1766
+ }
1767
+ }
1768
+ },
1769
+ "required": [
1770
+ "path"
1771
+ ],
1772
+ "additionalProperties": false
1773
+ }
1774
+ }
1775
+ },
1776
+ "required": [
1777
+ "id",
1778
+ "format",
1779
+ "meta"
1780
+ ],
1781
+ "additionalProperties": false
1782
+ },
1783
+ {
1784
+ "type": "object",
1785
+ "properties": {
1786
+ "id": {
1787
+ "type": "string",
1788
+ "minLength": 1,
1789
+ "pattern": "^[A-Za-z0-9_-]+$",
1790
+ "description": "Credential query identifier."
1791
+ },
1792
+ "multiple": {
1793
+ "description": "Allow multiple matching credentials.",
1794
+ "type": "boolean"
1795
+ },
1796
+ "claim_sets": {
1797
+ "description": "Optional claim set constraints.",
1798
+ "type": "array",
1799
+ "items": {
1800
+ "type": "array",
1801
+ "items": {
1802
+ "type": "string"
1803
+ }
1804
+ }
1805
+ },
1806
+ "trusted_authorities": {
1807
+ "description": "Optional trusted authority constraints.",
1808
+ "type": "array",
1809
+ "items": {
1810
+ "oneOf": [
1811
+ {
1812
+ "type": "object",
1813
+ "properties": {
1814
+ "type": {
1815
+ "type": "string",
1816
+ "const": "etsi_tl",
1817
+ "description": "Trusted authority type discriminator for ETSI trust lists."
1818
+ },
1819
+ "values": {
1820
+ "type": "array",
1821
+ "items": {
1822
+ "type": "object",
1823
+ "properties": {
1824
+ "trustListId": {
1825
+ "description": "Optional trust list id reference.",
1826
+ "type": "string"
1827
+ },
1828
+ "url": {
1829
+ "description": "Optional trust list URL reference.",
1830
+ "anyOf": [
1831
+ {
1832
+ "type": "string",
1833
+ "format": "uri"
1834
+ },
1835
+ {
1836
+ "type": "string",
1837
+ "pattern": "^<TENANT_URL>(?:\\/.*)?$"
1838
+ }
1839
+ ]
1840
+ },
1841
+ "verifierKey": {
1842
+ "description": "Optional verifier key material.",
1843
+ "type": "object",
1844
+ "propertyNames": {
1845
+ "type": "string"
1846
+ },
1847
+ "additionalProperties": {}
1848
+ },
1849
+ "verifierX509Der": {
1850
+ "description": "Optional verifier certificate in DER/base64 form.",
1851
+ "type": "string"
1852
+ }
1853
+ },
1854
+ "additionalProperties": false
1855
+ },
1856
+ "description": "Trust list references for ETSI TL verification."
1857
+ }
1858
+ },
1859
+ "required": [
1860
+ "type",
1861
+ "values"
1862
+ ],
1863
+ "additionalProperties": false
1864
+ },
1865
+ {
1866
+ "type": "object",
1867
+ "properties": {
1868
+ "type": {
1869
+ "type": "string",
1870
+ "const": "openid_federation",
1871
+ "description": "Trusted authority type discriminator for OpenID Federation."
1872
+ },
1873
+ "values": {
1874
+ "type": "array",
1875
+ "items": {
1876
+ "type": "string"
1877
+ },
1878
+ "description": "OpenID Federation authority identifiers."
1879
+ }
1880
+ },
1881
+ "required": [
1882
+ "type",
1883
+ "values"
1884
+ ],
1885
+ "additionalProperties": false
1886
+ }
1887
+ ]
1888
+ }
1889
+ },
1890
+ "format": {
1891
+ "type": "string",
1892
+ "const": "mso_mdoc",
1893
+ "description": "Credential format discriminator."
1894
+ },
1895
+ "meta": {
1896
+ "type": "object",
1897
+ "properties": {
1898
+ "doctype_value": {
1899
+ "type": "string",
1900
+ "minLength": 1,
1901
+ "description": "Expected mDoc doctype value."
1902
+ }
1903
+ },
1904
+ "required": [
1905
+ "doctype_value"
1906
+ ],
1907
+ "additionalProperties": false
1908
+ },
1909
+ "claims": {
1910
+ "description": "Optional mDoc claim-level constraints.",
1911
+ "type": "array",
1912
+ "items": {
1913
+ "type": "object",
1914
+ "properties": {
1915
+ "id": {
1916
+ "description": "Optional claim query id.",
1917
+ "type": "string"
1918
+ },
1919
+ "path": {
1920
+ "type": "array",
1921
+ "items": {
1922
+ "type": [
1923
+ "string",
1924
+ "number"
1925
+ ]
1926
+ },
1927
+ "description": "Path to the claim value in presented credentials."
1928
+ },
1929
+ "values": {
1930
+ "description": "Optional allowed values for the claim. A disclosed value must equal one of them in type and value.",
1931
+ "minItems": 1,
1932
+ "type": "array",
1933
+ "items": {
1934
+ "anyOf": [
1935
+ {
1936
+ "type": "string"
1937
+ },
1938
+ {
1939
+ "type": "integer",
1940
+ "minimum": -9007199254740991,
1941
+ "maximum": 9007199254740991
1942
+ },
1943
+ {
1944
+ "type": "boolean"
1945
+ }
1946
+ ]
1947
+ }
1948
+ },
1949
+ "intent_to_retain": {
1950
+ "description": "Whether relying party intends to retain the claim.",
1951
+ "type": "boolean"
1952
+ }
1953
+ },
1954
+ "required": [
1955
+ "path"
1956
+ ],
1957
+ "additionalProperties": false
1958
+ }
1959
+ }
1960
+ },
1961
+ "required": [
1962
+ "id",
1963
+ "format",
1964
+ "meta"
1965
+ ],
1966
+ "additionalProperties": false
1967
+ }
1968
+ ]
1969
+ },
1970
+ "description": "Credential queries requested by the verifier."
1971
+ },
1972
+ "credential_sets": {
1973
+ "description": "Optional higher-level credential set requirements.",
1974
+ "type": "array",
1975
+ "items": {
1976
+ "type": "object",
1977
+ "properties": {
1978
+ "options": {
1979
+ "minItems": 1,
1980
+ "type": "array",
1981
+ "items": {
1982
+ "minItems": 1,
1983
+ "type": "array",
1984
+ "items": {
1985
+ "type": "string"
1986
+ }
1987
+ },
1988
+ "description": "Alternative credential query id combinations."
1989
+ },
1990
+ "required": {
1991
+ "description": "Whether this credential set is mandatory.",
1992
+ "type": "boolean"
1993
+ }
1994
+ },
1995
+ "required": [
1996
+ "options"
1997
+ ],
1998
+ "additionalProperties": false
1999
+ }
2000
+ }
2001
+ },
2002
+ "required": [
2003
+ "credentials"
2004
+ ],
2005
+ "additionalProperties": false,
2006
+ "description": "DCQL query defining requested credentials and claims."
2007
+ },
2008
+ "transaction_data": {
2009
+ "description": "Optional transaction data descriptors.",
2010
+ "anyOf": [
2011
+ {
2012
+ "type": "array",
2013
+ "items": {
2014
+ "type": "object",
2015
+ "properties": {
2016
+ "type": {
2017
+ "type": "string",
2018
+ "description": "Transaction data type identifier."
2019
+ },
2020
+ "credential_ids": {
2021
+ "type": "array",
2022
+ "items": {
2023
+ "type": "string"
2024
+ },
2025
+ "description": "Credential query ids this transaction data applies to."
2026
+ },
2027
+ "payload": {
2028
+ "description": "Transaction details. Required for TS12 SCA transaction data."
2029
+ }
2030
+ },
2031
+ "required": [
2032
+ "type",
2033
+ "credential_ids"
2034
+ ],
2035
+ "additionalProperties": {}
2036
+ }
2037
+ },
2038
+ {
2039
+ "type": "null"
2040
+ }
2041
+ ]
2042
+ },
2043
+ "registration_cert": {
2044
+ "description": "Optional registration certificate request settings.",
2045
+ "anyOf": [
2046
+ {
2047
+ "type": "object",
2048
+ "properties": {
2049
+ "id": {
2050
+ "type": "string"
2051
+ },
2052
+ "body": {
2053
+ "type": "object",
2054
+ "properties": {
2055
+ "privacy_policy": {
2056
+ "type": "string"
2057
+ },
2058
+ "support_uri": {
2059
+ "type": "string"
2060
+ },
2061
+ "intermediary": {
2062
+ "type": "string"
2063
+ },
2064
+ "purpose": {
2065
+ "type": "array",
2066
+ "items": {
2067
+ "type": "object",
2068
+ "properties": {
2069
+ "lang": {
2070
+ "type": "string"
2071
+ },
2072
+ "content": {
2073
+ "type": "string"
2074
+ }
2075
+ },
2076
+ "required": [
2077
+ "lang",
2078
+ "content"
2079
+ ],
2080
+ "additionalProperties": false
2081
+ }
2082
+ },
2083
+ "credentials": {
2084
+ "type": "array",
2085
+ "items": {
2086
+ "type": "object",
2087
+ "propertyNames": {
2088
+ "type": "string"
2089
+ },
2090
+ "additionalProperties": {}
2091
+ }
2092
+ },
2093
+ "provides_attestations": {
2094
+ "type": "array",
2095
+ "items": {
2096
+ "type": "string",
2097
+ "minLength": 1
2098
+ }
2099
+ }
2100
+ },
2101
+ "additionalProperties": false
2102
+ },
2103
+ "jwt": {
2104
+ "type": "string"
2105
+ }
2106
+ },
2107
+ "additionalProperties": false
2108
+ },
2109
+ {
2110
+ "type": "null"
2111
+ }
2112
+ ]
2113
+ },
2114
+ "registrationCertImportJwt": {
2115
+ "description": "Optional imported registration certificate JWT.",
2116
+ "type": [
2117
+ "string",
2118
+ "null"
2119
+ ]
2120
+ },
2121
+ "registrationCertImportId": {
2122
+ "description": "Optional registrar-side registration certificate id.",
2123
+ "type": [
2124
+ "string",
2125
+ "null"
2126
+ ]
2127
+ },
2128
+ "registrationCertBodyPrivacyPolicy": {
2129
+ "description": "Optional registration certificate privacy policy URI.",
2130
+ "type": [
2131
+ "string",
2132
+ "null"
2133
+ ]
2134
+ },
2135
+ "registrationCertBodySupportUri": {
2136
+ "description": "Optional registration certificate support URI.",
2137
+ "type": [
2138
+ "string",
2139
+ "null"
2140
+ ]
2141
+ },
2142
+ "registrationCertBodyIntermediary": {
2143
+ "description": "Optional registration certificate intermediary.",
2144
+ "type": [
2145
+ "string",
2146
+ "null"
2147
+ ]
2148
+ },
2149
+ "registrationCertBodyPurpose": {
2150
+ "description": "Optional registration certificate purpose entries.",
2151
+ "anyOf": [
2152
+ {
2153
+ "type": "array",
2154
+ "items": {
2155
+ "type": "object",
2156
+ "properties": {
2157
+ "lang": {
2158
+ "type": "string"
2159
+ },
2160
+ "content": {
2161
+ "type": "string"
2162
+ }
2163
+ },
2164
+ "additionalProperties": false
2165
+ }
2166
+ },
2167
+ {
2168
+ "type": "null"
2169
+ }
2170
+ ]
2171
+ },
2172
+ "webhookEndpointId": {
2173
+ "description": "Optional webhook endpoint id for presentation callbacks.",
2174
+ "type": [
2175
+ "string",
2176
+ "null"
2177
+ ]
2178
+ },
2179
+ "attached": {
2180
+ "description": "Optional attachments included with presentation requests.",
2181
+ "anyOf": [
2182
+ {
2183
+ "type": "array",
2184
+ "items": {
2185
+ "type": "object",
2186
+ "properties": {
2187
+ "format": {
2188
+ "type": "string",
2189
+ "description": "Attachment format identifier."
2190
+ },
2191
+ "data": {
2192
+ "description": "Attachment payload."
2193
+ },
2194
+ "credential_ids": {
2195
+ "description": "Optional credential query ids bound to this attachment.",
2196
+ "type": "array",
2197
+ "items": {
2198
+ "type": "string"
2199
+ }
2200
+ }
2201
+ },
2202
+ "required": [
2203
+ "format",
2204
+ "data"
2205
+ ],
2206
+ "additionalProperties": false
2207
+ }
2208
+ },
2209
+ {
2210
+ "type": "null"
2211
+ }
2212
+ ]
2213
+ },
2214
+ "redirectUri": {
2215
+ "description": "Optional redirect URI after presentation completion.",
2216
+ "type": [
2217
+ "string",
2218
+ "null"
2219
+ ]
2220
+ },
2221
+ "accessKeyChainId": {
2222
+ "description": "Optional key chain id for access token/auth operations.",
2223
+ "type": [
2224
+ "string",
2225
+ "null"
2226
+ ]
2227
+ },
2228
+ "readerAuth": {
2229
+ "description": "Whether reader authentication is required for mDoc requests.",
2230
+ "type": [
2231
+ "boolean",
2232
+ "null"
2233
+ ]
2234
+ }
2235
+ },
2236
+ "required": [
2237
+ "id",
2238
+ "dcql_query"
2239
+ ],
2240
+ "additionalProperties": false,
2241
+ "title": "PresentationConfigCreateDto"
2242
+ }
2243
+ }
1499
2244
  }
1500
2245
  ]
1501
2246
  }