nostr-crypto-utils 0.4.12 → 0.4.13

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 (114) hide show
  1. package/README.md +52 -2
  2. package/dist/browser/343.nostr-crypto-utils.min.js +1 -0
  3. package/dist/browser/419.nostr-crypto-utils.min.js +1 -0
  4. package/dist/browser/crypto.nostr-crypto-utils.min.js +1 -1
  5. package/dist/browser/main.nostr-crypto-utils.min.js +1 -0
  6. package/dist/browser/protocol.nostr-crypto-utils.min.js +1 -1
  7. package/dist/cjs/event/index.d.ts +7 -0
  8. package/dist/cjs/event/index.d.ts.map +1 -0
  9. package/dist/cjs/event/index.js +15 -0
  10. package/dist/cjs/event/index.js.map +1 -0
  11. package/dist/cjs/event/signing.d.ts +12 -0
  12. package/dist/cjs/event/signing.d.ts.map +1 -1
  13. package/dist/cjs/event/signing.js +29 -0
  14. package/dist/cjs/event/signing.js.map +1 -1
  15. package/dist/cjs/index.d.ts +11 -8
  16. package/dist/cjs/index.d.ts.map +1 -1
  17. package/dist/cjs/index.js +58 -56
  18. package/dist/cjs/index.js.map +1 -1
  19. package/dist/cjs/nips/nip-04.d.ts +1 -1
  20. package/dist/cjs/nips/nip-04.d.ts.map +1 -1
  21. package/dist/cjs/nips/nip-04.js +1 -0
  22. package/dist/cjs/nips/nip-04.js.map +1 -1
  23. package/dist/cjs/protocol/index.d.ts +9 -9
  24. package/dist/cjs/protocol/index.d.ts.map +1 -1
  25. package/dist/cjs/protocol/index.js +8 -9
  26. package/dist/cjs/protocol/index.js.map +1 -1
  27. package/dist/cjs/types/base.d.ts +45 -121
  28. package/dist/cjs/types/base.d.ts.map +1 -1
  29. package/dist/cjs/types/base.js +10 -28
  30. package/dist/cjs/types/base.js.map +1 -1
  31. package/dist/cjs/utils/encoding.d.ts +12 -0
  32. package/dist/cjs/utils/encoding.d.ts.map +1 -1
  33. package/dist/cjs/utils/encoding.js +18 -0
  34. package/dist/cjs/utils/encoding.js.map +1 -1
  35. package/dist/cjs/utils/integration.d.ts +14 -15
  36. package/dist/cjs/utils/integration.d.ts.map +1 -1
  37. package/dist/cjs/utils/integration.js +145 -98
  38. package/dist/cjs/utils/integration.js.map +1 -1
  39. package/dist/cjs/utils/logger.d.ts +17 -2
  40. package/dist/cjs/utils/logger.d.ts.map +1 -1
  41. package/dist/cjs/utils/logger.js +40 -3
  42. package/dist/cjs/utils/logger.js.map +1 -1
  43. package/dist/cjs/utils/validation.d.ts +6 -0
  44. package/dist/cjs/utils/validation.d.ts.map +1 -1
  45. package/dist/cjs/utils/validation.js +37 -0
  46. package/dist/cjs/utils/validation.js.map +1 -1
  47. package/dist/cjs/validation/keys.d.ts +7 -0
  48. package/dist/cjs/validation/keys.d.ts.map +1 -0
  49. package/dist/cjs/validation/keys.js +23 -0
  50. package/dist/cjs/validation/keys.js.map +1 -0
  51. package/dist/esm/event/index.d.ts +7 -0
  52. package/dist/esm/event/index.d.ts.map +1 -0
  53. package/dist/esm/event/index.js +7 -0
  54. package/dist/esm/event/index.js.map +1 -0
  55. package/dist/esm/event/signing.d.ts +12 -0
  56. package/dist/esm/event/signing.d.ts.map +1 -1
  57. package/dist/esm/event/signing.js +27 -0
  58. package/dist/esm/event/signing.js.map +1 -1
  59. package/dist/esm/index.d.ts +11 -8
  60. package/dist/esm/index.d.ts.map +1 -1
  61. package/dist/esm/index.js +16 -14
  62. package/dist/esm/index.js.map +1 -1
  63. package/dist/esm/nips/nip-04.d.ts +1 -1
  64. package/dist/esm/nips/nip-04.d.ts.map +1 -1
  65. package/dist/esm/nips/nip-04.js +1 -0
  66. package/dist/esm/nips/nip-04.js.map +1 -1
  67. package/dist/esm/protocol/index.d.ts +9 -9
  68. package/dist/esm/protocol/index.d.ts.map +1 -1
  69. package/dist/esm/protocol/index.js +8 -9
  70. package/dist/esm/protocol/index.js.map +1 -1
  71. package/dist/esm/types/base.d.ts +45 -121
  72. package/dist/esm/types/base.d.ts.map +1 -1
  73. package/dist/esm/types/base.js +10 -28
  74. package/dist/esm/types/base.js.map +1 -1
  75. package/dist/esm/utils/encoding.d.ts +12 -0
  76. package/dist/esm/utils/encoding.d.ts.map +1 -1
  77. package/dist/esm/utils/encoding.js +16 -0
  78. package/dist/esm/utils/encoding.js.map +1 -1
  79. package/dist/esm/utils/integration.d.ts +14 -15
  80. package/dist/esm/utils/integration.d.ts.map +1 -1
  81. package/dist/esm/utils/integration.js +136 -89
  82. package/dist/esm/utils/integration.js.map +1 -1
  83. package/dist/esm/utils/logger.d.ts +17 -2
  84. package/dist/esm/utils/logger.d.ts.map +1 -1
  85. package/dist/esm/utils/logger.js +38 -2
  86. package/dist/esm/utils/logger.js.map +1 -1
  87. package/dist/esm/utils/validation.d.ts +6 -0
  88. package/dist/esm/utils/validation.d.ts.map +1 -1
  89. package/dist/esm/utils/validation.js +36 -0
  90. package/dist/esm/utils/validation.js.map +1 -1
  91. package/dist/esm/validation/keys.d.ts +7 -0
  92. package/dist/esm/validation/keys.d.ts.map +1 -0
  93. package/dist/esm/validation/keys.js +20 -0
  94. package/dist/esm/validation/keys.js.map +1 -0
  95. package/package.json +1 -1
  96. package/src/__tests__/integration.test.ts +1 -1
  97. package/src/__tests__/types.test.ts +36 -242
  98. package/src/event/index.ts +7 -0
  99. package/src/event/signing.ts +29 -0
  100. package/src/index.ts +39 -47
  101. package/src/nips/nip-04.ts +2 -0
  102. package/src/protocol/index.ts +23 -14
  103. package/src/types/base.ts +58 -122
  104. package/src/utils/encoding.ts +18 -0
  105. package/src/utils/integration.ts +159 -107
  106. package/src/utils/logger.ts +46 -2
  107. package/src/utils/validation.ts +37 -0
  108. package/src/validation/keys.ts +19 -0
  109. package/dist/browser/551.nostr-crypto-utils.min.js +0 -1
  110. package/dist/browser/565.nostr-crypto-utils.min.js +0 -1
  111. package/dist/browser/69.nostr-crypto-utils.min.js +0 -1
  112. package/dist/browser/main-43dd7041.nostr-crypto-utils.min.js +0 -1
  113. package/dist/browser/main-7bd12dde.nostr-crypto-utils.min.js +0 -1
  114. package/dist/browser/main-d277ceb9.nostr-crypto-utils.min.js +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/protocol/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAkB,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAoB,SAAS,EAAE,MAAM,eAAe,CAAC;AAGzJ;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAEvF;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC,CAE9G;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAE5E;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAEtF;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,CAkD3D;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,CAS5G;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,CAAC,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,GAClB,UAAU,CAqBZ;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,eAAe,EAAE,MAAM,GAAG,SAAS,EACnC,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,GAAG,SAAS,GAC/B,UAAU,CAWZ;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,OAAO,CAAC,EAAE,MAAM,GACf,UAAU,CAaZ;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE,CAInE;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE,CAInE;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAK1E;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAMhG;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAM9E;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAQxD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/protocol/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,UAAU,EACV,WAAW,EAEX,gBAAgB,EAEhB,aAAa,EACb,SAAS,EACT,aAAa,EACb,iBAAiB,EAClB,MAAM,eAAe,CAAC;AAEvB;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAEvF;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC,CAE9G;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAE5E;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAEtF;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,CAkD3D;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,aAAa,CAS/G;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,CAAC,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,GAClB,aAAa,CAqBf;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,eAAe,EAAE,MAAM,GAAG,SAAS,EACnC,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,GAAG,SAAS,GAC/B,aAAa,CAWf;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,OAAO,CAAC,EAAE,MAAM,GACf,aAAa,CAaf;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE,CAInE;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE,CAInE;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAK1E;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAMhG;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAM9E;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAQxD"}
