nostr-crypto-utils 0.4.14 → 0.4.15

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 (173) hide show
  1. package/package.json +10 -27
  2. package/dist/esm/__tests__/setup.d.ts +0 -6
  3. package/dist/esm/__tests__/setup.d.ts.map +0 -1
  4. package/dist/esm/constants.d.ts +0 -50
  5. package/dist/esm/constants.d.ts.map +0 -1
  6. package/dist/esm/core/constants.d.ts +0 -90
  7. package/dist/esm/core/constants.d.ts.map +0 -1
  8. package/dist/esm/core/errors.d.ts +0 -78
  9. package/dist/esm/core/errors.d.ts.map +0 -1
  10. package/dist/esm/core/index.d.ts +0 -8
  11. package/dist/esm/core/index.d.ts.map +0 -1
  12. package/dist/esm/core/types/crypto.d.ts +0 -46
  13. package/dist/esm/core/types/crypto.d.ts.map +0 -1
  14. package/dist/esm/core/types/events.d.ts +0 -59
  15. package/dist/esm/core/types/events.d.ts.map +0 -1
  16. package/dist/esm/core/types/index.d.ts +0 -8
  17. package/dist/esm/core/types/index.d.ts.map +0 -1
  18. package/dist/esm/core/types/protocol.d.ts +0 -73
  19. package/dist/esm/core/types/protocol.d.ts.map +0 -1
  20. package/dist/esm/crypto-utils.d.ts +0 -8
  21. package/dist/esm/crypto-utils.d.ts.map +0 -1
  22. package/dist/esm/crypto.d.ts +0 -106
  23. package/dist/esm/crypto.d.ts.map +0 -1
  24. package/dist/esm/encoding/base64.d.ts +0 -94
  25. package/dist/esm/encoding/base64.d.ts.map +0 -1
  26. package/dist/esm/encoding/binary.d.ts +0 -97
  27. package/dist/esm/encoding/binary.d.ts.map +0 -1
  28. package/dist/esm/encoding/hex.d.ts +0 -93
  29. package/dist/esm/encoding/hex.d.ts.map +0 -1
  30. package/dist/esm/encoding/index.d.ts +0 -23
  31. package/dist/esm/encoding/index.d.ts.map +0 -1
  32. package/dist/esm/event/creation.d.ts +0 -30
  33. package/dist/esm/event/creation.d.ts.map +0 -1
  34. package/dist/esm/event/index.d.ts +0 -7
  35. package/dist/esm/event/index.d.ts.map +0 -1
  36. package/dist/esm/event/signing.d.ts +0 -31
  37. package/dist/esm/event/signing.d.ts.map +0 -1
  38. package/dist/esm/index.d.ts +0 -15
  39. package/dist/esm/index.d.ts.map +0 -1
  40. package/dist/esm/integration/index.d.ts +0 -14
  41. package/dist/esm/integration/index.d.ts.map +0 -1
  42. package/dist/esm/nips/index.d.ts +0 -20
  43. package/dist/esm/nips/index.d.ts.map +0 -1
  44. package/dist/esm/nips/nip-01.d.ts +0 -56
  45. package/dist/esm/nips/nip-01.d.ts.map +0 -1
  46. package/dist/esm/nips/nip-04.d.ts +0 -42
  47. package/dist/esm/nips/nip-04.d.ts.map +0 -1
  48. package/dist/esm/nips/nip-19.d.ts +0 -77
  49. package/dist/esm/nips/nip-19.d.ts.map +0 -1
  50. package/dist/esm/nips/nip-26.d.ts +0 -51
  51. package/dist/esm/nips/nip-26.d.ts.map +0 -1
  52. package/dist/esm/protocol/constants.d.ts +0 -100
  53. package/dist/esm/protocol/constants.d.ts.map +0 -1
  54. package/dist/esm/protocol/index.d.ts +0 -124
  55. package/dist/esm/protocol/index.d.ts.map +0 -1
  56. package/dist/esm/protocol/transport.d.ts +0 -15
  57. package/dist/esm/protocol/transport.d.ts.map +0 -1
  58. package/dist/esm/transport/index.d.ts +0 -31
  59. package/dist/esm/transport/index.d.ts.map +0 -1
  60. package/dist/esm/types/base.d.ts +0 -124
  61. package/dist/esm/types/base.d.ts.map +0 -1
  62. package/dist/esm/types/guards.d.ts +0 -30
  63. package/dist/esm/types/guards.d.ts.map +0 -1
  64. package/dist/esm/types/index.d.ts +0 -75
  65. package/dist/esm/types/index.d.ts.map +0 -1
  66. package/dist/esm/types/messages.d.ts +0 -3
  67. package/dist/esm/types/messages.d.ts.map +0 -1
  68. package/dist/esm/types/protocol.d.ts +0 -7
  69. package/dist/esm/types/protocol.d.ts.map +0 -1
  70. package/dist/esm/utils/encoding.d.ts +0 -28
  71. package/dist/esm/utils/encoding.d.ts.map +0 -1
  72. package/dist/esm/utils/events.d.ts +0 -36
  73. package/dist/esm/utils/events.d.ts.map +0 -1
  74. package/dist/esm/utils/functions.d.ts +0 -40
  75. package/dist/esm/utils/functions.d.ts.map +0 -1
  76. package/dist/esm/utils/index.d.ts +0 -9
  77. package/dist/esm/utils/index.d.ts.map +0 -1
  78. package/dist/esm/utils/integration.d.ts +0 -77
  79. package/dist/esm/utils/integration.d.ts.map +0 -1
  80. package/dist/esm/utils/logger.d.ts +0 -40
  81. package/dist/esm/utils/logger.d.ts.map +0 -1
  82. package/dist/esm/utils/validation.d.ts +0 -62
  83. package/dist/esm/utils/validation.d.ts.map +0 -1
  84. package/dist/esm/validation/index.d.ts +0 -111
  85. package/dist/esm/validation/index.d.ts.map +0 -1
  86. package/dist/esm/validation/keys.d.ts +0 -7
  87. package/dist/esm/validation/keys.d.ts.map +0 -1
  88. /package/dist/{cjs → types}/__tests__/setup.d.ts +0 -0
  89. /package/dist/{cjs → types}/__tests__/setup.d.ts.map +0 -0
  90. /package/dist/{cjs → types}/constants.d.ts +0 -0
  91. /package/dist/{cjs → types}/constants.d.ts.map +0 -0
  92. /package/dist/{cjs → types}/core/constants.d.ts +0 -0
  93. /package/dist/{cjs → types}/core/constants.d.ts.map +0 -0
  94. /package/dist/{cjs → types}/core/errors.d.ts +0 -0
  95. /package/dist/{cjs → types}/core/errors.d.ts.map +0 -0
  96. /package/dist/{cjs → types}/core/index.d.ts +0 -0
  97. /package/dist/{cjs → types}/core/index.d.ts.map +0 -0
  98. /package/dist/{cjs → types}/core/types/crypto.d.ts +0 -0
  99. /package/dist/{cjs → types}/core/types/crypto.d.ts.map +0 -0
  100. /package/dist/{cjs → types}/core/types/events.d.ts +0 -0
  101. /package/dist/{cjs → types}/core/types/events.d.ts.map +0 -0
  102. /package/dist/{cjs → types}/core/types/index.d.ts +0 -0
  103. /package/dist/{cjs → types}/core/types/index.d.ts.map +0 -0
  104. /package/dist/{cjs → types}/core/types/protocol.d.ts +0 -0
  105. /package/dist/{cjs → types}/core/types/protocol.d.ts.map +0 -0
  106. /package/dist/{cjs → types}/crypto-utils.d.ts +0 -0
  107. /package/dist/{cjs → types}/crypto-utils.d.ts.map +0 -0
  108. /package/dist/{cjs → types}/crypto.d.ts +0 -0
  109. /package/dist/{cjs → types}/crypto.d.ts.map +0 -0
  110. /package/dist/{cjs → types}/encoding/base64.d.ts +0 -0
  111. /package/dist/{cjs → types}/encoding/base64.d.ts.map +0 -0
  112. /package/dist/{cjs → types}/encoding/binary.d.ts +0 -0
  113. /package/dist/{cjs → types}/encoding/binary.d.ts.map +0 -0
  114. /package/dist/{cjs → types}/encoding/hex.d.ts +0 -0
  115. /package/dist/{cjs → types}/encoding/hex.d.ts.map +0 -0
  116. /package/dist/{cjs → types}/encoding/index.d.ts +0 -0
  117. /package/dist/{cjs → types}/encoding/index.d.ts.map +0 -0
  118. /package/dist/{cjs → types}/event/creation.d.ts +0 -0
  119. /package/dist/{cjs → types}/event/creation.d.ts.map +0 -0
  120. /package/dist/{cjs → types}/event/index.d.ts +0 -0
  121. /package/dist/{cjs → types}/event/index.d.ts.map +0 -0
  122. /package/dist/{cjs → types}/event/signing.d.ts +0 -0
  123. /package/dist/{cjs → types}/event/signing.d.ts.map +0 -0
  124. /package/dist/{cjs → types}/index.d.ts +0 -0
  125. /package/dist/{cjs → types}/index.d.ts.map +0 -0
  126. /package/dist/{cjs → types}/integration/index.d.ts +0 -0
  127. /package/dist/{cjs → types}/integration/index.d.ts.map +0 -0
  128. /package/dist/{cjs → types}/nips/index.d.ts +0 -0
  129. /package/dist/{cjs → types}/nips/index.d.ts.map +0 -0
  130. /package/dist/{cjs → types}/nips/nip-01.d.ts +0 -0
  131. /package/dist/{cjs → types}/nips/nip-01.d.ts.map +0 -0
  132. /package/dist/{cjs → types}/nips/nip-04.d.ts +0 -0
  133. /package/dist/{cjs → types}/nips/nip-04.d.ts.map +0 -0
  134. /package/dist/{cjs → types}/nips/nip-19.d.ts +0 -0
  135. /package/dist/{cjs → types}/nips/nip-19.d.ts.map +0 -0
  136. /package/dist/{cjs → types}/nips/nip-26.d.ts +0 -0
  137. /package/dist/{cjs → types}/nips/nip-26.d.ts.map +0 -0
  138. /package/dist/{cjs → types}/protocol/constants.d.ts +0 -0
  139. /package/dist/{cjs → types}/protocol/constants.d.ts.map +0 -0
  140. /package/dist/{cjs → types}/protocol/index.d.ts +0 -0
  141. /package/dist/{cjs → types}/protocol/index.d.ts.map +0 -0
  142. /package/dist/{cjs → types}/protocol/transport.d.ts +0 -0
  143. /package/dist/{cjs → types}/protocol/transport.d.ts.map +0 -0
  144. /package/dist/{cjs → types}/transport/index.d.ts +0 -0
  145. /package/dist/{cjs → types}/transport/index.d.ts.map +0 -0
  146. /package/dist/{cjs → types}/types/base.d.ts +0 -0
  147. /package/dist/{cjs → types}/types/base.d.ts.map +0 -0
  148. /package/dist/{cjs → types}/types/guards.d.ts +0 -0
  149. /package/dist/{cjs → types}/types/guards.d.ts.map +0 -0
  150. /package/dist/{cjs → types}/types/index.d.ts +0 -0
  151. /package/dist/{cjs → types}/types/index.d.ts.map +0 -0
  152. /package/dist/{cjs → types}/types/messages.d.ts +0 -0
  153. /package/dist/{cjs → types}/types/messages.d.ts.map +0 -0
  154. /package/dist/{cjs → types}/types/protocol.d.ts +0 -0
  155. /package/dist/{cjs → types}/types/protocol.d.ts.map +0 -0
  156. /package/dist/{cjs → types}/utils/encoding.d.ts +0 -0
  157. /package/dist/{cjs → types}/utils/encoding.d.ts.map +0 -0
  158. /package/dist/{cjs → types}/utils/events.d.ts +0 -0
  159. /package/dist/{cjs → types}/utils/events.d.ts.map +0 -0
  160. /package/dist/{cjs → types}/utils/functions.d.ts +0 -0
  161. /package/dist/{cjs → types}/utils/functions.d.ts.map +0 -0
  162. /package/dist/{cjs → types}/utils/index.d.ts +0 -0
  163. /package/dist/{cjs → types}/utils/index.d.ts.map +0 -0
  164. /package/dist/{cjs → types}/utils/integration.d.ts +0 -0
  165. /package/dist/{cjs → types}/utils/integration.d.ts.map +0 -0
  166. /package/dist/{cjs → types}/utils/logger.d.ts +0 -0
  167. /package/dist/{cjs → types}/utils/logger.d.ts.map +0 -0
  168. /package/dist/{cjs → types}/utils/validation.d.ts +0 -0
  169. /package/dist/{cjs → types}/utils/validation.d.ts.map +0 -0
  170. /package/dist/{cjs → types}/validation/index.d.ts +0 -0
  171. /package/dist/{cjs → types}/validation/index.d.ts.map +0 -0
  172. /package/dist/{cjs → types}/validation/keys.d.ts +0 -0
  173. /package/dist/{cjs → types}/validation/keys.d.ts.map +0 -0
