@bitshard.io/bitshard-sdk 0.0.2 → 0.0.3

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.
package/README.md CHANGED
@@ -47,8 +47,9 @@ console.log('Bitcoin address:', addresses.bitcoin);
47
47
 
48
48
  // Sign a message
49
49
  const message = 'Hello BitShard!';
50
- const signature = await sdk.personalSign(message, wallet.keyshares, {
51
- threshold: 2
50
+ const signature = await sdk.personalSign(message, wallet.keyshares, {
51
+ threshold: 2,
52
+ publicKey: wallet.publicKey
52
53
  });
53
54
  ```
54
55
 
@@ -92,8 +93,6 @@ The SDK is organized into several modules:
92
93
 
93
94
  Reusing pre-signatures will expose your private key. The SDK includes built-in protection against pre-signature reuse, but developers must ensure proper handling in their applications.
94
95
 
95
- See [SECURITY.md](./SECURITY.md) for detailed security considerations.
96
-
97
96
  ## Documentation
98
97
 
99
98
  - [Architecture Design](./ARCHITECTURE_DESIGN.md)
@@ -117,6 +116,96 @@ MIT
117
116
 
118
117
  Contributions are welcome! Please read our contributing guidelines and submit pull requests to our repository.
119
118
 
119
+ # Releasing new version guide
120
+
121
+ This document describes the standard release process for publishing the `@bitshard.io/bitshard-sdk` package.
122
+
123
+ > **Rule:** Always push commits and tags to GitHub **before** publishing to npm.
124
+
125
+ ---
126
+
127
+ ## Release Steps
128
+
129
+ ### 1. Commit your changes
130
+
131
+ ```bash
132
+ git add .
133
+ git commit -m "feat: describe your change"
134
+ ```
135
+
136
+ ---
137
+
138
+ ### 2. Bump version and create a Git tag
139
+
140
+ Patch release example (`0.0.1` → `0.0.2`):
141
+
142
+ ```bash
143
+ npm version patch
144
+ ```
145
+
146
+ This will:
147
+ - Update `package.json`
148
+ - Create an annotated Git tag (e.g. `v0.0.2`)
149
+
150
+ ---
151
+
152
+ ### 3. Push commits and tags to GitHub
153
+
154
+ ```bash
155
+ git push origin main --follow-tags
156
+ ```
157
+
158
+ This ensures Git is the source of truth before publishing.
159
+
160
+ ---
161
+
162
+ ### 4. Build the package
163
+
164
+ ```bash
165
+ npm run build
166
+ ```
167
+
168
+ Verify:
169
+ - Build output exists (e.g. `dist/`)
170
+ - `package.json` points to built files (`main`, `module`, `types`)
171
+
172
+ ---
173
+
174
+ ### 5. Publish to npm
175
+
176
+ ```bash
177
+ npm publish --access public
178
+ ```
179
+
180
+ > Scoped packages default to private unless published with `--access public` or `publishConfig.access = "public"`.
181
+
182
+ ---
183
+
184
+ ### 6. Verify release
185
+
186
+ ```bash
187
+ npm view @bitshard.io/bitshard-sdk version
188
+ git tag --list
189
+ ```
190
+
191
+ ---
192
+
193
+ ## Release Checklist
194
+
195
+ - [ ] Changes committed
196
+ - [ ] Version bumped via `npm version`
197
+ - [ ] Commits and tags pushed to GitHub
198
+ - [ ] Build successful
199
+ - [ ] npm publish successful
200
+
201
+ ---
202
+
203
+ ## Notes
204
+
205
+ - Do not publish to npm without a Git tag
206
+ - Ensure you are authenticated with npm using a publish-capable token (2FA-compliant)
207
+ - Prefer annotated tags for all releases
208
+
120
209
  ## Support
121
210
 
122
- For support, please open an issue on GitHub or contact support@bitshard.io
211
+ For support, please open an issue on GitHub or contact dev@bitshard.io
@@ -67,9 +67,9 @@ export declare class BitShardSDK {
67
67
  * @param options Signing options including publicKey for v calculation
68
68
  * @returns Signature result
69
69
  */
70
- personalSign(message: string, keyshares: Keyshare[], options?: {
70
+ personalSign(message: string, keyshares: Keyshare[], options: {
71
71
  threshold?: number;
72
- publicKey?: string;
72
+ publicKey: string;
73
73
  }): Promise<SignatureResult>;
74
74
  /**
75
75
  * Sign a personal message using a wallet (convenience method)
@@ -149,9 +149,6 @@ export declare class BitShardSDK {
149
149
  * @returns Bitcoin configuration or undefined
150
150
  */
151
151
  getBitcoinConfig(): BitcoinConfig | undefined;
152
- /**
153
- * Initialize default chain configurations
154
- */
155
152
  private initializeDefaultChains;
156
153
  /**
157
154
  * Get preset chain configuration
@@ -1 +1 @@
1
- {"version":3,"file":"BitShardSDK.d.ts","sourceRoot":"","sources":["../src/BitShardSDK.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BitShardSDK.d.ts","sourceRoot":"","sources":["../src/BitShardSDK.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ const dkls_wasm_ll_node_1 = require("@silencelaboratories/dkls-wasm-ll-node");
5
5
  const DKLSService_1 = require("./core/DKLSService");
6
6
  const DKLSParty_1 = require("./core/DKLSParty");
7
7
  const addresses_1 = require("./crypto/addresses");
8
+ const config_1 = require("./chains/config");
8
9
  /**
9
10
  * Main SDK class for BitShard MPC operations
10
11
  */
@@ -122,7 +123,7 @@ class BitShardSDK {
122
123
  * @param options Signing options including publicKey for v calculation
123
124
  * @returns Signature result
124
125
  */
125
- async personalSign(message, keyshares, options = {}) {
126
+ async personalSign(message, keyshares, options) {
126
127
  // Prepare message with EIP-191 prefix
127
128
  const messageBytes = Buffer.from(message, 'utf8');
128
129
  const prefix = `\x19Ethereum Signed Message:\n${messageBytes.length}`;
@@ -133,7 +134,7 @@ class BitShardSDK {
133
134
  // Hash the prefixed message with Keccak256 (Ethereum standard)
134
135
  const { keccak256 } = require('viem');
135
136
  const messageHash = Buffer.from(keccak256(prefixedMessage).slice(2), 'hex');
136
- // Sign with DKLS (pass public key if available for v calculation)
137
+ // Sign with DKLS (public key required for v calculation)
137
138
  const threshold = options.threshold ?? keyshares.length;
138
139
  const publicKey = options.publicKey;
139
140
  return this.dklsService.signMessage(messageHash, keyshares, threshold, publicKey);
@@ -258,98 +259,10 @@ class BitShardSDK {
258
259
  getBitcoinConfig() {
259
260
  return this.bitcoinConfig;
260
261
  }
261
- /**
262
- * Initialize default chain configurations
263
- */
264
262
  initializeDefaultChains() {
265
- // Ethereum
266
- this.chains.set('ethereum', {
267
- chainId: 1,
268
- name: 'Ethereum Mainnet',
269
- rpcUrl: 'https://eth.llamarpc.com',
270
- explorer: 'https://etherscan.io',
271
- nativeCurrency: {
272
- name: 'Ether',
273
- symbol: 'ETH',
274
- decimals: 18
275
- }
276
- });
277
- // Arbitrum One
278
- this.chains.set('arbitrum-one', {
279
- chainId: 42161,
280
- name: 'Arbitrum One',
281
- rpcUrl: 'https://arb1.arbitrum.io/rpc',
282
- explorer: 'https://arbiscan.io',
283
- nativeCurrency: {
284
- name: 'Ether',
285
- symbol: 'ETH',
286
- decimals: 18
287
- },
288
- gasConfig: {
289
- maxFeePerGas: '0.1',
290
- maxPriorityFeePerGas: '0.01'
291
- }
292
- });
293
- // Arbitrum Nova
294
- this.chains.set('arbitrum-nova', {
295
- chainId: 42170,
296
- name: 'Arbitrum Nova',
297
- rpcUrl: 'https://nova.arbitrum.io/rpc',
298
- explorer: 'https://nova.arbiscan.io',
299
- nativeCurrency: {
300
- name: 'Ether',
301
- symbol: 'ETH',
302
- decimals: 18
303
- }
304
- });
305
- // Arbitrum Sepolia
306
- this.chains.set('arbitrum-sepolia', {
307
- chainId: 421614,
308
- name: 'Arbitrum Sepolia',
309
- rpcUrl: 'https://sepolia-rollup.arbitrum.io/rpc',
310
- explorer: 'https://sepolia.arbiscan.io',
311
- nativeCurrency: {
312
- name: 'Ether',
313
- symbol: 'ETH',
314
- decimals: 18
315
- }
316
- });
317
- // Polygon
318
- this.chains.set('polygon', {
319
- chainId: 137,
320
- name: 'Polygon',
321
- rpcUrl: 'https://polygon-rpc.com',
322
- explorer: 'https://polygonscan.com',
323
- nativeCurrency: {
324
- name: 'MATIC',
325
- symbol: 'MATIC',
326
- decimals: 18
327
- }
328
- });
329
- // BNB Smart Chain
330
- this.chains.set('bnb', {
331
- chainId: 56,
332
- name: 'BNB Smart Chain',
333
- rpcUrl: 'https://bsc-dataseed.binance.org',
334
- explorer: 'https://bscscan.com',
335
- nativeCurrency: {
336
- name: 'BNB',
337
- symbol: 'BNB',
338
- decimals: 18
339
- }
340
- });
341
- // Avalanche C-Chain
342
- this.chains.set('avalanche', {
343
- chainId: 43114,
344
- name: 'Avalanche C-Chain',
345
- rpcUrl: 'https://api.avax.network/ext/bc/C/rpc',
346
- explorer: 'https://snowtrace.io',
347
- nativeCurrency: {
348
- name: 'AVAX',
349
- symbol: 'AVAX',
350
- decimals: 18
351
- }
352
- });
263
+ for (const [name, config] of Object.entries(config_1.ALL_CHAINS)) {
264
+ this.chains.set(name, config);
265
+ }
353
266
  }
354
267
  /**
355
268
  * Get preset chain configuration
@@ -1 +1 @@
1
- {"version":3,"file":"BitShardSDK.js","sourceRoot":"","sources":["../src/BitShardSDK.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BitShardSDK.js","sourceRoot":"","sources":["../src/BitShardSDK.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,9 @@
1
- /**
2
- * Chain configuration registry
3
- */
4
- export type { ChainConfig, BitcoinConfig } from '../core/types';
1
+ import type { ChainConfig, BitcoinConfig } from '../core/types';
2
+ export type { ChainConfig, BitcoinConfig };
3
+ export declare const ARBITRUM_CHAINS: Record<string, ChainConfig>;
4
+ export declare const EVM_CHAINS: Record<string, ChainConfig>;
5
+ export declare const ALL_CHAINS: Record<string, ChainConfig>;
6
+ export declare function getChain(network: string): ChainConfig;
7
+ export declare function getArbitrumChains(): Record<string, ChainConfig>;
8
+ export declare function getSupportedChains(): Record<string, ChainConfig>;
5
9
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/chains/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/chains/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEhE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;AAE3C,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CA8BvD,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAmClD,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAGlD,CAAC;AAEF,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAMrD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAE/D;AAED,wBAAgB,kBAAkB,IAAI,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAEhE"}
@@ -1,7 +1,91 @@
1
1
  "use strict";
2
- /**
3
- * Chain configuration registry
4
- */
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- // TODO: Implement chain registry
3
+ exports.ALL_CHAINS = exports.EVM_CHAINS = exports.ARBITRUM_CHAINS = void 0;
4
+ exports.getChain = getChain;
5
+ exports.getArbitrumChains = getArbitrumChains;
6
+ exports.getSupportedChains = getSupportedChains;
7
+ exports.ARBITRUM_CHAINS = {
8
+ 'arbitrum-one': {
9
+ chainId: 42161,
10
+ name: 'Arbitrum One',
11
+ rpcUrl: 'https://arb1.arbitrum.io/rpc',
12
+ explorer: 'https://arbiscan.io',
13
+ nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 },
14
+ gasConfig: { maxFeePerGas: '0.1', maxPriorityFeePerGas: '0.01' },
15
+ isTestnet: false,
16
+ alchemySubdomain: 'arb-mainnet',
17
+ },
18
+ 'arbitrum-nova': {
19
+ chainId: 42170,
20
+ name: 'Arbitrum Nova',
21
+ rpcUrl: 'https://nova.arbitrum.io/rpc',
22
+ explorer: 'https://nova.arbiscan.io',
23
+ nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 },
24
+ isTestnet: false,
25
+ alchemySubdomain: 'arbnova-mainnet',
26
+ },
27
+ 'arbitrum-sepolia': {
28
+ chainId: 421614,
29
+ name: 'Arbitrum Sepolia',
30
+ rpcUrl: 'https://sepolia-rollup.arbitrum.io/rpc',
31
+ explorer: 'https://sepolia.arbiscan.io',
32
+ nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 },
33
+ isTestnet: true,
34
+ faucetUrl: 'https://faucet.quicknode.com/arbitrum/sepolia',
35
+ alchemySubdomain: 'arb-sepolia',
36
+ },
37
+ };
38
+ exports.EVM_CHAINS = {
39
+ 'ethereum': {
40
+ chainId: 1,
41
+ name: 'Ethereum Mainnet',
42
+ rpcUrl: 'https://eth.llamarpc.com',
43
+ explorer: 'https://etherscan.io',
44
+ nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 },
45
+ isTestnet: false,
46
+ alchemySubdomain: 'eth-mainnet',
47
+ },
48
+ 'polygon': {
49
+ chainId: 137,
50
+ name: 'Polygon',
51
+ rpcUrl: 'https://polygon-rpc.com',
52
+ explorer: 'https://polygonscan.com',
53
+ nativeCurrency: { name: 'MATIC', symbol: 'MATIC', decimals: 18 },
54
+ isTestnet: false,
55
+ alchemySubdomain: 'polygon-mainnet',
56
+ },
57
+ 'bnb': {
58
+ chainId: 56,
59
+ name: 'BNB Smart Chain',
60
+ rpcUrl: 'https://bsc-dataseed.binance.org',
61
+ explorer: 'https://bscscan.com',
62
+ nativeCurrency: { name: 'BNB', symbol: 'BNB', decimals: 18 },
63
+ isTestnet: false,
64
+ },
65
+ 'avalanche': {
66
+ chainId: 43114,
67
+ name: 'Avalanche C-Chain',
68
+ rpcUrl: 'https://api.avax.network/ext/bc/C/rpc',
69
+ explorer: 'https://snowtrace.io',
70
+ nativeCurrency: { name: 'AVAX', symbol: 'AVAX', decimals: 18 },
71
+ isTestnet: false,
72
+ },
73
+ };
74
+ exports.ALL_CHAINS = {
75
+ ...exports.ARBITRUM_CHAINS,
76
+ ...exports.EVM_CHAINS,
77
+ };
78
+ function getChain(network) {
79
+ const chain = exports.ALL_CHAINS[network];
80
+ if (!chain) {
81
+ throw new Error(`Unknown chain: ${network}. Supported: ${Object.keys(exports.ALL_CHAINS).join(', ')}`);
82
+ }
83
+ return chain;
84
+ }
85
+ function getArbitrumChains() {
86
+ return { ...exports.ARBITRUM_CHAINS };
87
+ }
88
+ function getSupportedChains() {
89
+ return { ...exports.ALL_CHAINS };
90
+ }
7
91
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/chains/config.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAIH,iCAAiC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/chains/config.ts"],"names":[],"mappings":"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"}
@@ -190,6 +190,12 @@ export interface ChainConfig {
190
190
  maxFeePerGas?: string;
191
191
  maxPriorityFeePerGas?: string;
192
192
  };
193
+ /** Whether this is a testnet */
194
+ isTestnet?: boolean;
195
+ /** Faucet URL for testnets */
196
+ faucetUrl?: string;
197
+ /** Alchemy subdomain for API access (e.g. "arb-sepolia") */
198
+ alchemySubdomain?: string;
193
199
  }
194
200
  /**
195
201
  * Bitcoin network configuration
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,oCAAoC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,sCAAsC;IACtC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,qDAAqD;IACrD,eAAe,EAAE,MAAM,CAAC;IACxB,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,uBAAuB;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,8BAA8B;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,cAAc,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,wCAAwC;IACxC,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,mCAAmC;IACnC,SAAS,EAAE,mBAAmB,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,UAAU,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,uBAAuB;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAC;IACZ,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,2BAA2B;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,WAAW,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;IAC9C,6BAA6B;IAC7B,MAAM,EAAE,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC1C,8BAA8B;IAC9B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,6BAA6B;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6BAA6B;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,SAAS,EAAE,IAAI,CAAC;IAChB,4BAA4B;IAC5B,SAAS,EAAE,IAAI,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,kDAAkD;IAClD,SAAS,EAAE,MAAM,CAAC;IAClB,+BAA+B;IAC/B,CAAC,EAAE,MAAM,CAAC;IACV,+BAA+B;IAC/B,CAAC,EAAE,MAAM,CAAC;IACV,sCAAsC;IACtC,CAAC,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,yBAAyB;IACzB,IAAI,CAAC,EAAE,aAAa,GAAG,QAAQ,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,+BAA+B;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,8BAA8B;IAC9B,MAAM,EAAE;QACJ,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;KACtB,CAAC;CACL;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,qCAAqC;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,0CAA0C;IAC1C,OAAO,EAAE,GAAG,EAAE,CAAC;IACf,yBAAyB;IACzB,SAAS,EAAE,IAAI,CAAC;IAChB,mDAAmD;IACnD,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,eAAe;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2BAA2B;IAC3B,cAAc,EAAE;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,wBAAwB;IACxB,SAAS,CAAC,EAAE;QACR,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;KACjC,CAAC;CACL;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,mBAAmB;IACnB,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC3C,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB;IACnB,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;IACvC,wBAAwB;IACxB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,oBAAoB;IACpB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,uBAAuB;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACrC,oCAAoC;IACpC,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,2BAA2B;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAGD,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitshard.io/bitshard-sdk",
3
- "version": "0.0.2",
3
+ "version": "0.0.3",
4
4
  "description": "BitShard MPC SDK for distributed key generation and threshold signatures",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -11,6 +11,7 @@ import type {
11
11
  BitcoinConfig
12
12
  } from './core/types';
13
13
  import { deriveAddresses } from './crypto/addresses';
14
+ import { ALL_CHAINS } from './chains/config';
14
15
 
15
16
  /**
16
17
  * Main SDK class for BitShard MPC operations
@@ -156,7 +157,7 @@ export class BitShardSDK {
156
157
  async personalSign(
157
158
  message: string,
158
159
  keyshares: Keyshare[],
159
- options: { threshold?: number; publicKey?: string } = {}
160
+ options: { threshold?: number; publicKey: string }
160
161
  ): Promise<SignatureResult> {
161
162
  // Prepare message with EIP-191 prefix
162
163
  const messageBytes = Buffer.from(message, 'utf8');
@@ -170,7 +171,7 @@ export class BitShardSDK {
170
171
  const { keccak256 } = require('viem');
171
172
  const messageHash = Buffer.from(keccak256(prefixedMessage).slice(2), 'hex');
172
173
 
173
- // Sign with DKLS (pass public key if available for v calculation)
174
+ // Sign with DKLS (public key required for v calculation)
174
175
  const threshold = options.threshold ?? keyshares.length;
175
176
  const publicKey = options.publicKey;
176
177
 
@@ -332,104 +333,10 @@ export class BitShardSDK {
332
333
  return this.bitcoinConfig;
333
334
  }
334
335
 
335
- /**
336
- * Initialize default chain configurations
337
- */
338
336
  private initializeDefaultChains(): void {
339
- // Ethereum
340
- this.chains.set('ethereum', {
341
- chainId: 1,
342
- name: 'Ethereum Mainnet',
343
- rpcUrl: 'https://eth.llamarpc.com',
344
- explorer: 'https://etherscan.io',
345
- nativeCurrency: {
346
- name: 'Ether',
347
- symbol: 'ETH',
348
- decimals: 18
349
- }
350
- });
351
-
352
- // Arbitrum One
353
- this.chains.set('arbitrum-one', {
354
- chainId: 42161,
355
- name: 'Arbitrum One',
356
- rpcUrl: 'https://arb1.arbitrum.io/rpc',
357
- explorer: 'https://arbiscan.io',
358
- nativeCurrency: {
359
- name: 'Ether',
360
- symbol: 'ETH',
361
- decimals: 18
362
- },
363
- gasConfig: {
364
- maxFeePerGas: '0.1',
365
- maxPriorityFeePerGas: '0.01'
366
- }
367
- });
368
-
369
- // Arbitrum Nova
370
- this.chains.set('arbitrum-nova', {
371
- chainId: 42170,
372
- name: 'Arbitrum Nova',
373
- rpcUrl: 'https://nova.arbitrum.io/rpc',
374
- explorer: 'https://nova.arbiscan.io',
375
- nativeCurrency: {
376
- name: 'Ether',
377
- symbol: 'ETH',
378
- decimals: 18
379
- }
380
- });
381
-
382
- // Arbitrum Sepolia
383
- this.chains.set('arbitrum-sepolia', {
384
- chainId: 421614,
385
- name: 'Arbitrum Sepolia',
386
- rpcUrl: 'https://sepolia-rollup.arbitrum.io/rpc',
387
- explorer: 'https://sepolia.arbiscan.io',
388
- nativeCurrency: {
389
- name: 'Ether',
390
- symbol: 'ETH',
391
- decimals: 18
392
- }
393
- });
394
-
395
- // Polygon
396
- this.chains.set('polygon', {
397
- chainId: 137,
398
- name: 'Polygon',
399
- rpcUrl: 'https://polygon-rpc.com',
400
- explorer: 'https://polygonscan.com',
401
- nativeCurrency: {
402
- name: 'MATIC',
403
- symbol: 'MATIC',
404
- decimals: 18
405
- }
406
- });
407
-
408
- // BNB Smart Chain
409
- this.chains.set('bnb', {
410
- chainId: 56,
411
- name: 'BNB Smart Chain',
412
- rpcUrl: 'https://bsc-dataseed.binance.org',
413
- explorer: 'https://bscscan.com',
414
- nativeCurrency: {
415
- name: 'BNB',
416
- symbol: 'BNB',
417
- decimals: 18
418
- }
419
- });
420
-
421
- // Avalanche C-Chain
422
- this.chains.set('avalanche', {
423
- chainId: 43114,
424
- name: 'Avalanche C-Chain',
425
- rpcUrl: 'https://api.avax.network/ext/bc/C/rpc',
426
- explorer: 'https://snowtrace.io',
427
- nativeCurrency: {
428
- name: 'AVAX',
429
- symbol: 'AVAX',
430
- decimals: 18
431
- }
432
- });
337
+ for (const [name, config] of Object.entries(ALL_CHAINS)) {
338
+ this.chains.set(name, config);
339
+ }
433
340
  }
434
341
 
435
342
  /**
@@ -1,7 +1,93 @@
1
- /**
2
- * Chain configuration registry
3
- */
1
+ import type { ChainConfig, BitcoinConfig } from '../core/types';
4
2
 
5
- export type { ChainConfig, BitcoinConfig } from '../core/types';
3
+ export type { ChainConfig, BitcoinConfig };
6
4
 
7
- // TODO: Implement chain registry
5
+ export const ARBITRUM_CHAINS: Record<string, ChainConfig> = {
6
+ 'arbitrum-one': {
7
+ chainId: 42161,
8
+ name: 'Arbitrum One',
9
+ rpcUrl: 'https://arb1.arbitrum.io/rpc',
10
+ explorer: 'https://arbiscan.io',
11
+ nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 },
12
+ gasConfig: { maxFeePerGas: '0.1', maxPriorityFeePerGas: '0.01' },
13
+ isTestnet: false,
14
+ alchemySubdomain: 'arb-mainnet',
15
+ },
16
+ 'arbitrum-nova': {
17
+ chainId: 42170,
18
+ name: 'Arbitrum Nova',
19
+ rpcUrl: 'https://nova.arbitrum.io/rpc',
20
+ explorer: 'https://nova.arbiscan.io',
21
+ nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 },
22
+ isTestnet: false,
23
+ alchemySubdomain: 'arbnova-mainnet',
24
+ },
25
+ 'arbitrum-sepolia': {
26
+ chainId: 421614,
27
+ name: 'Arbitrum Sepolia',
28
+ rpcUrl: 'https://sepolia-rollup.arbitrum.io/rpc',
29
+ explorer: 'https://sepolia.arbiscan.io',
30
+ nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 },
31
+ isTestnet: true,
32
+ faucetUrl: 'https://faucet.quicknode.com/arbitrum/sepolia',
33
+ alchemySubdomain: 'arb-sepolia',
34
+ },
35
+ };
36
+
37
+ export const EVM_CHAINS: Record<string, ChainConfig> = {
38
+ 'ethereum': {
39
+ chainId: 1,
40
+ name: 'Ethereum Mainnet',
41
+ rpcUrl: 'https://eth.llamarpc.com',
42
+ explorer: 'https://etherscan.io',
43
+ nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 },
44
+ isTestnet: false,
45
+ alchemySubdomain: 'eth-mainnet',
46
+ },
47
+ 'polygon': {
48
+ chainId: 137,
49
+ name: 'Polygon',
50
+ rpcUrl: 'https://polygon-rpc.com',
51
+ explorer: 'https://polygonscan.com',
52
+ nativeCurrency: { name: 'MATIC', symbol: 'MATIC', decimals: 18 },
53
+ isTestnet: false,
54
+ alchemySubdomain: 'polygon-mainnet',
55
+ },
56
+ 'bnb': {
57
+ chainId: 56,
58
+ name: 'BNB Smart Chain',
59
+ rpcUrl: 'https://bsc-dataseed.binance.org',
60
+ explorer: 'https://bscscan.com',
61
+ nativeCurrency: { name: 'BNB', symbol: 'BNB', decimals: 18 },
62
+ isTestnet: false,
63
+ },
64
+ 'avalanche': {
65
+ chainId: 43114,
66
+ name: 'Avalanche C-Chain',
67
+ rpcUrl: 'https://api.avax.network/ext/bc/C/rpc',
68
+ explorer: 'https://snowtrace.io',
69
+ nativeCurrency: { name: 'AVAX', symbol: 'AVAX', decimals: 18 },
70
+ isTestnet: false,
71
+ },
72
+ };
73
+
74
+ export const ALL_CHAINS: Record<string, ChainConfig> = {
75
+ ...ARBITRUM_CHAINS,
76
+ ...EVM_CHAINS,
77
+ };
78
+
79
+ export function getChain(network: string): ChainConfig {
80
+ const chain = ALL_CHAINS[network];
81
+ if (!chain) {
82
+ throw new Error(`Unknown chain: ${network}. Supported: ${Object.keys(ALL_CHAINS).join(', ')}`);
83
+ }
84
+ return chain;
85
+ }
86
+
87
+ export function getArbitrumChains(): Record<string, ChainConfig> {
88
+ return { ...ARBITRUM_CHAINS };
89
+ }
90
+
91
+ export function getSupportedChains(): Record<string, ChainConfig> {
92
+ return { ...ALL_CHAINS };
93
+ }
package/src/core/types.ts CHANGED
@@ -201,6 +201,12 @@ export interface ChainConfig {
201
201
  maxFeePerGas?: string;
202
202
  maxPriorityFeePerGas?: string;
203
203
  };
204
+ /** Whether this is a testnet */
205
+ isTestnet?: boolean;
206
+ /** Faucet URL for testnets */
207
+ faucetUrl?: string;
208
+ /** Alchemy subdomain for API access (e.g. "arb-sepolia") */
209
+ alchemySubdomain?: string;
204
210
  }
205
211
 
206
212
  /**