@explorins/pers-sdk 2.1.11 → 2.1.14

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 (117) hide show
  1. package/dist/business/api/business-membership-api.d.ts +2 -2
  2. package/dist/chunks/{index-B-g2JPVK.cjs → index-CGaKfZNU.cjs} +279 -1
  3. package/dist/chunks/index-CGaKfZNU.cjs.map +1 -0
  4. package/dist/chunks/{index-CKm_V5XE.js → index-DgTEdUgC.js} +277 -2
  5. package/dist/chunks/index-DgTEdUgC.js.map +1 -0
  6. package/dist/chunks/{pers-sdk-CJo4CCTG.js → pers-sdk-BiP7UMJ3.js} +1695 -180
  7. package/dist/chunks/pers-sdk-BiP7UMJ3.js.map +1 -0
  8. package/dist/chunks/{pers-sdk-Bheg5mKX.cjs → pers-sdk-Cv7hM1I7.cjs} +1701 -180
  9. package/dist/chunks/pers-sdk-Cv7hM1I7.cjs.map +1 -0
  10. package/dist/chunks/tenant-manager-BUiFM33X.cjs +157 -0
  11. package/dist/chunks/tenant-manager-BUiFM33X.cjs.map +1 -0
  12. package/dist/chunks/tenant-manager-Bbj0bKoo.js +155 -0
  13. package/dist/chunks/tenant-manager-Bbj0bKoo.js.map +1 -0
  14. package/dist/chunks/{transaction-request.builder-DGTxGvc3.js → transaction-request.builder-C3C19kCx.js} +23 -2
  15. package/dist/chunks/{transaction-request.builder-DGTxGvc3.js.map → transaction-request.builder-C3C19kCx.js.map} +1 -1
  16. package/dist/chunks/{transaction-request.builder-Bjxi0C9F.cjs → transaction-request.builder-CW3Wwdi3.cjs} +23 -1
  17. package/dist/chunks/{transaction-request.builder-Bjxi0C9F.cjs.map → transaction-request.builder-CW3Wwdi3.cjs.map} +1 -1
  18. package/dist/chunks/{web3-chain-service-D68-0WaW.cjs → web3-chain-service-DcLiy3m2.cjs} +7 -7
  19. package/dist/chunks/{web3-chain-service-D68-0WaW.cjs.map → web3-chain-service-DcLiy3m2.cjs.map} +1 -1
  20. package/dist/chunks/{web3-chain-service-DuvxmKSj.js → web3-chain-service-nGntR60S.js} +3 -3
  21. package/dist/chunks/{web3-chain-service-DuvxmKSj.js.map → web3-chain-service-nGntR60S.js.map} +1 -1
  22. package/dist/chunks/{web3-manager-OExwBWB7.js → web3-manager-BbJzGd0y.js} +67 -53
  23. package/dist/chunks/web3-manager-BbJzGd0y.js.map +1 -0
  24. package/dist/chunks/{web3-manager-C_cFaMCm.cjs → web3-manager-fRGFR_pM.cjs} +67 -53
  25. package/dist/chunks/web3-manager-fRGFR_pM.cjs.map +1 -0
  26. package/dist/core/events/event-emitter.d.ts.map +1 -1
  27. package/dist/core/pers-config.d.ts +19 -0
  28. package/dist/core/pers-config.d.ts.map +1 -1
  29. package/dist/core.cjs +17 -14
  30. package/dist/core.cjs.map +1 -1
  31. package/dist/core.js +5 -5
  32. package/dist/events/index.d.ts +13 -0
  33. package/dist/events/index.d.ts.map +1 -0
  34. package/dist/events/pers-events-client.d.ts +143 -0
  35. package/dist/events/pers-events-client.d.ts.map +1 -0
  36. package/dist/events/types.d.ts +37 -0
  37. package/dist/events/types.d.ts.map +1 -0
  38. package/dist/index.cjs +41 -13
  39. package/dist/index.cjs.map +1 -1
  40. package/dist/index.d.ts +2 -0
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +5 -5
  43. package/dist/managers/events-manager.d.ts +179 -0
  44. package/dist/managers/events-manager.d.ts.map +1 -0
  45. package/dist/managers/index.d.ts +2 -0
  46. package/dist/managers/index.d.ts.map +1 -1
  47. package/dist/managers/tenant-manager.d.ts +42 -1
  48. package/dist/managers/tenant-manager.d.ts.map +1 -1
  49. package/dist/managers/web3-manager.d.ts +12 -14
  50. package/dist/managers/web3-manager.d.ts.map +1 -1
  51. package/dist/managers/webhook-manager.d.ts +237 -0
  52. package/dist/managers/webhook-manager.d.ts.map +1 -0
  53. package/dist/node.cjs +4 -3
  54. package/dist/node.cjs.map +1 -1
  55. package/dist/node.js +4 -3
  56. package/dist/node.js.map +1 -1
  57. package/dist/package.json +3 -2
  58. package/dist/pers-sdk.d.ts +110 -1
  59. package/dist/pers-sdk.d.ts.map +1 -1
  60. package/dist/transaction/index.d.ts +1 -1
  61. package/dist/transaction/index.d.ts.map +1 -1
  62. package/dist/transaction/models/transaction-request.builder.d.ts +16 -0
  63. package/dist/transaction/models/transaction-request.builder.d.ts.map +1 -1
  64. package/dist/transaction.cjs +2 -1
  65. package/dist/transaction.cjs.map +1 -1
  66. package/dist/transaction.js +1 -1
  67. package/dist/web3/application/web3-application.service.d.ts +6 -3
  68. package/dist/web3/application/web3-application.service.d.ts.map +1 -1
  69. package/dist/web3/domain/services/metadata-domain.service.d.ts +4 -2
  70. package/dist/web3/domain/services/metadata-domain.service.d.ts.map +1 -1
  71. package/dist/web3/infrastructure/api/ipfs-api.d.ts +22 -9
  72. package/dist/web3/infrastructure/api/ipfs-api.d.ts.map +1 -1
  73. package/dist/web3/utils/explorer.utils.d.ts +3 -3
  74. package/dist/web3/utils/explorer.utils.d.ts.map +1 -1
  75. package/dist/web3-chain/api/web3-chain-api.d.ts +3 -2
  76. package/dist/web3-chain/api/web3-chain-api.d.ts.map +1 -1
  77. package/dist/web3-chain/index.d.ts +0 -1
  78. package/dist/web3-chain/index.d.ts.map +1 -1
  79. package/dist/web3-chain/models/index.d.ts +5 -23
  80. package/dist/web3-chain/models/index.d.ts.map +1 -1
  81. package/dist/web3-chain/services/web3-chain-service.d.ts +2 -2
  82. package/dist/web3-chain/services/web3-chain-service.d.ts.map +1 -1
  83. package/dist/web3-chain.cjs +8 -14
  84. package/dist/web3-chain.cjs.map +1 -1
  85. package/dist/web3-chain.js +3 -16
  86. package/dist/web3-chain.js.map +1 -1
  87. package/dist/web3-manager.cjs +7 -4
  88. package/dist/web3-manager.cjs.map +1 -1
  89. package/dist/web3-manager.js +7 -4
  90. package/dist/web3-manager.js.map +1 -1
  91. package/dist/web3.cjs +7 -4
  92. package/dist/web3.cjs.map +1 -1
  93. package/dist/web3.js +7 -4
  94. package/dist/web3.js.map +1 -1
  95. package/dist/webhook/api/index.d.ts +2 -0
  96. package/dist/webhook/api/index.d.ts.map +1 -0
  97. package/dist/webhook/api/webhook-api.d.ts +73 -0
  98. package/dist/webhook/api/webhook-api.d.ts.map +1 -0
  99. package/dist/webhook/index.d.ts +35 -0
  100. package/dist/webhook/index.d.ts.map +1 -0
  101. package/dist/webhook/models/index.d.ts +58 -0
  102. package/dist/webhook/models/index.d.ts.map +1 -0
  103. package/dist/webhook/services/index.d.ts +2 -0
  104. package/dist/webhook/services/index.d.ts.map +1 -0
  105. package/dist/webhook/services/webhook-service.d.ts +98 -0
  106. package/dist/webhook/services/webhook-service.d.ts.map +1 -0
  107. package/package.json +3 -2
  108. package/dist/chunks/index-B-g2JPVK.cjs.map +0 -1
  109. package/dist/chunks/index-B6-bbNnd.cjs +0 -281
  110. package/dist/chunks/index-B6-bbNnd.cjs.map +0 -1
  111. package/dist/chunks/index-CKm_V5XE.js.map +0 -1
  112. package/dist/chunks/index-DBLskLuH.js +0 -277
  113. package/dist/chunks/index-DBLskLuH.js.map +0 -1
  114. package/dist/chunks/pers-sdk-Bheg5mKX.cjs.map +0 -1
  115. package/dist/chunks/pers-sdk-CJo4CCTG.js.map +0 -1
  116. package/dist/chunks/web3-manager-C_cFaMCm.cjs.map +0 -1
  117. package/dist/chunks/web3-manager-OExwBWB7.js.map +0 -1
