@ledgerhq/device-trusted-app-kit-ledger-keyring-protocol 0.0.0-ledger-button-20250808181454 → 0.0.0-legacy-speculos-datasource-20250819074123

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 (206) hide show
  1. package/lib/cjs/api/LedgerKeyringProtocol.js +1 -1
  2. package/lib/cjs/api/LedgerKeyringProtocol.js.map +1 -1
  3. package/lib/cjs/api/LedgerKeyringProtocolBuilder.js +1 -1
  4. package/lib/cjs/api/LedgerKeyringProtocolBuilder.js.map +3 -3
  5. package/lib/cjs/api/app-binder/AddToTrustchainDeviceActionTypes.js +1 -1
  6. package/lib/cjs/api/app-binder/AddToTrustchainDeviceActionTypes.js.map +1 -1
  7. package/lib/cjs/api/app-binder/AuthenticateDeviceActionTypes.js +1 -1
  8. package/lib/cjs/api/app-binder/AuthenticateDeviceActionTypes.js.map +1 -1
  9. package/lib/cjs/api/app-binder/Errors.js +1 -1
  10. package/lib/cjs/api/app-binder/Errors.js.map +3 -3
  11. package/lib/cjs/api/app-binder/LKRPTypes.js +1 -1
  12. package/lib/cjs/api/app-binder/LKRPTypes.js.map +3 -3
  13. package/lib/cjs/api/app-binder/SignBlockHeaderCommandTypes.js +1 -1
  14. package/lib/cjs/api/app-binder/SignBlockHeaderCommandTypes.js.map +1 -1
  15. package/lib/cjs/internal/DefaultLedgerKeyringProtocol.js +1 -1
  16. package/lib/cjs/internal/DefaultLedgerKeyringProtocol.js.map +3 -3
  17. package/lib/cjs/internal/app-binder/LedgerKeyringProtocolBinder.js +1 -1
  18. package/lib/cjs/internal/app-binder/LedgerKeyringProtocolBinder.js.map +3 -3
  19. package/lib/cjs/internal/app-binder/command/SetTrustedMemberCommand.js +1 -1
  20. package/lib/cjs/internal/app-binder/command/SetTrustedMemberCommand.js.map +3 -3
  21. package/lib/cjs/internal/app-binder/command/SignBlockHeader.js +1 -1
  22. package/lib/cjs/internal/app-binder/command/SignBlockHeader.js.map +3 -3
  23. package/lib/cjs/internal/app-binder/command/SignBlockHeader.test.js +1 -1
  24. package/lib/cjs/internal/app-binder/command/SignBlockHeader.test.js.map +3 -3
  25. package/lib/cjs/internal/app-binder/device-action/AddToTrustchainDeviceAction.js +1 -1
  26. package/lib/cjs/internal/app-binder/device-action/AddToTrustchainDeviceAction.js.map +3 -3
  27. package/lib/cjs/internal/app-binder/device-action/AuthenticateDeviceAction.js +1 -1
  28. package/lib/cjs/internal/app-binder/device-action/AuthenticateDeviceAction.js.map +2 -2
  29. package/lib/cjs/internal/app-binder/task/ParseStreamToDeviceTask.js +1 -1
  30. package/lib/cjs/internal/app-binder/task/ParseStreamToDeviceTask.js.map +3 -3
  31. package/lib/cjs/internal/app-binder/task/SignBlockTask.js +1 -1
  32. package/lib/cjs/internal/app-binder/task/SignBlockTask.js.map +3 -3
  33. package/lib/cjs/internal/app-binder/task/SignChallengeWithKeypairTask.js +1 -1
  34. package/lib/cjs/internal/app-binder/task/SignChallengeWithKeypairTask.js.map +2 -2
  35. package/lib/cjs/internal/app-binder/task/utils/TrustedProperties.js +1 -1
  36. package/lib/cjs/internal/app-binder/task/utils/TrustedProperties.js.map +3 -3
  37. package/lib/cjs/internal/di.js +1 -1
  38. package/lib/cjs/internal/di.js.map +3 -3
  39. package/lib/cjs/internal/externalTypes.js +1 -1
  40. package/lib/cjs/internal/externalTypes.js.map +2 -2
  41. package/lib/cjs/internal/lkrp-datasource/data/HttpLKRPDataSource.js +1 -1
  42. package/lib/cjs/internal/lkrp-datasource/data/HttpLKRPDataSource.js.map +3 -3
  43. package/lib/cjs/internal/lkrp-datasource/data/HttpLKRPDataSource.test.js +1 -1
  44. package/lib/cjs/internal/lkrp-datasource/data/HttpLKRPDataSource.test.js.map +2 -2
  45. package/lib/cjs/internal/lkrp-datasource/data/LKRPDataSource.js +1 -1
  46. package/lib/cjs/internal/lkrp-datasource/data/LKRPDataSource.js.map +1 -1
  47. package/lib/cjs/internal/use-cases/authentication/AuthenticateUseCase.js +1 -1
  48. package/lib/cjs/internal/use-cases/authentication/AuthenticateUseCase.js.map +3 -3
  49. package/lib/cjs/internal/utils/LKRPBlock.js.map +2 -2
  50. package/lib/cjs/internal/utils/LKRPBlock.test.js +1 -1
  51. package/lib/cjs/internal/utils/LKRPBlock.test.js.map +3 -3
  52. package/lib/cjs/internal/utils/LKRPBlockStream.js +2 -2
  53. package/lib/cjs/internal/utils/LKRPBlockStream.js.map +3 -3
  54. package/lib/cjs/internal/utils/LKRPBlockStream.test.js +3 -3
  55. package/lib/cjs/internal/utils/LKRPBlockStream.test.js.map +3 -3
  56. package/lib/cjs/internal/utils/LKRPCommand.js +2 -2
  57. package/lib/cjs/internal/utils/LKRPCommand.js.map +3 -3
  58. package/lib/cjs/internal/utils/LKRPCommand.test.js +1 -1
  59. package/lib/cjs/internal/utils/LKRPCommand.test.js.map +3 -3
  60. package/lib/cjs/internal/utils/TLVBuilder.js +1 -1
  61. package/lib/cjs/internal/utils/TLVBuilder.js.map +3 -3
  62. package/lib/cjs/internal/utils/TLVParser.js +1 -1
  63. package/lib/cjs/internal/utils/TLVParser.js.map +3 -3
  64. package/lib/cjs/internal/utils/TLVParser.test.js +1 -1
  65. package/lib/cjs/internal/utils/TLVParser.test.js.map +3 -3
  66. package/lib/cjs/internal/{models/Tags.js → utils/TLVTags.js} +1 -1
  67. package/lib/cjs/internal/{models/Tags.js.map → utils/TLVTags.js.map} +2 -2
  68. package/lib/cjs/internal/utils/hex.js +1 -1
  69. package/lib/cjs/internal/utils/hex.js.map +3 -3
  70. package/lib/cjs/internal/utils/types.js +2 -0
  71. package/lib/cjs/internal/utils/types.js.map +7 -0
  72. package/lib/esm/api/LedgerKeyringProtocolBuilder.js +1 -1
  73. package/lib/esm/api/LedgerKeyringProtocolBuilder.js.map +3 -3
  74. package/lib/esm/api/app-binder/Errors.js +1 -1
  75. package/lib/esm/api/app-binder/Errors.js.map +3 -3
  76. package/lib/esm/api/app-binder/LKRPTypes.js +1 -1
  77. package/lib/esm/api/app-binder/LKRPTypes.js.map +3 -3
  78. package/lib/esm/internal/DefaultLedgerKeyringProtocol.js +1 -1
  79. package/lib/esm/internal/DefaultLedgerKeyringProtocol.js.map +3 -3
  80. package/lib/esm/internal/app-binder/LedgerKeyringProtocolBinder.js +1 -1
  81. package/lib/esm/internal/app-binder/LedgerKeyringProtocolBinder.js.map +3 -3
  82. package/lib/esm/internal/app-binder/command/SetTrustedMemberCommand.js +1 -1
  83. package/lib/esm/internal/app-binder/command/SetTrustedMemberCommand.js.map +2 -2
  84. package/lib/esm/internal/app-binder/command/SignBlockHeader.js +1 -1
  85. package/lib/esm/internal/app-binder/command/SignBlockHeader.js.map +3 -3
  86. package/lib/esm/internal/app-binder/command/SignBlockHeader.test.js +1 -1
  87. package/lib/esm/internal/app-binder/command/SignBlockHeader.test.js.map +3 -3
  88. package/lib/esm/internal/app-binder/device-action/AddToTrustchainDeviceAction.js +1 -1
  89. package/lib/esm/internal/app-binder/device-action/AddToTrustchainDeviceAction.js.map +3 -3
  90. package/lib/esm/internal/app-binder/device-action/AuthenticateDeviceAction.js +1 -1
  91. package/lib/esm/internal/app-binder/device-action/AuthenticateDeviceAction.js.map +3 -3
  92. package/lib/esm/internal/app-binder/task/ParseStreamToDeviceTask.js +1 -1
  93. package/lib/esm/internal/app-binder/task/ParseStreamToDeviceTask.js.map +3 -3
  94. package/lib/esm/internal/app-binder/task/SignBlockTask.js +1 -1
  95. package/lib/esm/internal/app-binder/task/SignBlockTask.js.map +3 -3
  96. package/lib/esm/internal/app-binder/task/SignChallengeWithKeypairTask.js +1 -1
  97. package/lib/esm/internal/app-binder/task/SignChallengeWithKeypairTask.js.map +3 -3
  98. package/lib/esm/internal/app-binder/task/utils/TrustedProperties.js +1 -1
  99. package/lib/esm/internal/app-binder/task/utils/TrustedProperties.js.map +3 -3
  100. package/lib/esm/internal/di.js +1 -1
  101. package/lib/esm/internal/di.js.map +3 -3
  102. package/lib/esm/internal/externalTypes.js +1 -1
  103. package/lib/esm/internal/externalTypes.js.map +2 -2
  104. package/lib/esm/internal/lkrp-datasource/data/HttpLKRPDataSource.js +1 -1
  105. package/lib/esm/internal/lkrp-datasource/data/HttpLKRPDataSource.js.map +3 -3
  106. package/lib/esm/internal/lkrp-datasource/data/HttpLKRPDataSource.test.js +1 -1
  107. package/lib/esm/internal/lkrp-datasource/data/HttpLKRPDataSource.test.js.map +3 -3
  108. package/lib/esm/internal/use-cases/authentication/AuthenticateUseCase.js +1 -1
  109. package/lib/esm/internal/use-cases/authentication/AuthenticateUseCase.js.map +3 -3
  110. package/lib/esm/internal/utils/LKRPBlock.js.map +2 -2
  111. package/lib/esm/internal/utils/LKRPBlock.test.js +1 -1
  112. package/lib/esm/internal/utils/LKRPBlock.test.js.map +3 -3
  113. package/lib/esm/internal/utils/LKRPBlockStream.js +2 -2
  114. package/lib/esm/internal/utils/LKRPBlockStream.js.map +3 -3
  115. package/lib/esm/internal/utils/LKRPBlockStream.test.js +3 -3
  116. package/lib/esm/internal/utils/LKRPBlockStream.test.js.map +3 -3
  117. package/lib/esm/internal/utils/LKRPCommand.js +2 -2
  118. package/lib/esm/internal/utils/LKRPCommand.js.map +3 -3
  119. package/lib/esm/internal/utils/LKRPCommand.test.js +1 -1
  120. package/lib/esm/internal/utils/LKRPCommand.test.js.map +3 -3
  121. package/lib/esm/internal/utils/TLVBuilder.js +1 -1
  122. package/lib/esm/internal/utils/TLVBuilder.js.map +2 -2
  123. package/lib/esm/internal/utils/TLVParser.js +1 -1
  124. package/lib/esm/internal/utils/TLVParser.js.map +3 -3
  125. package/lib/esm/internal/utils/TLVParser.test.js +1 -1
  126. package/lib/esm/internal/utils/TLVParser.test.js.map +3 -3
  127. package/lib/esm/internal/{models/Tags.js → utils/TLVTags.js} +1 -1
  128. package/lib/esm/internal/{models/Tags.js.map → utils/TLVTags.js.map} +1 -1
  129. package/lib/esm/internal/utils/hex.js +1 -1
  130. package/lib/esm/internal/utils/hex.js.map +3 -3
  131. package/lib/esm/internal/utils/types.js +1 -0
  132. package/lib/types/api/LedgerKeyringProtocol.d.ts +4 -3
  133. package/lib/types/api/LedgerKeyringProtocol.d.ts.map +1 -1
  134. package/lib/types/api/LedgerKeyringProtocolBuilder.d.ts +3 -8
  135. package/lib/types/api/LedgerKeyringProtocolBuilder.d.ts.map +1 -1
  136. package/lib/types/api/app-binder/AddToTrustchainDeviceActionTypes.d.ts +4 -4
  137. package/lib/types/api/app-binder/AddToTrustchainDeviceActionTypes.d.ts.map +1 -1
  138. package/lib/types/api/app-binder/AuthenticateDeviceActionTypes.d.ts +5 -5
  139. package/lib/types/api/app-binder/AuthenticateDeviceActionTypes.d.ts.map +1 -1
  140. package/lib/types/api/app-binder/Errors.d.ts +12 -38
  141. package/lib/types/api/app-binder/Errors.d.ts.map +1 -1
  142. package/lib/types/api/app-binder/LKRPTypes.d.ts +0 -4
  143. package/lib/types/api/app-binder/LKRPTypes.d.ts.map +1 -1
  144. package/lib/types/api/app-binder/SignBlockHeaderCommandTypes.d.ts +1 -2
  145. package/lib/types/api/app-binder/SignBlockHeaderCommandTypes.d.ts.map +1 -1
  146. package/lib/types/internal/DefaultLedgerKeyringProtocol.d.ts +6 -7
  147. package/lib/types/internal/DefaultLedgerKeyringProtocol.d.ts.map +1 -1
  148. package/lib/types/internal/app-binder/LedgerKeyringProtocolBinder.d.ts +4 -3
  149. package/lib/types/internal/app-binder/LedgerKeyringProtocolBinder.d.ts.map +1 -1
  150. package/lib/types/internal/app-binder/command/SignBlockHeader.d.ts +0 -1
  151. package/lib/types/internal/app-binder/command/SignBlockHeader.d.ts.map +1 -1
  152. package/lib/types/internal/app-binder/device-action/AddToTrustchainDeviceAction.d.ts +2 -2
  153. package/lib/types/internal/app-binder/device-action/AddToTrustchainDeviceAction.d.ts.map +1 -1
  154. package/lib/types/internal/app-binder/device-action/AuthenticateDeviceAction.d.ts +1 -1
  155. package/lib/types/internal/app-binder/device-action/AuthenticateDeviceAction.d.ts.map +1 -1
  156. package/lib/types/internal/app-binder/task/ParseStreamToDeviceTask.d.ts +3 -3
  157. package/lib/types/internal/app-binder/task/ParseStreamToDeviceTask.d.ts.map +1 -1
  158. package/lib/types/internal/app-binder/task/SignBlockTask.d.ts +7 -6
  159. package/lib/types/internal/app-binder/task/SignBlockTask.d.ts.map +1 -1
  160. package/lib/types/internal/app-binder/task/SignChallengeWithKeypairTask.d.ts +3 -2
  161. package/lib/types/internal/app-binder/task/SignChallengeWithKeypairTask.d.ts.map +1 -1
  162. package/lib/types/internal/app-binder/task/utils/TrustedProperties.d.ts +1 -1
  163. package/lib/types/internal/app-binder/task/utils/TrustedProperties.d.ts.map +1 -1
  164. package/lib/types/internal/di.d.ts +1 -4
  165. package/lib/types/internal/di.d.ts.map +1 -1
  166. package/lib/types/internal/externalTypes.d.ts +0 -1
  167. package/lib/types/internal/externalTypes.d.ts.map +1 -1
  168. package/lib/types/internal/lkrp-datasource/data/HttpLKRPDataSource.d.ts +6 -6
  169. package/lib/types/internal/lkrp-datasource/data/HttpLKRPDataSource.d.ts.map +1 -1
  170. package/lib/types/internal/lkrp-datasource/data/LKRPDataSource.d.ts +7 -7
  171. package/lib/types/internal/lkrp-datasource/data/LKRPDataSource.d.ts.map +1 -1
  172. package/lib/types/internal/use-cases/authentication/AuthenticateUseCase.d.ts +2 -2
  173. package/lib/types/internal/use-cases/authentication/AuthenticateUseCase.d.ts.map +1 -1
  174. package/lib/types/internal/utils/LKRPBlock.d.ts +1 -1
  175. package/lib/types/internal/utils/LKRPBlock.d.ts.map +1 -1
  176. package/lib/types/internal/utils/LKRPBlockStream.d.ts +3 -3
  177. package/lib/types/internal/utils/LKRPBlockStream.d.ts.map +1 -1
  178. package/lib/types/internal/utils/LKRPCommand.d.ts +2 -3
  179. package/lib/types/internal/utils/LKRPCommand.d.ts.map +1 -1
  180. package/lib/types/internal/utils/TLVParser.d.ts +2 -3
  181. package/lib/types/internal/utils/TLVParser.d.ts.map +1 -1
  182. package/lib/types/internal/{models/Tags.d.ts → utils/TLVTags.d.ts} +1 -1
  183. package/lib/types/internal/utils/TLVTags.d.ts.map +1 -0
  184. package/lib/types/internal/utils/hex.d.ts.map +1 -1
  185. package/lib/types/internal/{models/LKRPCommandTypes.d.ts → utils/types.d.ts} +29 -6
  186. package/lib/types/internal/utils/types.d.ts.map +1 -0
  187. package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
  188. package/package.json +4 -4
  189. package/lib/cjs/internal/models/LKRPBlockTypes.js +0 -2
  190. package/lib/cjs/internal/models/LKRPBlockTypes.js.map +0 -7
  191. package/lib/cjs/internal/models/LKRPCommandTypes.js +0 -2
  192. package/lib/cjs/internal/models/LKRPCommandTypes.js.map +0 -7
  193. package/lib/cjs/internal/models/Types.js +0 -2
  194. package/lib/cjs/internal/models/Types.js.map +0 -7
  195. package/lib/esm/internal/models/LKRPBlockTypes.js +0 -1
  196. package/lib/esm/internal/models/LKRPCommandTypes.js +0 -1
  197. package/lib/esm/internal/models/LKRPCommandTypes.js.map +0 -7
  198. package/lib/esm/internal/models/Types.js +0 -1
  199. package/lib/esm/internal/models/Types.js.map +0 -7
  200. package/lib/types/internal/models/LKRPBlockTypes.d.ts +0 -11
  201. package/lib/types/internal/models/LKRPBlockTypes.d.ts.map +0 -1
  202. package/lib/types/internal/models/LKRPCommandTypes.d.ts.map +0 -1
  203. package/lib/types/internal/models/Tags.d.ts.map +0 -1
  204. package/lib/types/internal/models/Types.d.ts +0 -14
  205. package/lib/types/internal/models/Types.d.ts.map +0 -1
  206. /package/lib/esm/internal/{models/LKRPBlockTypes.js.map → utils/types.js.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/internal/utils/TLVParser.test.ts"],
4
- "sourcesContent": ["import { Left, Right } from \"purify-ts\";\n\nimport { LKRPParsingError } from \"@api/app-binder/Errors\";\nimport { CommandTags, GeneralTags } from \"@internal/models/Tags\";\n\nimport { LKRPCommand } from \"./LKRPCommand\";\nimport { TLVParser } from \"./TLVParser\";\n\ndescribe(\"TLVParser\", () => {\n describe(\"Block Data Parsing\", () => {\n describe(\"parseCommands\", () => {\n it(\"should parse has many commands has specified by the command count value\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([\n ...[GeneralTags.Int, 1, 0x02], // Command count: 2\n ...[CommandTags.AddMember, 3, ...[GeneralTags.Int, 1, 0x01]], // First command\n ...[CommandTags.Seed, 3, ...[GeneralTags.Int, 1, 0x02]], // Second command\n ]),\n );\n // WHEN\n const commands = parser.parseCommands();\n\n // THEN\n expect(commands).toStrictEqual(\n Right([\n new LKRPCommand(\n new Uint8Array([\n CommandTags.AddMember,\n 3,\n ...[GeneralTags.Int, 1, 0x01],\n ]),\n ),\n new LKRPCommand(\n new Uint8Array([\n CommandTags.Seed,\n 3,\n ...[GeneralTags.Int, 1, 0x02],\n ]),\n ),\n ]),\n );\n });\n });\n\n describe(\"parseBlockData\", () => {\n it(\"should parse a valid block data\", () => {\n // GIVEN\n const parser = new TLVParser(\n Uint8Array.from(\n [\n [GeneralTags.Int, 1, 0x01], // Version\n [GeneralTags.Hash, 3, 0x01, 0x02, 0x03], // Parent\n [GeneralTags.PublicKey, 3, 0x04, 0x05, 0x06], // Issuer\n [GeneralTags.Int, 1, 0x02], // Command count: 2\n [CommandTags.AddMember, 3, ...[GeneralTags.Int, 1, 0x01]], // First command\n [CommandTags.Seed, 3, ...[GeneralTags.Int, 1, 0x02]], // Second command\n [GeneralTags.Signature, 3, 0x07, 0x08, 0x09], // Signature\n ].flat(),\n ),\n );\n // WHEN\n const blockData = parser.parseBlockData();\n\n // THEN\n expect(blockData).toStrictEqual(\n Right({\n parent: \"010203\",\n issuer: new Uint8Array([0x04, 0x05, 0x06]),\n header: Uint8Array.from(\n [\n [GeneralTags.Int, 1, 0x01], // Version\n [GeneralTags.Hash, 3, 0x01, 0x02, 0x03], // Parent\n [GeneralTags.PublicKey, 3, 0x04, 0x05, 0x06], // Issuer\n [GeneralTags.Int, 1, 0x02], // Command count: 2\n ].flat(),\n ),\n\n commands: [\n new LKRPCommand(\n new Uint8Array([\n CommandTags.AddMember,\n 3,\n ...[GeneralTags.Int, 1, 0x01],\n ]),\n ),\n new LKRPCommand(\n new Uint8Array([\n CommandTags.Seed,\n 3,\n ...[GeneralTags.Int, 1, 0x02],\n ]),\n ),\n ],\n signature: Uint8Array.from([\n GeneralTags.Signature,\n 3,\n 0x07,\n 0x08,\n 0x09,\n ]),\n }),\n );\n });\n\n it(\"should fail if the block data is invalid\", () => {\n // GIVEN\n const parser = new TLVParser(new Uint8Array([]));\n // WHEN\n const blockData = parser.parseBlockData();\n // THEN\n expect(blockData).toEqual(\n Left(new LKRPParsingError(\"Unexpected end of TLV\")),\n );\n });\n });\n });\n\n describe(\"Command Data Parsing\", () => {\n describe(\"parseCommandBytes\", () => {\n it(\"should parse a valid command bytes\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([CommandTags.AddMember, 3, 0x01, 0x02, 0x03]),\n );\n // WHEN\n const value = parser.parseCommandBytes();\n // THEN\n expect(value).toEqual(\n Right(new Uint8Array([CommandTags.AddMember, 3, 0x01, 0x02, 0x03])),\n );\n });\n\n it(\"should fail if the tag is not a command\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseCommandBytes();\n // THEN\n expect(value).toEqual(\n Left(new LKRPParsingError(`Invalid command type: 0x01`)),\n );\n });\n });\n\n describe(\"Parse Seed Command Data\", () => {\n it(\"should parse a valid seed command data\", () => {\n // GIVEN\n const value = new Uint8Array([\n ...[GeneralTags.Bytes, 3, 0x01, 0x02, 0x03], // Topic\n ...[GeneralTags.Int, 2, 0x01, 0x02], // Protocol Version\n ...[GeneralTags.PublicKey, 3, 0x02, 0x04, 0x06], // Group Key\n ...[GeneralTags.Bytes, 3, 0x03, 0x05, 0x07], // Initialization Vector\n ...[GeneralTags.Bytes, 3, 0x04, 0x08, 0x10], // Encrypted xpriv\n ...[GeneralTags.PublicKey, 3, 0x0a, 0x0b, 0x0c], // Ephemeral Public Key\n ]);\n const parser = new TLVParser(\n new Uint8Array([CommandTags.Seed, value.length, ...value]),\n );\n\n // WHEN\n const parsed = parser.parseCommandData();\n\n // THEN\n expect(parsed).toStrictEqual(\n Right({\n type: CommandTags.Seed,\n topic: new Uint8Array([0x01, 0x02, 0x03]),\n protocolVersion: 258, // 0x0102 in big-endian\n groupKey: new Uint8Array([0x02, 0x04, 0x06]),\n initializationVector: new Uint8Array([0x03, 0x05, 0x07]),\n encryptedXpriv: new Uint8Array([0x04, 0x08, 0x10]),\n ephemeralPublicKey: new Uint8Array([0x0a, 0x0b, 0x0c]),\n }),\n );\n });\n\n it(\"should fail if the command data is invalid\", () => {\n // GIVEN\n const value1 = new Uint8Array([\n ...[GeneralTags.Signature, 3, 0x01, 0x02, 0x03], // Wrong type for Topic\n ]);\n const value2 = new Uint8Array([\n ...[GeneralTags.Bytes, 3, 0x01, 0x02, 0x03], // Correct type but the other fields are missing\n ]);\n const parser1 = new TLVParser(\n new Uint8Array([CommandTags.Seed, value1.length, ...value1]),\n );\n const parser2 = new TLVParser(\n new Uint8Array([CommandTags.Seed, value2.length, ...value2]),\n );\n\n // WHEN\n const parsed1 = parser1.parseCommandData();\n const parsed2 = parser2.parseCommandData();\n\n // THEN\n expect(parsed1).toEqual(Left(new LKRPParsingError(\"Expected bytes\")));\n expect(parsed2).toEqual(\n Left(new LKRPParsingError(\"Unexpected end of TLV\")),\n );\n });\n });\n\n describe(\"Parse AddMember Command Data\", () => {\n it(\"should parse a valid add member command data\", () => {\n // GIVEN\n const value = new Uint8Array([\n ...[GeneralTags.String, 5, 0x41, 0x6c, 0x69, 0x63, 0x65], // Name \"Alice\"\n ...[GeneralTags.PublicKey, 3, 0x01, 0x02, 0x03], // Public Key\n ...[GeneralTags.Int, 1, 0x01], // Permissions\n ]);\n const parser = new TLVParser(\n new Uint8Array([CommandTags.AddMember, value.length, ...value]),\n );\n\n // WHEN\n const parsed = parser.parseCommandData();\n\n // THEN\n expect(parsed).toStrictEqual(\n Right({\n type: CommandTags.AddMember,\n name: \"Alice\",\n publicKey: new Uint8Array([0x01, 0x02, 0x03]),\n permissions: 1,\n }),\n );\n });\n\n it(\"should fail if the command data is invalid\", () => {\n // GIVEN\n const value1 = new Uint8Array([\n ...[GeneralTags.Bytes, 3, 0x01, 0x02, 0x03], // Wrong type for Name\n ]);\n const value2 = new Uint8Array([\n ...[GeneralTags.String, 5, 0x41, 0x6c, 0x69, 0x63, 0x65], // Correct type but the other fields are missing\n ]);\n const parser1 = new TLVParser(\n new Uint8Array([CommandTags.AddMember, value1.length, ...value1]),\n );\n const parser2 = new TLVParser(\n new Uint8Array([CommandTags.AddMember, value2.length, ...value2]),\n );\n\n // WHEN\n const parsed1 = parser1.parseCommandData();\n const parsed2 = parser2.parseCommandData();\n\n // THEN\n expect(parsed1).toEqual(\n Left(new LKRPParsingError(\"Expected a string\")),\n );\n expect(parsed2).toEqual(\n Left(new LKRPParsingError(\"Unexpected end of TLV\")),\n );\n });\n });\n\n describe(\"Parse PublishKey Command Data\", () => {\n it(\"should parse a valid publish key command data\", () => {\n // GIVEN\n const value = new Uint8Array([\n ...[GeneralTags.Bytes, 3, 0x01, 0x02, 0x03], // Initialization Vector\n ...[GeneralTags.Bytes, 3, 0x04, 0x05, 0x06], // Encrypted xpriv\n ...[GeneralTags.PublicKey, 3, 0x03, 0x05, 0x07], // Recipient Public Key\n ...[GeneralTags.PublicKey, 3, 0x08, 0x09, 0x0a], // Ephemeral Public Key\n ]);\n const parser = new TLVParser(\n new Uint8Array([CommandTags.PublishKey, value.length, ...value]),\n );\n\n // WHEN\n const parsed = parser.parseCommandData();\n\n // THEN\n expect(parsed).toStrictEqual(\n Right({\n type: CommandTags.PublishKey,\n initializationVector: new Uint8Array([0x01, 0x02, 0x03]),\n encryptedXpriv: new Uint8Array([0x04, 0x05, 0x06]),\n recipient: new Uint8Array([0x03, 0x05, 0x07]),\n ephemeralPublicKey: new Uint8Array([0x08, 0x09, 0x0a]),\n }),\n );\n });\n\n it(\"should fail if the command data is invalid\", () => {\n // GIVEN\n const value1 = new Uint8Array([\n ...[GeneralTags.Int, 2, 0x01, 0x02], // Wrong type for Initialization Vector\n ]);\n const value2 = new Uint8Array([\n ...[GeneralTags.Bytes, 3, 0x01, 0x02, 0x03], // Correct type but the other fields are missing\n ]);\n const parser1 = new TLVParser(\n new Uint8Array([CommandTags.PublishKey, value1.length, ...value1]),\n );\n const parser2 = new TLVParser(\n new Uint8Array([CommandTags.PublishKey, value2.length, ...value2]),\n );\n\n // WHEN\n const parsed1 = parser1.parseCommandData();\n const parsed2 = parser2.parseCommandData();\n\n // THEN\n expect(parsed1).toEqual(Left(new LKRPParsingError(\"Expected bytes\")));\n expect(parsed2).toEqual(\n Left(new LKRPParsingError(\"Unexpected end of TLV\")),\n );\n });\n });\n\n describe(\"Parse Derive Command Data\", () => {\n it(\"should parse a valid derive command data\", () => {\n // GIVEN\n const value = new Uint8Array([\n ...[GeneralTags.Bytes, 4, 0x00, 0x00, 0x00, 0x01], // Path\n ...[GeneralTags.PublicKey, 3, 0x04, 0x05, 0x06], // Group Key\n ...[GeneralTags.Bytes, 3, 0x03, 0x05, 0x07], // Initialization Vector\n ...[GeneralTags.Bytes, 3, 0x08, 0x09, 0x0a], // Encrypted xpriv\n ...[GeneralTags.PublicKey, 3, 0x0a, 0x0b, 0x0c], // Ephemeral Public Key\n ]);\n const parser = new TLVParser(\n new Uint8Array([CommandTags.Derive, value.length, ...value]),\n );\n\n // WHEN\n const parsed = parser.parseCommandData();\n\n // THEN\n expect(parsed).toStrictEqual(\n Right({\n type: CommandTags.Derive,\n path: \"m/1\",\n groupKey: new Uint8Array([0x04, 0x05, 0x06]),\n initializationVector: new Uint8Array([0x03, 0x05, 0x07]),\n encryptedXpriv: new Uint8Array([0x08, 0x09, 0x0a]),\n ephemeralPublicKey: new Uint8Array([0x0a, 0x0b, 0x0c]),\n }),\n );\n });\n\n it(\"should fail if the command data is invalid\", () => {\n // GIVEN\n const value1 = new Uint8Array([\n ...[GeneralTags.Int, 2, 0x01, 0x02], // Wrong type for Path\n ]);\n const value2 = new Uint8Array([\n ...[GeneralTags.Bytes, 3, 0x01, 0x02, 0x03], // Correct type but the other fields are missing\n ]);\n const parser1 = new TLVParser(\n new Uint8Array([CommandTags.Derive, value1.length, ...value1]),\n );\n const parser2 = new TLVParser(\n new Uint8Array([CommandTags.Derive, value2.length, ...value2]),\n );\n\n // WHEN\n const parsed1 = parser1.parseCommandData();\n const parsed2 = parser2.parseCommandData();\n\n // THEN\n expect(parsed1).toEqual(Left(new LKRPParsingError(\"Expected bytes\")));\n expect(parsed2).toEqual(\n Left(new LKRPParsingError(\"Unexpected end of TLV\")),\n );\n });\n });\n\n it(\"should fail on unsupported command type\", () => {\n // GIVEN\n const parser = new TLVParser(new Uint8Array([0x3f, 1, 0x01]));\n // WHEN\n const parsed = parser.parseCommandData();\n // THEN\n expect(parsed).toEqual(\n Left(new LKRPParsingError(\"Unsupported command type: 0x3f\")),\n );\n });\n });\n\n describe(\"General Types Parsing\", () => {\n describe(\"parse\", () => {\n it(\"should parse a valid TLV structure\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01, GeneralTags.Bytes, 0]),\n );\n // WHEN\n const value1 = parser.parse();\n const value2 = parser.parse();\n // THEN\n expect(value1).toEqual(Right({ tag: GeneralTags.Int, value: 1 }));\n expect(value2).toEqual(\n Right({ tag: GeneralTags.Bytes, value: new Uint8Array([]) }),\n );\n });\n\n it(\"should fail on invalid TLV structure\", () => {\n // GIVEN\n const parser1 = new TLVParser(new Uint8Array([]));\n const parser2 = new TLVParser(new Uint8Array([GeneralTags.Int]));\n const parser3 = new TLVParser(new Uint8Array([GeneralTags.Int, 2]));\n // WHEN\n const value1 = parser1.parse();\n const value2 = parser2.parse();\n const value3 = parser3.parse();\n // THEN\n expect(value1).toEqual(\n Left(new LKRPParsingError(\"Unexpected end of TLV\")),\n );\n expect(value2).toEqual(\n Left(new LKRPParsingError(\"Invalid end of TLV, expected length\")),\n );\n expect(value3).toEqual(\n Left(new LKRPParsingError(\"Invalid end of TLV value\")),\n );\n });\n });\n\n describe(\"parseNull\", () => {\n it(\"should parse a null value\", () => {\n // GIVEN\n const parser = new TLVParser(new Uint8Array([GeneralTags.Null, 0]));\n // WHEN\n const value = parser.parseNull();\n // THEN\n expect(value).toEqual(Right(null));\n });\n\n it(\"should fail if the tag is not null\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseNull();\n // THEN\n expect(value).toEqual(Left(new LKRPParsingError(\"Expected null\")));\n });\n\n it(\"should fail if the format is invalid\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Null, 1, 0x02]),\n );\n // WHEN\n const value = parser.parseNull();\n // THEN\n expect(value).toEqual(\n Left(new LKRPParsingError(\"Invalid null length\")),\n );\n });\n });\n\n describe(\"parseInt\", () => {\n it(\"should parse big endian integer values\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([\n ...[GeneralTags.Int, 1, 0x01], // 1\n ...[GeneralTags.Int, 2, 0x01, 0x00], // 256\n ...[GeneralTags.Int, 4, 0x01, 0x00, 0x00, 0x00], // 16777216\n ]),\n );\n // WHEN\n const value1 = parser.parseInt();\n const value2 = parser.parseInt();\n const value4 = parser.parseInt();\n // THEN\n expect(value1).toEqual(Right(1));\n expect(value2).toEqual(Right(256));\n expect(value4).toEqual(Right(16777216));\n });\n\n it(\"should fail if the tag is not an integer\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Bytes, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseInt();\n // THEN\n expect(value).toEqual(Left(new LKRPParsingError(\"Expected a number\")));\n });\n\n it(\"should fail if the integer is not 1, 2, or 4 bytes\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 3, 0x01, 0x02, 0x03]),\n );\n // WHEN\n const value = parser.parseInt();\n // THEN\n expect(value).toEqual(\n Left(new LKRPParsingError(\"Unsupported integer length\")),\n );\n });\n });\n\n describe(\"parseHash\", () => {\n it(\"should parse a hash value\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Hash, 3, 0x01, 0x02, 0x03]),\n );\n // WHEN\n const value = parser.parseHash();\n // THEN\n expect(value).toEqual(Right(new Uint8Array([0x01, 0x02, 0x03])));\n });\n\n it(\"should fail if the tag is not a hash\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseHash();\n // THEN\n expect(value).toEqual(Left(new LKRPParsingError(\"Expected a hash\")));\n });\n });\n\n describe(\"parseSignature\", () => {\n it(\"should parse a signature value\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Signature, 3, 0x01, 0x02, 0x03]),\n );\n // WHEN\n const value = parser.parseSignature();\n // THEN\n expect(value).toEqual(Right(new Uint8Array([0x01, 0x02, 0x03])));\n });\n\n it(\"should fail if the tag is not a signature\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseSignature();\n // THEN\n expect(value).toEqual(\n Left(new LKRPParsingError(\"Expected a signature\")),\n );\n });\n });\n\n describe(\"parseString\", () => {\n it(\"should parse a string value\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.String, 5, 0x48, 0x65, 0x6c, 0x6c, 0x6f]),\n );\n // WHEN\n const value = parser.parseString();\n // THEN\n expect(value).toEqual(Right(\"Hello\"));\n });\n\n it(\"should fail if the tag is not a string\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseString();\n // THEN\n expect(value).toEqual(Left(new LKRPParsingError(\"Expected a string\")));\n });\n });\n\n describe(\"parseBytes\", () => {\n it(\"should parse a bytes value\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Bytes, 3, 0x01, 0x02, 0x03]),\n );\n // WHEN\n const value = parser.parseBytes();\n // THEN\n expect(value).toEqual(Right(new Uint8Array([0x01, 0x02, 0x03])));\n });\n\n it(\"should fail if the tag is not bytes\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseBytes();\n // THEN\n expect(value).toEqual(Left(new LKRPParsingError(\"Expected bytes\")));\n });\n });\n\n describe(\"parsePublicKey\", () => {\n it(\"should parse a public key value\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.PublicKey, 3, 0x01, 0x02, 0x03]),\n );\n // WHEN\n const value = parser.parsePublicKey();\n // THEN\n expect(value).toEqual(Right(new Uint8Array([0x01, 0x02, 0x03])));\n });\n\n it(\"should fail if the tag is not a public key\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parsePublicKey();\n // THEN\n expect(value).toEqual(\n Left(new LKRPParsingError(\"Expected a public key\")),\n );\n });\n });\n });\n});\n"],
5
- "mappings": "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",
6
- "names": ["Left", "Right", "LKRPParsingError", "CommandTags", "GeneralTags", "LKRPCommand", "TLVParser", "commands", "blockData", "value", "parsed", "value1", "value2", "parser1", "parser2", "parsed1", "parsed2", "parser", "parser3", "value3", "value4"]
4
+ "sourcesContent": ["import { Left, Right } from \"purify-ts\";\n\nimport { LKRPParsingError } from \"@api/app-binder/Errors\";\n\nimport { LKRPCommand } from \"./LKRPCommand\";\nimport { TLVParser } from \"./TLVParser\";\nimport { CommandTags, GeneralTags } from \"./TLVTags\";\n\ndescribe(\"TLVParser\", () => {\n describe(\"Block Data Parsing\", () => {\n describe(\"parseCommands\", () => {\n it(\"should parse has many commands has specified by the command count value\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([\n ...[GeneralTags.Int, 1, 0x02], // Command count: 2\n ...[CommandTags.AddMember, 3, ...[GeneralTags.Int, 1, 0x01]], // First command\n ...[CommandTags.Seed, 3, ...[GeneralTags.Int, 1, 0x02]], // Second command\n ]),\n );\n // WHEN\n const commands = parser.parseCommands();\n\n // THEN\n expect(commands).toStrictEqual(\n Right([\n new LKRPCommand(\n new Uint8Array([\n CommandTags.AddMember,\n 3,\n ...[GeneralTags.Int, 1, 0x01],\n ]),\n ),\n new LKRPCommand(\n new Uint8Array([\n CommandTags.Seed,\n 3,\n ...[GeneralTags.Int, 1, 0x02],\n ]),\n ),\n ]),\n );\n });\n });\n\n describe(\"parseBlockData\", () => {\n it(\"should parse a valid block data\", () => {\n // GIVEN\n const parser = new TLVParser(\n Uint8Array.from(\n [\n [GeneralTags.Int, 1, 0x01], // Version\n [GeneralTags.Hash, 3, 0x01, 0x02, 0x03], // Parent\n [GeneralTags.PublicKey, 3, 0x04, 0x05, 0x06], // Issuer\n [GeneralTags.Int, 1, 0x02], // Command count: 2\n [CommandTags.AddMember, 3, ...[GeneralTags.Int, 1, 0x01]], // First command\n [CommandTags.Seed, 3, ...[GeneralTags.Int, 1, 0x02]], // Second command\n [GeneralTags.Signature, 3, 0x07, 0x08, 0x09], // Signature\n ].flat(),\n ),\n );\n // WHEN\n const blockData = parser.parseBlockData();\n\n // THEN\n expect(blockData).toStrictEqual(\n Right({\n parent: \"010203\",\n issuer: new Uint8Array([0x04, 0x05, 0x06]),\n header: Uint8Array.from(\n [\n [GeneralTags.Int, 1, 0x01], // Version\n [GeneralTags.Hash, 3, 0x01, 0x02, 0x03], // Parent\n [GeneralTags.PublicKey, 3, 0x04, 0x05, 0x06], // Issuer\n [GeneralTags.Int, 1, 0x02], // Command count: 2\n ].flat(),\n ),\n\n commands: [\n new LKRPCommand(\n new Uint8Array([\n CommandTags.AddMember,\n 3,\n ...[GeneralTags.Int, 1, 0x01],\n ]),\n ),\n new LKRPCommand(\n new Uint8Array([\n CommandTags.Seed,\n 3,\n ...[GeneralTags.Int, 1, 0x02],\n ]),\n ),\n ],\n signature: Uint8Array.from([\n GeneralTags.Signature,\n 3,\n 0x07,\n 0x08,\n 0x09,\n ]),\n }),\n );\n });\n\n it(\"should fail if the block data is invalid\", () => {\n // GIVEN\n const parser = new TLVParser(new Uint8Array([]));\n // WHEN\n const blockData = parser.parseBlockData();\n // THEN\n expect(blockData).toEqual(\n Left(new LKRPParsingError(\"Unexpected end of TLV\")),\n );\n });\n });\n });\n\n describe(\"Command Data Parsing\", () => {\n describe(\"parseCommandBytes\", () => {\n it(\"should parse a valid command bytes\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([CommandTags.AddMember, 3, 0x01, 0x02, 0x03]),\n );\n // WHEN\n const value = parser.parseCommandBytes();\n // THEN\n expect(value).toEqual(\n Right(new Uint8Array([CommandTags.AddMember, 3, 0x01, 0x02, 0x03])),\n );\n });\n\n it(\"should fail if the tag is not a command\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseCommandBytes();\n // THEN\n expect(value).toEqual(\n Left(new LKRPParsingError(`Invalid command type: 0x01`)),\n );\n });\n });\n\n describe(\"Parse Seed Command Data\", () => {\n it(\"should parse a valid seed command data\", () => {\n // GIVEN\n const value = new Uint8Array([\n ...[GeneralTags.Bytes, 3, 0x01, 0x02, 0x03], // Topic\n ...[GeneralTags.Int, 2, 0x01, 0x02], // Protocol Version\n ...[GeneralTags.PublicKey, 3, 0x02, 0x04, 0x06], // Group Key\n ...[GeneralTags.Bytes, 3, 0x03, 0x05, 0x07], // Initialization Vector\n ...[GeneralTags.Bytes, 3, 0x04, 0x08, 0x10], // Encrypted xpriv\n ...[GeneralTags.PublicKey, 3, 0x0a, 0x0b, 0x0c], // Ephemeral Public Key\n ]);\n const parser = new TLVParser(\n new Uint8Array([CommandTags.Seed, value.length, ...value]),\n );\n\n // WHEN\n const parsed = parser.parseCommandData();\n\n // THEN\n expect(parsed).toStrictEqual(\n Right({\n type: CommandTags.Seed,\n topic: new Uint8Array([0x01, 0x02, 0x03]),\n protocolVersion: 258, // 0x0102 in big-endian\n groupKey: new Uint8Array([0x02, 0x04, 0x06]),\n initializationVector: new Uint8Array([0x03, 0x05, 0x07]),\n encryptedXpriv: new Uint8Array([0x04, 0x08, 0x10]),\n ephemeralPublicKey: new Uint8Array([0x0a, 0x0b, 0x0c]),\n }),\n );\n });\n\n it(\"should fail if the command data is invalid\", () => {\n // GIVEN\n const value1 = new Uint8Array([\n ...[GeneralTags.Signature, 3, 0x01, 0x02, 0x03], // Wrong type for Topic\n ]);\n const value2 = new Uint8Array([\n ...[GeneralTags.Bytes, 3, 0x01, 0x02, 0x03], // Correct type but the other fields are missing\n ]);\n const parser1 = new TLVParser(\n new Uint8Array([CommandTags.Seed, value1.length, ...value1]),\n );\n const parser2 = new TLVParser(\n new Uint8Array([CommandTags.Seed, value2.length, ...value2]),\n );\n\n // WHEN\n const parsed1 = parser1.parseCommandData();\n const parsed2 = parser2.parseCommandData();\n\n // THEN\n expect(parsed1).toEqual(Left(new LKRPParsingError(\"Expected bytes\")));\n expect(parsed2).toEqual(\n Left(new LKRPParsingError(\"Unexpected end of TLV\")),\n );\n });\n });\n\n describe(\"Parse AddMember Command Data\", () => {\n it(\"should parse a valid add member command data\", () => {\n // GIVEN\n const value = new Uint8Array([\n ...[GeneralTags.String, 5, 0x41, 0x6c, 0x69, 0x63, 0x65], // Name \"Alice\"\n ...[GeneralTags.PublicKey, 3, 0x01, 0x02, 0x03], // Public Key\n ...[GeneralTags.Int, 1, 0x01], // Permissions\n ]);\n const parser = new TLVParser(\n new Uint8Array([CommandTags.AddMember, value.length, ...value]),\n );\n\n // WHEN\n const parsed = parser.parseCommandData();\n\n // THEN\n expect(parsed).toStrictEqual(\n Right({\n type: CommandTags.AddMember,\n name: \"Alice\",\n publicKey: new Uint8Array([0x01, 0x02, 0x03]),\n permissions: 1,\n }),\n );\n });\n\n it(\"should fail if the command data is invalid\", () => {\n // GIVEN\n const value1 = new Uint8Array([\n ...[GeneralTags.Bytes, 3, 0x01, 0x02, 0x03], // Wrong type for Name\n ]);\n const value2 = new Uint8Array([\n ...[GeneralTags.String, 5, 0x41, 0x6c, 0x69, 0x63, 0x65], // Correct type but the other fields are missing\n ]);\n const parser1 = new TLVParser(\n new Uint8Array([CommandTags.AddMember, value1.length, ...value1]),\n );\n const parser2 = new TLVParser(\n new Uint8Array([CommandTags.AddMember, value2.length, ...value2]),\n );\n\n // WHEN\n const parsed1 = parser1.parseCommandData();\n const parsed2 = parser2.parseCommandData();\n\n // THEN\n expect(parsed1).toEqual(\n Left(new LKRPParsingError(\"Expected a string\")),\n );\n expect(parsed2).toEqual(\n Left(new LKRPParsingError(\"Unexpected end of TLV\")),\n );\n });\n });\n\n describe(\"Parse PublishKey Command Data\", () => {\n it(\"should parse a valid publish key command data\", () => {\n // GIVEN\n const value = new Uint8Array([\n ...[GeneralTags.Bytes, 3, 0x01, 0x02, 0x03], // Initialization Vector\n ...[GeneralTags.Bytes, 3, 0x04, 0x05, 0x06], // Encrypted xpriv\n ...[GeneralTags.PublicKey, 3, 0x03, 0x05, 0x07], // Recipient Public Key\n ...[GeneralTags.PublicKey, 3, 0x08, 0x09, 0x0a], // Ephemeral Public Key\n ]);\n const parser = new TLVParser(\n new Uint8Array([CommandTags.PublishKey, value.length, ...value]),\n );\n\n // WHEN\n const parsed = parser.parseCommandData();\n\n // THEN\n expect(parsed).toStrictEqual(\n Right({\n type: CommandTags.PublishKey,\n initializationVector: new Uint8Array([0x01, 0x02, 0x03]),\n encryptedXpriv: new Uint8Array([0x04, 0x05, 0x06]),\n recipient: new Uint8Array([0x03, 0x05, 0x07]),\n ephemeralPublicKey: new Uint8Array([0x08, 0x09, 0x0a]),\n }),\n );\n });\n\n it(\"should fail if the command data is invalid\", () => {\n // GIVEN\n const value1 = new Uint8Array([\n ...[GeneralTags.Int, 2, 0x01, 0x02], // Wrong type for Initialization Vector\n ]);\n const value2 = new Uint8Array([\n ...[GeneralTags.Bytes, 3, 0x01, 0x02, 0x03], // Correct type but the other fields are missing\n ]);\n const parser1 = new TLVParser(\n new Uint8Array([CommandTags.PublishKey, value1.length, ...value1]),\n );\n const parser2 = new TLVParser(\n new Uint8Array([CommandTags.PublishKey, value2.length, ...value2]),\n );\n\n // WHEN\n const parsed1 = parser1.parseCommandData();\n const parsed2 = parser2.parseCommandData();\n\n // THEN\n expect(parsed1).toEqual(Left(new LKRPParsingError(\"Expected bytes\")));\n expect(parsed2).toEqual(\n Left(new LKRPParsingError(\"Unexpected end of TLV\")),\n );\n });\n });\n\n describe(\"Parse Derive Command Data\", () => {\n it(\"should parse a valid derive command data\", () => {\n // GIVEN\n const value = new Uint8Array([\n ...[GeneralTags.Bytes, 4, 0x00, 0x00, 0x00, 0x01], // Path\n ...[GeneralTags.PublicKey, 3, 0x04, 0x05, 0x06], // Group Key\n ...[GeneralTags.Bytes, 3, 0x03, 0x05, 0x07], // Initialization Vector\n ...[GeneralTags.Bytes, 3, 0x08, 0x09, 0x0a], // Encrypted xpriv\n ...[GeneralTags.PublicKey, 3, 0x0a, 0x0b, 0x0c], // Ephemeral Public Key\n ]);\n const parser = new TLVParser(\n new Uint8Array([CommandTags.Derive, value.length, ...value]),\n );\n\n // WHEN\n const parsed = parser.parseCommandData();\n\n // THEN\n expect(parsed).toStrictEqual(\n Right({\n type: CommandTags.Derive,\n path: \"m/1\",\n groupKey: new Uint8Array([0x04, 0x05, 0x06]),\n initializationVector: new Uint8Array([0x03, 0x05, 0x07]),\n encryptedXpriv: new Uint8Array([0x08, 0x09, 0x0a]),\n ephemeralPublicKey: new Uint8Array([0x0a, 0x0b, 0x0c]),\n }),\n );\n });\n\n it(\"should fail if the command data is invalid\", () => {\n // GIVEN\n const value1 = new Uint8Array([\n ...[GeneralTags.Int, 2, 0x01, 0x02], // Wrong type for Path\n ]);\n const value2 = new Uint8Array([\n ...[GeneralTags.Bytes, 3, 0x01, 0x02, 0x03], // Correct type but the other fields are missing\n ]);\n const parser1 = new TLVParser(\n new Uint8Array([CommandTags.Derive, value1.length, ...value1]),\n );\n const parser2 = new TLVParser(\n new Uint8Array([CommandTags.Derive, value2.length, ...value2]),\n );\n\n // WHEN\n const parsed1 = parser1.parseCommandData();\n const parsed2 = parser2.parseCommandData();\n\n // THEN\n expect(parsed1).toEqual(Left(new LKRPParsingError(\"Expected bytes\")));\n expect(parsed2).toEqual(\n Left(new LKRPParsingError(\"Unexpected end of TLV\")),\n );\n });\n });\n\n it(\"should fail on unsupported command type\", () => {\n // GIVEN\n const parser = new TLVParser(new Uint8Array([0x3f, 1, 0x01]));\n // WHEN\n const parsed = parser.parseCommandData();\n // THEN\n expect(parsed).toEqual(\n Left(new LKRPParsingError(\"Unsupported command type: 0x3f\")),\n );\n });\n });\n\n describe(\"General Types Parsing\", () => {\n describe(\"parse\", () => {\n it(\"should parse a valid TLV structure\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01, GeneralTags.Bytes, 0]),\n );\n // WHEN\n const value1 = parser.parse();\n const value2 = parser.parse();\n // THEN\n expect(value1).toEqual(Right({ tag: GeneralTags.Int, value: 1 }));\n expect(value2).toEqual(\n Right({ tag: GeneralTags.Bytes, value: new Uint8Array([]) }),\n );\n });\n\n it(\"should fail on invalid TLV structure\", () => {\n // GIVEN\n const parser1 = new TLVParser(new Uint8Array([]));\n const parser2 = new TLVParser(new Uint8Array([GeneralTags.Int]));\n const parser3 = new TLVParser(new Uint8Array([GeneralTags.Int, 2]));\n // WHEN\n const value1 = parser1.parse();\n const value2 = parser2.parse();\n const value3 = parser3.parse();\n // THEN\n expect(value1).toEqual(\n Left(new LKRPParsingError(\"Unexpected end of TLV\")),\n );\n expect(value2).toEqual(\n Left(new LKRPParsingError(\"Invalid end of TLV, expected length\")),\n );\n expect(value3).toEqual(\n Left(new LKRPParsingError(\"Invalid end of TLV value\")),\n );\n });\n });\n\n describe(\"parseNull\", () => {\n it(\"should parse a null value\", () => {\n // GIVEN\n const parser = new TLVParser(new Uint8Array([GeneralTags.Null, 0]));\n // WHEN\n const value = parser.parseNull();\n // THEN\n expect(value).toEqual(Right(null));\n });\n\n it(\"should fail if the tag is not null\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseNull();\n // THEN\n expect(value).toEqual(Left(new LKRPParsingError(\"Expected null\")));\n });\n\n it(\"should fail if the format is invalid\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Null, 1, 0x02]),\n );\n // WHEN\n const value = parser.parseNull();\n // THEN\n expect(value).toEqual(\n Left(new LKRPParsingError(\"Invalid null length\")),\n );\n });\n });\n\n describe(\"parseInt\", () => {\n it(\"should parse big endian integer values\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([\n ...[GeneralTags.Int, 1, 0x01], // 1\n ...[GeneralTags.Int, 2, 0x01, 0x00], // 256\n ...[GeneralTags.Int, 4, 0x01, 0x00, 0x00, 0x00], // 16777216\n ]),\n );\n // WHEN\n const value1 = parser.parseInt();\n const value2 = parser.parseInt();\n const value4 = parser.parseInt();\n // THEN\n expect(value1).toEqual(Right(1));\n expect(value2).toEqual(Right(256));\n expect(value4).toEqual(Right(16777216));\n });\n\n it(\"should fail if the tag is not an integer\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Bytes, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseInt();\n // THEN\n expect(value).toEqual(Left(new LKRPParsingError(\"Expected a number\")));\n });\n\n it(\"should fail if the integer is not 1, 2, or 4 bytes\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 3, 0x01, 0x02, 0x03]),\n );\n // WHEN\n const value = parser.parseInt();\n // THEN\n expect(value).toEqual(\n Left(new LKRPParsingError(\"Unsupported integer length\")),\n );\n });\n });\n\n describe(\"parseHash\", () => {\n it(\"should parse a hash value\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Hash, 3, 0x01, 0x02, 0x03]),\n );\n // WHEN\n const value = parser.parseHash();\n // THEN\n expect(value).toEqual(Right(new Uint8Array([0x01, 0x02, 0x03])));\n });\n\n it(\"should fail if the tag is not a hash\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseHash();\n // THEN\n expect(value).toEqual(Left(new LKRPParsingError(\"Expected a hash\")));\n });\n });\n\n describe(\"parseSignature\", () => {\n it(\"should parse a signature value\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Signature, 3, 0x01, 0x02, 0x03]),\n );\n // WHEN\n const value = parser.parseSignature();\n // THEN\n expect(value).toEqual(Right(new Uint8Array([0x01, 0x02, 0x03])));\n });\n\n it(\"should fail if the tag is not a signature\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseSignature();\n // THEN\n expect(value).toEqual(\n Left(new LKRPParsingError(\"Expected a signature\")),\n );\n });\n });\n\n describe(\"parseString\", () => {\n it(\"should parse a string value\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.String, 5, 0x48, 0x65, 0x6c, 0x6c, 0x6f]),\n );\n // WHEN\n const value = parser.parseString();\n // THEN\n expect(value).toEqual(Right(\"Hello\"));\n });\n\n it(\"should fail if the tag is not a string\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseString();\n // THEN\n expect(value).toEqual(Left(new LKRPParsingError(\"Expected a string\")));\n });\n });\n\n describe(\"parseBytes\", () => {\n it(\"should parse a bytes value\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Bytes, 3, 0x01, 0x02, 0x03]),\n );\n // WHEN\n const value = parser.parseBytes();\n // THEN\n expect(value).toEqual(Right(new Uint8Array([0x01, 0x02, 0x03])));\n });\n\n it(\"should fail if the tag is not bytes\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parseBytes();\n // THEN\n expect(value).toEqual(Left(new LKRPParsingError(\"Expected bytes\")));\n });\n });\n\n describe(\"parsePublicKey\", () => {\n it(\"should parse a public key value\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.PublicKey, 3, 0x01, 0x02, 0x03]),\n );\n // WHEN\n const value = parser.parsePublicKey();\n // THEN\n expect(value).toEqual(Right(new Uint8Array([0x01, 0x02, 0x03])));\n });\n\n it(\"should fail if the tag is not a public key\", () => {\n // GIVEN\n const parser = new TLVParser(\n new Uint8Array([GeneralTags.Int, 1, 0x01]),\n );\n // WHEN\n const value = parser.parsePublicKey();\n // THEN\n expect(value).toEqual(\n Left(new LKRPParsingError(\"Expected a public key\")),\n );\n });\n });\n });\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["Left", "Right", "LKRPParsingError", "LKRPCommand", "TLVParser", "CommandTags", "GeneralTags", "commands", "blockData", "value", "parsed", "value1", "value2", "parser1", "parser2", "parsed1", "parsed2", "parser", "parser3", "value3", "value4"]
7
7
  }
@@ -1,2 +1,2 @@
1
1
  var u=(x=>(x[x.Null=0]="Null",x[x.Int=1]="Int",x[x.Hash=2]="Hash",x[x.Signature=3]="Signature",x[x.String=4]="String",x[x.Bytes=5]="Bytes",x[x.PublicKey=6]="PublicKey",x))(u||{}),M=(E=>(E[E.Seed=16]="Seed",E[E.AddMember=17]="AddMember",E[E.PublishKey=18]="PublishKey",E[E.CloseStream=19]="CloseStream",E[E.EditMember=20]="EditMember",E[E.Derive=21]="Derive",E))(M||{});const t=128;var i=(x=>(x[x.IV=0]="IV",x[x.ISSUER=1|t]="ISSUER",x[x.XPRIV=2|t]="XPRIV",x[x.EPHEMERAL_PUBLIC_KEY=3]="EPHEMERAL_PUBLIC_KEY",x[x.COMMAND_IV=4]="COMMAND_IV",x[x.GROUPKEY=5]="GROUPKEY",x[x.NEW_MEMBER=6|t]="NEW_MEMBER",x))(i||{});export{M as CommandTags,u as GeneralTags,i as TPTags};
2
- //# sourceMappingURL=Tags.js.map
2
+ //# sourceMappingURL=TLVTags.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../src/internal/models/Tags.ts"],
3
+ "sources": ["../../../../src/internal/utils/TLVTags.ts"],
4
4
  "sourcesContent": ["export enum GeneralTags {\n Null = 0x00,\n Int = 0x01,\n Hash = 0x02,\n Signature = 0x03,\n String = 0x04,\n Bytes = 0x05,\n PublicKey = 0x06,\n}\n\nexport enum CommandTags {\n Seed = 0x10,\n AddMember = 0x11,\n PublishKey = 0x12,\n CloseStream = 0x13,\n EditMember = 0x14,\n Derive = 0x15,\n}\n\nconst TP_ENCRYPT = 1 << 7;\n\nexport enum TPTags {\n IV = 0x00,\n ISSUER = 0x01 | TP_ENCRYPT,\n XPRIV = 0x02 | TP_ENCRYPT,\n EPHEMERAL_PUBLIC_KEY = 0x03,\n COMMAND_IV = 0x04,\n GROUPKEY = 0x05,\n NEW_MEMBER = 0x06 | TP_ENCRYPT,\n}\n"],
5
5
  "mappings": "AAAO,IAAKA,OACVA,IAAA,KAAO,GAAP,OACAA,IAAA,IAAM,GAAN,MACAA,IAAA,KAAO,GAAP,OACAA,IAAA,UAAY,GAAZ,YACAA,IAAA,OAAS,GAAT,SACAA,IAAA,MAAQ,GAAR,QACAA,IAAA,UAAY,GAAZ,YAPUA,OAAA,IAUAC,OACVA,IAAA,KAAO,IAAP,OACAA,IAAA,UAAY,IAAZ,YACAA,IAAA,WAAa,IAAb,aACAA,IAAA,YAAc,IAAd,cACAA,IAAA,WAAa,IAAb,aACAA,IAAA,OAAS,IAAT,SANUA,OAAA,IASZ,MAAMC,EAAa,IAEZ,IAAKC,OACVA,IAAA,GAAK,GAAL,KACAA,IAAA,OAAS,EAAOD,GAAhB,SACAC,IAAA,MAAQ,EAAOD,GAAf,QACAC,IAAA,qBAAuB,GAAvB,uBACAA,IAAA,WAAa,GAAb,aACAA,IAAA,SAAW,GAAX,WACAA,IAAA,WAAa,EAAOD,GAApB,aAPUC,OAAA",
6
6
  "names": ["GeneralTags", "CommandTags", "TP_ENCRYPT", "TPTags"]
@@ -1,2 +1,2 @@
1
- import{bufferToHexaString as t,hexaStringToBuffer as e}from"@ledgerhq/device-management-kit";function i(r){return e(r)??new Uint8Array}function o(r){return t(r).slice(2)}export{o as bytesToHex,i as hexToBytes};
1
+ function t(r){return Uint8Array.from(Buffer.from(r,"hex"))}function e(r){return Buffer.from(r).toString("hex")}export{e as bytesToHex,t as hexToBytes};
2
2
  //# sourceMappingURL=hex.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/internal/utils/hex.ts"],
4
- "sourcesContent": ["import {\n bufferToHexaString,\n hexaStringToBuffer,\n} from \"@ledgerhq/device-management-kit\";\n\nexport function hexToBytes(hex: string): Uint8Array {\n return hexaStringToBuffer(hex) ?? new Uint8Array();\n}\n\nexport function bytesToHex(bytes: Uint8Array): string {\n return bufferToHexaString(bytes).slice(2); // Remove the \"0x\" prefix\n}\n"],
5
- "mappings": "AAAA,OACE,sBAAAA,EACA,sBAAAC,MACK,kCAEA,SAASC,EAAWC,EAAyB,CAClD,OAAOF,EAAmBE,CAAG,GAAK,IAAI,UACxC,CAEO,SAASC,EAAWC,EAA2B,CACpD,OAAOL,EAAmBK,CAAK,EAAE,MAAM,CAAC,CAC1C",
6
- "names": ["bufferToHexaString", "hexaStringToBuffer", "hexToBytes", "hex", "bytesToHex", "bytes"]
4
+ "sourcesContent": ["export function hexToBytes(hex: string): Uint8Array {\n return Uint8Array.from(Buffer.from(hex, \"hex\"));\n}\n\nexport function bytesToHex(bytes: Uint8Array): string {\n return Buffer.from(bytes).toString(\"hex\");\n}\n"],
5
+ "mappings": "AAAO,SAASA,EAAWC,EAAyB,CAClD,OAAO,WAAW,KAAK,OAAO,KAAKA,EAAK,KAAK,CAAC,CAChD,CAEO,SAASC,EAAWC,EAA2B,CACpD,OAAO,OAAO,KAAKA,CAAK,EAAE,SAAS,KAAK,CAC1C",
6
+ "names": ["hexToBytes", "hex", "bytesToHex", "bytes"]
7
7
  }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -1,8 +1,9 @@
