ts-mls 1.4.0 → 1.4.2

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 (159) hide show
  1. package/dist/authenticatedContent.d.ts +3 -1
  2. package/dist/authenticatedContent.js +10 -8
  3. package/dist/authenticatedContent.js.map +1 -1
  4. package/dist/capabilities.d.ts +2 -1
  5. package/dist/capabilities.js +13 -12
  6. package/dist/capabilities.js.map +1 -1
  7. package/dist/clientState.d.ts +4 -3
  8. package/dist/clientState.js +87 -59
  9. package/dist/clientState.js.map +1 -1
  10. package/dist/codec/number.d.ts +5 -1
  11. package/dist/codec/number.js +33 -24
  12. package/dist/codec/number.js.map +1 -1
  13. package/dist/codec/optional.d.ts +2 -2
  14. package/dist/codec/optional.js +24 -7
  15. package/dist/codec/optional.js.map +1 -1
  16. package/dist/codec/tlsEncoder.d.ts +11 -8
  17. package/dist/codec/tlsEncoder.js +39 -21
  18. package/dist/codec/tlsEncoder.js.map +1 -1
  19. package/dist/codec/variableLength.d.ts +4 -4
  20. package/dist/codec/variableLength.js +58 -28
  21. package/dist/codec/variableLength.js.map +1 -1
  22. package/dist/commit.d.ts +2 -1
  23. package/dist/commit.js +7 -6
  24. package/dist/commit.js.map +1 -1
  25. package/dist/contentType.d.ts +2 -1
  26. package/dist/contentType.js +4 -3
  27. package/dist/contentType.js.map +1 -1
  28. package/dist/createCommit.js +6 -5
  29. package/dist/createCommit.js.map +1 -1
  30. package/dist/credential.d.ts +5 -1
  31. package/dist/credential.js +14 -10
  32. package/dist/credential.js.map +1 -1
  33. package/dist/credentialType.d.ts +2 -1
  34. package/dist/credentialType.js +4 -3
  35. package/dist/credentialType.js.map +1 -1
  36. package/dist/crypto/ciphersuite.d.ts +2 -1
  37. package/dist/crypto/ciphersuite.js +4 -3
  38. package/dist/crypto/ciphersuite.js.map +1 -1
  39. package/dist/crypto/hash.js +4 -3
  40. package/dist/crypto/hash.js.map +1 -1
  41. package/dist/crypto/hpke.js +10 -4
  42. package/dist/crypto/hpke.js.map +1 -1
  43. package/dist/crypto/implementation/default/makeAead.js +9 -9
  44. package/dist/crypto/implementation/default/makeAead.js.map +1 -1
  45. package/dist/crypto/implementation/default/makeHashImpl.js +5 -5
  46. package/dist/crypto/implementation/default/makeHashImpl.js.map +1 -1
  47. package/dist/crypto/implementation/default/makeKdfImpl.js +3 -3
  48. package/dist/crypto/implementation/default/makeKdfImpl.js.map +1 -1
  49. package/dist/crypto/implementation/hpke.js +11 -11
  50. package/dist/crypto/implementation/hpke.js.map +1 -1
  51. package/dist/crypto/kdf.js +8 -7
  52. package/dist/crypto/kdf.js.map +1 -1
  53. package/dist/crypto/signature.js +10 -4
  54. package/dist/crypto/signature.js.map +1 -1
  55. package/dist/defaultExtensionType.d.ts +2 -1
  56. package/dist/defaultExtensionType.js +4 -3
  57. package/dist/defaultExtensionType.js.map +1 -1
  58. package/dist/defaultProposalType.d.ts +2 -1
  59. package/dist/defaultProposalType.js +4 -3
  60. package/dist/defaultProposalType.js.map +1 -1
  61. package/dist/extension.d.ts +3 -1
  62. package/dist/extension.js +8 -6
  63. package/dist/extension.js.map +1 -1
  64. package/dist/externalSender.d.ts +2 -1
  65. package/dist/externalSender.js +5 -4
  66. package/dist/externalSender.js.map +1 -1
  67. package/dist/framedContent.d.ts +9 -1
  68. package/dist/framedContent.js +35 -27
  69. package/dist/framedContent.js.map +1 -1
  70. package/dist/groupContext.d.ts +2 -1
  71. package/dist/groupContext.js +17 -16
  72. package/dist/groupContext.js.map +1 -1
  73. package/dist/groupInfo.d.ts +3 -1
  74. package/dist/groupInfo.js +11 -9
  75. package/dist/groupInfo.js.map +1 -1
  76. package/dist/groupSecrets.d.ts +2 -1
  77. package/dist/groupSecrets.js +6 -5
  78. package/dist/groupSecrets.js.map +1 -1
  79. package/dist/hpkeCiphertext.d.ts +2 -1
  80. package/dist/hpkeCiphertext.js +4 -3
  81. package/dist/hpkeCiphertext.js.map +1 -1
  82. package/dist/index.d.ts +1 -1
  83. package/dist/index.js +1 -1
  84. package/dist/index.js.map +1 -1
  85. package/dist/keyPackage.d.ts +12 -3
  86. package/dist/keyPackage.js +23 -18
  87. package/dist/keyPackage.js.map +1 -1
  88. package/dist/leafNode.d.ts +11 -1
  89. package/dist/leafNode.js +43 -27
  90. package/dist/leafNode.js.map +1 -1
  91. package/dist/leafNodeSource.d.ts +2 -1
  92. package/dist/leafNodeSource.js +4 -3
  93. package/dist/leafNodeSource.js.map +1 -1
  94. package/dist/lifetime.d.ts +2 -1
  95. package/dist/lifetime.js +4 -3
  96. package/dist/lifetime.js.map +1 -1
  97. package/dist/message.d.ts +9 -2
  98. package/dist/message.js +27 -20
  99. package/dist/message.js.map +1 -1
  100. package/dist/messageProtection.js +4 -3
  101. package/dist/messageProtection.js.map +1 -1
  102. package/dist/nodeType.d.ts +2 -1
  103. package/dist/nodeType.js +4 -3
  104. package/dist/nodeType.js.map +1 -1
  105. package/dist/parentHash.d.ts +2 -1
  106. package/dist/parentHash.js +5 -4
  107. package/dist/parentHash.js.map +1 -1
  108. package/dist/parentNode.d.ts +2 -1
  109. package/dist/parentNode.js +5 -4
  110. package/dist/parentNode.js.map +1 -1
  111. package/dist/presharedkey.d.ts +6 -1
  112. package/dist/presharedkey.js +16 -11
  113. package/dist/presharedkey.js.map +1 -1
  114. package/dist/privateMessage.d.ts +4 -1
  115. package/dist/privateMessage.js +29 -20
  116. package/dist/privateMessage.js.map +1 -1
  117. package/dist/processMessages.js +3 -2
  118. package/dist/processMessages.js.map +1 -1
  119. package/dist/proposal.d.ts +17 -1
  120. package/dist/proposal.js +50 -34
  121. package/dist/proposal.js.map +1 -1
  122. package/dist/proposalOrRefType.d.ts +5 -1
  123. package/dist/proposalOrRefType.js +14 -10
  124. package/dist/proposalOrRefType.js.map +1 -1
  125. package/dist/protocolVersion.d.ts +2 -1
  126. package/dist/protocolVersion.js +4 -3
  127. package/dist/protocolVersion.js.map +1 -1
  128. package/dist/publicMessage.d.ts +3 -1
  129. package/dist/publicMessage.js +9 -7
  130. package/dist/publicMessage.js.map +1 -1
  131. package/dist/ratchetTree.d.ts +3 -1
  132. package/dist/ratchetTree.js +13 -11
  133. package/dist/ratchetTree.js.map +1 -1
  134. package/dist/requiredCapabilities.d.ts +2 -1
  135. package/dist/requiredCapabilities.js +6 -5
  136. package/dist/requiredCapabilities.js.map +1 -1
  137. package/dist/sender.d.ts +6 -1
  138. package/dist/sender.js +24 -13
  139. package/dist/sender.js.map +1 -1
  140. package/dist/transcriptHash.d.ts +2 -1
  141. package/dist/transcriptHash.js +18 -8
  142. package/dist/transcriptHash.js.map +1 -1
  143. package/dist/treeHash.d.ts +4 -1
  144. package/dist/treeHash.js +17 -14
  145. package/dist/treeHash.js.map +1 -1
  146. package/dist/tsconfig.build.tsbuildinfo +1 -1
  147. package/dist/updatePath.d.ts +3 -1
  148. package/dist/updatePath.js +10 -8
  149. package/dist/updatePath.js.map +1 -1
  150. package/dist/util/byteArray.d.ts +2 -1
  151. package/dist/util/byteArray.js +21 -2
  152. package/dist/util/byteArray.js.map +1 -1
  153. package/dist/welcome.d.ts +3 -1
  154. package/dist/welcome.js +12 -10
  155. package/dist/welcome.js.map +1 -1
  156. package/dist/wireformat.d.ts +2 -1
  157. package/dist/wireformat.js +4 -3
  158. package/dist/wireformat.js.map +1 -1
  159. package/package.json +3 -3