@@ -1,8 +1,10 @@
1
1
  'use strict';
2
2
 
3
3
  var ethers = require('@explorins/web3-ts/ethers');
4
- var index = require('./index-B6-bbNnd.cjs');
5
- var web3ChainService = require('./web3-chain-service-D68-0WaW.cjs');
4
+ var index = require('./index-CGaKfZNU.cjs');
5
+ var web3ChainService = require('./web3-chain-service-DcLiy3m2.cjs');
6
+ require('@explorins/web3-types');
7
+ var tenantManager = require('./tenant-manager-BUiFM33X.cjs');
6
8
  var persShared = require('@explorins/pers-shared');
7
9
 
8
10
  // type ContractAnalysis = ReturnType<ContractDomainService['analyzeContract']>;
@@ -33,7 +35,7 @@ class TokenDomainService {
33
35
  const abi = ethers.convertAbiToInterface(params.abi);
34
36
  const tokenUri = await this.web3Api.getTokenUri({ ...params, abi });
35
37
  const metadata = tokenUri
36
- ? await this.metadataService.fetchAndProcessMetadata(tokenUri, params.chainId)
38
+ ? await this.metadataService.fetchAndProcessMetadata(tokenUri)
37
39
  : null;
38
40
  return { tokenId: params.tokenId, tokenUri, metadata };
39
41
  }