1
+ import { type Maybe } from "purify-ts";
1
2
  import { type AuthenticateDAReturnType } from "./app-binder/AuthenticateDeviceActionTypes";
2
- import { type Keypair, type Permissions } from "./app-binder/LKRPTypes";
3
+ import { type JWT, type Keypair, type Permissions } from "./app-binder/LKRPTypes";
3
4
  export interface LedgerKeyringProtocol {
4
- authenticate: (keypair: Keypair, clientName: string, permissions: Permissions, trustchainId?: string) => AuthenticateDAReturnType;
5
+ authenticate: (keypair: Keypair, applicationId: number, clientName: string, permissions: Permissions, trustchainId?: string, JWT?: JWT) => AuthenticateDAReturnType;
5
6
  encryptData: (xpriv: Uint8Array, data: Uint8Array) => Uint8Array;
6
- decryptData: (xpriv: Uint8Array, data: Uint8Array) => Uint8Array;
7
+ decryptData: (xpriv: Uint8Array, data: Uint8Array) => Maybe<Uint8Array>;
7
8
  }
8
9
  //# sourceMappingURL=LedgerKeyringProtocol.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LedgerKeyringProtocol.d.ts","sourceRoot":"","sources":["../../../src/api/LedgerKeyringProtocol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,4CAA4C,CAAC;AAC3F,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAExE,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,CACZ,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,WAAW,EACxB,YAAY,CAAC,EAAE,MAAM,KAClB,wBAAwB,CAAC;IAE9B,WAAW,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,KAAK,UAAU,CAAC;IAEjE,WAAW,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,KAAK,UAAU,CAAC;CAClE"}