package/package.json CHANGED
@@ -1,36 +1,17 @@
1
1
  {
2
2
  "name": "nostr-crypto-utils",
3
- "version": "0.4.14",
3
+ "version": "0.4.15",
4
4
  "description": "Core cryptographic utilities for Nostr protocol",
5
- "type": "module",
5
+ "type": "commonjs",
6
6
  "main": "./dist/cjs/index.js",
7
7
  "module": "./dist/esm/index.js",
8
- "types": "./dist/esm/index.d.ts",
8
+ "types": "./dist/types/index.d.ts",
9
9
  "exports": {
10
10
  ".": {
11
+ "types": "./dist/types/index.d.ts",
11
12
  "import": "./dist/esm/index.js",
12
13
  "require": "./dist/cjs/index.js",
13
- "types": "./dist/esm/index.d.ts"
14
- },
15
- "./crypto": {
16
- "import": "./dist/esm/crypto.js",
17
- "require": "./dist/cjs/crypto.js",
18
- "types": "./dist/esm/crypto.d.ts"
19
- },
20
- "./validation": {
21
- "import": "./dist/esm/validation/index.js",
22
- "require": "./dist/cjs/validation/index.js",
23
- "types": "./dist/esm/validation/index.d.ts"
24
- },
25
- "./protocol": {
26
- "import": "./dist/esm/protocol/index.js",
27
- "require": "./dist/cjs/protocol/index.js",
28
- "types": "./dist/esm/protocol/index.d.ts"
29
- },
30
- "./nips": {
31
- "import": "./dist/esm/nips/index.js",
32
- "require": "./dist/cjs/nips/index.js",
33
- "types": "./dist/esm/nips/index.d.ts"
14
+ "default": "./dist/cjs/index.js"
34
15
  }
35
16
  },
36
17
  "files": [
@@ -40,15 +21,17 @@
40
21
  "LICENSE"
41
22
  ],
42
23
  "scripts": {
43
- "build": "npm run build:ts && npm run build:browser",
44
- "build:ts": "tsc && tsc -p tsconfig.cjs.json",
24
+ "build": "npm run clean && npm run build:types && npm run build:cjs && npm run build:esm && npm run build:browser",
25
+ "build:types": "tsc -p tsconfig.types.json",
26
+ "build:cjs": "tsc -p tsconfig.cjs.json",
27
+ "build:esm": "tsc -p tsconfig.esm.json",
45
28
  "build:browser": "webpack --config webpack.config.cjs",
46
29
  "test": "vitest run",
47
30
  "test:watch": "vitest",
48
31
  "test:coverage": "vitest run --coverage",
49
32
  "lint": "eslint src --ext .ts",
50
33
  "clean": "rimraf dist",
51
- "prepare": "npm run clean && npm run build"
34
+ "prepare": "npm run build"
52
35
  },
53
36
  "keywords": [
54
37
  "nostr",
@@ -1,6 +0,0 @@
1
- /**
2
- * @module test/setup
3
- * @description Test setup and configuration
4
- */
5
- export {};
6
- //# sourceMappingURL=setup.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../src/__tests__/setup.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -1,50 +0,0 @@
1
- /**
2
- * Constants used throughout the library
3
- */
4
- export declare const NOSTR_MESSAGE_TYPE: {
5
- readonly EVENT: "EVENT";
6
- readonly REQ: "REQ";
7
- readonly CLOSE: "CLOSE";
8
- readonly NOTICE: "NOTICE";
9
- readonly EOSE: "EOSE";
10
- readonly OK: "OK";
11
- readonly AUTH: "AUTH";
12
- readonly ERROR: "ERROR";
13
- };
14
- export declare const NOSTR_EVENT_KIND: {
15
- readonly SET_METADATA: 0;
16
- readonly TEXT_NOTE: 1;
17
- readonly RECOMMEND_SERVER: 2;
18
- readonly CONTACT_LIST: 3;
19
- readonly ENCRYPTED_DIRECT_MESSAGE: 4;
20
- readonly DELETE: 5;
21
- readonly REPOST: 6;
22
- readonly REACTION: 7;
23
- readonly BADGE_AWARD: 8;
24
- readonly CHANNEL_CREATE: 40;
25
- readonly CHANNEL_METADATA: 41;
26
- readonly CHANNEL_MESSAGE: 42;
27
- readonly CHANNEL_HIDE_MESSAGE: 43;
28
- readonly CHANNEL_MUTE_USER: 44;
29
- readonly CHANNEL_RESERVED_FIRST: 40;
30
- readonly CHANNEL_RESERVED_LAST: 49;
31
- readonly REPORTING: 1984;
32
- readonly ZAP_REQUEST: 9734;
33
- readonly ZAP: 9735;
34
- readonly MUTE_LIST: 10000;
35
- readonly PIN_LIST: 10001;
36
- readonly RELAY_LIST_METADATA: 10002;
37
- readonly CLIENT_AUTH: 22242;
38
- readonly CLIENT_ERROR: 23;
39
- readonly PARAMETERIZED_REPLACEABLE_FIRST: 30000;
40
- readonly PARAMETERIZED_REPLACEABLE_LAST: 39999;
41
- readonly REPLACEABLE_FIRST: 10000;
42
- readonly REPLACEABLE_LAST: 19999;
43
- readonly EPHEMERAL_FIRST: 20000;
44
- readonly EPHEMERAL_LAST: 29999;
45
- readonly REGULAR_FIRST: 1000;
46
- readonly REGULAR_LAST: 9999;
47
- readonly CUSTOM_FIRST: 40000;
48
- readonly CUSTOM_LAST: 49999;
49
- };
50
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;CASrB,CAAC;AAEX,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCnB,CAAC"}
@@ -1,90 +0,0 @@
1
- /**
2
- * Core constants used throughout the library
3
- * @module core/constants
4
- */
5
- /**
6
- * Nostr event kinds as defined in NIPs
7
- */
8
- export declare const NostrEventKind: {
9
- readonly SET_METADATA: 0;
10
- readonly TEXT_NOTE: 1;
11
- readonly RECOMMEND_RELAY: 2;
12
- readonly CONTACTS: 3;
13
- readonly ENCRYPTED_DIRECT_MESSAGE: 4;
14
- readonly DELETE: 5;
15
- readonly REPOST: 6;
16
- readonly REACTION: 7;
17
- readonly BADGE_AWARD: 8;
18
- readonly CHANNEL_CREATE: 40;
19
- readonly CHANNEL_METADATA: 41;
20
- readonly CHANNEL_MESSAGE: 42;
21
- readonly CHANNEL_HIDE_MESSAGE: 43;
22
- readonly CHANNEL_MUTE_USER: 44;
23
- readonly LONG_FORM_CONTENT: 30023;
24
- };
25
- /**
26
- * Nostr relay message types
27
- */
28
- export declare const NostrMessageType: {
29
- readonly EVENT: "EVENT";
30
- readonly REQ: "REQ";
31
- readonly CLOSE: "CLOSE";
32
- readonly NOTICE: "NOTICE";
33
- readonly EOSE: "EOSE";
34
- readonly OK: "OK";
35
- readonly AUTH: "AUTH";
36
- };
37
- /**
38
- * Validation constants
39
- */
40
- export declare const Validation: {
41
- readonly MAX_EVENT_TAGS: 2000;
42
- readonly MAX_CONTENT_LENGTH: 64000;
43
- readonly MIN_POW_DIFFICULTY: 0;
44
- readonly MAX_TIMESTAMP_DRIFT: number;
45
- readonly MAX_EXPONENTIAL_BACKOFF: number;
46
- readonly DEFAULT_TIMEOUT: 5000;
47
- };
48
- /**
49
- * Core cryptographic constants
50
- */
51
- export declare const Crypto: {
52
- readonly PRIVATE_KEY_LENGTH: 32;
53
- readonly PUBLIC_KEY_LENGTH: 32;
54
- readonly SIGNATURE_LENGTH: 64;
55
- readonly HASH_LENGTH: 32;
56
- readonly SHARED_SECRET_LENGTH: 32;
57
- readonly IV_LENGTH: 16;
58
- };
59
- /**
60
- * Core encoding constants
61
- */
62
- export declare const Encoding: {
63
- readonly HEX_PREFIX: "0x";
64
- };
65
- /**
66
- * Protocol constants
67
- */
68
- export declare const Protocol: {
69
- readonly DEFAULT_RELAY_URL: "wss://relay.nostr.info";
70
- readonly RECONNECT_DELAY: 1000;
71
- readonly MAX_RECONNECT_DELAY: 30000;
72
- readonly PING_INTERVAL: 30000;
73
- readonly SUBSCRIPTION_TIMEOUT: 10000;
74
- };
75
- /**
76
- * Default values
77
- */
78
- export declare const Defaults: {
79
- readonly KIND: 1;
80
- readonly CREATED_AT: () => number;
81
- readonly TAGS: string[][];
82
- readonly CONTENT: "";
83
- };
84
- /**
85
- * Regular expressions for validation
86
- */
87
- export declare const Regex: {
88
- readonly HEX: RegExp;
89
- };
90
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/core/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;CAgBjB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;CAQnB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;CAOb,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,MAAM;;;;;;;CAOT,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,QAAQ;;CAEX,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;;CAMX,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,QAAQ;;;mBAGP,MAAM,EAAE,EAAE;;CAEd,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,KAAK;;CAER,CAAC"}
@@ -1,78 +0,0 @@
1
- /**
2
- * Core error types and error handling utilities
3
- * @module core/errors
4
- */
5
- /**
6
- * Base error class for all Nostr-related errors
7
- */
8
- export declare class NostrError extends Error {
9
- code: string;
10
- constructor(message: string, code: string);
11
- }
12
- /**
13
- * Error thrown when cryptographic operations fail
14
- */
15
- export declare class CryptoError extends NostrError {
16
- constructor(message: string, code?: string);
17
- }
18
- /**
19
- * Error thrown when validation fails
20
- */
21
- export declare class ValidationError extends NostrError {
22
- constructor(message: string, code?: string);
23
- }
24
- /**
25
- * Error thrown when encoding/decoding fails
26
- */
27
- export declare class EncodingError extends NostrError {
28
- constructor(message: string, code?: string);
29
- }
30
- /**
31
- * Error thrown when protocol-related operations fail
32
- */
33
- export declare class ProtocolError extends NostrError {
34
- constructor(message: string, code?: string);
35
- }
36
- /**
37
- * Error thrown when event-related operations fail
38
- */
39
- export declare class EventError extends NostrError {
40
- constructor(message: string, code?: string);
41
- }
42
- /**
43
- * Error codes for different types of errors
44
- */
45
- export declare const ErrorCodes: {
46
- readonly INVALID_KEY: "INVALID_KEY";
47
- readonly SIGNING_FAILED: "SIGNING_FAILED";
48
- readonly VERIFICATION_FAILED: "VERIFICATION_FAILED";
49
- readonly ENCRYPTION_FAILED: "ENCRYPTION_FAILED";
50
- readonly DECRYPTION_FAILED: "DECRYPTION_FAILED";
51
- readonly INVALID_EVENT: "INVALID_EVENT";
52
- readonly INVALID_SIGNATURE: "INVALID_SIGNATURE";
53
- readonly INVALID_FILTER: "INVALID_FILTER";
54
- readonly INVALID_SUBSCRIPTION: "INVALID_SUBSCRIPTION";
55
- readonly INVALID_HEX: "INVALID_HEX";
56
- readonly INVALID_BASE64: "INVALID_BASE64";
57
- readonly INVALID_BECH32: "INVALID_BECH32";
58
- readonly ENCODING_FAILED: "ENCODING_FAILED";
59
- readonly RELAY_ERROR: "RELAY_ERROR";
60
- readonly CONNECTION_ERROR: "CONNECTION_ERROR";
61
- readonly SUBSCRIPTION_ERROR: "SUBSCRIPTION_ERROR";
62
- readonly TIMEOUT_ERROR: "TIMEOUT_ERROR";
63
- readonly EVENT_CREATION_FAILED: "EVENT_CREATION_FAILED";
64
- readonly EVENT_VALIDATION_FAILED: "EVENT_VALIDATION_FAILED";
65
- readonly EVENT_SERIALIZATION_FAILED: "EVENT_SERIALIZATION_FAILED";
66
- };
67
- /**
68
- * Type for error codes
69
- */
70
- export type ErrorCode = typeof ErrorCodes[keyof typeof ErrorCodes];
71
- /**
72
- * Create an error with the appropriate type based on the error code
73
- * @param message Error message
74
- * @param code Error code
75
- * @returns Appropriate error instance
76
- */
77
- export declare function createError(message: string, code: ErrorCode): NostrError;
78
- //# sourceMappingURL=errors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/core/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK;IACC,IAAI,EAAE,MAAM;gBAApC,OAAO,EAAE,MAAM,EAAS,IAAI,EAAE,MAAM;CAIjD;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,UAAU;gBAC7B,OAAO,EAAE,MAAM,EAAE,IAAI,SAAiB;CAInD;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,UAAU;gBACjC,OAAO,EAAE,MAAM,EAAE,IAAI,SAAqB;CAIvD;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,UAAU;gBAC/B,OAAO,EAAE,MAAM,EAAE,IAAI,SAAmB;CAIrD;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,UAAU;gBAC/B,OAAO,EAAE,MAAM,EAAE,IAAI,SAAmB;CAIrD;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,UAAU;gBAC5B,OAAO,EAAE,MAAM,EAAE,IAAI,SAAgB;CAIlD;AAED;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;CA8Bb,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,UAAU,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAEnE;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,UAAU,CAmCxE"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Core functionality for Nostr
3
- * @module core
4
- */
5
- export * from './constants';
6
- export * from './errors';
7
- export * from './types';
8
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
@@ -1,46 +0,0 @@
1
- /**
2
- * Core cryptographic types
3
- * @module core/types/crypto
4
- */
5
- /**
6
- * Public key formats supported in core crypto operations
7
- */
8
- export type PublicKey = string | {
9
- type: 'hex';
10
- data: string;
11
- };
12
- /**
13
- * Private key formats supported in core crypto operations
14
- */
15
- export type PrivateKey = string | {
16
- type: 'hex';
17
- data: string;
18
- };
19
- /**
20
- * Basic encryption options
21
- */
22
- export interface EncryptionOptions {
23
- iv?: Buffer;
24
- }
25
- /**
26
- * Basic key pair structure
27
- */
28
- export interface KeyPair {
29
- privateKey: string;
30
- publicKey: string;
31
- }
32
- /**
33
- * Signature verification result
34
- */
35
- export interface SignatureVerification {
36
- valid: boolean;
37
- reason?: string;
38
- }
39
- /**
40
- * Basic encryption result
41
- */
42
- export interface EncryptionResult {
43
- ciphertext: string;
44
- iv: string;
45
- }
46
- //# sourceMappingURL=crypto.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../../../src/core/types/crypto.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG;IAC/B,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG;IAChC,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;CACZ"}
@@ -1,59 +0,0 @@
1
- /**
2
- * Core event types for Nostr
3
- * @module core/types/events
4
- */
5
- import { NostrEventKind, NostrMessageType } from '../constants';
6
- /**
7
- * Basic Nostr event structure
8
- */
9
- export interface NostrEvent {
10
- id?: string;
11
- pubkey?: string;
12
- created_at: number;
13
- kind: number;
14
- tags: string[][];
15
- content: string;
16
- }
17
- /**
18
- * Signed Nostr event with id, pubkey, and sig
19
- */
20
- export interface SignedNostrEvent extends NostrEvent {
21
- id: string;
22
- pubkey: string;
23
- sig: string;
24
- }
25
- /**
26
- * Event kinds type
27
- */
28
- export type EventKind = typeof NostrEventKind[keyof typeof NostrEventKind];
29
- /**
30
- * Message types for relay communication
31
- */
32
- export type MessageType = typeof NostrMessageType[keyof typeof NostrMessageType];
33
- /**
34
- * Event creation options
35
- */
36
- export interface EventOptions {
37
- kind?: EventKind;
38
- tags?: string[][];
39
- content?: string;
40
- created_at?: number;
41
- }
42
- /**
43
- * Event verification result
44
- */
45
- export interface EventVerification {
46
- valid: boolean;
47
- reason?: string;
48
- }
49
- /**
50
- * Event with optional fields for creation
51
- */
52
- export type PartialEvent = Partial<NostrEvent>;
53
- /**
54
- * Event with required fields for signing
55
- */
56
- export type UnsignedEvent = Omit<NostrEvent, 'id' | 'sig' | 'pubkey'> & {
57
- pubkey: string;
58
- };
59
- //# sourceMappingURL=events.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/core/types/events.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,cAAc,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAE3E;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,gBAAgB,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC;AAEjF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAE/C;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,KAAK,GAAG,QAAQ,CAAC,GAAG;IACtE,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC"}
@@ -1,8 +0,0 @@
1
- /**
2
- * @module core/types
3
- * @description Core type definitions for the library
4
- */
5
- export * from './events';
6
- export * from './crypto.js';
7
- export * from './protocol';
8
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
@@ -1,73 +0,0 @@
1
- /**
2
- * Core protocol types for Nostr
3
- * @module core/types/protocol
4
- */
5
- import { NostrEvent, SignedNostrEvent } from './events';
6
- /**
7
- * Filter for querying events
8
- */
9
- export interface NostrFilter {
10
- ids?: string[];
11
- authors?: string[];
12
- kinds?: number[];
13
- '#e'?: string[];
14
- '#p'?: string[];
15
- since?: number;
16
- until?: number;
17
- limit?: number;
18
- }
19
- /**
20
- * Subscription to events
21
- */
22
- export interface NostrSubscription {
23
- id: string;
24
- filters: NostrFilter[];
25
- }
26
- /**
27
- * Relay information
28
- */
29
- export interface RelayInfo {
30
- url: string;
31
- status: 'connected' | 'connecting' | 'disconnected';
32
- supported_nips?: number[];
33
- software?: string;
34
- version?: string;
35
- }
36
- /**
37
- * Message from relay
38
- */
39
- export type RelayMessage = ['EVENT', string, NostrEvent] | ['NOTICE', string] | ['EOSE', string] | ['OK', string, boolean, string] | ['AUTH', string];
40
- /**
41
- * Message to relay
42
- */
43
- export type ClientMessage = ['EVENT', NostrEvent] | ['REQ', string, ...NostrFilter[]] | ['CLOSE', string] | ['AUTH', string];
44
- /**
45
- * Relay event handler
46
- */
47
- export interface RelayEventHandlers {
48
- onEvent?: (event: SignedNostrEvent) => void;
49
- onEose?: (subscriptionId: string) => void;
50
- onNotice?: (message: string) => void;
51
- onOk?: (eventId: string, accepted: boolean, message: string) => void;
52
- onAuth?: (challenge: string) => void;
53
- onError?: (error: Error) => void;
54
- }
55
- /**
56
- * Relay connection options
57
- */
58
- export interface RelayOptions {
59
- reconnect?: boolean;
60
- maxReconnectAttempts?: number;
61
- reconnectDelay?: number;
62
- timeout?: number;
63
- skipVerification?: boolean;
64
- }
65
- /**
66
- * Subscription options
67
- */
68
- export interface SubscriptionOptions {
69
- oneShot?: boolean;
70
- timeout?: number;
71
- skipVerification?: boolean;
72
- }
73
- //# sourceMappingURL=protocol.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../../src/core/types/protocol.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,WAAW,GAAG,YAAY,GAAG,cAAc,CAAC;IACpD,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GACpB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,GAC7B,CAAC,QAAQ,EAAE,MAAM,CAAC,GAClB,CAAC,MAAM,EAAE,MAAM,CAAC,GAChB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,GAC/B,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAErB;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,CAAC,OAAO,EAAE,UAAU,CAAC,GACrB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC,GACjC,CAAC,OAAO,EAAE,MAAM,CAAC,GACjB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAErB;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC5C,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACrE,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B"}
@@ -1,8 +0,0 @@
1
- /**
2
- * @module crypto-utils
3
- * @description Cryptographic utilities for Nostr
4
- */
5
- import { encryptMessage, decryptMessage } from './nips/nip-04';
6
- import { customCrypto, signSchnorr, verifySchnorrSignature, generateKeyPair, getPublicKey, validateKeyPair, getCompressedPublicKey, getSchnorrPublicKey, createEvent, signEvent, verifySignature } from './crypto';
7
- export { customCrypto, signSchnorr, verifySchnorrSignature, generateKeyPair, getPublicKey, validateKeyPair, getCompressedPublicKey, getSchnorrPublicKey, createEvent, signEvent, verifySignature, encryptMessage, decryptMessage };
8
- //# sourceMappingURL=crypto-utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"crypto-utils.d.ts","sourceRoot":"","sources":["../../src/crypto-utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EACL,YAAY,EACZ,WAAW,EACX,sBAAsB,EACtB,eAAe,EACf,YAAY,EACZ,eAAe,EACf,sBAAsB,EACtB,mBAAmB,EACnB,WAAW,EACX,SAAS,EACT,eAAe,EAChB,MAAM,UAAU,CAAC;AAElB,OAAO,EAEL,YAAY,EACZ,WAAW,EACX,sBAAsB,EAGtB,eAAe,EACf,YAAY,EACZ,eAAe,EACf,sBAAsB,EACtB,mBAAmB,EAGnB,WAAW,EACX,SAAS,EACT,eAAe,EAGf,cAAc,EACd,cAAc,EACf,CAAC"}
@@ -1,106 +0,0 @@
1
- /**
2
- * @module crypto
3
- * @description Cryptographic utilities for Nostr
4
- *
5
- * IMPORTANT: Nostr Protocol Cryptographic Requirements
6
- * While secp256k1 is the underlying elliptic curve used by Nostr, the protocol specifically
7
- * requires schnorr signatures as defined in NIP-01. This means:
8
- *
9
- * 1. Always use schnorr-specific functions:
10
- * - schnorr.getPublicKey() for public key generation
11
- * - schnorr.sign() for signing
12
- * - schnorr.verify() for verification
13
- *
14
- * 2. Avoid using secp256k1 functions directly:
15
- * - DON'T use secp256k1.getPublicKey()
16
- * - DON'T use secp256k1.sign()
17
- * - DON'T use secp256k1.verify()
18
- *
19
- * While both might work in some cases (as they use the same curve), the schnorr signature
20
- * scheme has specific requirements for key and signature formats that aren't guaranteed
21
- * when using the lower-level secp256k1 functions directly.
22
- */
23
- import { KeyPair, PublicKeyDetails, NostrEvent, SignedNostrEvent, PublicKey } from './types/index';
24
- /**
25
- * Custom crypto interface for cross-platform compatibility
26
- */
27
- export interface CryptoSubtle {
28
- subtle: {
29
- generateKey(algorithm: RsaHashedKeyGenParams | EcKeyGenParams, extractable: boolean, keyUsages: readonly KeyUsage[]): Promise<CryptoKeyPair>;
30
- importKey(format: 'raw' | 'pkcs8' | 'spki', keyData: ArrayBuffer, algorithm: RsaHashedImportParams | EcKeyImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: readonly KeyUsage[]): Promise<CryptoKey>;
31
- encrypt(algorithm: {
32
- name: string;
33
- iv: Uint8Array;
34
- }, key: CryptoKey, data: ArrayBuffer): Promise<ArrayBuffer>;
35
- decrypt(algorithm: {
36
- name: string;
37
- iv: Uint8Array;
38
- }, key: CryptoKey, data: ArrayBuffer): Promise<ArrayBuffer>;
39
- };
40
- getRandomValues<T extends Uint8Array | Int8Array | Uint16Array | Int16Array | Uint32Array | Int32Array>(array: T): T;
41
- }
42
- declare global {
43
- interface Window {
44
- crypto: CryptoSubtle;
45
- }
46
- interface Global {
47
- crypto: CryptoSubtle;
48
- }
49
- }
50
- /**
51
- * Crypto implementation that works in both Node.js and browser environments
52
- */
53
- declare class CustomCrypto {
54
- private cryptoInstance;
55
- private initPromise;
56
- constructor();
57
- private initialize;
58
- private ensureInitialized;
59
- getSubtle(): Promise<CryptoSubtle['subtle']>;
60
- getRandomValues<T extends Uint8Array | Int8Array | Uint16Array | Int16Array | Uint32Array | Int32Array>(array: T): Promise<T>;
61
- }
62
- export declare const customCrypto: CustomCrypto;
63
- export declare const signSchnorr: (message: import("@noble/curves/abstract/utils").Hex, privateKey: import("@noble/curves/abstract/utils").PrivKey, auxRand?: import("@noble/curves/abstract/utils").Hex) => Uint8Array;
64
- export declare const verifySchnorrSignature: (signature: import("@noble/curves/abstract/utils").Hex, message: import("@noble/curves/abstract/utils").Hex, publicKey: import("@noble/curves/abstract/utils").Hex) => boolean;
65
- /**
66
- * Gets the compressed public key (33 bytes with prefix)
67
- */
68
- export declare function getCompressedPublicKey(privateKeyBytes: Uint8Array): Uint8Array;
69
- /**
70
- * Gets the schnorr public key (32 bytes x-coordinate) as per BIP340
71
- */
72
- export declare function getSchnorrPublicKey(privateKeyBytes: Uint8Array): Uint8Array;
73
- /**
74
- * Generates a new key pair
75
- */
76
- export declare function generateKeyPair(): Promise<KeyPair>;
77
- /**
78
- * Gets a public key from a private key
79
- */
80
- export declare function getPublicKey(privateKey: string): Promise<PublicKeyDetails>;
81
- /**
82
- * Validates a key pair
83
- */
84
- export declare function validateKeyPair(keyPair: KeyPair): Promise<boolean>;
85
- /**
86
- * Creates a new event
87
- */
88
- export declare function createEvent(event: Partial<NostrEvent>): NostrEvent;
89
- /**
90
- * Signs an event
91
- */
92
- export declare function signEvent(event: NostrEvent, privateKey: string): Promise<SignedNostrEvent>;
93
- /**
94
- * Verifies an event signature
95
- */
96
- export declare function verifySignature(event: SignedNostrEvent): Promise<boolean>;
97
- /**
98
- * Encrypts a message using NIP-04
99
- */
100
- export declare function encrypt(message: string, recipientPubKey: PublicKey | string, senderPrivKey: string): Promise<string>;
101
- /**
102
- * Decrypts a message using NIP-04
103
- */
104
- export declare function decrypt(encryptedMessage: string, senderPubKey: PublicKey | string, recipientPrivKey: string): Promise<string>;
105
- export {};
106
- //# sourceMappingURL=crypto.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../src/crypto.ts"],"names":[],"mappings":"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"}