@@ -20,7 +20,6 @@ exports.createAuthorFilter = createAuthorFilter;
20
20
  exports.createReplyFilter = createReplyFilter;
21
21
  exports.createFilter = createFilter;
22
22
  const base_1 = require("../types/base");
23
- const constants_1 = require("./constants");
24
23
  /**
25
24
  * Formats an event for relay transmission according to NIP-01
26
25
  * @category Message Handling
@@ -113,7 +112,7 @@ function parseMessage(message) {
113
112
  * @category Event Creation
114
113
  * @param {Record<string, string>} metadata - User metadata (name, about, picture, etc.)
115
114
  * @param {string | PublicKey} pubkey - Public key of the user
116
- * @returns {NostrEvent} Created metadata event
115
+ * @returns {UnsignedEvent} Created metadata event
117
116
  */
118
117
  function createMetadataEvent(metadata, pubkey) {
119
118
  const pubkeyValue = typeof pubkey === 'string' ? pubkey : pubkey.hex;
@@ -132,17 +131,17 @@ function createMetadataEvent(metadata, pubkey) {
132
131
  * @param {string | PublicKey} pubkey - Public key of the author
133
132
  * @param {string} [replyTo] - Optional ID of event being replied to
134
133
  * @param {string[]} [mentions] - Optional array of pubkeys to mention
135
- * @returns {NostrEvent} Created text note event
134
+ * @returns {UnsignedEvent} Created text note event
136
135
  */
137
136
  function createTextNoteEvent(content, pubkey, replyTo, mentions) {
138
137
  const pubkeyValue = typeof pubkey === 'string' ? pubkey : pubkey.hex;
139
138
  const tags = [];
140
139
  if (replyTo) {
141
- tags.push([constants_1.NOSTR_TAG.EVENT, replyTo]);
140
+ tags.push(['e', replyTo]);
142
141
  }
143
142
  if (mentions) {
144
143
  mentions.forEach(pubkey => {
145
- tags.push([constants_1.NOSTR_TAG.PUBKEY, pubkey]);
144
+ tags.push(['p', pubkey]);
146
145
  });
147
146
  }
148
147
  return {
@@ -159,7 +158,7 @@ function createTextNoteEvent(content, pubkey, replyTo, mentions) {
159
158
  * @param {string | PublicKey} recipientPubkey - Public key of message recipient
160
159
  * @param {string} content - Message content (will be encrypted)
161
160
  * @param {string | PublicKey} senderPubkey - Public key of the sender
162
- * @returns {NostrEvent} Created direct message event
161
+ * @returns {UnsignedEvent} Created direct message event
163
162
  */
164
163
  function createDirectMessageEvent(recipientPubkey, content, senderPubkey) {
165
164
  const recipientKey = typeof recipientPubkey === 'string' ? recipientPubkey : recipientPubkey.hex;
@@ -179,7 +178,7 @@ function createDirectMessageEvent(recipientPubkey, content, senderPubkey) {
179
178
  * @param {string} content - Message content
180
179
  * @param {string | PublicKey} authorPubkey - Public key of the message author
181
180
  * @param {string} [replyTo] - Optional ID of message being replied to
182
- * @returns {NostrEvent} Created channel message event
181
+ * @returns {UnsignedEvent} Created channel message event
183
182
  */
184
183
  function createChannelMessageEvent(channelId, content, authorPubkey, replyTo) {
185
184
  const pubkeyValue = typeof authorPubkey === 'string' ? authorPubkey : authorPubkey.hex;
@@ -203,7 +202,7 @@ function createChannelMessageEvent(channelId, content, authorPubkey, replyTo) {
203
202
  */
204
203
  function extractReferencedEvents(event) {
205
204
  return event.tags
206
- .filter((tag) => tag[0] === constants_1.NOSTR_TAG.EVENT)
205
+ .filter((tag) => tag[0] === 'e')
207
206
  .map((tag) => tag[1]);
208
207
  }
209
208
  /**
@@ -214,7 +213,7 @@ function extractReferencedEvents(event) {
214
213
  */
215
214
  function extractMentionedPubkeys(event) {
216
215
  return event.tags
217
- .filter((tag) => tag[0] === constants_1.NOSTR_TAG.PUBKEY)
216
+ .filter((tag) => tag[0] === 'p')
218
217
  .map((tag) => tag[1]);
219
218
  }
220
219
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/protocol/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/protocol/index.ts"],"names":[],"mappings":"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"}
@@ -2,199 +2,123 @@
2
2
  * @module types/base
3
3
  * @description Core type definitions for Nostr protocol
4
4
  */
5
- /**
6
- * Represents a public key in hex format
7
- * @see https://github.com/nostr-protocol/nips/blob/master/01.md
8
- */
9
5
  export type PublicKeyHex = string;
10
- /**
11
- * Represents a public key with additional formats
12
- * @see https://github.com/nostr-protocol/nips/blob/master/01.md
13
- */
6
+ export type PrivateKeyHex = string;
14
7
  export interface PublicKeyDetails {
15
8
  /** Public key in hex format */
16
9
  hex: string;
10
+ /** NIP-05 identifier */
11
+ nip05: string;
12
+ /** Public key in bytes format */
13
+ bytes: Uint8Array;
17
14
  }
18
- /**
19
- * Public key can be either a hex string or a detailed object
20
- */
21
15
  export type PublicKey = PublicKeyHex | PublicKeyDetails;
22
- /**
23
- * Key pair used for signing and encryption
24
- * @see https://github.com/nostr-protocol/nips/blob/master/01.md
25
- */
26
16
  export interface KeyPair {
27
17
  /** Private key in hex format */
28
- privateKey: string;
18
+ privateKey: PrivateKeyHex;
29
19
  /** Public key details */
30
20
  publicKey: PublicKeyDetails;
31
21
  }
32
- /**
33
- * Enum defining all possible Nostr event kinds as specified in various NIPs
34
- * @see https://github.com/nostr-protocol/nips
35
- */
36
22
  export declare enum NostrEventKind {
37
- /** NIP-01: Set metadata about the user */
38
23
  SET_METADATA = 0,
39
- /** NIP-01: Plain text note */
40
24
  TEXT_NOTE = 1,
41
- /** NIP-01: Recommend relay to followers */
42
25
  RECOMMEND_SERVER = 2,
43
- /** NIP-02: Contact list and relay list metadata */
44
26
  CONTACTS = 3,
45
- /** NIP-04: Encrypted direct message */
46
27
  ENCRYPTED_DIRECT_MESSAGE = 4,
47
- /** NIP-09: Event deletion */
48
28
  EVENT_DELETION = 5,
49
- /** NIP-25: Reactions to events */
29
+ REPOST = 6,
50
30
  REACTION = 7,
51
- /** NIP-28: Channel creation */
52
- CHANNEL_CREATE = 40,
53
- /** NIP-28: Channel metadata */
31
+ CHANNEL_CREATION = 40,
54
32
  CHANNEL_METADATA = 41,
55
- /** NIP-28: Channel message */
56
33
  CHANNEL_MESSAGE = 42,
57
- /** NIP-28: Hide message in channel */
58
34
  CHANNEL_HIDE_MESSAGE = 43,
59
- /** NIP-28: Mute user in channel */
60
35
  CHANNEL_MUTE_USER = 44,
61
- /** NIP-42: Authentication */
62
36
  AUTH = 22242,
63
- /** NIP-42: Authentication response */
64
37
  AUTH_RESPONSE = 22243
65
38
  }
66
- /**
67
- * Basic Nostr event interface
68
- * @see https://github.com/nostr-protocol/nips/blob/master/01.md
69
- */
70
- export interface NostrEvent {
39
+ /** Base interface for all Nostr events */
40
+ export interface BaseNostrEvent {
71
41
  /** Event kind as defined in NIPs */
72
- kind: NostrEventKind;
42
+ kind: number;
73
43
  /** Content of the event */
74
44
  content: string;
75
- /** Array of tags associated with the event */
45
+ /** Array of tags */
76
46
  tags: string[][];
77
47
  /** Unix timestamp in seconds */
78
48
  created_at: number;
79
- /** Public key of the event creator in hex format */
80
- pubkey: string;
81
49
  }
82
- /**
83
- * Signed Nostr event interface, extends NostrEvent with signature
84
- * @see https://github.com/nostr-protocol/nips/blob/master/01.md
85
- */
86
- export interface SignedNostrEvent extends NostrEvent {
87
- /** Event ID (32-bytes sha256 of the serialized event data) */
50
+ /** Interface for events that haven't been signed yet */
51
+ export interface UnsignedNostrEvent extends BaseNostrEvent {
52
+ /** Optional public key */
53
+ pubkey?: string;
54
+ }
55
+ /** Interface for signed events */
56
+ export interface SignedNostrEvent extends BaseNostrEvent {
57
+ /** Public key of the event creator */
58
+ pubkey: string;
59
+ /** Event ID (sha256 of the serialized event) */
88
60
  id: string;
89
61
  /** Schnorr signature of the event ID */
90
62
  sig: string;
91
63
  }
92
- /**
93
- * Result of a validation operation
94
- */
95
- export interface ValidationResult {
96
- /** Whether the validation passed */
97
- isValid: boolean;
98
- /** Error message if validation failed */
99
- error?: string;
100
- }
101
- /**
102
- * Filter for Nostr events
103
- * @see https://github.com/nostr-protocol/nips/blob/master/01.md
104
- */
64
+ /** Alias for backward compatibility */
65
+ export type NostrEvent = SignedNostrEvent;
66
+ /** Type for creating new events */
67
+ export type UnsignedEvent = Omit<NostrEvent, 'id' | 'sig'>;
105
68
  export interface NostrFilter {
106
- /** Filter by event IDs */
107
69
  ids?: string[];
108
- /** Filter by author public keys */
109
70
  authors?: string[];
110
- /** Filter by event kinds */
111
71
  kinds?: NostrEventKind[];
112
- /** Filter by start timestamp */
113
72
  since?: number;
114
- /** Filter by end timestamp */
115
73
  until?: number;
116
- /** Limit number of results */
117
74
  limit?: number;
118
- /** Filter by event references */
119
75
  '#e'?: string[];
120
- /** Filter by pubkey references */
121
76
  '#p'?: string[];
122
- /** Filter by arbitrary tag */
123
- [key: `#${string}`]: string[] | undefined;
124
- /** Full-text search query */
125
77
  search?: string;
78
+ /** Support for arbitrary tags (NIP-12) */
79
+ [key: `#${string}`]: string[] | undefined;
126
80
  }
127
- /**
128
- * Subscription for Nostr events
129
- * @see https://github.com/nostr-protocol/nips/blob/master/01.md
130
- */
131
81
  export interface NostrSubscription {
132
- /** Unique subscription identifier */
133
82
  id: string;
134
- /** Array of filters to apply to the subscription */
135
83
  filters: NostrFilter[];
136
84
  }
137
- /**
138
- * Nostr message types for client-relay communication
139
- * @see https://github.com/nostr-protocol/nips/blob/master/01.md
140
- */
141
85
  export declare enum NostrMessageType {
142
86
  EVENT = "EVENT",
143
- REQ = "REQ",
144
- CLOSE = "CLOSE",
145
87
  NOTICE = "NOTICE",
146
- EOSE = "EOSE",
147
88
  OK = "OK",
148
- AUTH = "AUTH",
149
- ERROR = "ERROR",
150
- COUNT = "COUNT"
89
+ EOSE = "EOSE",
90
+ REQ = "REQ",
91
+ CLOSE = "CLOSE",
92
+ AUTH = "AUTH"
151
93
  }
152
- /**
153
- * Nostr message interface
154
- */
155
94
  export interface NostrMessage {
156
- /** Type of the message */
157
95
  type: NostrMessageType;
158
- /** Payload of the message */
159
- payload: unknown;
96
+ event?: SignedNostrEvent;
97
+ subscriptionId?: string;
98
+ filters?: NostrFilter[];
99
+ eventId?: string;
100
+ accepted?: boolean;
101
+ message?: string;
102
+ count?: number;
103
+ payload?: string | (string | boolean)[];
160
104
  }
161
- /**
162
- * Nostr response interface
163
- */
164
105
  export interface NostrResponse {
165
- /** Type of the response */
166
106
  type: NostrMessageType;
167
- /** Event data if applicable */
168
107
  event?: SignedNostrEvent;
169
- /** Subscription ID if applicable */
170
108
  subscriptionId?: string;
171
- /** Filters if applicable */
172
109
  filters?: NostrFilter[];
173
- /** Event ID if applicable */
174
110
  eventId?: string;
175
- /** Whether the request was accepted */
176
111
  accepted?: boolean;
177
- /** Message if applicable */
178
112
  message?: string;
113
+ count?: number;
114
+ }
115
+ export interface ValidationResult {
116
+ isValid: boolean;
117
+ error?: string;
179
118
  }
180
- /**
181
- * Nostr error interface
182
- */
183
119
  export interface NostrError {
184
- /** Error code */
185
120
  code: string;
186
- /** Error message */
187
121
  message: string;
188
- /** Additional error details */
189
122
  details?: Record<string, unknown>;
190
123
  }
191
- /**
192
- * Encryption result interface
193
- */
194
- export interface EncryptionResult {
195
- /** Encrypted ciphertext */
196
- ciphertext: string;
197
- /** Initialization vector */
198
- iv: string;
199
- }
200
124
  //# sourceMappingURL=base.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/types/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/types/base.ts"],"names":[],"mappings":"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"}
@@ -5,55 +5,37 @@
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.NostrMessageType = exports.NostrEventKind = void 0;
8
- /**
9
- * Enum defining all possible Nostr event kinds as specified in various NIPs
10
- * @see https://github.com/nostr-protocol/nips
11
- */
8
+ // Event Types
12
9
  var NostrEventKind;
13
10
  (function (NostrEventKind) {
14
- /** NIP-01: Set metadata about the user */
11
+ // NIP-01: Core Protocol
15
12
  NostrEventKind[NostrEventKind["SET_METADATA"] = 0] = "SET_METADATA";
16
- /** NIP-01: Plain text note */
17
13
  NostrEventKind[NostrEventKind["TEXT_NOTE"] = 1] = "TEXT_NOTE";
18
- /** NIP-01: Recommend relay to followers */
19
14
  NostrEventKind[NostrEventKind["RECOMMEND_SERVER"] = 2] = "RECOMMEND_SERVER";
20
- /** NIP-02: Contact list and relay list metadata */
21
15
  NostrEventKind[NostrEventKind["CONTACTS"] = 3] = "CONTACTS";
22
- /** NIP-04: Encrypted direct message */
23
16
  NostrEventKind[NostrEventKind["ENCRYPTED_DIRECT_MESSAGE"] = 4] = "ENCRYPTED_DIRECT_MESSAGE";
24
- /** NIP-09: Event deletion */
25
17
  NostrEventKind[NostrEventKind["EVENT_DELETION"] = 5] = "EVENT_DELETION";
26
- /** NIP-25: Reactions to events */
18
+ NostrEventKind[NostrEventKind["REPOST"] = 6] = "REPOST";
27
19
  NostrEventKind[NostrEventKind["REACTION"] = 7] = "REACTION";
28
- /** NIP-28: Channel creation */
29
- NostrEventKind[NostrEventKind["CHANNEL_CREATE"] = 40] = "CHANNEL_CREATE";
30
- /** NIP-28: Channel metadata */
20
+ // NIP-28: Public Chat
21
+ NostrEventKind[NostrEventKind["CHANNEL_CREATION"] = 40] = "CHANNEL_CREATION";
31
22
  NostrEventKind[NostrEventKind["CHANNEL_METADATA"] = 41] = "CHANNEL_METADATA";
32
- /** NIP-28: Channel message */
33
23
  NostrEventKind[NostrEventKind["CHANNEL_MESSAGE"] = 42] = "CHANNEL_MESSAGE";
34
- /** NIP-28: Hide message in channel */
35
24
  NostrEventKind[NostrEventKind["CHANNEL_HIDE_MESSAGE"] = 43] = "CHANNEL_HIDE_MESSAGE";
36
- /** NIP-28: Mute user in channel */
37
25
  NostrEventKind[NostrEventKind["CHANNEL_MUTE_USER"] = 44] = "CHANNEL_MUTE_USER";
38
- /** NIP-42: Authentication */
26
+ // NIP-42: Authentication
39
27
  NostrEventKind[NostrEventKind["AUTH"] = 22242] = "AUTH";
40
- /** NIP-42: Authentication response */
41
28
  NostrEventKind[NostrEventKind["AUTH_RESPONSE"] = 22243] = "AUTH_RESPONSE";
42
29
  })(NostrEventKind || (exports.NostrEventKind = NostrEventKind = {}));
43
- /**
44
- * Nostr message types for client-relay communication
45
- * @see https://github.com/nostr-protocol/nips/blob/master/01.md
46
- */
30
+ // Message Types
47
31
  var NostrMessageType;
48
32
  (function (NostrMessageType) {
49
33
  NostrMessageType["EVENT"] = "EVENT";
50
- NostrMessageType["REQ"] = "REQ";
51
- NostrMessageType["CLOSE"] = "CLOSE";
52
34
  NostrMessageType["NOTICE"] = "NOTICE";
53
- NostrMessageType["EOSE"] = "EOSE";
54
35
  NostrMessageType["OK"] = "OK";
36
+ NostrMessageType["EOSE"] = "EOSE";
37
+ NostrMessageType["REQ"] = "REQ";
38
+ NostrMessageType["CLOSE"] = "CLOSE";
55
39
  NostrMessageType["AUTH"] = "AUTH";
56
- NostrMessageType["ERROR"] = "ERROR";
57
- NostrMessageType["COUNT"] = "COUNT";
58
40
  })(NostrMessageType || (exports.NostrMessageType = NostrMessageType = {}));
59
41
  //# sourceMappingURL=base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/types/base.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAiCH;;;GAGG;AACH,IAAY,cA6BX;AA7BD,WAAY,cAAc;IACxB,0CAA0C;IAC1C,mEAAgB,CAAA;IAChB,8BAA8B;IAC9B,6DAAa,CAAA;IACb,2CAA2C;IAC3C,2EAAoB,CAAA;IACpB,mDAAmD;IACnD,2DAAY,CAAA;IACZ,uCAAuC;IACvC,2FAA4B,CAAA;IAC5B,6BAA6B;IAC7B,uEAAkB,CAAA;IAClB,kCAAkC;IAClC,2DAAY,CAAA;IACZ,+BAA+B;IAC/B,wEAAmB,CAAA;IACnB,+BAA+B;IAC/B,4EAAqB,CAAA;IACrB,8BAA8B;IAC9B,0EAAoB,CAAA;IACpB,sCAAsC;IACtC,oFAAyB,CAAA;IACzB,mCAAmC;IACnC,8EAAsB,CAAA;IACtB,6BAA6B;IAC7B,uDAAY,CAAA;IACZ,sCAAsC;IACtC,yEAAqB,CAAA;AACvB,CAAC,EA7BW,cAAc,8BAAd,cAAc,QA6BzB;AA8ED;;;GAGG;AACH,IAAY,gBAUX;AAVD,WAAY,gBAAgB;IAC1B,mCAAe,CAAA;IACf,+BAAW,CAAA;IACX,mCAAe,CAAA;IACf,qCAAiB,CAAA;IACjB,iCAAa,CAAA;IACb,6BAAS,CAAA;IACT,iCAAa,CAAA;IACb,mCAAe,CAAA;IACf,mCAAe,CAAA;AACjB,CAAC,EAVW,gBAAgB,gCAAhB,gBAAgB,QAU3B"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/types/base.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAwBH,cAAc;AACd,IAAY,cAqBX;AArBD,WAAY,cAAc;IACxB,wBAAwB;IACxB,mEAAgB,CAAA;IAChB,6DAAa,CAAA;IACb,2EAAoB,CAAA;IACpB,2DAAY,CAAA;IACZ,2FAA4B,CAAA;IAC5B,uEAAkB,CAAA;IAClB,uDAAU,CAAA;IACV,2DAAY,CAAA;IAEZ,sBAAsB;IACtB,4EAAqB,CAAA;IACrB,4EAAqB,CAAA;IACrB,0EAAoB,CAAA;IACpB,oFAAyB,CAAA;IACzB,8EAAsB,CAAA;IAEtB,yBAAyB;IACzB,uDAAY,CAAA;IACZ,yEAAqB,CAAA;AACvB,CAAC,EArBW,cAAc,8BAAd,cAAc,QAqBzB;AAwDD,gBAAgB;AAChB,IAAY,gBAQX;AARD,WAAY,gBAAgB;IAC1B,mCAAe,CAAA;IACf,qCAAiB,CAAA;IACjB,6BAAS,CAAA;IACT,iCAAa,CAAA;IACb,+BAAW,CAAA;IACX,mCAAe,CAAA;IACf,iCAAa,CAAA;AACf,CAAC,EARW,gBAAgB,gCAAhB,gBAAgB,QAQ3B"}
@@ -13,4 +13,16 @@ export declare function hexToBytes(hex: string): Uint8Array;
13
13
  * @returns Hex string
14
14
  */
15
15
  export declare function bytesToHex(bytes: Uint8Array): string;
16
+ /**
17
+ * Convert a UTF-8 string to Uint8Array
18
+ * @param str UTF-8 string to convert
19
+ * @returns Uint8Array of bytes
20
+ */
21
+ export declare function utf8ToBytes(str: string): Uint8Array;
22
+ /**
23
+ * Convert Uint8Array to UTF-8 string
24
+ * @param bytes Uint8Array to convert
25
+ * @returns UTF-8 string
26
+ */
27
+ export declare function bytesToUtf8(bytes: Uint8Array): string;
16
28
  //# sourceMappingURL=encoding.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"encoding.d.ts","sourceRoot":"","sources":["../../../src/utils/encoding.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAMlD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAIpD"}
1
+ {"version":3,"file":"encoding.d.ts","sourceRoot":"","sources":["../../../src/utils/encoding.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAMlD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAIpD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAEnD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAErD"}
@@ -5,6 +5,8 @@
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.hexToBytes = hexToBytes;
7
7
  exports.bytesToHex = bytesToHex;
8
+ exports.utf8ToBytes = utf8ToBytes;
9
+ exports.bytesToUtf8 = bytesToUtf8;
8
10
  /**
9
11
  * Convert a hex string to Uint8Array
10
12
  * @param hex Hex string to convert
@@ -27,4 +29,20 @@ function bytesToHex(bytes) {
27
29
  .map(b => b.toString(16).padStart(2, '0'))
28
30
  .join('');
29
31
  }
32
+ /**
33
+ * Convert a UTF-8 string to Uint8Array
34
+ * @param str UTF-8 string to convert
35
+ * @returns Uint8Array of bytes
36
+ */
37
+ function utf8ToBytes(str) {
38
+ return new TextEncoder().encode(str);
39
+ }
40
+ /**
41
+ * Convert Uint8Array to UTF-8 string
42
+ * @param bytes Uint8Array to convert
43
+ * @returns UTF-8 string
44
+ */
45
+ function bytesToUtf8(bytes) {
46
+ return new TextDecoder().decode(bytes);
47
+ }
30
48
  //# sourceMappingURL=encoding.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"encoding.js","sourceRoot":"","sources":["../../../src/utils/encoding.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAOH,gCAMC;AAOD,gCAIC;AAtBD;;;;GAIG;AACH,SAAgB,UAAU,CAAC,GAAW;IAClC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,SAAgB,UAAU,CAAC,KAAiB;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;SACnB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACzC,IAAI,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"encoding.js","sourceRoot":"","sources":["../../../src/utils/encoding.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAOH,gCAMC;AAOD,gCAIC;AAOD,kCAEC;AAOD,kCAEC;AAxCD;;;;GAIG;AACH,SAAgB,UAAU,CAAC,GAAW;IAClC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,SAAgB,UAAU,CAAC,KAAiB;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;SACnB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACzC,IAAI,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,SAAgB,WAAW,CAAC,GAAW;IACnC,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACzC,CAAC;AAED;;;;GAIG;AACH,SAAgB,WAAW,CAAC,KAAiB;IACzC,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC3C,CAAC"}
@@ -1,24 +1,23 @@
1
- import { NostrEvent, NostrFilter, NostrEventKind, SignedNostrEvent, NostrMessage } from '../types/base.js';
2
- import { NostrMessageTuple } from '../types/messages.js';
1
+ import { NostrEvent, NostrFilter, NostrEventKind, SignedNostrEvent, NostrMessage, UnsignedEvent } from '../types/base';
3
2
  /**
4
3
  * Format event for relay transmission
5
4
  */
6
- export declare function formatEventForRelay(event: SignedNostrEvent): NostrMessageTuple;
5
+ export declare function formatEventForRelay(event: SignedNostrEvent): [string, SignedNostrEvent];
7
6
  /**
8
7
  * Format subscription for relay transmission
9
8
  */
10
9
  export declare function formatSubscriptionForRelay(subscription: {
11
10
  id: string;
12
11
  filters: NostrFilter[];
13
- }): NostrMessageTuple;
12
+ }): [string, string, ...NostrFilter[]];
14
13
  /**
15
14
  * Format close message for relay transmission
16
15
  */
17
- export declare function formatCloseForRelay(subscriptionId: string): NostrMessageTuple;
16
+ export declare function formatCloseForRelay(subscriptionId: string): [string, string];
18
17
  /**
19
18
  * Format auth message for relay transmission
20
19
  */
21
- export declare function formatAuthForRelay(event: SignedNostrEvent): NostrMessageTuple;
20
+ export declare function formatAuthForRelay(event: SignedNostrEvent): [string, SignedNostrEvent];
22
21
  /**
23
22
  * Parse a message from a relay
24
23
  */
@@ -26,23 +25,23 @@ export declare function parseNostrMessage(message: string | unknown[]): NostrMes
26
25
  /**
27
26
  * Create a metadata event
28
27
  */
29
- export declare function createMetadataEvent(metadata: Record<string, string>): NostrEvent;
28
+ export declare function createMetadataEvent(metadata: Record<string, string>): UnsignedEvent;
30
29
  /**
31
30
  * Create a text note event
32
31
  */
33
- export declare function createTextNoteEvent(content: string, replyTo?: string, mentions?: string[]): NostrEvent;
32
+ export declare function createTextNoteEvent(content: string, replyTo?: string, mentions?: string[]): UnsignedEvent;
34
33
  /**
35
34
  * Create a direct message event
36
35
  */
37
- export declare function createDirectMessageEvent(recipientPubkey: string, content: string): NostrEvent;
36
+ export declare function createDirectMessageEvent(recipientPubkey: string, content: string): UnsignedEvent;
38
37
  /**
39
38
  * Create a channel message event
40
39
  */
41
- export declare function createChannelMessageEvent(channelId: string, content: string, replyTo?: string): NostrEvent;
40
+ export declare function createChannelMessageEvent(channelId: string, content: string, replyTo?: string): UnsignedEvent;
42
41
  /**
43
42
  * Extract referenced events from tags
44
43
  */
45
- export declare function extractReferencedEvents(event: unknown): unknown[];
44
+ export declare function extractReferencedEvents(event: NostrEvent): string[];
46
45
  /**
47
46
  * Extract mentioned pubkeys from an event
48
47
  */
@@ -62,17 +61,17 @@ export declare function createReplyFilter(eventId: string, limit?: number): Nost
62
61
  /**
63
62
  * Creates a mock text note event for testing
64
63
  */
65
- export declare function createMockTextNote(content?: string): NostrEvent;
64
+ export declare function createMockTextNote(content?: string): UnsignedEvent;
66
65
  /**
67
66
  * Creates a mock metadata event for testing
68
67
  */
69
- export declare function createMockMetadataEvent(metadata?: Record<string, string>): NostrEvent;
68
+ export declare function createMockMetadataEvent(metadata?: Record<string, string>): UnsignedEvent;
70
69
  /**
71
70
  * Creates a mock direct message event for testing
72
71
  */
73
- export declare function createMockDirectMessage(content?: string): NostrEvent;
72
+ export declare function createMockDirectMessage(content?: string): UnsignedEvent;
74
73
  /**
75
74
  * Creates a mock channel message event for testing
76
75
  */
77
- export declare function createMockChannelMessage(content?: string): NostrEvent;
76
+ export declare function createMockChannelMessage(content?: string): UnsignedEvent;
78
77
  //# sourceMappingURL=integration.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../../src/utils/integration.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,YAAY,EAEb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAGzD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,iBAAiB,CAE9E;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,YAAY,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAAE,GAAG,iBAAiB,CAElH;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,iBAAiB,CAE7E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,GAAG,iBAAiB,CAE7E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,GAAG,YAAY,CAyD3E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,UAAU,CAQhF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,UAAU,CAsBtG;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,CAQ7F;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,CAa1G;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,EAAE,CAWjE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE,CAInE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAKlF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,cAAc,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAMxG;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAM9E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,CAQ/D;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,UAAU,CAQrF;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,CAQpE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,CAQrE"}
1
+ {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../../src/utils/integration.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,WAAW,EACX,cAAc,EACd,gBAAgB,EAEhB,YAAY,EACZ,aAAa,EACd,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAEvF;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,YAAY,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC,CAEnI;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAE5E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAEtF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,GAAG,YAAY,CAkH3E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,aAAa,CAQnF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,aAAa,CAkBzG;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,aAAa,CAQhG;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,aAAa,CAa7G;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE,CAInE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE,CAInE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAMlF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,cAAc,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CASxG;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAS9E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,SAAkB,GAAG,aAAa,CAQ3E;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GAAG,aAAa,CAQ5F;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,SAAW,GAAG,aAAa,CAQzE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,SAAoB,GAAG,aAAa,CAQnF"}