1
+ {"version":3,"file":"LedgerKeyringProtocol.d.ts","sourceRoot":"","sources":["../../../src/api/LedgerKeyringProtocol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,4CAA4C,CAAC;AAC3F,OAAO,EACL,KAAK,GAAG,EACR,KAAK,OAAO,EACZ,KAAK,WAAW,EACjB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,CACZ,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,WAAW,EACxB,YAAY,CAAC,EAAE,MAAM,EACrB,GAAG,CAAC,EAAE,GAAG,KACN,wBAAwB,CAAC;IAE9B,WAAW,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,KAAK,UAAU,CAAC;IAEjE,WAAW,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,KAAK,KAAK,CAAC,UAAU,CAAC,CAAC;CACzE"}
@@ -1,18 +1,13 @@
1
1
  import { type DeviceManagementKit, type DeviceSessionId } from "@ledgerhq/device-management-kit";
2
2
  import { type LedgerKeyringProtocol } from "./LedgerKeyringProtocol";
3
- import { type LKRPEnv } from "./app-binder/LKRPTypes";
4
3
  export declare class LedgerKeyringProtocolBuilder {
5
4
  private readonly dmk;
6
5
  private readonly sessionId;
7
- private readonly applicationId;
8
- private readonly env?;
9
- private readonly baseUrl?;
10
- constructor(args: {
6
+ private readonly baseUrl;
7
+ constructor({ dmk, sessionId, baseUrl, }: {
11
8
  dmk: DeviceManagementKit;
12
9
  sessionId: DeviceSessionId;
13
- applicationId: number;
14
- env?: LKRPEnv;
15
- baseUrl?: string;
10
+ baseUrl: string;
16
11
  });
17
12
  build(): LedgerKeyringProtocol;
18
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LedgerKeyringProtocolBuilder.d.ts","sourceRoot":"","sources":["../../../src/api/LedgerKeyringProtocolBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAGxE,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEtD,qBAAa,4BAA4B;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAsB;IAC1C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAU;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAS;gBAEtB,IAAI,EAAE;QAChB,GAAG,EAAE,mBAAmB,CAAC;QACzB,SAAS,EAAE,eAAe,CAAC;QAC3B,aAAa,EAAE,MAAM,CAAC;QACtB,GAAG,CAAC,EAAE,OAAO,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;IAQD,KAAK,IAAI,qBAAqB;CAS/B"}
1
+ {"version":3,"file":"LedgerKeyringProtocolBuilder.d.ts","sourceRoot":"","sources":["../../../src/api/LedgerKeyringProtocolBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAGxE,qBAAa,4BAA4B;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAsB;IAC1C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,EACV,GAAG,EACH,SAAS,EACT,OAAO,GACR,EAAE;QACD,GAAG,EAAE,mBAAmB,CAAC;QACzB,SAAS,EAAE,eAAe,CAAC;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IAMD,KAAK,IAAI,qBAAqB;CAO/B"}
@@ -1,10 +1,10 @@
1
- import { type OpenAppDAError } from "@ledgerhq/device-management-kit";
1
+ import { type OpenAppDAError, type UnknownDAError } from "@ledgerhq/device-management-kit";
2
2
  import { type Either } from "purify-ts";
3
3
  import { type LKRPDeviceCommandError } from "../../internal/app-binder/command/utils/ledgerKeyringProtocolErrors";
4
4
  import { type LKRPDataSource } from "../../internal/lkrp-datasource/data/LKRPDataSource";
5
- import { type Trustchain } from "../../internal/models/Types";
6
5
  import { type LKRPBlockStream } from "../../internal/utils/LKRPBlockStream";
7
- import { type LKRPDataSourceError, type LKRPMissingDataError, type LKRPOutdatedTrustchainError, type LKRPParsingError, type LKRPTrustchainNotReady, type LKRPUnknownError } from "./Errors";
6
+ import { type Trustchain } from "../../internal/utils/types";
7
+ import { type LKRPHttpRequestError, type LKRPMissingDataError, type LKRPParsingError } from "./Errors";
8
8
  import { type JWT, type Keypair, type Permissions } from "./LKRPTypes";
9
9
  export type AddToTrustchainDAOutput = undefined;
10
10
  export type AddToTrustchainDAInput = Either<LKRPMissingDataError, {
@@ -17,7 +17,7 @@ export type AddToTrustchainDAInput = Either<LKRPMissingDataError, {
17
17
  readonly clientName: string;
18
18
  readonly permissions: Permissions;
19
19
  }>;
20
- export type AddToTrustchainDAError = LKRPDeviceCommandError | LKRPDataSourceError | LKRPParsingError | LKRPMissingDataError | LKRPOutdatedTrustchainError | LKRPTrustchainNotReady | OpenAppDAError | LKRPUnknownError;
20
+ export type AddToTrustchainDAError = LKRPDeviceCommandError | LKRPHttpRequestError | LKRPParsingError | LKRPMissingDataError | OpenAppDAError | UnknownDAError;
21
21
  export type AddToTrustchainDAIntermediateValue = {
22
22
  readonly requiredUserInteraction: string;
23
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"AddToTrustchainDeviceActionTypes.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/AddToTrustchainDeviceActionTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,2BAA2B,EAChC,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACtB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAEvE,MAAM,MAAM,uBAAuB,GAAG,SAAS,CAAC;AAEhD,MAAM,MAAM,sBAAsB,GAAG,MAAM,CACzC,oBAAoB,EACpB;IACE,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,iBAAiB,EAAE,eAAe,CAAC;IAC5C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;CACnC,CACF,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAC9B,sBAAsB,GACtB,mBAAmB,GACnB,gBAAgB,GAChB,oBAAoB,GACpB,2BAA2B,GAC3B,sBAAsB,GACtB,cAAc,GACd,gBAAgB,CAAC;AAErB,MAAM,MAAM,kCAAkC,GAAG;IAC/C,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG,MAAM,CACjD,sBAAsB,EACtB;IACE,QAAQ,CAAC,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;CACzC,CACF,CAAC"}
1
+ {"version":3,"file":"AddToTrustchainDeviceActionTypes.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/AddToTrustchainDeviceActionTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACtB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAEvE,MAAM,MAAM,uBAAuB,GAAG,SAAS,CAAC;AAEhD,MAAM,MAAM,sBAAsB,GAAG,MAAM,CACzC,oBAAoB,EACpB;IACE,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,iBAAiB,EAAE,eAAe,CAAC;IAC5C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;CACnC,CACF,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAC9B,sBAAsB,GACtB,oBAAoB,GACpB,gBAAgB,GAChB,oBAAoB,GACpB,cAAc,GACd,cAAc,CAAC;AAEnB,MAAM,MAAM,kCAAkC,GAAG;IAC/C,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG,MAAM,CACjD,sBAAsB,EACtB;IACE,QAAQ,CAAC,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;CACzC,CACF,CAAC"}
@@ -1,11 +1,10 @@
1
- import { type ExecuteDeviceActionReturnType, type OpenAppDAError } from "@ledgerhq/device-management-kit";
1
+ import { type ExecuteDeviceActionReturnType, type OpenAppDAError, type UnknownDAError } from "@ledgerhq/device-management-kit";
2
2
  import { type Either } from "purify-ts";
3
3
  import { type LKRPDeviceCommandError } from "../../internal/app-binder/command/utils/ledgerKeyringProtocolErrors";
4
4
  import { type LKRPDataSource } from "../../internal/lkrp-datasource/data/LKRPDataSource";
5
- import { type Trustchain } from "../../internal/models/Types";
6
5
  import { type LKRPBlockStream } from "../../internal/utils/LKRPBlockStream";
7
- import { type AddToTrustchainDAError } from "./AddToTrustchainDeviceActionTypes";
8
- import { type LKRPDataSourceError, type LKRPMissingDataError, type LKRPParsingError, type LKRPTrustchainNotReady, type LKRPUnauthorizedError, type LKRPUnknownError } from "./Errors";
6
+ import { type Trustchain } from "../../internal/utils/types";
7
+ import { type LKRPHttpRequestError, type LKRPMissingDataError, type LKRPParsingError, type LKRPUnhandledState } from "./Errors";
9
8
  import { type JWT, type Keypair, type Permissions } from "./LKRPTypes";
10
9
  export type AuthenticateDAReturnType = ExecuteDeviceActionReturnType<AuthenticateDAOutput, AuthenticateDAError, AuthenticateDAIntermediateValue>;
11
10
  export type AuthenticateDAInput = {
@@ -15,6 +14,7 @@ export type AuthenticateDAInput = {
15
14
  readonly clientName: string;
16
15
  readonly permissions: Permissions;
17
16
  readonly trustchainId: string | null;
17
+ readonly jwt: JWT | null;
18
18
  };
19
19
  export type AuthenticateDAOutput = {
20
20
  readonly jwt: JWT | null;
@@ -22,7 +22,7 @@ export type AuthenticateDAOutput = {
22
22
  readonly applicationPath: string | null;
23
23
  readonly encryptionKey: Uint8Array | null;
24
24
  };
25
- export type AuthenticateDAError = LKRPUnauthorizedError | AddToTrustchainDAError | LKRPDeviceCommandError | LKRPDataSourceError | LKRPParsingError | LKRPMissingDataError | LKRPTrustchainNotReady | OpenAppDAError | LKRPUnknownError;
25
+ export type AuthenticateDAError = LKRPDeviceCommandError | LKRPHttpRequestError | LKRPParsingError | LKRPMissingDataError | LKRPUnhandledState | OpenAppDAError | UnknownDAError;
26
26
  export type AuthenticateDAIntermediateValue = {
27
27
  readonly requiredUserInteraction: string;
28
28
  };
@@ -1 +1 @@
1
- {"version":3,"file":"AuthenticateDeviceActionTypes.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/AuthenticateDeviceActionTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,cAAc,EACpB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AACjF,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACtB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAEvE,MAAM,MAAM,wBAAwB,GAAG,6BAA6B,CAClE,oBAAoB,EACpB,mBAAmB,EACnB,+BAA+B,CAChC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,UAAU,GAAG,IAAI,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAC3B,qBAAqB,GACrB,sBAAsB,GACtB,sBAAsB,GACtB,mBAAmB,GACnB,gBAAgB,GAChB,oBAAoB,GACpB,sBAAsB,GACtB,cAAc,GACd,gBAAgB,CAAC;AAErB,MAAM,MAAM,+BAA+B,GAAG;IAC5C,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,MAAM,CAC9C,mBAAmB,EACnB;IACE,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,iBAAiB,EAAE,eAAe,GAAG,IAAI,CAAC;IACnD,QAAQ,CAAC,aAAa,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;CACxC,CACF,CAAC"}
1
+ {"version":3,"file":"AuthenticateDeviceActionTypes.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/AuthenticateDeviceActionTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAEvE,MAAM,MAAM,wBAAwB,GAAG,6BAA6B,CAClE,oBAAoB,EACpB,mBAAmB,EACnB,+BAA+B,CAChC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,UAAU,GAAG,IAAI,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAC3B,sBAAsB,GACtB,oBAAoB,GACpB,gBAAgB,GAChB,oBAAoB,GACpB,kBAAkB,GAClB,cAAc,GACd,cAAc,CAAC;AAEnB,MAAM,MAAM,+BAA+B,GAAG;IAC5C,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,MAAM,CAC9C,mBAAmB,EACnB;IACE,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,iBAAiB,EAAE,eAAe,GAAG,IAAI,CAAC;IACnD,QAAQ,CAAC,aAAa,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;CACxC,CACF,CAAC"}
@@ -1,53 +1,27 @@
1
1
  import { GeneralDmkError } from "@ledgerhq/device-management-kit";
2
- export type LKRPDataSourceErrorStatus = "UNAUTHORIZED" | "BAD_REQUEST" | "UNKNOWN";
3
- export declare class LKRPDataSourceError extends GeneralDmkError {
4
- readonly err: {
5
- status: LKRPDataSourceErrorStatus;
6
- message: string;
7
- };
8
- _tag: string;
9
- readonly message: string;
10
- readonly status: LKRPDataSourceErrorStatus;
11
- constructor(err: {
12
- status: LKRPDataSourceErrorStatus;
13
- message: string;
14
- });
15
- }
16
- export declare class LKRPUnauthorizedError extends GeneralDmkError {
17
- readonly trustchainId: string | null;
18
- readonly message: string;
2
+ export declare class LKRPHttpRequestError extends GeneralDmkError {
3
+ readonly err?: unknown | undefined;
19
4
  _tag: string;
20
- constructor(trustchainId?: string | null, message?: string);
5
+ constructor(err?: unknown | undefined);
21
6
  }
22
- export declare class LKRPOutdatedTrustchainError extends GeneralDmkError {
23
- readonly message: string;
7
+ export declare class LKRPUnauthorizedError extends LKRPHttpRequestError {
8
+ err?: unknown | undefined;
24
9
  _tag: string;
25
- constructor(message?: string);
26
- }
27
- export declare class LKRPTrustchainNotReady extends GeneralDmkError {
28
- readonly message: string;
29
- readonly _tag = "LedgerKeyringProtocolError";
30
- constructor(message?: string);
10
+ constructor(err?: unknown | undefined);
31
11
  }
32
12
  export declare class LKRPParsingError extends GeneralDmkError {
33
13
  readonly err?: unknown | undefined;
34
- readonly _tag = "LedgerKeyringProtocolError";
14
+ readonly _tag = "LKRPParsingError";
35
15
  constructor(err?: unknown | undefined);
36
16
  }
37
17
  export declare class LKRPMissingDataError extends GeneralDmkError {
38
18
  readonly err?: unknown | undefined;
39
- readonly _tag = "LedgerKeyringProtocolError";
19
+ readonly _tag = "LKRPMissingDataError";
40
20
  constructor(err?: unknown | undefined);
41
21
  }
42
- export declare class LKRPUnsupportedCommandError extends GeneralDmkError {
43
- readonly command: unknown;
44
- readonly _tag = "LedgerKeyringProtocolError";
45
- readonly message: string;
46
- constructor(command: unknown);
47
- }
48
- export declare class LKRPUnknownError extends GeneralDmkError {
49
- readonly message: string;
50
- readonly _tag = "LedgerKeyringProtocolError";
51
- constructor(message: string);
22
+ export declare class LKRPUnhandledState extends GeneralDmkError {
23
+ readonly err?: unknown | undefined;
24
+ readonly _tag = "LKRPUnhandledState";
25
+ constructor(err?: unknown | undefined);
52
26
  }
53
27
  //# sourceMappingURL=Errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Errors.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/Errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,MAAM,MAAM,yBAAyB,GACjC,cAAc,GACd,aAAa,GACb,SAAS,CAAC;AAEd,qBAAa,mBAAoB,SAAQ,eAAe;IAMpD,QAAQ,CAAC,GAAG,EAAE;QACZ,MAAM,EAAE,yBAAyB,CAAC;QAClC,OAAO,EAAE,MAAM,CAAC;KACjB;IARM,IAAI,SAAgC;IAC7C,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,SAAgB,MAAM,EAAE,yBAAyB,CAAC;gBAGvC,GAAG,EAAE;QACZ,MAAM,EAAE,yBAAyB,CAAC;QAClC,OAAO,EAAE,MAAM,CAAC;KACjB;CAMJ;AAED,qBAAa,qBAAsB,SAAQ,eAAe;IAGtD,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IACpC,QAAQ,CAAC,OAAO,EAAE,MAAM;IAHjB,IAAI,SAAgC;gBAElC,YAAY,GAAE,MAAM,GAAG,IAAW,EAClC,OAAO,GAAE,MAAsG;CAI3H;AAED,qBAAa,2BAA4B,SAAQ,eAAe;IAElD,QAAQ,CAAC,OAAO;IADnB,IAAI,SAAgC;gBACxB,OAAO,SAAgC;CAG7D;AAED,qBAAa,sBAAuB,SAAQ,eAAe;IAGvD,QAAQ,CAAC,OAAO;IAFlB,SAAkB,IAAI,gCAAgC;gBAE3C,OAAO,SAAuE;CAI1F;AAED,qBAAa,gBAAiB,SAAQ,eAAe;IAEvC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,gCAAgC;gBACjC,GAAG,CAAC,EAAE,OAAO,YAAA;CAGnC;AAED,qBAAa,oBAAqB,SAAQ,eAAe;IAE3C,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,gCAAgC;gBACjC,GAAG,CAAC,EAAE,OAAO,YAAA;CAGnC;AAED,qBAAa,2BAA4B,SAAQ,eAAe;IAGlD,QAAQ,CAAC,OAAO,EAAE,OAAO;IAFrC,SAAkB,IAAI,gCAAgC;IACtD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;gBACJ,OAAO,EAAE,OAAO;CActC;AAED,qBAAa,gBAAiB,SAAQ,eAAe;IAEvC,QAAQ,CAAC,OAAO,EAAE,MAAM;IADpC,SAAkB,IAAI,gCAAgC;gBACjC,OAAO,EAAE,MAAM;CAGrC"}
1
+ {"version":3,"file":"Errors.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/Errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,qBAAa,oBAAqB,SAAQ,eAAe;IAE3C,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADzB,IAAI,SAA0B;gBAClB,GAAG,CAAC,EAAE,OAAO,YAAA;CAGnC;AAED,qBAAa,qBAAsB,SAAQ,oBAAoB;IAExC,GAAG,CAAC,EAAE,OAAO;IADzB,IAAI,SAA2B;gBACnB,GAAG,CAAC,EAAE,OAAO,YAAA;CAGnC;AAED,qBAAa,gBAAiB,SAAQ,eAAe;IAEvC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,sBAAsB;gBACvB,GAAG,CAAC,EAAE,OAAO,YAAA;CAGnC;AAED,qBAAa,oBAAqB,SAAQ,eAAe;IAE3C,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,0BAA0B;gBAC3B,GAAG,CAAC,EAAE,OAAO,YAAA;CAGnC;AAED,qBAAa,kBAAmB,SAAQ,eAAe;IAEzC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,wBAAwB;gBACzB,GAAG,CAAC,EAAE,OAAO,YAAA;CAGnC"}
@@ -4,10 +4,6 @@ export interface Keypair {
4
4
  sign(message: Uint8Array): Promise<Uint8Array>;
5
5
  ecdh(publicKey: Uint8Array): Uint8Array;
6
6
  }
7
- export declare enum LKRPEnv {
8
- PROD = "prod",
9
- STAGING = "staging"
10
- }
11
7
  export type JWT = {
12
8
  access_token: string;
13
9
  permissions: {
@@ -1 +1 @@
1
- {"version":3,"file":"LKRPTypes.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/LKRPTypes.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,OAAO;IACtB,WAAW,IAAI,UAAU,CAAC;IAC1B,WAAW,IAAI,MAAM,CAAC;IACtB,IAAI,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC/C,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,UAAU,CAAC;CACzC;AAED,oBAAY,OAAO;IACjB,IAAI,SAAS;IACb,OAAO,YAAY;CACpB;AAED,MAAM,MAAM,GAAG,GAAG;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE;QACX,CAAC,YAAY,EAAE,MAAM,GAAG;YACtB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;SAC1B,CAAC;KACH,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,oBAAY,WAAW;IACrB,KAAK,aAAa,CAAE,iDAAiD;IACrE,WAAW,IAAI,CAAE,uDAAuD;IACxE,UAAU,IAAS,CAAE,uJAAuJ;IAC5K,aAAa,IAAS;CACvB"}
1
+ {"version":3,"file":"LKRPTypes.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/LKRPTypes.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,OAAO;IACtB,WAAW,IAAI,UAAU,CAAC;IAC1B,WAAW,IAAI,MAAM,CAAC;IACtB,IAAI,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC/C,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,UAAU,CAAC;CACzC;AAED,MAAM,MAAM,GAAG,GAAG;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE;QACX,CAAC,YAAY,EAAE,MAAM,GAAG;YACtB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;SAC1B,CAAC;KACH,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,oBAAY,WAAW;IACrB,KAAK,aAAa,CAAE,iDAAiD;IACrE,WAAW,IAAI,CAAE,uDAAuD;IACxE,UAAU,IAAS,CAAE,uJAAuJ;IAC5K,aAAa,IAAS;CACvB"}
@@ -1,6 +1,5 @@
1
1
  export interface SignBlockHeaderCommandArgs {
2
- parent: Uint8Array;
3
- commandCount: number;
2
+ header: Uint8Array;
4
3
  }
5
4
  export type SignBlockHeaderCommandResponse = Uint8Array;
6
5
  //# sourceMappingURL=SignBlockHeaderCommandTypes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SignBlockHeaderCommandTypes.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/SignBlockHeaderCommandTypes.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,UAAU,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,8BAA8B,GAAG,UAAU,CAAC"}
1
+ {"version":3,"file":"SignBlockHeaderCommandTypes.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/SignBlockHeaderCommandTypes.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,MAAM,8BAA8B,GAAG,UAAU,CAAC"}
@@ -1,21 +1,20 @@
1
1
  import { type DeviceManagementKit, type DeviceSessionId } from "@ledgerhq/device-management-kit";
2
+ import { Maybe } from "purify-ts";
2
3
  import { type AuthenticateDAReturnType } from "../api/app-binder/AuthenticateDeviceActionTypes";
3
- import { type Keypair, type LKRPEnv, type Permissions } from "../api/app-binder/LKRPTypes";
4
+ import { type JWT, type Keypair, type Permissions } from "../api/app-binder/LKRPTypes";
4
5
  import { type LedgerKeyringProtocol } from "../api/LedgerKeyringProtocol";
5
6
  type DefaultLedgerKeyringProtocolConstructorArgs = {
6
7
  dmk: DeviceManagementKit;
7
8
  sessionId: DeviceSessionId;
8
- applicationId: number;
9
- env?: LKRPEnv;
10
- baseUrl?: string;
9
+ baseUrl: string;
11
10
  };
12
11
  export declare class DefaultLedgerKeyringProtocol implements LedgerKeyringProtocol {
13
12
  name: string;
14
13
  private _container;
15
- constructor({ dmk, sessionId, applicationId, env, baseUrl, }: DefaultLedgerKeyringProtocolConstructorArgs);
16
- authenticate(keypair: Keypair, clientName: string, permissions: Permissions, trustchainId?: string): AuthenticateDAReturnType;
14
+ constructor({ dmk, sessionId, baseUrl, }: DefaultLedgerKeyringProtocolConstructorArgs);
15
+ authenticate(keypair: Keypair, applicationId: number, clientName: string, permissions: Permissions, trustchainId?: string, jwt?: JWT): AuthenticateDAReturnType;
17
16
  encryptData(encryptionKey: Uint8Array, data: Uint8Array): Uint8Array;
18
- decryptData(encryptionKey: Uint8Array, data: Uint8Array): Uint8Array;
17
+ decryptData(encryptionKey: Uint8Array, data: Uint8Array): Maybe<Uint8Array>;
19
18
  }
20
19
  export {};
21
20
  //# sourceMappingURL=DefaultLedgerKeyringProtocol.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultLedgerKeyringProtocol.d.ts","sourceRoot":"","sources":["../../../src/internal/DefaultLedgerKeyringProtocol.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,iCAAiC,CAAC;AAQzC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AAG9F,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,WAAW,EACjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAQxE,KAAK,2CAA2C,GAAG;IACjD,GAAG,EAAE,mBAAmB,CAAC;IACzB,SAAS,EAAE,eAAe,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,qBAAa,4BAA6B,YAAW,qBAAqB;IACxE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,UAAU,CAAY;gBAElB,EACV,GAAG,EACH,SAAS,EACT,aAAa,EACb,GAAG,EACH,OAAO,GACR,EAAE,2CAA2C;IAW9C,YAAY,CACV,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,WAAW,EACxB,YAAY,CAAC,EAAE,MAAM,GACpB,wBAAwB;IAO3B,WAAW,CAAC,aAAa,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,GAAG,UAAU;IA+BpE,WAAW,CAAC,aAAa,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,GAAG,UAAU;CA2CrE"}
1
+ {"version":3,"file":"DefaultLedgerKeyringProtocol.d.ts","sourceRoot":"","sources":["../../../src/internal/DefaultLedgerKeyringProtocol.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,iCAAiC,CAAC;AAMzC,OAAO,EAAE,KAAK,EAAW,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AAE9F,OAAO,EACL,KAAK,GAAG,EACR,KAAK,OAAO,EACZ,KAAK,WAAW,EACjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAOxE,KAAK,2CAA2C,GAAG;IACjD,GAAG,EAAE,mBAAmB,CAAC;IACzB,SAAS,EAAE,eAAe,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,qBAAa,4BAA6B,YAAW,qBAAqB;IACxE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,UAAU,CAAY;gBAElB,EACV,GAAG,EACH,SAAS,EACT,OAAO,GACR,EAAE,2CAA2C;IAK9C,YAAY,CACV,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,WAAW,EACxB,YAAY,CAAC,EAAE,MAAM,EACrB,GAAG,CAAC,EAAE,GAAG,GACR,wBAAwB;IAc3B,WAAW,CAAC,aAAa,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,GAAG,UAAU;IA+BpE,WAAW,CAAC,aAAa,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;CAkC5E"}
@@ -1,19 +1,20 @@
1
1
  import { DeviceManagementKit, type DeviceSessionId } from "@ledgerhq/device-management-kit";
2
2
  import { AuthenticateDAReturnType } from "../../api/app-binder/AuthenticateDeviceActionTypes";
3
3
  import { GetVersionDAReturnType } from "../../api/app-binder/GetVersionDeviceActionTypes";
4
- import { Keypair, Permissions } from "../../api/app-binder/LKRPTypes";
4
+ import { JWT, Keypair, Permissions } from "../../api/app-binder/LKRPTypes";
5
5
  import { type LKRPDataSource } from "../lkrp-datasource/data/LKRPDataSource";
6
6
  export declare class LedgerKeyringProtocolBinder {
7
7
  private readonly dmk;
8
8
  private readonly sessionId;
9
- private readonly applicationId;
10
9
  private readonly lkrpDataSource;
11
- constructor(dmk: DeviceManagementKit, sessionId: DeviceSessionId, applicationId: number, lkrpDataSource: LKRPDataSource);
10
+ constructor(dmk: DeviceManagementKit, sessionId: DeviceSessionId, lkrpDataSource: LKRPDataSource);
12
11
  authenticate(args: {
13
12
  keypair: Keypair;
13
+ applicationId: number;
14
14
  clientName: string;
15
15
  permissions: Permissions;
16
16
  trustchainId?: string;
17
+ jwt?: JWT;
17
18
  }): AuthenticateDAReturnType;
18
19
  getVersion(args: {
19
20
  skipOpenApp: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"LedgerKeyringProtocolBinder.d.ts","sourceRoot":"","sources":["../../../../src/internal/app-binder/LedgerKeyringProtocolBinder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,KAAK,eAAe,EAGrB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AACzF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAMpF,qBACa,2BAA2B;IAET,OAAO,CAAC,QAAQ,CAAC,GAAG;IAG/C,OAAO,CAAC,QAAQ,CAAC,SAAS;IAG1B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAG9B,OAAO,CAAC,QAAQ,CAAC,cAAc;gBATa,GAAG,EAAE,mBAAmB,EAGnD,SAAS,EAAE,eAAe,EAG1B,aAAa,EAAE,MAAM,EAGrB,cAAc,EAAE,cAAc;IAGjD,YAAY,CAAC,IAAI,EAAE;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,WAAW,CAAC;QACzB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,GAAG,wBAAwB;IAgB5B,UAAU,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,OAAO,CAAA;KAAE,GAAG,sBAAsB;IAclE,UAAU,IAAI,OAAO;IAIrB,SAAS,IAAI,OAAO;IAIpB,IAAI,IAAI,OAAO;IAIf,WAAW,IAAI,OAAO;IAItB,SAAS,IAAI,OAAO;IAIpB,gBAAgB,IAAI,OAAO;CAG5B"}
1
+ {"version":3,"file":"LedgerKeyringProtocolBinder.d.ts","sourceRoot":"","sources":["../../../../src/internal/app-binder/LedgerKeyringProtocolBinder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,KAAK,eAAe,EAGrB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AACzF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAEtE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAMpF,qBACa,2BAA2B;IAET,OAAO,CAAC,QAAQ,CAAC,GAAG;IAG/C,OAAO,CAAC,QAAQ,CAAC,SAAS;IAG1B,OAAO,CAAC,QAAQ,CAAC,cAAc;gBANa,GAAG,EAAE,mBAAmB,EAGnD,SAAS,EAAE,eAAe,EAG1B,cAAc,EAAE,cAAc;IAGjD,YAAY,CAAC,IAAI,EAAE;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,aAAa,EAAE,MAAM,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,WAAW,CAAC;QACzB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,GAAG,CAAC,EAAE,GAAG,CAAC;KACX,GAAG,wBAAwB;IAiB5B,UAAU,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,OAAO,CAAA;KAAE,GAAG,sBAAsB;IAclE,UAAU,IAAI,OAAO;IAIrB,SAAS,IAAI,OAAO;IAIpB,IAAI,IAAI,OAAO;IAIf,WAAW,IAAI,OAAO;IAItB,SAAS,IAAI,OAAO;IAIpB,gBAAgB,IAAI,OAAO;CAG5B"}
@@ -1,7 +1,6 @@
1
1
  import { type Apdu, type ApduResponse, type Command, type CommandResult } from "@ledgerhq/device-management-kit";
2
2
  import { type SignBlockHeaderCommandArgs, type SignBlockHeaderCommandResponse } from "../../../api/app-binder/SignBlockHeaderCommandTypes";
3
3
  import { type LedgerKeyringProtocolErrorCodes } from "./utils/ledgerKeyringProtocolErrors";
4
- export declare const ISSUER_PLACEHOLDER_TLV: Uint8Array<ArrayBuffer>;
5
4
  export declare class SignBlockHeaderCommand implements Command<SignBlockHeaderCommandResponse, SignBlockHeaderCommandArgs, LedgerKeyringProtocolErrorCodes> {
6
5
  private readonly args;
7
6
  private readonly errorHelper;
@@ -1 +1 @@
1
- {"version":3,"file":"SignBlockHeader.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/command/SignBlockHeader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,IAAI,EAGT,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,aAAa,EAGnB,MAAM,iCAAiC,CAAC;AAIzC,OAAO,EACL,KAAK,0BAA0B,EAC/B,KAAK,8BAA8B,EACpC,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAEL,KAAK,+BAA+B,EAErC,MAAM,qCAAqC,CAAC;AAM7C,eAAO,MAAM,sBAAsB,yBAIjC,CAAC;AAEH,qBAAa,sBACX,YACE,OAAO,CACL,8BAA8B,EAC9B,0BAA0B,EAC1B,+BAA+B,CAChC;IAOS,OAAO,CAAC,QAAQ,CAAC,IAAI;IALjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAG6B;gBAE5B,IAAI,EAAE,0BAA0B;IAE7D,OAAO,IAAI,IAAI;IAqBf,aAAa,CACX,YAAY,EAAE,YAAY,GACzB,aAAa,CACd,8BAA8B,EAC9B,+BAA+B,CAChC;CAiBF"}
1
+ {"version":3,"file":"SignBlockHeader.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/command/SignBlockHeader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,IAAI,EAGT,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,aAAa,EAGnB,MAAM,iCAAiC,CAAC;AAIzC,OAAO,EACL,KAAK,0BAA0B,EAC/B,KAAK,8BAA8B,EACpC,MAAM,6CAA6C,CAAC;AAErD,OAAO,EAEL,KAAK,+BAA+B,EAErC,MAAM,qCAAqC,CAAC;AAE7C,qBAAa,sBACX,YACE,OAAO,CACL,8BAA8B,EAC9B,0BAA0B,EAC1B,+BAA+B,CAChC;IAOS,OAAO,CAAC,QAAQ,CAAC,IAAI;IALjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAG6B;gBAE5B,IAAI,EAAE,0BAA0B;IAE7D,OAAO,IAAI,IAAI;IAWf,aAAa,CACX,YAAY,EAAE,YAAY,GACzB,aAAa,CACd,8BAA8B,EAC9B,+BAA+B,CAChC;CAiBF"}
@@ -4,7 +4,7 @@ import { type AddToTrustchainDAError, type AddToTrustchainDAInput, type AddToTru
4
4
  import { type Keypair } from "../../../api/index";
5
5
  import { type LKRPDeviceCommandError } from "../../app-binder/command/utils/ledgerKeyringProtocolErrors";
6
6
  import { type ParseStreamToDeviceTaskInput } from "../../app-binder/task/ParseStreamToDeviceTask";
7
- import { type SignBlockTaskInput } from "../../app-binder/task/SignBlockTask";
7
+ import { type SignBlockError, type SignBlockTaskInput } from "../../app-binder/task/SignBlockTask";
8
8
  export declare class AddToTrustchainDeviceAction extends XStateDeviceAction<AddToTrustchainDAOutput, AddToTrustchainDAInput, AddToTrustchainDAError, AddToTrustchainDAIntermediateValue, AddToTrustchainDAInternalState> {
9
9
  makeStateMachine(internalApi: InternalApi): DeviceActionStateMachine<AddToTrustchainDAOutput, AddToTrustchainDAInput, AddToTrustchainDAError, AddToTrustchainDAIntermediateValue, AddToTrustchainDAInternalState>;
10
10
  extractDependencies(internalApi: InternalApi): {
@@ -14,7 +14,7 @@ export declare class AddToTrustchainDeviceAction extends XStateDeviceAction<AddT
14
14
  }) => Promise<Either<AddToTrustchainDAError, unknown>>;
15
15
  signBlock: (args: {
16
16
  input: Either<AddToTrustchainDAError, SignBlockTaskInput>;
17
- }) => Promise<Either<AddToTrustchainDAError, void>>;
17
+ }) => Promise<Either<SignBlockError, void>>;
18
18
  };
19
19
  }
20
20
  //# sourceMappingURL=AddToTrustchainDeviceAction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AddToTrustchainDeviceAction.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/device-action/AddToTrustchainDeviceAction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,wBAAwB,EAE7B,KAAK,WAAW,EAGhB,kBAAkB,EACnB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,MAAM,EAAmC,MAAM,WAAW,CAAC;AAGzE,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,kCAAkC,EACvC,KAAK,8BAA8B,EACnC,KAAK,uBAAuB,EAC7B,MAAM,kDAAkD,CAAC;AAK1D,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAE7G,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,yCAAyC,CAAC;AAMjD,qBAAa,2BAA4B,SAAQ,kBAAkB,CACjE,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,kCAAkC,EAClC,8BAA8B,CAC/B;IACC,gBAAgB,CACd,WAAW,EAAE,WAAW,GACvB,wBAAwB,CACzB,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,kCAAkC,EAClC,8BAA8B,CAC/B;IA4OD,mBAAmB,CAAC,WAAW,EAAE,WAAW;2BAEvB,OAAO,CAAC,MAAM,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;4BAGvC;YACxB,KAAK,EAAE,MAAM,CAAC,sBAAsB,EAAE,4BAA4B,CAAC,CAAC;SACrE;0BAOiB;YAChB,KAAK,EAAE,MAAM,CAAC,sBAAsB,EAAE,kBAAkB,CAAC,CAAC;SAC3D,KAAG,OAAO,CAAC,MAAM,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;;CAMtD"}
1
+ {"version":3,"file":"AddToTrustchainDeviceAction.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/device-action/AddToTrustchainDeviceAction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,wBAAwB,EAE7B,KAAK,WAAW,EAIhB,kBAAkB,EACnB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,MAAM,EAAmC,MAAM,WAAW,CAAC;AAGzE,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,kCAAkC,EACvC,KAAK,8BAA8B,EACnC,KAAK,uBAAuB,EAC7B,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAE7G,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,kBAAkB,EACxB,MAAM,yCAAyC,CAAC;AAMjD,qBAAa,2BAA4B,SAAQ,kBAAkB,CACjE,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,kCAAkC,EAClC,8BAA8B,CAC/B;IACC,gBAAgB,CACd,WAAW,EAAE,WAAW,GACvB,wBAAwB,CACzB,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,kCAAkC,EAClC,8BAA8B,CAC/B;IA0OD,mBAAmB,CAAC,WAAW,EAAE,WAAW;2BAEvB,OAAO,CAAC,MAAM,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;4BAGvC;YACxB,KAAK,EAAE,MAAM,CAAC,sBAAsB,EAAE,4BAA4B,CAAC,CAAC;SACrE;0BAOiB;YAChB,KAAK,EAAE,MAAM,CAAC,sBAAsB,EAAE,kBAAkB,CAAC,CAAC;SAC3D,KAAG,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;;CAM9C"}
@@ -27,7 +27,7 @@ export declare class AuthenticateDeviceAction extends XStateDeviceAction<Authent
27
27
  jwt: JWT;
28
28
  }>;
29
29
  }) => Promise<Either<AuthenticateDAError, {
30
- trustchain: import("../../models/Types").Trustchain;
30
+ trustchain: import("../../utils/types").Trustchain;
31
31
  applicationStream: LKRPBlockStream;
32
32
  }>>;
33
33
  extractEncryptionKey: (args: {