@t402/btc 2.7.0

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 (62) hide show
  1. package/README.md +120 -0
  2. package/dist/cjs/exact/client/index.d.ts +89 -0
  3. package/dist/cjs/exact/client/index.js +145 -0
  4. package/dist/cjs/exact/client/index.js.map +1 -0
  5. package/dist/cjs/exact/facilitator/index.d.ts +114 -0
  6. package/dist/cjs/exact/facilitator/index.js +218 -0
  7. package/dist/cjs/exact/facilitator/index.js.map +1 -0
  8. package/dist/cjs/exact/server/index.d.ts +101 -0
  9. package/dist/cjs/exact/server/index.js +161 -0
  10. package/dist/cjs/exact/server/index.js.map +1 -0
  11. package/dist/cjs/index.d.ts +179 -0
  12. package/dist/cjs/index.js +849 -0
  13. package/dist/cjs/index.js.map +1 -0
  14. package/dist/cjs/lightning/client/index.d.ts +82 -0
  15. package/dist/cjs/lightning/client/index.js +114 -0
  16. package/dist/cjs/lightning/client/index.js.map +1 -0
  17. package/dist/cjs/lightning/facilitator/index.d.ts +93 -0
  18. package/dist/cjs/lightning/facilitator/index.js +211 -0
  19. package/dist/cjs/lightning/facilitator/index.js.map +1 -0
  20. package/dist/cjs/lightning/server/index.d.ts +96 -0
  21. package/dist/cjs/lightning/server/index.js +157 -0
  22. package/dist/cjs/lightning/server/index.js.map +1 -0
  23. package/dist/cjs/signer-B_Z4WGLa.d.ts +64 -0
  24. package/dist/esm/chunk-2DEKJ7ER.mjs +123 -0
  25. package/dist/esm/chunk-2DEKJ7ER.mjs.map +1 -0
  26. package/dist/esm/chunk-3IOPLDQH.mjs +74 -0
  27. package/dist/esm/chunk-3IOPLDQH.mjs.map +1 -0
  28. package/dist/esm/chunk-7IU3Z36R.mjs +103 -0
  29. package/dist/esm/chunk-7IU3Z36R.mjs.map +1 -0
  30. package/dist/esm/chunk-HNFWDITA.mjs +170 -0
  31. package/dist/esm/chunk-HNFWDITA.mjs.map +1 -0
  32. package/dist/esm/chunk-MX3PAUPJ.mjs +65 -0
  33. package/dist/esm/chunk-MX3PAUPJ.mjs.map +1 -0
  34. package/dist/esm/chunk-YJYTK2QQ.mjs +127 -0
  35. package/dist/esm/chunk-YJYTK2QQ.mjs.map +1 -0
  36. package/dist/esm/chunk-YWZC2RR7.mjs +38 -0
  37. package/dist/esm/chunk-YWZC2RR7.mjs.map +1 -0
  38. package/dist/esm/chunk-ZOL5R3HZ.mjs +177 -0
  39. package/dist/esm/chunk-ZOL5R3HZ.mjs.map +1 -0
  40. package/dist/esm/exact/client/index.d.mts +89 -0
  41. package/dist/esm/exact/client/index.mjs +11 -0
  42. package/dist/esm/exact/client/index.mjs.map +1 -0
  43. package/dist/esm/exact/facilitator/index.d.mts +114 -0
  44. package/dist/esm/exact/facilitator/index.mjs +11 -0
  45. package/dist/esm/exact/facilitator/index.mjs.map +1 -0
  46. package/dist/esm/exact/server/index.d.mts +101 -0
  47. package/dist/esm/exact/server/index.mjs +10 -0
  48. package/dist/esm/exact/server/index.mjs.map +1 -0
  49. package/dist/esm/index.d.mts +179 -0
  50. package/dist/esm/index.mjs +77 -0
  51. package/dist/esm/index.mjs.map +1 -0
  52. package/dist/esm/lightning/client/index.d.mts +82 -0
  53. package/dist/esm/lightning/client/index.mjs +11 -0
  54. package/dist/esm/lightning/client/index.mjs.map +1 -0
  55. package/dist/esm/lightning/facilitator/index.d.mts +93 -0
  56. package/dist/esm/lightning/facilitator/index.mjs +11 -0
  57. package/dist/esm/lightning/facilitator/index.mjs.map +1 -0
  58. package/dist/esm/lightning/server/index.d.mts +96 -0
  59. package/dist/esm/lightning/server/index.mjs +10 -0
  60. package/dist/esm/lightning/server/index.mjs.map +1 -0
  61. package/dist/esm/signer-B_Z4WGLa.d.mts +64 -0
  62. package/package.json +142 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Bitcoin & Lightning Signer Interfaces