package/dist/proposal.js CHANGED
@@ -1,56 +1,72 @@
1
- import { decodeUint16, decodeUint32, encodeUint16, encodeUint32 } from "./codec/number.js";
1
+ import { decodeUint16, decodeUint32, uint16Encoder, uint32Encoder } from "./codec/number.js";
2
2
  import { flatMapDecoder, mapDecoder, mapDecoders, orDecoder } from "./codec/tlsDecoder.js";
3
- import { contramapEncoder, contramapEncoders } from "./codec/tlsEncoder.js";
4
- import { decodeVarLenData, decodeVarLenType, encodeVarLenData, encodeVarLenType } from "./codec/variableLength.js";
5
- import { decodeCiphersuite, encodeCiphersuite } from "./crypto/ciphersuite.js";
6
- import { decodeExtension, encodeExtension } from "./extension.js";
7
- import { decodeKeyPackage, encodeKeyPackage } from "./keyPackage.js";
8
- import { decodePskId, encodePskId } from "./presharedkey.js";
9
- import { decodeDefaultProposalType, encodeDefaultProposalType } from "./defaultProposalType.js";
10
- import { decodeProtocolVersion, encodeProtocolVersion } from "./protocolVersion.js";
11
- import { decodeLeafNodeUpdate, encodeLeafNode } from "./leafNode.js";
12
- export const encodeAdd = contramapEncoder(encodeKeyPackage, (a) => a.keyPackage);
3
+ import { contramapBufferEncoder, contramapBufferEncoders, encode } from "./codec/tlsEncoder.js";
4
+ import { decodeVarLenData, decodeVarLenType, varLenDataEncoder, varLenTypeEncoder } from "./codec/variableLength.js";
5
+ import { ciphersuiteEncoder, decodeCiphersuite } from "./crypto/ciphersuite.js";
6
+ import { decodeExtension, extensionEncoder } from "./extension.js";
7
+ import { decodeKeyPackage, keyPackageEncoder } from "./keyPackage.js";
8
+ import { decodePskId, pskIdEncoder } from "./presharedkey.js";
9
+ import { decodeDefaultProposalType, defaultProposalTypeEncoder } from "./defaultProposalType.js";
10
+ import { decodeProtocolVersion, protocolVersionEncoder } from "./protocolVersion.js";
11
+ import { decodeLeafNodeUpdate, leafNodeEncoder } from "./leafNode.js";
12
+ export const addEncoder = contramapBufferEncoder(keyPackageEncoder, (a) => a.keyPackage);
13
+ export const encodeAdd = encode(addEncoder);
13
14
  export const decodeAdd = mapDecoder(decodeKeyPackage, (keyPackage) => ({ keyPackage }));
14
- export const encodeUpdate = contramapEncoder(encodeLeafNode, (u) => u.leafNode);
15
+ export const updateEncoder = contramapBufferEncoder(leafNodeEncoder, (u) => u.leafNode);
16
+ export const encodeUpdate = encode(updateEncoder);
15
17
  export const decodeUpdate = mapDecoder(decodeLeafNodeUpdate, (leafNode) => ({ leafNode }));
16
- export const encodeRemove = contramapEncoder(encodeUint32, (r) => r.removed);
18
+ export const removeEncoder = contramapBufferEncoder(uint32Encoder, (r) => r.removed);
19
+ export const encodeRemove = encode(removeEncoder);
17
20
  export const decodeRemove = mapDecoder(decodeUint32, (removed) => ({ removed }));