@@ -224,17 +226,19 @@ class TokenDomainService {
224
226
 
225
227
  /**
226
228
  * MetadataDomainService - Clean IPFS metadata resolution with centralized caching
229
+ *
230
+ * IPFS gateway is resolved from tenant configuration (chain-agnostic).
227
231
  */
228
232
  class MetadataDomainService {
229
233
  constructor(ipfsApi) {
230
234
  this.ipfsApi = ipfsApi;
231
235
  this.cache = index.globalCacheService.createNamespace('metadata');
232
236
  }
233
- async fetchAndProcessMetadata(tokenUri, chainId) {
234
- const cacheKey = `fetch:${tokenUri}:${chainId}`;
237
+ async fetchAndProcessMetadata(tokenUri) {
238
+ const cacheKey = `fetch:${tokenUri}`;
235
239
  return this.cache.getOrSet(cacheKey, async () => {
236
240
  try {
237
- return await this.ipfsApi.fetchAndProcessMetadata(tokenUri, chainId);
241
+ return await this.ipfsApi.fetchAndProcessMetadata(tokenUri);
238
242
  }
239
243
  catch (error) {
240
244
  console.error(`Error fetching metadata for ${tokenUri}:`, error);
@@ -242,9 +246,9 @@ class MetadataDomainService {
242
246
  }
243
247
  }, index.CacheTTL.METADATA);
244
248
  }
245
- async resolveIPFSUrl(url, chainId) {
246
- const cacheKey = `resolve:${url}:${chainId}`;
247
- return this.cache.getOrSet(cacheKey, () => this.ipfsApi.resolveIPFSUrl(url, chainId), index.CacheTTL.GATEWAY);
249
+ async resolveIPFSUrl(url) {
250
+ const cacheKey = `resolve:${url}`;
251
+ return this.cache.getOrSet(cacheKey, () => this.ipfsApi.resolveIPFSUrl(url), index.CacheTTL.GATEWAY);
248
252
  }
249
253
  /**
250
254
  * Clear all cached metadata and URLs for this service
@@ -344,19 +348,22 @@ class Web3ApplicationService {
344
348
  });
345
349
  }
346
350
  /**
347
- * Resolve IPFS URLs to HTTPS if needed
351
+ * Resolve IPFS URLs to HTTPS if needed.
352
+ *
353
+ * IPFS gateway is resolved from tenant configuration (chain-agnostic).
348
354
  */
349
- async resolveIPFSUrl(url, chainId) {
350
- return this.metadataDomainService.resolveIPFSUrl(url, chainId);
355
+ async resolveIPFSUrl(url) {
356
+ return this.metadataDomainService.resolveIPFSUrl(url);
351
357
  }
352
358
  /**
353
359
  * Fetch and process metadata from any URI with IPFS conversion.
354
360
  *
355
361
  * Use this for ad-hoc metadata fetching when you have a tokenURI.
356
362
  * Normalization happens at infrastructure layer.
363
+ * IPFS gateway is resolved from tenant configuration (chain-agnostic).
357
364
  */
358
- async fetchAndProcessMetadata(tokenUri, chainId) {
359
- return this.metadataDomainService.fetchAndProcessMetadata(tokenUri, chainId);
365
+ async fetchAndProcessMetadata(tokenUri) {
366
+ return this.metadataDomainService.fetchAndProcessMetadata(tokenUri);
360
367
  }
361
368
  }
362
369
 
@@ -410,30 +417,42 @@ class Web3InfrastructureApi {
410
417
 
411
418
  /**
412
419
  * IPFSInfrastructureApi - Infrastructure implementation for IPFS operations
413
- * Uses Web3ChainService for IPFS gateway resolution with centralized caching
420
+ * Uses TenantManager for IPFS gateway resolution with centralized caching
421
+ *
422
+ * IMPORTANT: IPFS gateway domain is now fetched from tenant configuration (TenantClientConfigDTO),
423
+ * not from chain data. This is the correct architecture since IPFS is chain-agnostic.
414
424
  */
415
425
  class IPFSInfrastructureApi {
416
- constructor(web3ChainService) {
417
- this.web3ChainService = web3ChainService;
418
- this.defaultIpfsGatewayDomain = 'pers.mypinata.cloud';
426
+ constructor(tenantManager) {
427
+ this.tenantManager = tenantManager;
419
428
  this.cache = index.globalCacheService.createNamespace('ipfs');
420
429
  }
421
- async getIpfsGatewayDomain(chainId) {
422
- const cacheKey = `gateway:${chainId}`;
430
+ /**
431
+ * Get IPFS gateway domain from tenant configuration.
432
+ *
433
+ * @returns The IPFS gateway domain from tenant configuration
434
+ * @throws Error if tenant config is not found or ipfsGatewayDomain is not configured
435
+ */
436
+ async getIpfsGatewayDomain() {
437
+ const cacheKey = 'gateway';
423
438
  return this.cache.getOrSet(cacheKey, async () => {
424
- try {
425
- const chainData = await this.web3ChainService.getChainDataWithCache(chainId);
426
- return chainData.ipfsGatewayDomain || this.defaultIpfsGatewayDomain;
427
- }
428
- catch (error) {
429
- console.warn(`Failed to get chain data for chainId ${chainId}, using default IPFS gateway:`, error);
430
- return this.defaultIpfsGatewayDomain;
439
+ const clientConfig = await this.tenantManager.getClientConfig();
440
+ if (!clientConfig.ipfsGatewayDomain) {
441
+ throw new Error(`IPFS gateway domain not configured for tenant. ` +
442
+ `Please configure ipfsGatewayDomain in the tenant configuration.`);
431
443
  }
444
+ return clientConfig.ipfsGatewayDomain;
432
445
  }, index.CacheTTL.GATEWAY);
433
446
  }
434
- async resolveIPFSUrl(url, chainId) {
447
+ /**
448
+ * Resolve IPFS URL to HTTPS URL using tenant's configured gateway.
449
+ *
450
+ * @param url - The URL to resolve (can be ipfs:// or https://)
451
+ * @returns Resolved HTTPS URL
452
+ */
453
+ async resolveIPFSUrl(url) {
435
454
  if (url.startsWith('ipfs://')) {
436
- const gateway = await this.getIpfsGatewayDomain(chainId);
455
+ const gateway = await this.getIpfsGatewayDomain();
437
456
  return url.replace('ipfs://', `https://${gateway}/ipfs/`);
438
457
  }
439
458
  return url;
@@ -446,12 +465,11 @@ class IPFSInfrastructureApi {
446
465
  * All downstream consumers receive normalized SDK format with resolved HTTPS URLs.
447
466
  *
448
467
  * @param tokenUri - Token URI (can be ipfs:// or https://)
449
- * @param chainId - Chain ID for IPFS gateway selection
450
468
  * @returns Normalized TokenMetadata with resolved HTTPS URLs, or null on error
451
469
  */
452
- async fetchAndProcessMetadata(tokenUri, chainId) {
470
+ async fetchAndProcessMetadata(tokenUri) {
453
471
  try {
454
- const resolvedUri = await this.resolveIPFSUrl(tokenUri, chainId);
472
+ const resolvedUri = await this.resolveIPFSUrl(tokenUri);
455
473
  const response = await fetch(resolvedUri);
456
474
  if (!response.ok) {
457
475
  throw new Error(`HTTP error! status: ${response.status}`);
@@ -459,10 +477,10 @@ class IPFSInfrastructureApi {
459
477
  const rawMetadata = await response.json();
460
478
  // Resolve IPFS URLs for media fields
461
479
  const resolvedImageUrl = rawMetadata.image
462
- ? await this.resolveIPFSUrl(rawMetadata.image, chainId)
480
+ ? await this.resolveIPFSUrl(rawMetadata.image)
463
481
  : '';
464
482
  const resolvedAnimationUrl = rawMetadata.animation_url
465
- ? await this.resolveIPFSUrl(rawMetadata.animation_url, chainId)
483
+ ? await this.resolveIPFSUrl(rawMetadata.animation_url)
466
484
  : undefined;
467
485
  // Extract custom properties (anything not in ERC standard)
468
486
  const customProperties = Object.fromEntries(Object.entries(rawMetadata).filter(([key]) => !['name', 'description', 'image', 'animation_url', 'external_url', 'attributes'].includes(key)));
@@ -595,6 +613,11 @@ async function getExplorerUrlByChainId(getChainData, chainId, address, type) {
595
613
  * tokenIds // Required for ERC-1155, optional for ERC-721
596
614
  * });
597
615
  * ```
616
+ *
617
+ * ## IPFS Resolution
618
+ *
619
+ * For IPFS URL resolution, use `sdk.tenant.resolveIPFSUrl()` instead.
620
+ * IPFS is chain-agnostic and configured at the tenant level.
598
621
  */
599
622
  class Web3Manager {
600
623
  // TODO: Add PersEventEmitter support for blockchain events
@@ -604,14 +627,16 @@ class Web3Manager {
604
627
  // 3. Emit via: this.events?.emitSuccess({ domain: 'web3', type: 'NFT_TRANSFERRED', ... })
605
628
  // 4. Filter to only user's address (not all transfers)
606
629
  // 5. Add cleanup for event listeners on SDK destroy
607
- constructor(apiClient) {
630
+ constructor(apiClient, tenantManager$1) {
608
631
  this.apiClient = apiClient;
632
+ // Use provided TenantManager or create one
633
+ this.tenantManager = tenantManager$1 || new tenantManager.TenantManager(apiClient);
609
634
  // Initialize Web3 Chain service
610
635
  const web3ChainApi = new web3ChainService.Web3ChainApi(apiClient);
611
636
  this.web3ChainService = new web3ChainService.Web3ChainService(web3ChainApi);
612
- // Initialize Web3 Application service
637
+ // Initialize Web3 Application service with TenantManager for IPFS
613
638
  const web3InfrastructureApi = new Web3InfrastructureApi(this.web3ChainService);
614
- const ipfsInfrastructureApi = new IPFSInfrastructureApi(this.web3ChainService);
639
+ const ipfsInfrastructureApi = new IPFSInfrastructureApi(this.tenantManager);
615
640
  this.web3ApplicationService = new Web3ApplicationService(web3InfrastructureApi, ipfsInfrastructureApi);
616
641
  }
617
642
  /**
@@ -641,25 +666,14 @@ class Web3Manager {
641
666
  async getTokenCollection(request) {
642
667
  return this.web3ApplicationService.getTokenCollection(request);
643
668
  }
644
- /**
645
- * Resolve IPFS URL to accessible URL
646
- *
647
- * @param url - IPFS URL to resolve
648
- * @param chainId - Chain ID for context
649
- * @returns Promise resolving to accessible URL
650
- */
651
- async resolveIPFSUrl(url, chainId) {
652
- return this.web3ApplicationService.resolveIPFSUrl(url, chainId);
653
- }
654
669
  /**
655
670
  * Fetch and process token metadata
656
671
  *
657
672
  * @param tokenUri - Token URI to fetch metadata from
658
- * @param chainId - Chain ID for context
659
673
  * @returns Promise resolving to processed metadata or null if not found
660
674
  */
661
- async fetchAndProcessMetadata(tokenUri, chainId) {
662
- return this.web3ApplicationService.fetchAndProcessMetadata(tokenUri, chainId);
675
+ async fetchAndProcessMetadata(tokenUri) {
676
+ return this.web3ApplicationService.fetchAndProcessMetadata(tokenUri);
663
677
  }
664
678
  /**
665
679
  * Get blockchain chain data by chain ID
@@ -743,7 +757,7 @@ class Web3Manager {
743
757
  *
744
758
  * @param accountAddress - Any valid blockchain address (wallet, contract, etc.)
745
759
  * @param token - Token definition (from getRewardTokens, getStatusTokens, etc.)
746
- * @param maxTokens - Maximum tokens to retrieve (default: 50)
760
+ * @param maxTokens - Maximum tokens to retrieve (default: 100, max: 100)
747
761
  * @returns Promise resolving to collection result with owned tokens
748
762
  *
749
763
  * @example Query user's wallet
@@ -763,7 +777,7 @@ class Web3Manager {
763
777
  * @see {@link extractTokenIds} - Low-level helper used internally for ERC-1155
764
778
  * @see {@link buildCollectionRequest} - For manual request building
765
779
  */
766
- async getAccountOwnedTokensFromContract(accountAddress, token, maxTokens = 50) {
780
+ async getAccountOwnedTokensFromContract(accountAddress, token, maxTokens = 100) {
767
781
  // For ERC-1155, extract tokenIds from metadata
768
782
  const tokenIds = token.type === persShared.NativeTokenTypes.ERC1155 ? this.extractTokenIds(token) : undefined;
769
783
  const collection = await this.getTokenCollection({
@@ -829,4 +843,4 @@ exports.Web3InfrastructureApi = Web3InfrastructureApi;
829
843
  exports.Web3Manager = Web3Manager;
830
844
  exports.getExplorerUrl = getExplorerUrl;
831
845
  exports.getExplorerUrlByChainId = getExplorerUrlByChainId;
832
- //# sourceMappingURL=web3-manager-C_cFaMCm.cjs.map
846
+ //# sourceMappingURL=web3-manager-fRGFR_pM.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web3-manager-fRGFR_pM.cjs","sources":["../../src/web3/domain/services/token-domain.service.ts","../../src/web3/domain/services/metadata-domain.service.ts","../../src/web3/domain/services/contract-domain.service.ts","../../src/web3/application/web3-application.service.ts","../../src/web3/infrastructure/api/web3-api.ts","../../src/web3/infrastructure/api/ipfs-api.ts","../../src/web3/utils/explorer.utils.ts","../../src/managers/web3-manager.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":["globalCacheService","convertAbiToInterface","CacheTTL","createSafeContract","getAccountTokenBalance","getTokenUri","getTokenOfOwnerByIndex","tenantManager","TenantManager","Web3ChainApi","Web3ChainService","NativeTokenTypes"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"event-emitter.d.ts","sourceRoot":"","sources":["../../../src/core/events/event-emitter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAEL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,eAAe,EAChB,MAAM,eAAe,CAAC;AAmDvB,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;;IAOrC,IAAI,UAAU,IAAI,MAAM,CAEvB;IACD,OAAO,CAAC,QAAQ,CAA8B;IAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,SAAS,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW;IAMnE;;;;;;OAMG;IACH,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW;IAY9D;;;;;;;;;;;;;;;;OAgBG;IACH,WAAW,CAAC,KAAK,EAAE,iBAAiB,GAAG,YAAY;IAWnD;;;;;;;;;;;;;;;;OAgBG;IACH,SAAS,CAAC,KAAK,EAAE,eAAe,GAAG,UAAU;IAW7C;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBtB;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,IAAI,eAAe,IAAI,MAAM,CAE5B;CACF"}
1
+ {"version":3,"file":"event-emitter.d.ts","sourceRoot":"","sources":["../../../src/core/events/event-emitter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAEL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,eAAe,EAChB,MAAM,eAAe,CAAC;AAmDvB,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;;IAMrC,IAAI,UAAU,IAAI,MAAM,CAEvB;IACD,OAAO,CAAC,QAAQ,CAA8B;IAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,SAAS,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW;IAMnE;;;;;;OAMG;IACH,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW;IAY9D;;;;;;;;;;;;;;;;OAgBG;IACH,WAAW,CAAC,KAAK,EAAE,iBAAiB,GAAG,YAAY;IAWnD;;;;;;;;;;;;;;;;OAgBG;IACH,SAAS,CAAC,KAAK,EAAE,eAAe,GAAG,UAAU;IAW7C;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBtB;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,IAAI,eAAe,IAAI,MAAM,CAE5B;CACF"}
@@ -66,6 +66,18 @@ export interface PersConfig {
66
66
  tokenRefreshMargin?: number;
67
67
  /** Seconds threshold for background vs blocking refresh (default: 30) */
68
68
  backgroundRefreshThreshold?: number;
69
+ /**
70
+ * Enable real-time wallet events (default: true)
71
+ *
72
+ * When enabled, SDK auto-connects to wallet events after authentication.
73
+ * Events are streamed through `sdk.events` and `sdk.walletEvents`.
74
+ */
75
+ captureWalletEvents?: boolean;
76
+ /**
77
+ * Custom wallet events WebSocket URL - overrides environment default.
78
+ * Default: wss://events.pers.ninja (production) or wss://dev.events.pers.ninja (staging)
79
+ */
80
+ walletEventsWsUrl?: string;
69
81
  /** Internal - API root URL constructed automatically */
70
82
  readonly apiRoot?: string;
71
83
  }
@@ -79,6 +91,7 @@ export declare const DEFAULT_PERS_CONFIG: {
79
91
  readonly retries: 3;
80
92
  readonly tokenRefreshMargin: 60;
81
93
  readonly backgroundRefreshThreshold: 30;
94
+ readonly captureWalletEvents: true;
82
95
  };
83
96
  /**
84
97
  * Build the API root URL based on config
@@ -90,6 +103,12 @@ export declare const DEFAULT_PERS_CONFIG: {
90
103
  * @internal
91
104
  */
92
105
  export declare function buildApiRoot(environment?: PersEnvironment, version?: PersApiVersion, customApiUrl?: string): string;
106
+ /**
107
+ * Build wallet events WebSocket URL based on config
108
+ *
109
+ * @internal
110
+ */
111
+ export declare function buildWalletEventsWsUrl(environment?: PersEnvironment, customWsUrl?: string): string;
93
112
  /**
94
113
  * Merge user config with defaults
95
114
  */
@@ -1 +1 @@
1
- {"version":3,"file":"pers-config.d.ts","sourceRoot":"","sources":["../../src/core/pers-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iDAAiD,CAAC;AAEnF,mCAAmC;AACnC,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,YAAY,CAAC;AAEvD,kCAAkC;AAClC,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC;AAElC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,UAAU;IACzB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,eAAe,CAAC;IAE9B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,yCAAyC;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,yCAAyC;IACzC,UAAU,CAAC,EAAE,cAAc,CAAC;IAE5B,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,qFAAqF;IACrF,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAE5B;;;;OAIG;IACH,WAAW,CAAC,EAAE,YAAY,CAAC;IAE3B,uFAAuF;IACvF,IAAI,CAAC,EAAE;QACL,kCAAkC;QAClC,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,wCAAwC;QACxC,cAAc,CAAC,EAAE,OAAO,wBAAwB,EAAE,kBAAkB,CAAC;KACtE,CAAC;IAEF,wEAAwE;IACxE,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAEhC,uEAAuE;IACvE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,yEAAyE;IACzE,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAEpC,wDAAwD;IACxD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;CAOtB,CAAC;AAEX;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,WAAW,GAAE,eAA8B,EAC3C,OAAO,GAAE,cAAqB,EAC9B,YAAY,CAAC,EAAE,MAAM,GACpB,MAAM,CAYR;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC,CASnJ"}
1
+ {"version":3,"file":"pers-config.d.ts","sourceRoot":"","sources":["../../src/core/pers-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iDAAiD,CAAC;AAEnF,mCAAmC;AACnC,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,YAAY,CAAC;AAEvD,kCAAkC;AAClC,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC;AAElC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,UAAU;IACzB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,eAAe,CAAC;IAE9B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,yCAAyC;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,yCAAyC;IACzC,UAAU,CAAC,EAAE,cAAc,CAAC;IAE5B,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,qFAAqF;IACrF,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAE5B;;;;OAIG;IACH,WAAW,CAAC,EAAE,YAAY,CAAC;IAE3B,uFAAuF;IACvF,IAAI,CAAC,EAAE;QACL,kCAAkC;QAClC,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,wCAAwC;QACxC,cAAc,CAAC,EAAE,OAAO,wBAAwB,EAAE,kBAAkB,CAAC;KACtE,CAAC;IAEF,wEAAwE;IACxE,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAEhC,uEAAuE;IACvE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,yEAAyE;IACzE,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAMpC;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,wDAAwD;IACxD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;CAQtB,CAAC;AAEX;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,WAAW,GAAE,eAA8B,EAC3C,OAAO,GAAE,cAAqB,EAC9B,YAAY,CAAC,EAAE,MAAM,GACpB,MAAM,CAYR;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,GAAE,eAA8B,EAC3C,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CAWR;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC,CASnJ"}
package/dist/core.cjs CHANGED
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var persSdk = require('./chunks/pers-sdk-Bheg5mKX.cjs');
3
+ var persSdk = require('./chunks/pers-sdk-Cv7hM1I7.cjs');
4
4
  var persShared = require('@explorins/pers-shared');
5
5
  var environment = require('./chunks/environment-C73snhIJ.cjs');
6
- var index = require('./chunks/index-B6-bbNnd.cjs');
7
- var index$1 = require('./chunks/index-B-g2JPVK.cjs');
6
+ var index = require('./chunks/index-CGaKfZNU.cjs');
7
+ var tenantManager = require('./chunks/tenant-manager-BUiFM33X.cjs');
8
8
  require('./user.cjs');
9
9
  require('./chunks/pagination-utils-B2jRHMSO.cjs');
10
10
  require('./user-status.cjs');
@@ -12,12 +12,12 @@ require('./chunks/token-service-C1xe11OX.cjs');
12
12
  require('./chunks/business-membership-service-BfHzIQlc.cjs');
13
13
  require('./campaign.cjs');
14
14
  require('./chunks/redemption-service-C61Qr2vI.cjs');
15
- require('./chunks/transaction-request.builder-Bjxi0C9F.cjs');
15
+ require('./chunks/transaction-request.builder-CW3Wwdi3.cjs');
16
16
  require('./chunks/payment-service-Bkw7ZXev.cjs');
17
- require('./chunks/tenant-service-fj-pkXTw.cjs');
18
17
  require('./chunks/analytics-service-CF9AsMQH.cjs');
19
18
  require('./donation.cjs');
20
19
  require('./trigger-source.cjs');
20
+ require('./chunks/tenant-service-fj-pkXTw.cjs');
21
21
 
22
22
 
23
23
 
@@ -47,14 +47,16 @@ exports.SDK_NAME = persSdk.SDK_NAME;
47
47
  exports.SDK_USER_AGENT = persSdk.SDK_USER_AGENT;
48
48
  exports.SDK_VERSION = persSdk.SDK_VERSION;
49
49
  exports.StaticJwtAuthProvider = persSdk.StaticJwtAuthProvider;
50
- exports.TenantManager = persSdk.TenantManager;
51
50
  exports.TokenManager = persSdk.TokenManager;
52
51
  exports.TransactionManager = persSdk.TransactionManager;
53
52
  exports.TriggerSourceManager = persSdk.TriggerSourceManager;
54
53
  exports.UserManager = persSdk.UserManager;
55
54
  exports.UserStatusManager = persSdk.UserStatusManager;
55
+ exports.WalletEventsManager = persSdk.WalletEventsManager;
56
56
  exports.WebDPoPCryptoProvider = persSdk.WebDPoPCryptoProvider;
57
+ exports.WebhookManager = persSdk.WebhookManager;
57
58
  exports.buildApiRoot = persSdk.buildApiRoot;
59
+ exports.buildWalletEventsWsUrl = persSdk.buildWalletEventsWsUrl;
58
60
  exports.createPersSDK = persSdk.createPersSDK;
59
61
  exports.mergeWithDefaults = persSdk.mergeWithDefaults;
60
62
  Object.defineProperty(exports, "AccountOwnerType", {
@@ -65,15 +67,16 @@ exports.IndexedDBTokenStorage = environment.IndexedDBTokenStorage;
65
67
  exports.detectEnvironment = environment.detectEnvironment;
66
68
  exports.environment = environment.environment;
67
69
  exports.warnIfProblematicEnvironment = environment.warnIfProblematicEnvironment;
70
+ exports.ApiErrorDetector = index.ApiErrorDetector;
71
+ exports.AuthenticationError = index.AuthenticationError;
68
72
  exports.CacheService = index.CacheService;
69
73
  exports.CacheTTL = index.CacheTTL;
74
+ exports.ErrorUtils = index.ErrorUtils;
75
+ exports.LogoutRequired = index.LogoutRequired;
76
+ exports.NetworkError = index.NetworkError;
77
+ exports.PersApiError = index.PersApiError;
78
+ exports.ProviderTokenRefreshNeeded = index.ProviderTokenRefreshNeeded;
79
+ exports.TokenRefreshNeeded = index.TokenRefreshNeeded;
70
80
  exports.globalCacheService = index.globalCacheService;
71
- exports.ApiErrorDetector = index$1.ApiErrorDetector;
72
- exports.AuthenticationError = index$1.AuthenticationError;
73
- exports.ErrorUtils = index$1.ErrorUtils;
74
- exports.LogoutRequired = index$1.LogoutRequired;
75
- exports.NetworkError = index$1.NetworkError;
76
- exports.PersApiError = index$1.PersApiError;
77
- exports.ProviderTokenRefreshNeeded = index$1.ProviderTokenRefreshNeeded;
78
- exports.TokenRefreshNeeded = index$1.TokenRefreshNeeded;
81
+ exports.TenantManager = tenantManager.TenantManager;
79
82
  //# sourceMappingURL=core.cjs.map
package/dist/core.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"core.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"core.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/core.js CHANGED
@@ -1,8 +1,8 @@
1
- export { b as AUTH_STORAGE_KEYS, v as AnalyticsManager, u as ApiKeyManager, k as AuthApi, p as AuthManager, l as AuthService, a as AuthTokenManager, B as BusinessManager, C as CampaignManager, h as DEFAULT_PERS_CONFIG, d as DPOP_STORAGE_KEYS, n as DPoPManager, D as DefaultAuthProvider, w as DonationManager, F as FileManager, L as LocalStorageTokenStorage, M as MemoryTokenStorage, g as PersApiClient, o as PersEventEmitter, P as PersSDK, s as PurchaseManager, R as RedemptionManager, S as SDK_NAME, f as SDK_USER_AGENT, e as SDK_VERSION, j as StaticJwtAuthProvider, t as TenantManager, T as TokenManager, r as TransactionManager, x as TriggerSourceManager, U as UserManager, q as UserStatusManager, W as WebDPoPCryptoProvider, i as buildApiRoot, c as createPersSDK, m as mergeWithDefaults } from './chunks/pers-sdk-CJo4CCTG.js';
1
+ export { b as AUTH_STORAGE_KEYS, v as AnalyticsManager, u as ApiKeyManager, l as AuthApi, q as AuthManager, n as AuthService, a as AuthTokenManager, B as BusinessManager, C as CampaignManager, h as DEFAULT_PERS_CONFIG, d as DPOP_STORAGE_KEYS, o as DPoPManager, D as DefaultAuthProvider, w as DonationManager, F as FileManager, L as LocalStorageTokenStorage, M as MemoryTokenStorage, g as PersApiClient, p as PersEventEmitter, P as PersSDK, t as PurchaseManager, R as RedemptionManager, S as SDK_NAME, f as SDK_USER_AGENT, e as SDK_VERSION, k as StaticJwtAuthProvider, T as TokenManager, s as TransactionManager, x as TriggerSourceManager, U as UserManager, r as UserStatusManager, z as WalletEventsManager, W as WebDPoPCryptoProvider, y as WebhookManager, i as buildApiRoot, j as buildWalletEventsWsUrl, c as createPersSDK, m as mergeWithDefaults } from './chunks/pers-sdk-BiP7UMJ3.js';
2
2
  export { AccountOwnerType } from '@explorins/pers-shared';
3
3
  export { I as IndexedDBTokenStorage, d as detectEnvironment, e as environment, w as warnIfProblematicEnvironment } from './chunks/environment-CKVwRAEL.js';
4
- export { a as CacheService, C as CacheTTL, g as globalCacheService } from './chunks/index-DBLskLuH.js';
5
- export { b as ApiErrorDetector, A as AuthenticationError, E as ErrorUtils, L as LogoutRequired, N as NetworkError, a as PersApiError, P as ProviderTokenRefreshNeeded, T as TokenRefreshNeeded } from './chunks/index-CKm_V5XE.js';
4
+ export { c as ApiErrorDetector, A as AuthenticationError, a as CacheService, C as CacheTTL, E as ErrorUtils, L as LogoutRequired, N as NetworkError, b as PersApiError, P as ProviderTokenRefreshNeeded, T as TokenRefreshNeeded, g as globalCacheService } from './chunks/index-DgTEdUgC.js';
5
+ export { T as TenantManager } from './chunks/tenant-manager-Bbj0bKoo.js';
6
6
  import './user.js';
7
7
  import './chunks/pagination-utils-9vQ-Npkr.js';
8
8
  import './user-status.js';
@@ -10,10 +10,10 @@ import './chunks/token-service-BxEO5YVN.js';
10
10
  import './chunks/business-membership-service-CFa-TI39.js';
11
11
  import './campaign.js';
12
12
  import './chunks/redemption-service-C_UTTDag.js';
13
- import './chunks/transaction-request.builder-DGTxGvc3.js';
13
+ import './chunks/transaction-request.builder-C3C19kCx.js';
14
14
  import './chunks/payment-service-IvM6rryM.js';
15
- import './chunks/tenant-service-CsRA3O2V.js';
16
15
  import './chunks/analytics-service-vm7B7LhS.js';
17
16
  import './donation.js';
18
17
  import './trigger-source.js';
18
+ import './chunks/tenant-service-CsRA3O2V.js';
19
19
  //# sourceMappingURL=core.js.map
@@ -0,0 +1,13 @@
1
+ /**
2
+ * PERS Events - Real-time blockchain event streaming
3
+ *
4
+ * @module @explorins/pers-sdk/events
5
+ * @version 1.2.0
6
+ */
7
+ export { PersEventsClient, createPersEventsClient } from './pers-events-client';
8
+ export type { EventsClientConfig } from './types';
9
+ export type { WalletInfo, WalletTarget, // Alias for backward compatibility
10
+ SubscribedPayload, SubscriptionState, // Alias for backward compatibility
11
+ WSClientMessage, SubscribeMessage, UnsubscribeMessage, PongMessage, WSServerMessage, WSServerMessageConnected, WSServerMessageSubscribed, WSServerMessageUnsubscribed, WSServerMessageEvent, WSServerMessageError, WSServerMessagePing, ConnectedPayload, UnsubscribedPayload, ErrorPayload, BlockchainEvent, BlockchainEventType, ConnectionState, BlockchainEventHandler, BlockchainEventUnsubscribe, } from './types';
12
+ export { isServerMessage, isEventMessage, isConnectedMessage, isSubscribedMessage, isErrorMessage, } from './types';
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAGhF,YAAY,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAGlD,YAAY,EAEV,UAAU,EACV,YAAY,EAAE,mCAAmC;AAGjD,iBAAiB,EACjB,iBAAiB,EAAE,mCAAmC;AAGtD,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,WAAW,EAGX,eAAe,EACf,wBAAwB,EACxB,yBAAyB,EACzB,2BAA2B,EAC3B,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EAGZ,eAAe,EACf,mBAAmB,EAGnB,eAAe,EACf,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,GACf,MAAM,SAAS,CAAC"}
@@ -0,0 +1,143 @@
1
+ /**
2
+ * PERS Events Client
3
+ *
4
+ * Lightweight WebSocket client for real-time blockchain event streaming.
5
+ * Connects to the PERS WS Relay server to receive events for user's wallets.
6
+ *
7
+ * ## v1.2.0 Subscription Model
8
+ *
9
+ * JWT is used for authentication only. After connecting, you must explicitly
10
+ * subscribe to wallets (user SDK) or chains (admin dashboard).
11
+ *
12
+ * @example User SDK - Subscribe to specific wallets
13
+ * ```typescript
14
+ * const client = new PersEventsClient({
15
+ * wsUrl: 'wss://events.pers.ninja',
16
+ * autoReconnect: true
17
+ * });
18
+ *
19
+ * await client.connect(jwtToken);
20
+ *
21
+ * // Subscribe to user's wallets
22
+ * await client.subscribeWallets([
23
+ * { address: '0x123...', chainId: 39123 }
24
+ * ]);
25
+ *
26
+ * client.on('Transfer', (event) => {
27
+ * console.log(`Received ${event.data.value} tokens`);
28
+ * });
29
+ * ```
30
+ *
31
+ * @example Admin Dashboard - Subscribe to all events on chains
32
+ * ```typescript
33
+ * await client.connect(adminJwtToken);
34
+ *
35
+ * // Subscribe to all events on specific chains
36
+ * await client.subscribeChains([39123, 137]);
37
+ *
38
+ * client.on('*', (event) => {
39
+ * console.log(`Chain ${event.chainId}: ${event.type}`);
40
+ * });
41
+ * ```
42
+ */
43
+ import type { EventsClientConfig, ConnectionState, BlockchainEventType, BlockchainEventHandler, BlockchainEventUnsubscribe, WalletInfo, SubscribedPayload } from './types';
44
+ export declare class PersEventsClient {
45
+ private ws;
46
+ private config;
47
+ private state;
48
+ private reconnectAttempts;
49
+ private reconnectTimeout;
50
+ private token;
51
+ private handlers;
52
+ private stateHandlers;
53
+ private connectionInfo;
54
+ private subscriptionState;
55
+ private pendingSubscription;
56
+ private savedSubscriptions;
57
+ constructor(config: EventsClientConfig);
58
+ /**
59
+ * Connect to the WS relay server
60
+ * @param token - JWT token for authentication (wallets no longer required in JWT)
61
+ */
62
+ connect(token: string): Promise<void>;
63
+ /**
64
+ * Disconnect from the server
65
+ */
66
+ disconnect(): void;
67
+ /**
68
+ * Subscribe to wallet events (User SDK)
69
+ *
70
+ * Receives events only for the specified wallet addresses.
71
+ * Can be called multiple times to add more wallets.
72
+ *
73
+ * @param wallets - Array of wallet info (address + chainId)
74
+ * @returns Promise that resolves when subscription is confirmed
75
+ */
76
+ subscribeWallets(wallets: WalletInfo[]): Promise<SubscribedPayload>;
77
+ /**
78
+ * Subscribe to chain events (Admin Dashboard)
79
+ *
80
+ * Receives ALL events on the specified chains.
81
+ * Use for admin dashboards that need to monitor all activity.
82
+ *
83
+ * @param chains - Array of chain IDs to subscribe to
84
+ * @returns Promise that resolves when subscription is confirmed
85
+ */
86
+ subscribeChains(chains: number[]): Promise<SubscribedPayload>;
87
+ /**
88
+ * Unsubscribe from wallet events
89
+ *
90
+ * @param wallets - Array of wallet info to unsubscribe from
91
+ * @returns Promise that resolves when unsubscription is confirmed
92
+ */
93
+ unsubscribeWallets(wallets: WalletInfo[]): Promise<SubscribedPayload>;
94
+ /**
95
+ * Unsubscribe from chain events
96
+ *
97
+ * @param chains - Array of chain IDs to unsubscribe from
98
+ * @returns Promise that resolves when unsubscription is confirmed
99
+ */
100
+ unsubscribeChains(chains: number[]): Promise<SubscribedPayload>;
101
+ /**
102
+ * Get current subscription state
103
+ */
104
+ getSubscriptionState(): SubscribedPayload;
105
+ /**
106
+ * Subscribe to blockchain events
107
+ * @param eventType - Event type to listen for, or '*' for all events
108
+ * @param handler - Event handler function
109
+ * @returns Unsubscribe function
110
+ */
111
+ on(eventType: BlockchainEventType | '*', handler: BlockchainEventHandler): BlockchainEventUnsubscribe;
112
+ /**
113
+ * Subscribe to connection state changes
114
+ */
115
+ onStateChange(handler: (state: ConnectionState) => void): BlockchainEventUnsubscribe;
116
+ /**
117
+ * Get current connection state
118
+ */
119
+ getState(): ConnectionState;
120
+ /**
121
+ * Get connection info (userId, initial wallets, activeChains)
122
+ */
123
+ getConnectionInfo(): {
124
+ userId: string;
125
+ wallets: WalletInfo[];
126
+ activeChains: number[];
127
+ } | null;
128
+ private sendSubscription;
129
+ private handleMessage;
130
+ private sendPong;
131
+ private restoreSubscriptions;
132
+ private routeEvent;
133
+ private handleDisconnect;
134
+ private attemptReconnect;
135
+ private cleanup;
136
+ private setState;
137
+ private log;
138
+ }
139
+ /**
140
+ * Create a PERS Events client instance
141
+ */
142
+ export declare function createPersEventsClient(config: EventsClientConfig): PersEventsClient;
143
+ //# sourceMappingURL=pers-events-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pers-events-client.d.ts","sourceRoot":"","sources":["../../src/events/pers-events-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EAEf,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAE1B,UAAU,EACV,iBAAiB,EAGlB,MAAM,SAAS,CAAC;AAWjB,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,MAAM,CAAoG;IAClH,OAAO,CAAC,KAAK,CAAmC;IAChD,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,gBAAgB,CAA8C;IACtE,OAAO,CAAC,KAAK,CAAuB;IAGpC,OAAO,CAAC,QAAQ,CAAqE;IACrF,OAAO,CAAC,aAAa,CAA+C;IAGpE,OAAO,CAAC,cAAc,CAAkF;IAGxG,OAAO,CAAC,iBAAiB,CAAoE;IAG7F,OAAO,CAAC,mBAAmB,CAAsE;IAGjG,OAAO,CAAC,kBAAkB,CAA4E;gBAE1F,MAAM,EAAE,kBAAkB;IAItC;;;OAGG;IACG,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkE3C;;OAEG;IACH,UAAU,IAAI,IAAI;IAUlB;;;;;;;;OAQG;IACG,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAIzE;;;;;;;;OAQG;IACG,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAInE;;;;;OAKG;IACG,kBAAkB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAI3E;;;;;OAKG;IACG,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAIrE;;OAEG;IACH,oBAAoB,IAAI,iBAAiB;IAQzC;;;;;OAKG;IACH,EAAE,CAAC,SAAS,EAAE,mBAAmB,GAAG,GAAG,EAAE,OAAO,EAAE,sBAAsB,GAAG,0BAA0B;IAWrG;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,GAAG,0BAA0B;IAKpF;;OAEG;IACH,QAAQ,IAAI,eAAe;IAI3B;;OAEG;IACH,iBAAiB;;;;;YAQH,gBAAgB;IA0D9B,OAAO,CAAC,aAAa;IA+CrB,OAAO,CAAC,QAAQ;YAOF,oBAAoB;IAsBlC,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAC,gBAAgB;IAexB,OAAO,CAAC,gBAAgB;IAkCxB,OAAO,CAAC,OAAO;IAiBf,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,GAAG;CAKZ;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,kBAAkB,GAAG,gBAAgB,CAEnF"}