3
+ *
4
+ * Defines the signer interfaces for t402 client operations.
5
+ * These interfaces abstract the signing implementation,
6
+ * allowing integration with various Bitcoin wallets and Lightning nodes.
7
+ */
8
+ /**
9
+ * ClientBtcSigner - Used by t402 clients to sign Bitcoin transactions
10
+ *
11
+ * Implementations may include:
12
+ * - bitcoinjs-lib with private key
13
+ * - Hardware wallet (Ledger, Trezor)
14
+ * - Browser extension wallet
15
+ */
16
+ interface ClientBtcSigner {
17
+ /**
18
+ * Sign a PSBT (Partially Signed Bitcoin Transaction)
19
+ *
20
+ * @param psbt - Base64-encoded unsigned PSBT
21
+ * @returns Base64-encoded signed PSBT
22
+ */
23
+ signPsbt(psbt: string): Promise<string>;
24
+ /**
25
+ * Get the signer's Bitcoin address
26
+ *
27
+ * @returns Bitcoin address string
28
+ */
29
+ getAddress(): string;
30
+ /**
31
+ * Get the signer's public key (hex-encoded)
32
+ *
33
+ * @returns Public key as hex string
34
+ */
35
+ getPublicKey(): string;
36
+ }
37
+ /**
38
+ * ClientLightningSigner - Used by t402 clients to pay Lightning invoices
39
+ *
40
+ * Implementations may include:
41
+ * - LND node client
42
+ * - CLN (Core Lightning) client
43
+ * - WebLN browser extension
44
+ */
45
+ interface ClientLightningSigner {
46
+ /**
47
+ * Pay a BOLT11 Lightning invoice
48
+ *
49
+ * @param bolt11 - BOLT11 invoice string
50
+ * @returns Payment result with preimage and payment hash
51
+ */
52
+ payInvoice(bolt11: string): Promise<{
53
+ preimage: string;
54
+ paymentHash: string;
55
+ }>;
56
+ /**
57
+ * Get the Lightning node's public key
58
+ *
59
+ * @returns Node public key as hex string
60
+ */
61
+ getNodePubKey(): string;
62
+ }
63
+
64
+ export type { ClientBtcSigner as C, ClientLightningSigner as a };
package/package.json ADDED
@@ -0,0 +1,142 @@
1
+ {
2
+ "name": "@t402/btc",
3
+ "version": "2.7.0",
4
+ "main": "./dist/cjs/index.js",
5
+ "module": "./dist/esm/index.js",
6
+ "types": "./dist/cjs/index.d.ts",
7
+ "keywords": [
8
+ "t402",
9
+ "payment",
10
+ "protocol",
11
+ "bitcoin",
12
+ "lightning",
13
+ "btc"
14
+ ],
15
+ "license": "Apache-2.0",
16
+ "author": "T402 Team",
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "https://github.com/t402-io/t402.git",
20
+ "directory": "sdks/typescript/packages/mechanisms/btc"
21
+ },
22
+ "description": "t402 Payment Protocol Bitcoin & Lightning Network Implementation",
23
+ "devDependencies": {
24
+ "@eslint/js": "^9.39.2",
25
+ "@types/node": "^25.2.2",
26
+ "@typescript-eslint/eslint-plugin": "^8.55.0",
27
+ "@typescript-eslint/parser": "^8.55.0",
28
+ "eslint": "^9.24.0",
29
+ "eslint-plugin-import": "^2.31.0",
30
+ "eslint-plugin-jsdoc": "^62.5.4",
31
+ "eslint-plugin-prettier": "^5.5.5",
32
+ "glob": "^13.0.0",
33
+ "prettier": "3.8.1",
34
+ "tsup": "^8.5.1",
35
+ "tsx": "^4.21.0",
36
+ "typescript": "^5.9.3",
37
+ "vite": "^7.3.1",
38
+ "vite-tsconfig-paths": "^6.1.0",
39
+ "vitest": "^3.2.4"
40
+ },
41
+ "dependencies": {
42
+ "@t402/core": "2.7.0"
43
+ },
44
+ "peerDependencies": {
45
+ "bitcoinjs-lib": "^6.0.0"
46
+ },
47
+ "peerDependenciesMeta": {
48
+ "bitcoinjs-lib": {
49
+ "optional": true
50
+ }
51
+ },
52
+ "exports": {
53
+ ".": {
54
+ "import": {
55
+ "types": "./dist/esm/index.d.mts",
56
+ "default": "./dist/esm/index.mjs"
57
+ },
58
+ "require": {
59
+ "types": "./dist/cjs/index.d.ts",
60
+ "default": "./dist/cjs/index.js"
61
+ }
62
+ },
63
+ "./exact/client": {
64
+ "import": {
65
+ "types": "./dist/esm/exact/client/index.d.mts",
66
+ "default": "./dist/esm/exact/client/index.mjs"
67
+ },
68
+ "require": {
69
+ "types": "./dist/cjs/exact/client/index.d.ts",
70
+ "default": "./dist/cjs/exact/client/index.js"
71
+ }
72
+ },
73
+ "./exact/server": {
74
+ "import": {
75
+ "types": "./dist/esm/exact/server/index.d.mts",
76
+ "default": "./dist/esm/exact/server/index.mjs"
77
+ },
78
+ "require": {
79
+ "types": "./dist/cjs/exact/server/index.d.ts",
80
+ "default": "./dist/cjs/exact/server/index.js"
81
+ }
82
+ },
83
+ "./exact/facilitator": {
84
+ "import": {
85
+ "types": "./dist/esm/exact/facilitator/index.d.mts",
86
+ "default": "./dist/esm/exact/facilitator/index.mjs"
87
+ },
88
+ "require": {
89
+ "types": "./dist/cjs/exact/facilitator/index.d.ts",
90
+ "default": "./dist/cjs/exact/facilitator/index.js"
91
+ }
92
+ },
93
+ "./lightning/client": {
94
+ "import": {
95
+ "types": "./dist/esm/lightning/client/index.d.mts",
96
+ "default": "./dist/esm/lightning/client/index.mjs"
97
+ },
98
+ "require": {
99
+ "types": "./dist/cjs/lightning/client/index.d.ts",
100
+ "default": "./dist/cjs/lightning/client/index.js"
101
+ }
102
+ },
103
+ "./lightning/server": {
104
+ "import": {
105
+ "types": "./dist/esm/lightning/server/index.d.mts",
106
+ "default": "./dist/esm/lightning/server/index.mjs"
107
+ },
108
+ "require": {
109
+ "types": "./dist/cjs/lightning/server/index.d.ts",
110
+ "default": "./dist/cjs/lightning/server/index.js"
111
+ }
112
+ },
113
+ "./lightning/facilitator": {
114
+ "import": {
115
+ "types": "./dist/esm/lightning/facilitator/index.d.mts",
116
+ "default": "./dist/esm/lightning/facilitator/index.mjs"
117
+ },
118
+ "require": {
119
+ "types": "./dist/cjs/lightning/facilitator/index.d.ts",
120
+ "default": "./dist/cjs/lightning/facilitator/index.js"
121
+ }
122
+ }
123
+ },
124
+ "files": [
125
+ "dist"
126
+ ],
127
+ "homepage": "https://t402.io",
128
+ "publishConfig": {
129
+ "access": "public"
130
+ },
131
+ "scripts": {
132
+ "start": "tsx --env-file=.env index.ts",
133
+ "build": "tsup",
134
+ "test": "vitest run",
135
+ "test:watch": "vitest",
136
+ "watch": "tsc --watch",
137
+ "format": "prettier -c .prettierrc --write \"**/*.{ts,js,cjs,json,md}\"",
138
+ "format:check": "prettier -c .prettierrc --check \"**/*.{ts,js,cjs,json,md}\"",
139
+ "lint": "eslint . --ext .ts --fix",
140
+ "lint:check": "eslint . --ext .ts"
141
+ }
142
+ }