18
- export const encodePSK = contramapEncoder(encodePskId, (p) => p.preSharedKeyId);
21
+ export const pskEncoder = contramapBufferEncoder(pskIdEncoder, (p) => p.preSharedKeyId);
22
+ export const encodePSK = encode(pskEncoder);
19
23
  export const decodePSK = mapDecoder(decodePskId, (preSharedKeyId) => ({ preSharedKeyId }));
20
- export const encodeReinit = contramapEncoders([encodeVarLenData, encodeProtocolVersion, encodeCiphersuite, encodeVarLenType(encodeExtension)], (r) => [r.groupId, r.version, r.cipherSuite, r.extensions]);
24
+ export const reinitEncoder = contramapBufferEncoders([varLenDataEncoder, protocolVersionEncoder, ciphersuiteEncoder, varLenTypeEncoder(extensionEncoder)], (r) => [r.groupId, r.version, r.cipherSuite, r.extensions]);
25
+ export const encodeReinit = encode(reinitEncoder);
21
26
  export const decodeReinit = mapDecoders([decodeVarLenData, decodeProtocolVersion, decodeCiphersuite, decodeVarLenType(decodeExtension)], (groupId, version, cipherSuite, extensions) => ({ groupId, version, cipherSuite, extensions }));
22
- export const encodeExternalInit = contramapEncoder(encodeVarLenData, (e) => e.kemOutput);
27
+ export const externalInitEncoder = contramapBufferEncoder(varLenDataEncoder, (e) => e.kemOutput);
28
+ export const encodeExternalInit = encode(externalInitEncoder);
23
29
  export const decodeExternalInit = mapDecoder(decodeVarLenData, (kemOutput) => ({ kemOutput }));
24
- export const encodeGroupContextExtensions = contramapEncoder(encodeVarLenType(encodeExtension), (g) => g.extensions);
30
+ export const groupContextExtensionsEncoder = contramapBufferEncoder(varLenTypeEncoder(extensionEncoder), (g) => g.extensions);
31
+ export const encodeGroupContextExtensions = encode(groupContextExtensionsEncoder);
25
32
  export const decodeGroupContextExtensions = mapDecoder(decodeVarLenType(decodeExtension), (extensions) => ({ extensions }));
26
- export const encodeProposalAdd = contramapEncoders([encodeDefaultProposalType, encodeAdd], (p) => [p.proposalType, p.add]);
27
- export const encodeProposalUpdate = contramapEncoders([encodeDefaultProposalType, encodeUpdate], (p) => [p.proposalType, p.update]);
28
- export const encodeProposalRemove = contramapEncoders([encodeDefaultProposalType, encodeRemove], (p) => [p.proposalType, p.remove]);
29
- export const encodeProposalPSK = contramapEncoders([encodeDefaultProposalType, encodePSK], (p) => [p.proposalType, p.psk]);
30
- export const encodeProposalReinit = contramapEncoders([encodeDefaultProposalType, encodeReinit], (p) => [p.proposalType, p.reinit]);
31
- export const encodeProposalExternalInit = contramapEncoders([encodeDefaultProposalType, encodeExternalInit], (p) => [p.proposalType, p.externalInit]);
32
- export const encodeProposalGroupContextExtensions = contramapEncoders([encodeDefaultProposalType, encodeGroupContextExtensions], (p) => [p.proposalType, p.groupContextExtensions]);
33
- export const encodeProposalCustom = contramapEncoders([encodeUint16, encodeVarLenData], (p) => [p.proposalType, p.proposalData]);
34
- export const encodeProposal = (p) => {
33
+ export const proposalAddEncoder = contramapBufferEncoders([defaultProposalTypeEncoder, addEncoder], (p) => [p.proposalType, p.add]);
34
+ export const encodeProposalAdd = encode(proposalAddEncoder);
35
+ export const proposalUpdateEncoder = contramapBufferEncoders([defaultProposalTypeEncoder, updateEncoder], (p) => [p.proposalType, p.update]);
36
+ export const encodeProposalUpdate = encode(proposalUpdateEncoder);
37
+ export const proposalRemoveEncoder = contramapBufferEncoders([defaultProposalTypeEncoder, removeEncoder], (p) => [p.proposalType, p.remove]);
38
+ export const encodeProposalRemove = encode(proposalRemoveEncoder);
39
+ export const proposalPSKEncoder = contramapBufferEncoders([defaultProposalTypeEncoder, pskEncoder], (p) => [p.proposalType, p.psk]);
40
+ export const encodeProposalPSK = encode(proposalPSKEncoder);
41
+ export const proposalReinitEncoder = contramapBufferEncoders([defaultProposalTypeEncoder, reinitEncoder], (p) => [p.proposalType, p.reinit]);
42
+ export const encodeProposalReinit = encode(proposalReinitEncoder);
43
+ export const proposalExternalInitEncoder = contramapBufferEncoders([defaultProposalTypeEncoder, externalInitEncoder], (p) => [p.proposalType, p.externalInit]);
44
+ export const encodeProposalExternalInit = encode(proposalExternalInitEncoder);
45
+ export const proposalGroupContextExtensionsEncoder = contramapBufferEncoders([defaultProposalTypeEncoder, groupContextExtensionsEncoder], (p) => [p.proposalType, p.groupContextExtensions]);
46
+ export const encodeProposalGroupContextExtensions = encode(proposalGroupContextExtensionsEncoder);
47
+ export const proposalCustomEncoder = contramapBufferEncoders([uint16Encoder, varLenDataEncoder], (p) => [p.proposalType, p.proposalData]);
48
+ export const encodeProposalCustom = encode(proposalCustomEncoder);
49
+ export const proposalEncoder = (p) => {
35
50
  switch (p.proposalType) {
36
51
  case "add":
37
- return encodeProposalAdd(p);
52
+ return proposalAddEncoder(p);
38
53
  case "update":
39
- return encodeProposalUpdate(p);
54
+ return proposalUpdateEncoder(p);
40
55
  case "remove":
41
- return encodeProposalRemove(p);
56
+ return proposalRemoveEncoder(p);
42
57
  case "psk":
43
- return encodeProposalPSK(p);
58
+ return proposalPSKEncoder(p);
44
59
  case "reinit":
45
- return encodeProposalReinit(p);
60
+ return proposalReinitEncoder(p);
46
61
  case "external_init":
47
- return encodeProposalExternalInit(p);
62
+ return proposalExternalInitEncoder(p);
48
63
  case "group_context_extensions":
49
- return encodeProposalGroupContextExtensions(p);
64
+ return proposalGroupContextExtensionsEncoder(p);
50
65
  default:
51
- return encodeProposalCustom(p);
66
+ return proposalCustomEncoder(p);
52
67
  }
53
68
  };
69
+ export const encodeProposal = encode(proposalEncoder);
54
70
  export const decodeProposalAdd = mapDecoder(decodeAdd, (add) => ({ proposalType: "add", add }));
55
71
  export const decodeProposalUpdate = mapDecoder(decodeUpdate, (update) => ({
56
72
  proposalType: "update",
@@ -1 +1 @@
1
- {"version":3,"file":"proposal.js","sourceRoot":"","sources":["../src/proposal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proposal.js","sourceRoot":"","sources":["../src/proposal.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Decoder } from "./codec/tlsDecoder.js";
2
- import { Encoder } from "./codec/tlsEncoder.js";
2
+ import { BufferEncoder, Encoder } from "./codec/tlsEncoder.js";
3
3
  import { Proposal } from "./proposal.js";
4
4
  declare const proposalOrRefTypes: {
5
5
  readonly proposal: 1;
@@ -7,6 +7,7 @@ declare const proposalOrRefTypes: {
7
7
  };
8
8
  export type ProposalOrRefTypeName = keyof typeof proposalOrRefTypes;
9
9
  export type ProposalOrRefTypeValue = (typeof proposalOrRefTypes)[ProposalOrRefTypeName];
10
+ export declare const proposalOrRefTypeEncoder: BufferEncoder<ProposalOrRefTypeName>;
10
11
  export declare const encodeProposalOrRefType: Encoder<ProposalOrRefTypeName>;
11
12
  export declare const decodeProposalOrRefType: Decoder<ProposalOrRefTypeName>;
12
13
  export interface ProposalOrRefProposal {
@@ -18,8 +19,11 @@ export interface ProposalOrRefProposalRef {
18
19
  reference: Uint8Array;
19
20
  }
20
21
  export type ProposalOrRef = ProposalOrRefProposal | ProposalOrRefProposalRef;
22
+ export declare const proposalOrRefProposalEncoder: BufferEncoder<ProposalOrRefProposal>;
21
23
  export declare const encodeProposalOrRefProposal: Encoder<ProposalOrRefProposal>;
24
+ export declare const proposalOrRefProposalRefEncoder: BufferEncoder<ProposalOrRefProposalRef>;
22
25
  export declare const encodeProposalOrRefProposalRef: Encoder<ProposalOrRefProposalRef>;
26
+ export declare const proposalOrRefEncoder: BufferEncoder<ProposalOrRef>;
23
27
  export declare const encodeProposalOrRef: Encoder<ProposalOrRef>;
24
28
  export declare const decodeProposalOrRef: Decoder<ProposalOrRef>;
25
29
  export {};
@@ -1,25 +1,29 @@
1
- import { decodeUint8, encodeUint8 } from "./codec/number.js";
1
+ import { decodeUint8, uint8Encoder } from "./codec/number.js";
2
2
  import { flatMapDecoder, mapDecoder, mapDecoderOption } from "./codec/tlsDecoder.js";
3
- import { contramapEncoder, contramapEncoders } from "./codec/tlsEncoder.js";
4
- import { decodeVarLenData, encodeVarLenData } from "./codec/variableLength.js";
5
- import { decodeProposal, encodeProposal } from "./proposal.js";
3
+ import { contramapBufferEncoder, contramapBufferEncoders, encode } from "./codec/tlsEncoder.js";
4
+ import { decodeVarLenData, varLenDataEncoder } from "./codec/variableLength.js";
5
+ import { decodeProposal, proposalEncoder } from "./proposal.js";
6
6
  import { enumNumberToKey } from "./util/enumHelpers.js";
7
7
  const proposalOrRefTypes = {
8
8
  proposal: 1,
9
9
  reference: 2,
10
10
  };
11
- export const encodeProposalOrRefType = contramapEncoder(encodeUint8, (t) => proposalOrRefTypes[t]);
11
+ export const proposalOrRefTypeEncoder = contramapBufferEncoder(uint8Encoder, (t) => proposalOrRefTypes[t]);
12
+ export const encodeProposalOrRefType = encode(proposalOrRefTypeEncoder);
12
13
  export const decodeProposalOrRefType = mapDecoderOption(decodeUint8, enumNumberToKey(proposalOrRefTypes));
13
- export const encodeProposalOrRefProposal = contramapEncoders([encodeProposalOrRefType, encodeProposal], (p) => [p.proposalOrRefType, p.proposal]);
14
- export const encodeProposalOrRefProposalRef = contramapEncoders([encodeProposalOrRefType, encodeVarLenData], (r) => [r.proposalOrRefType, r.reference]);
15
- export const encodeProposalOrRef = (input) => {
14
+ export const proposalOrRefProposalEncoder = contramapBufferEncoders([proposalOrRefTypeEncoder, proposalEncoder], (p) => [p.proposalOrRefType, p.proposal]);
15
+ export const encodeProposalOrRefProposal = encode(proposalOrRefProposalEncoder);
16
+ export const proposalOrRefProposalRefEncoder = contramapBufferEncoders([proposalOrRefTypeEncoder, varLenDataEncoder], (r) => [r.proposalOrRefType, r.reference]);
17
+ export const encodeProposalOrRefProposalRef = encode(proposalOrRefProposalRefEncoder);
18
+ export const proposalOrRefEncoder = (input) => {
16
19
  switch (input.proposalOrRefType) {
17
20
  case "proposal":
18
- return encodeProposalOrRefProposal(input);
21
+ return proposalOrRefProposalEncoder(input);
19
22
  case "reference":
20
- return encodeProposalOrRefProposalRef(input);
23
+ return proposalOrRefProposalRefEncoder(input);
21
24
  }
22
25
  };
26
+ export const encodeProposalOrRef = encode(proposalOrRefEncoder);
23
27
  export const decodeProposalOrRef = flatMapDecoder(decodeProposalOrRefType, (proposalOrRefType) => {
24
28
  switch (proposalOrRefType) {
25
29
  case "proposal":
@@ -1 +1 @@
1
- {"version":3,"file":"proposalOrRefType.js","sourceRoot":"","sources":["../src/proposalOrRefType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC5D,OAAO,EAAW,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC7F,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAW,MAAM,uBAAuB,CAAA;AACpF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC9E,OAAO,EAAE,cAAc,EAAE,cAAc,EAAY,MAAM,eAAe,CAAA;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,MAAM,kBAAkB,GAAG;IACzB,QAAQ,EAAE,CAAC;IACX,SAAS,EAAE,CAAC;CACJ,CAAA;AAKV,MAAM,CAAC,MAAM,uBAAuB,GAAmC,gBAAgB,CACrF,WAAW,EACX,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAC7B,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAmC,gBAAgB,CACrF,WAAW,EACX,eAAe,CAAC,kBAAkB,CAAC,CACpC,CAAA;AAaD,MAAM,CAAC,MAAM,2BAA2B,GAAmC,iBAAiB,CAC1F,CAAC,uBAAuB,EAAE,cAAc,CAAC,EACzC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,QAAQ,CAAU,CAClD,CAAA;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAsC,iBAAiB,CAChG,CAAC,uBAAuB,EAAE,gBAAgB,CAAC,EAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,SAAS,CAAU,CACnD,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAA2B,CAAC,KAAK,EAAE,EAAE;IACnE,QAAQ,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAChC,KAAK,UAAU;YACb,OAAO,2BAA2B,CAAC,KAAK,CAAC,CAAA;QAC3C,KAAK,WAAW;YACd,OAAO,8BAA8B,CAAC,KAAK,CAAC,CAAA;IAChD,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAA2B,cAAc,CACvE,uBAAuB,EACvB,CAAC,iBAAiB,EAA0B,EAAE;IAC5C,QAAQ,iBAAiB,EAAE,CAAC;QAC1B,KAAK,UAAU;YACb,OAAO,UAAU,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;QACpF,KAAK,WAAW;YACd,OAAO,UAAU,CAAC,gBAAgB,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;IAC1F,CAAC;AACH,CAAC,CACF,CAAA"}
1
+ {"version":3,"file":"proposalOrRefType.js","sourceRoot":"","sources":["../src/proposalOrRefType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,EAAW,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC7F,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAiB,MAAM,EAAW,MAAM,uBAAuB,CAAA;AACvH,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC/E,OAAO,EAAE,cAAc,EAAY,eAAe,EAAE,MAAM,eAAe,CAAA;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,MAAM,kBAAkB,GAAG;IACzB,QAAQ,EAAE,CAAC;IACX,SAAS,EAAE,CAAC;CACJ,CAAA;AAKV,MAAM,CAAC,MAAM,wBAAwB,GAAyC,sBAAsB,CAClG,YAAY,EACZ,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAC7B,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAmC,MAAM,CAAC,wBAAwB,CAAC,CAAA;AAEvG,MAAM,CAAC,MAAM,uBAAuB,GAAmC,gBAAgB,CACrF,WAAW,EACX,eAAe,CAAC,kBAAkB,CAAC,CACpC,CAAA;AAaD,MAAM,CAAC,MAAM,4BAA4B,GAAyC,uBAAuB,CACvG,CAAC,wBAAwB,EAAE,eAAe,CAAC,EAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,QAAQ,CAAU,CAClD,CAAA;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAmC,MAAM,CAAC,4BAA4B,CAAC,CAAA;AAE/G,MAAM,CAAC,MAAM,+BAA+B,GAA4C,uBAAuB,CAC7G,CAAC,wBAAwB,EAAE,iBAAiB,CAAC,EAC7C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,SAAS,CAAU,CACnD,CAAA;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAsC,MAAM,CAAC,+BAA+B,CAAC,CAAA;AAExH,MAAM,CAAC,MAAM,oBAAoB,GAAiC,CAAC,KAAK,EAAE,EAAE;IAC1E,QAAQ,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAChC,KAAK,UAAU;YACb,OAAO,4BAA4B,CAAC,KAAK,CAAC,CAAA;QAC5C,KAAK,WAAW;YACd,OAAO,+BAA+B,CAAC,KAAK,CAAC,CAAA;IACjD,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAA2B,MAAM,CAAC,oBAAoB,CAAC,CAAA;AAEvF,MAAM,CAAC,MAAM,mBAAmB,GAA2B,cAAc,CACvE,uBAAuB,EACvB,CAAC,iBAAiB,EAA0B,EAAE;IAC5C,QAAQ,iBAAiB,EAAE,CAAC;QAC1B,KAAK,UAAU;YACb,OAAO,UAAU,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;QACpF,KAAK,WAAW;YACd,OAAO,UAAU,CAAC,gBAAgB,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;IAC1F,CAAC;AACH,CAAC,CACF,CAAA"}
@@ -1,9 +1,10 @@
1
1
  import { Decoder } from "./codec/tlsDecoder.js";
2
- import { Encoder } from "./codec/tlsEncoder.js";
2
+ import { BufferEncoder, Encoder } from "./codec/tlsEncoder.js";
3
3
  export declare const protocolVersions: {
4
4
  readonly mls10: 1;
5
5
  };
6
6
  export type ProtocolVersionName = keyof typeof protocolVersions;
7
7
  export type ProtocolVersionValue = (typeof protocolVersions)[ProtocolVersionName];
8
+ export declare const protocolVersionEncoder: BufferEncoder<ProtocolVersionName>;
8
9
  export declare const encodeProtocolVersion: Encoder<ProtocolVersionName>;
9
10
  export declare const decodeProtocolVersion: Decoder<ProtocolVersionName>;
@@ -1,10 +1,11 @@
1
- import { decodeUint16, encodeUint16 } from "./codec/number.js";
1
+ import { decodeUint16, uint16Encoder } from "./codec/number.js";
2
2
  import { mapDecoderOption } from "./codec/tlsDecoder.js";
3
- import { contramapEncoder } from "./codec/tlsEncoder.js";
3
+ import { contramapBufferEncoder, encode } from "./codec/tlsEncoder.js";
4
4
  import { enumNumberToKey } from "./util/enumHelpers.js";
5
5
  export const protocolVersions = {
6
6
  mls10: 1,
7
7
  };
8
- export const encodeProtocolVersion = contramapEncoder(encodeUint16, (t) => protocolVersions[t]);
8
+ export const protocolVersionEncoder = contramapBufferEncoder(uint16Encoder, (t) => protocolVersions[t]);
9
+ export const encodeProtocolVersion = encode(protocolVersionEncoder);
9
10
  export const decodeProtocolVersion = mapDecoderOption(decodeUint16, enumNumberToKey(protocolVersions));
10
11
  //# sourceMappingURL=protocolVersion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"protocolVersion.js","sourceRoot":"","sources":["../src/protocolVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAC9D,OAAO,EAAW,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAW,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,KAAK,EAAE,CAAC;CACA,CAAA;AAKV,MAAM,CAAC,MAAM,qBAAqB,GAAiC,gBAAgB,CACjF,YAAY,EACZ,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAC3B,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAiC,gBAAgB,CACjF,YAAY,EACZ,eAAe,CAAC,gBAAgB,CAAC,CAClC,CAAA"}
1
+ {"version":3,"file":"protocolVersion.js","sourceRoot":"","sources":["../src/protocolVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAC/D,OAAO,EAAW,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,sBAAsB,EAAiB,MAAM,EAAW,MAAM,uBAAuB,CAAA;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,KAAK,EAAE,CAAC;CACA,CAAA;AAKV,MAAM,CAAC,MAAM,sBAAsB,GAAuC,sBAAsB,CAC9F,aAAa,EACb,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAC3B,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAiC,MAAM,CAAC,sBAAsB,CAAC,CAAA;AAEjG,MAAM,CAAC,MAAM,qBAAqB,GAAiC,gBAAgB,CACjF,YAAY,EACZ,eAAe,CAAC,gBAAgB,CAAC,CAClC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { Decoder } from "./codec/tlsDecoder.js";
2
- import { Encoder } from "./codec/tlsEncoder.js";
2
+ import { BufferEncoder, Encoder } from "./codec/tlsEncoder.js";
3
3
  import { Extension } from "./extension.js";
4
4
  import { ExternalSender } from "./externalSender.js";
5
5
  import { FramedContent, FramedContentAuthData } from "./framedContent.js";
@@ -14,6 +14,7 @@ type PublicMessageInfoMember = {
14
14
  type PublicMessageInfoMemberOther = {
15
15
  senderType: Exclude<SenderTypeName, "member">;
16
16
  };
17
+ export declare const publicMessageInfoEncoder: BufferEncoder<PublicMessageInfo>;
17
18
  export declare const encodePublicMessageInfo: Encoder<PublicMessageInfo>;
18
19
  export declare function decodePublicMessageInfo(senderType: SenderTypeName): Decoder<PublicMessageInfo>;
19
20
  export type PublicMessage = {
@@ -22,6 +23,7 @@ export type PublicMessage = {
22
23
  } & PublicMessageInfo;
23
24
  export type MemberPublicMessage = PublicMessage & PublicMessageInfoMember;
24
25
  export type ExternalPublicMessage = PublicMessage & PublicMessageInfoMemberOther;
26
+ export declare const publicMessageEncoder: BufferEncoder<PublicMessage>;
25
27
  export declare const encodePublicMessage: Encoder<PublicMessage>;
26
28
  export declare const decodePublicMessage: Decoder<PublicMessage>;
27
29
  export declare function findSignaturePublicKey(ratchetTree: RatchetTree, groupContext: GroupContext, framedContent: FramedContent): Uint8Array;
@@ -1,21 +1,22 @@
1
1
  import { flatMapDecoder, mapDecoder, mapDecoders, succeedDecoder } from "./codec/tlsDecoder.js";
2
- import { contramapEncoders } from "./codec/tlsEncoder.js";
3
- import { decodeVarLenData, encodeVarLenData } from "./codec/variableLength.js";
2
+ import { contramapBufferEncoders, encode, encVoid } from "./codec/tlsEncoder.js";
3
+ import { decodeVarLenData, varLenDataEncoder } from "./codec/variableLength.js";
4
4
  import { decodeExternalSender } from "./externalSender.js";
5
- import { decodeFramedContent, decodeFramedContentAuthData, encodeFramedContent, encodeFramedContentAuthData, } from "./framedContent.js";
5
+ import { decodeFramedContent, decodeFramedContentAuthData, framedContentEncoder, framedContentAuthDataEncoder, } from "./framedContent.js";
6
6
  import { CodecError, ValidationError } from "./mlsError.js";
7
7
  import { getSignaturePublicKeyFromLeafIndex } from "./ratchetTree.js";
8
8
  import { toLeafIndex } from "./treemath.js";
9
- export const encodePublicMessageInfo = (info) => {
9
+ export const publicMessageInfoEncoder = (info) => {
10
10
  switch (info.senderType) {
11
11
  case "member":
12
- return encodeVarLenData(info.membershipTag);
12
+ return varLenDataEncoder(info.membershipTag);
13
13
  case "external":
14
14
  case "new_member_proposal":
15
15
  case "new_member_commit":
16
- return new Uint8Array();
16
+ return encVoid;
17
17
  }
18
18
  };
19
+ export const encodePublicMessageInfo = encode(publicMessageInfoEncoder);
19
20
  export function decodePublicMessageInfo(senderType) {
20
21
  switch (senderType) {
21
22
  case "member":
@@ -29,7 +30,8 @@ export function decodePublicMessageInfo(senderType) {
29
30
  return succeedDecoder({ senderType });
30
31
  }
31
32
  }
32
- export const encodePublicMessage = contramapEncoders([encodeFramedContent, encodeFramedContentAuthData, encodePublicMessageInfo], (msg) => [msg.content, msg.auth, msg]);
33
+ export const publicMessageEncoder = contramapBufferEncoders([framedContentEncoder, framedContentAuthDataEncoder, publicMessageInfoEncoder], (msg) => [msg.content, msg.auth, msg]);
34
+ export const encodePublicMessage = encode(publicMessageEncoder);
33
35
  export const decodePublicMessage = flatMapDecoder(decodeFramedContent, (content) => mapDecoders([decodeFramedContentAuthData(content.contentType), decodePublicMessageInfo(content.sender.senderType)], (auth, info) => ({
34
36
  ...info,
35
37
  content,
@@ -1 +1 @@
1
- {"version":3,"file":"publicMessage.js","sourceRoot":"","sources":["../src/publicMessage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"publicMessage.js","sourceRoot":"","sources":["../src/publicMessage.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Encoder } from "./codec/tlsEncoder.js";
1
+ import { BufferEncoder, Encoder } from "./codec/tlsEncoder.js";
2
2
  import { Decoder } from "./codec/tlsDecoder.js";
3
3
  import { ParentNode } from "./parentNode.js";
4
4
  import { LeafIndex, NodeIndex } from "./treemath.js";
@@ -12,6 +12,7 @@ type NodeLeaf = {
12
12
  nodeType: "leaf";
13
13
  leaf: LeafNode;
14
14
  };
15
+ export declare const nodeEncoder: BufferEncoder<Node>;
15
16
  export declare const encodeNode: Encoder<Node>;
16
17
  export declare const decodeNode: Decoder<Node>;
17
18
  export declare function getHpkePublicKey(n: Node): Uint8Array;
@@ -24,6 +25,7 @@ export declare function extendRatchetTree(tree: RatchetTree): RatchetTree;
24
25
  * (Obviously, this may be done "virtually", by synthesizing blank nodes when required, as opposed to actually changing the structure in memory.)
25
26
  */
26
27
  export declare function stripBlankNodes(tree: RatchetTree): RatchetTree;
28
+ export declare const ratchetTreeEncoder: BufferEncoder<RatchetTree>;
27
29
  export declare const encodeRatchetTree: Encoder<RatchetTree>;
28
30
  export declare const decodeRatchetTree: Decoder<RatchetTree>;
29
31
  export declare function findBlankLeafNodeIndex(tree: RatchetTree): NodeIndex | undefined;
@@ -1,21 +1,22 @@
1
- import { contramapEncoder, contramapEncoders } from "./codec/tlsEncoder.js";
1
+ import { contramapBufferEncoder, contramapBufferEncoders, encode } from "./codec/tlsEncoder.js";
2
2
  import { flatMapDecoder, mapDecoder } from "./codec/tlsDecoder.js";
3
- import { decodeVarLenType, encodeVarLenType } from "./codec/variableLength.js";
4
- import { decodeNodeType, encodeNodeType } from "./nodeType.js";
5
- import { decodeOptional, encodeOptional } from "./codec/optional.js";
6
- import { encodeParentNode, decodeParentNode } from "./parentNode.js";
3
+ import { decodeVarLenType, varLenTypeEncoder } from "./codec/variableLength.js";
4
+ import { decodeNodeType, nodeTypeEncoder } from "./nodeType.js";
5
+ import { decodeOptional, optionalEncoder } from "./codec/optional.js";
6
+ import { parentNodeEncoder, decodeParentNode } from "./parentNode.js";
7
7
  import { copath, directPath, isLeaf, leafToNodeIndex, leafWidth, left, nodeToLeafIndex, parent, right, root, toLeafIndex, toNodeIndex, } from "./treemath.js";
8
- import { encodeLeafNode, decodeLeafNode } from "./leafNode.js";
8
+ import { leafNodeEncoder, decodeLeafNode } from "./leafNode.js";
9
9
  import { constantTimeEqual } from "./util/constantTimeCompare.js";
10
10
  import { InternalError, ValidationError } from "./mlsError.js";
11
- export const encodeNode = (node) => {
11
+ export const nodeEncoder = (node) => {
12
12
  switch (node.nodeType) {
13
13
  case "parent":
14
- return contramapEncoders([encodeNodeType, encodeParentNode], (n) => [n.nodeType, n.parent])(node);
14
+ return contramapBufferEncoders([nodeTypeEncoder, parentNodeEncoder], (n) => [n.nodeType, n.parent])(node);
15
15
  case "leaf":
16
- return contramapEncoders([encodeNodeType, encodeLeafNode], (n) => [n.nodeType, n.leaf])(node);
16
+ return contramapBufferEncoders([nodeTypeEncoder, leafNodeEncoder], (n) => [n.nodeType, n.leaf])(node);
17
17
  }
18
18
  };
19
+ export const encodeNode = encode(nodeEncoder);
19
20
  export const decodeNode = flatMapDecoder(decodeNodeType, (nodeType) => {
20
21
  switch (nodeType) {
21
22
  case "parent":
@@ -73,7 +74,8 @@ export function stripBlankNodes(tree) {
73
74
  }
74
75
  return tree.slice(0, lastNonBlank + 1);
75
76
  }
76
- export const encodeRatchetTree = contramapEncoder(encodeVarLenType(encodeOptional(encodeNode)), stripBlankNodes);
77
+ export const ratchetTreeEncoder = contramapBufferEncoder(varLenTypeEncoder(optionalEncoder(nodeEncoder)), stripBlankNodes);
78
+ export const encodeRatchetTree = encode(ratchetTreeEncoder);
77
79
  export const decodeRatchetTree = mapDecoder(decodeVarLenType(decodeOptional(decodeNode)), extendRatchetTree);
78
80
  export function findBlankLeafNodeIndex(tree) {
79
81
  const nodeIndex = tree.findIndex((node, nodeIndex) => node === undefined && isLeaf(toNodeIndex(nodeIndex)));
@@ -239,7 +241,7 @@ export function findLeafIndex(tree, leaf) {
239
241
  if (node.nodeType === "parent")
240
242
  throw new InternalError("Found parent node in leaf node position");
241
243
  //todo is there a better (faster) comparison method?
242
- return constantTimeEqual(encodeLeafNode(node.leaf), encodeLeafNode(leaf));
244
+ return constantTimeEqual(encode(leafNodeEncoder)(node.leaf), encode(leafNodeEncoder)(leaf));
243
245
  }
244
246
  return false;
245
247
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ratchetTree.js","sourceRoot":"","sources":["../src/ratchetTree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ratchetTree.js","sourceRoot":"","sources":["../src/ratchetTree.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import { CredentialTypeName } from "./credentialType.js";
2
- import { Encoder } from "./codec/tlsEncoder.js";
2
+ import { BufferEncoder, Encoder } from "./codec/tlsEncoder.js";
3
3
  import { Decoder } from "./codec/tlsDecoder.js";
4
4
  export interface RequiredCapabilities {
5
5
  extensionTypes: number[];
6
6
  proposalTypes: number[];
7
7
  credentialTypes: CredentialTypeName[];
8
8
  }
9
+ export declare const requiredCapabilitiesEncoder: BufferEncoder<RequiredCapabilities>;
9
10
  export declare const encodeRequiredCapabilities: Encoder<RequiredCapabilities>;
10
11
  export declare const decodeRequiredCapabilities: Decoder<RequiredCapabilities>;
@@ -1,8 +1,9 @@
1
- import { encodeCredentialType, decodeCredentialType } from "./credentialType.js";
2
- import { encodeVarLenType, decodeVarLenType } from "./codec/variableLength.js";
3
- import { contramapEncoders } from "./codec/tlsEncoder.js";
1
+ import { credentialTypeEncoder, decodeCredentialType } from "./credentialType.js";
2
+ import { varLenTypeEncoder, decodeVarLenType } from "./codec/variableLength.js";
3
+ import { contramapBufferEncoders, encode } from "./codec/tlsEncoder.js";
4
4
  import { mapDecoders } from "./codec/tlsDecoder.js";
5
- import { decodeUint16, encodeUint16 } from "./codec/number.js";
6
- export const encodeRequiredCapabilities = contramapEncoders([encodeVarLenType(encodeUint16), encodeVarLenType(encodeUint16), encodeVarLenType(encodeCredentialType)], (rc) => [rc.extensionTypes, rc.proposalTypes, rc.credentialTypes]);
5
+ import { decodeUint16, uint16Encoder } from "./codec/number.js";
6
+ export const requiredCapabilitiesEncoder = contramapBufferEncoders([varLenTypeEncoder(uint16Encoder), varLenTypeEncoder(uint16Encoder), varLenTypeEncoder(credentialTypeEncoder)], (rc) => [rc.extensionTypes, rc.proposalTypes, rc.credentialTypes]);
7
+ export const encodeRequiredCapabilities = encode(requiredCapabilitiesEncoder);
7
8
  export const decodeRequiredCapabilities = mapDecoders([decodeVarLenType(decodeUint16), decodeVarLenType(decodeUint16), decodeVarLenType(decodeCredentialType)], (extensionTypes, proposalTypes, credentialTypes) => ({ extensionTypes, proposalTypes, credentialTypes }));
8
9
  //# sourceMappingURL=requiredCapabilities.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"requiredCapabilities.js","sourceRoot":"","sources":["../src/requiredCapabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AACpG,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC9E,OAAO,EAAW,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAClE,OAAO,EAAW,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAQ9D,MAAM,CAAC,MAAM,0BAA0B,GAAkC,iBAAiB,CACxF,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,gBAAgB,CAAC,YAAY,CAAC,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,CAAC,EACxG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC,eAAe,CAAU,CAC3E,CAAA;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAkC,WAAW,CAClF,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,gBAAgB,CAAC,YAAY,CAAC,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,CAAC,EACxG,CAAC,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC,CACzG,CAAA"}
1
+ {"version":3,"file":"requiredCapabilities.js","sourceRoot":"","sources":["../src/requiredCapabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AACrG,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC/E,OAAO,EAAiB,uBAAuB,EAAE,MAAM,EAAW,MAAM,uBAAuB,CAAA;AAC/F,OAAO,EAAW,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAQ/D,MAAM,CAAC,MAAM,2BAA2B,GAAwC,uBAAuB,CACrG,CAAC,iBAAiB,CAAC,aAAa,CAAC,EAAE,iBAAiB,CAAC,aAAa,CAAC,EAAE,iBAAiB,CAAC,qBAAqB,CAAC,CAAC,EAC9G,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC,eAAe,CAAU,CAC3E,CAAA;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAkC,MAAM,CAAC,2BAA2B,CAAC,CAAA;AAE5G,MAAM,CAAC,MAAM,0BAA0B,GAAkC,WAAW,CAClF,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,gBAAgB,CAAC,YAAY,CAAC,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,CAAC,EACxG,CAAC,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC,CACzG,CAAA"}
package/dist/sender.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Decoder } from "./codec/tlsDecoder.js";
2
- import { Encoder } from "./codec/tlsEncoder.js";
2
+ import { BufferEncoder, Encoder } from "./codec/tlsEncoder.js";
3
3
  import { ContentTypeName } from "./contentType.js";
4
4
  import { CiphersuiteImpl } from "./crypto/ciphersuite.js";
5
5
  declare const senderTypes: {
@@ -10,6 +10,7 @@ declare const senderTypes: {
10
10
  };
11
11
  export type SenderTypeName = keyof typeof senderTypes;
12
12
  export type SenderTypeValue = (typeof senderTypes)[SenderTypeName];
13
+ export declare const senderTypeEncoder: BufferEncoder<SenderTypeName>;
13
14
  export declare const encodeSenderType: Encoder<SenderTypeName>;
14
15
  export declare const decodeSenderType: Decoder<SenderTypeName>;
15
16
  export interface SenderMember {
@@ -28,6 +29,7 @@ export interface SenderNewMemberCommit {
28
29
  senderType: "new_member_commit";
29
30
  }
30
31
  export type Sender = SenderMember | SenderNonMember;
32
+ export declare const senderEncoder: BufferEncoder<Sender>;
31
33
  export declare const encodeSender: Encoder<Sender>;
32
34
  export declare const decodeSender: Decoder<Sender>;
33
35
  export declare function getSenderLeafNodeIndex(sender: Sender): number | undefined;
@@ -39,8 +41,10 @@ export interface SenderData {
39
41
  export type ReuseGuard = Uint8Array & {
40
42
  length: 4;
41
43
  };
44
+ export declare const reuseGuardEncoder: BufferEncoder<ReuseGuard>;
42
45
  export declare const encodeReuseGuard: Encoder<ReuseGuard>;
43
46
  export declare const decodeReuseGuard: Decoder<ReuseGuard>;
47
+ export declare const senderDataEncoder: BufferEncoder<SenderData>;
44
48
  export declare const encodeSenderData: Encoder<SenderData>;
45
49
  export declare const decodeSenderData: Decoder<SenderData>;
46
50
  export interface SenderDataAAD {
@@ -48,6 +52,7 @@ export interface SenderDataAAD {
48
52
  epoch: bigint;
49
53
  contentType: ContentTypeName;
50
54
  }
55
+ export declare const senderDataAADEncoder: BufferEncoder<SenderDataAAD>;
51
56
  export declare const encodeSenderDataAAD: Encoder<SenderDataAAD>;
52
57
  export declare const decodeSenderDataAAD: Decoder<SenderDataAAD>;
53
58
  export declare function sampleCiphertext(cs: CiphersuiteImpl, ciphertext: Uint8Array): Uint8Array;