@cityofzion/blockchain-service 1.21.1 → 1.21.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.
@@ -1,22 +1,22 @@
1
- import { Account, BlockchainService, BSCalculableFee, BSClaimable, BSWithEncryption, BSWithExplorerService, BSWithLedger, BSWithNameService, BSWithNft, IBSWithNeo3NeoXBridge, UntilIndexRecord } from './interfaces';
2
- export declare function hasNameService<BSName extends string = string>(service: BlockchainService<BSName>): service is BlockchainService<BSName> & BSWithNameService;
3
- export declare function isClaimable<BSName extends string = string>(service: BlockchainService<BSName>): service is BlockchainService<BSName> & BSClaimable<BSName>;
4
- export declare function isCalculableFee<BSName extends string = string>(service: BlockchainService<BSName>): service is BlockchainService<BSName> & BSCalculableFee<BSName>;
5
- export declare function hasNft<BSName extends string = string>(service: BlockchainService<BSName>): service is BlockchainService<BSName> & BSWithNft;
6
- export declare function hasExplorerService<BSName extends string = string>(service: BlockchainService<BSName>): service is BlockchainService<BSName> & BSWithExplorerService;
7
- export declare function hasLedger<BSName extends string = string>(service: BlockchainService<BSName>): service is BlockchainService<BSName> & BSWithLedger<BSName>;
8
- export declare function hasNeo3NeoXBridge<BSName extends string = string>(service: BlockchainService<BSName>): service is BlockchainService<BSName> & IBSWithNeo3NeoXBridge<BSName>;
9
- export declare function hasEncryption<BSName extends string = string>(service: BlockchainService<BSName>): service is BlockchainService<BSName> & BSWithEncryption<BSName>;
1
+ import { TBSAccount, IBlockchainService, IBSWithClaim, IBSWithEncryption, IBSWithExplorer, IBSWithFee, IBSWithLedger, IBSWithNameService, IBSWithNeo3NeoXBridge, IBSWithNft, TUntilIndexRecord } from './interfaces';
2
+ export declare function hasNameService<BSName extends string = string>(service: IBlockchainService<BSName>): service is IBlockchainService<BSName> & IBSWithNameService;
3
+ export declare function isClaimable<BSName extends string = string>(service: IBlockchainService<BSName>): service is IBlockchainService<BSName> & IBSWithClaim<BSName>;
4
+ export declare function isCalculableFee<BSName extends string = string>(service: IBlockchainService<BSName>): service is IBlockchainService<BSName> & IBSWithFee<BSName>;
5
+ export declare function hasNft<BSName extends string = string>(service: IBlockchainService<BSName>): service is IBlockchainService<BSName> & IBSWithNft;
6
+ export declare function hasExplorerService<BSName extends string = string>(service: IBlockchainService<BSName>): service is IBlockchainService<BSName> & IBSWithExplorer;
7
+ export declare function hasLedger<BSName extends string = string>(service: IBlockchainService<BSName>): service is IBlockchainService<BSName> & IBSWithLedger<BSName>;
8
+ export declare function hasNeo3NeoXBridge<BSName extends string = string>(service: IBlockchainService<BSName>): service is IBlockchainService<BSName> & IBSWithNeo3NeoXBridge<BSName>;
9
+ export declare function hasEncryption<BSName extends string = string>(service: IBlockchainService<BSName>): service is IBlockchainService<BSName> & IBSWithEncryption<BSName>;
10
10
  /**
11
11
  * @deprecated use `waitForAccountTransaction` instead
12
12
  */
13
- export declare function waitForTransaction<BSName extends string = string>(service: BlockchainService<BSName>, txId: string): Promise<boolean>;
13
+ export declare function waitForTransaction<BSName extends string = string>(service: IBlockchainService<BSName>, txId: string): Promise<boolean>;
14
14
  export declare function waitForAccountTransaction<BSName extends string = string>(params: {
15
- service: BlockchainService<BSName>;
15
+ service: IBlockchainService<BSName>;
16
16
  txId: string;
17
17
  address: string;
18
18
  maxAttempts?: number;
19
19
  }): Promise<boolean>;
20
- export declare function fetchAccounts<BSName extends string = string>(blockchainServices: BlockchainService<BSName>, initialIndex: number, getAccountCallback: (service: BlockchainService<BSName>, index: number) => Promise<Account<BSName>>): Promise<Account<BSName>[]>;
21
- export declare function generateAccount<BSName extends string = string>(blockchainServices: BlockchainService<BSName>, initialIndex: number, untilIndex: number, getAccountCallback: (service: BlockchainService<BSName>, index: number) => Promise<Account<BSName>>): Promise<Account<BSName>[]>;
22
- export declare function generateAccountForBlockchainService<BSName extends string = string>(blockchainServices: BlockchainService<BSName>[], getAccountCallback: (service: BlockchainService<BSName>, index: number) => Promise<Account<BSName>>, untilIndexByBlockchainService?: UntilIndexRecord<BSName>): Promise<Map<BSName, Account<BSName>[]>>;
20
+ export declare function fetchAccounts<BSName extends string = string>(service: IBlockchainService<BSName>, initialIndex: number, getAccountCallback: (service: IBlockchainService<BSName>, index: number) => Promise<TBSAccount<BSName>>): Promise<TBSAccount<BSName>[]>;
21
+ export declare function generateAccount<BSName extends string = string>(service: IBlockchainService<BSName>, initialIndex: number, untilIndex: number, getAccountCallback: (service: IBlockchainService<BSName>, index: number) => Promise<TBSAccount<BSName>>): Promise<TBSAccount<BSName>[]>;
22
+ export declare function generateAccountForBlockchainService<BSName extends string = string>(services: IBlockchainService<BSName>[], getAccountCallback: (service: IBlockchainService<BSName>, index: number) => Promise<TBSAccount<BSName>>, untilIndexByBlockchainService?: TUntilIndexRecord<BSName>): Promise<Map<BSName, TBSAccount<BSName>[]>>;
package/dist/functions.js CHANGED
@@ -9,40 +9,44 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.generateAccountForBlockchainService = exports.generateAccount = exports.fetchAccounts = exports.waitForAccountTransaction = exports.waitForTransaction = exports.hasEncryption = exports.hasNeo3NeoXBridge = exports.hasLedger = exports.hasExplorerService = exports.hasNft = exports.isCalculableFee = exports.isClaimable = exports.hasNameService = void 0;
12
+ exports.hasNameService = hasNameService;
13
+ exports.isClaimable = isClaimable;
14
+ exports.isCalculableFee = isCalculableFee;
15
+ exports.hasNft = hasNft;
16
+ exports.hasExplorerService = hasExplorerService;
17
+ exports.hasLedger = hasLedger;
18
+ exports.hasNeo3NeoXBridge = hasNeo3NeoXBridge;
19
+ exports.hasEncryption = hasEncryption;
20
+ exports.waitForTransaction = waitForTransaction;
21
+ exports.waitForAccountTransaction = waitForAccountTransaction;
22
+ exports.fetchAccounts = fetchAccounts;
23
+ exports.generateAccount = generateAccount;
24
+ exports.generateAccountForBlockchainService = generateAccountForBlockchainService;
13
25
  const BSUtilsHelper_1 = require("./helpers/BSUtilsHelper");
14
26
  function hasNameService(service) {
15
27
  return 'resolveNameServiceDomain' in service && 'validateNameServiceDomainFormat' in service;
16
28
  }
17
- exports.hasNameService = hasNameService;
18
29
  function isClaimable(service) {
19
30
  return 'claim' in service && 'claimToken' in service && 'getUnclaimed' in service.blockchainDataService;
20
31
  }
21
- exports.isClaimable = isClaimable;
22
32
  function isCalculableFee(service) {
23
33
  return 'calculateTransferFee' in service;
24
34
  }
25
- exports.isCalculableFee = isCalculableFee;
26
35
  function hasNft(service) {
27
36
  return 'nftDataService' in service;
28
37
  }
29
- exports.hasNft = hasNft;
30
38
  function hasExplorerService(service) {
31
39
  return 'explorerService' in service;
32
40
  }
33
- exports.hasExplorerService = hasExplorerService;
34
41
  function hasLedger(service) {
35
42
  return 'ledgerService' in service;
36
43
  }
37
- exports.hasLedger = hasLedger;
38
44
  function hasNeo3NeoXBridge(service) {
39
45
  return 'neo3NeoXBridgeService' in service;
40
46
  }
41
- exports.hasNeo3NeoXBridge = hasNeo3NeoXBridge;
42
47
  function hasEncryption(service) {
43
48
  return 'encrypt' in service && 'decrypt' in service;
44
49
  }
45
- exports.hasEncryption = hasEncryption;
46
50
  /**
47
51
  * @deprecated use `waitForAccountTransaction` instead
48
52
  */
@@ -65,7 +69,6 @@ function waitForTransaction(service, txId) {
65
69
  return false;
66
70
  });
67
71
  }
68
- exports.waitForTransaction = waitForTransaction;
69
72
  function waitForAccountTransaction(params) {
70
73
  return __awaiter(this, void 0, void 0, function* () {
71
74
  const { address, maxAttempts = 10, service, txId } = params;
@@ -86,16 +89,15 @@ function waitForAccountTransaction(params) {
86
89
  return false;
87
90
  });
88
91
  }
89
- exports.waitForAccountTransaction = waitForAccountTransaction;
90
- function fetchAccounts(blockchainServices, initialIndex, getAccountCallback) {
92
+ function fetchAccounts(service, initialIndex, getAccountCallback) {
91
93
  return __awaiter(this, void 0, void 0, function* () {
92
94
  const accounts = [];
93
95
  let index = initialIndex;
94
96
  let shouldBreak = false;
95
97
  while (!shouldBreak) {
96
- const generatedAccount = yield getAccountCallback(blockchainServices, index);
98
+ const generatedAccount = yield getAccountCallback(service, index);
97
99
  try {
98
- const { transactions } = yield blockchainServices.blockchainDataService.getTransactionsByAddress({
100
+ const { transactions } = yield service.blockchainDataService.getTransactionsByAddress({
99
101
  address: generatedAccount.address,
100
102
  });
101
103
  if (!transactions || transactions.length <= 0)
@@ -110,24 +112,22 @@ function fetchAccounts(blockchainServices, initialIndex, getAccountCallback) {
110
112
  return accounts;
111
113
  });
112
114
  }
113
- exports.fetchAccounts = fetchAccounts;
114
- function generateAccount(blockchainServices, initialIndex, untilIndex, getAccountCallback) {
115
+ function generateAccount(service, initialIndex, untilIndex, getAccountCallback) {
115
116
  return __awaiter(this, void 0, void 0, function* () {
116
117
  const accounts = [];
117
118
  let index = initialIndex;
118
119
  while (index <= untilIndex) {
119
- const generatedAccount = yield getAccountCallback(blockchainServices, index);
120
+ const generatedAccount = yield getAccountCallback(service, index);
120
121
  accounts.push(generatedAccount);
121
122
  index++;
122
123
  }
123
124
  return accounts;
124
125
  });
125
126
  }
126
- exports.generateAccount = generateAccount;
127
- function generateAccountForBlockchainService(blockchainServices, getAccountCallback, untilIndexByBlockchainService) {
127
+ function generateAccountForBlockchainService(services, getAccountCallback, untilIndexByBlockchainService) {
128
128
  return __awaiter(this, void 0, void 0, function* () {
129
129
  const accountsByBlockchainService = new Map();
130
- const promises = blockchainServices.map((service) => __awaiter(this, void 0, void 0, function* () {
130
+ const promises = services.map((service) => __awaiter(this, void 0, void 0, function* () {
131
131
  var _a;
132
132
  const firstAccount = yield getAccountCallback(service, 0);
133
133
  const untilIndex = (_a = untilIndexByBlockchainService === null || untilIndexByBlockchainService === void 0 ? void 0 : untilIndexByBlockchainService[service.name]) === null || _a === void 0 ? void 0 : _a[firstAccount.address];
@@ -144,4 +144,3 @@ function generateAccountForBlockchainService(blockchainServices, getAccountCallb
144
144
  return accountsByBlockchainService;
145
145
  });
146
146
  }
147
- exports.generateAccountForBlockchainService = generateAccountForBlockchainService;
@@ -4,9 +4,11 @@ type FormatNumberOptions = {
4
4
  };
5
5
  export declare class BSBigNumberHelper {
6
6
  static toDecimals(value: BigNumber, decimals?: number): string;
7
- static toNumber(value: BigNumber): string;
7
+ static toNumber(value: BigNumber, decimals?: number): string;
8
8
  static fromNumber(value: string | number): BigNumber;
9
9
  static fromDecimals(value: string | number, decimals?: number): BigNumber;
10
10
  static format(value?: string | number | BigNumber, options?: FormatNumberOptions): string;
11
11
  }
12
+ export type TBigNumber = BigNumber;
13
+ export declare const BSBigNumber: typeof BigNumber;
12
14
  export {};
@@ -3,14 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.BSBigNumberHelper = void 0;
6
+ exports.BSBigNumber = exports.BSBigNumberHelper = void 0;
7
7
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
8
  class BSBigNumberHelper {
9
9
  static toDecimals(value, decimals = 0) {
10
10
  return new bignumber_js_1.default(value).shiftedBy(decimals).toString();
11
11
  }
12
- static toNumber(value) {
13
- return value.toFixed();
12
+ static toNumber(value, decimals) {
13
+ return typeof decimals === 'number' ? value.toFixed(decimals) : value.toFixed();
14
14
  }
15
15
  static fromNumber(value) {
16
16
  return new bignumber_js_1.default(value);
@@ -35,10 +35,11 @@ class BSBigNumberHelper {
35
35
  const formattedValue = bigValue.decimalPlaces(decimals, bignumber_js_1.default.ROUND_DOWN);
36
36
  return formattedValue.toFixed();
37
37
  }
38
- catch (error) {
38
+ catch (_b) {
39
39
  console.error('Invalid value provided to format:', value);
40
40
  return '0';
41
41
  }
42
42
  }
43
43
  }
44
44
  exports.BSBigNumberHelper = BSBigNumberHelper;
45
+ exports.BSBigNumber = bignumber_js_1.default;
@@ -1,4 +1,10 @@
1
- import { FullTransactionsByAddressParams } from '../interfaces';
1
+ import { TFullTransactionsByAddressParams, IBlockchainService, TBSNetworkId } from '../interfaces';
2
+ type TValidateFullTransactionsByAddressParams<N extends string, A extends TBSNetworkId> = TFullTransactionsByAddressParams & {
3
+ service: IBlockchainService<N, A>;
4
+ supportedNetworksIds?: string[];
5
+ maxPageSize?: number;
6
+ };
2
7
  export declare class BSFullTransactionsByAddressHelper {
3
- static validateFullTransactionsByAddressParams(params: Omit<FullTransactionsByAddressParams, 'nextCursor'>): void;
8
+ static validateFullTransactionsByAddressParams<N extends string, A extends TBSNetworkId>(params: TValidateFullTransactionsByAddressParams<N, A>): void;
4
9
  }
10
+ export {};
@@ -4,6 +4,7 @@ exports.BSFullTransactionsByAddressHelper = void 0;
4
4
  const date_fns_1 = require("date-fns");
5
5
  class BSFullTransactionsByAddressHelper {
6
6
  static validateFullTransactionsByAddressParams(params) {
7
+ var _a;
7
8
  if (!params.dateFrom)
8
9
  throw new Error('Missing dateFrom param');
9
10
  if (!params.dateTo)
@@ -20,6 +21,14 @@ class BSFullTransactionsByAddressHelper {
20
21
  throw new Error('Invalid date order because dateFrom is greater than dateTo');
21
22
  if ((0, date_fns_1.differenceInYears)(dateTo, dateFrom) >= 1)
22
23
  throw new Error('Date range greater than one year');
24
+ const maxPageSize = (_a = params.maxPageSize) !== null && _a !== void 0 ? _a : 500;
25
+ if (typeof params.pageSize === 'number' &&
26
+ (isNaN(params.pageSize) || params.pageSize < 1 || params.pageSize > maxPageSize))
27
+ throw new Error(`Page size should be between 1 and ${maxPageSize}`);
28
+ if (params.supportedNetworksIds && !params.supportedNetworksIds.includes(params.service.network.id))
29
+ throw new Error('Network not supported');
30
+ if (!params.service.validateAddress(params.address))
31
+ throw new Error('Invalid address param');
23
32
  }
24
33
  }
25
34
  exports.BSFullTransactionsByAddressHelper = BSFullTransactionsByAddressHelper;
@@ -0,0 +1,8 @@
1
+ export declare class BSKeychainHelper {
2
+ static generateNeoPrivateKeyFromMnemonic(mnemonic: string, path: string): string;
3
+ static generateMnemonic(): string;
4
+ static isValidMnemonic(word: string | string[]): boolean;
5
+ static isMnemonic(word: string | string[]): boolean;
6
+ static extractIndexFromPath(bip44Path: string): number;
7
+ static getBip44Path(path: string, order?: number): string;
8
+ }
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.BSKeychainHelper = void 0;
40
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
41
+ const crypto_1 = __importDefault(require("crypto"));
42
+ const bip39 = __importStar(require("bip39"));
43
+ const elliptic_1 = __importDefault(require("elliptic"));
44
+ class BSKeychainHelper {
45
+ static generateNeoPrivateKeyFromMnemonic(mnemonic, path) {
46
+ const seed = bip39.mnemonicToSeedSync(mnemonic);
47
+ const masterKeyHmac = crypto_1.default
48
+ .createHmac('sha512', Buffer.from('Nist256p1 seed'))
49
+ .update(Uint8Array.from(seed))
50
+ .digest();
51
+ const pathArray = path.split('/').slice(1);
52
+ const curve = new elliptic_1.default.ec('p256');
53
+ let chainCode = masterKeyHmac.subarray(32, masterKeyHmac.length);
54
+ let key = masterKeyHmac.subarray(0, 32);
55
+ for (const stringIdx of pathArray) {
56
+ let childIdx;
57
+ let data;
58
+ if (stringIdx.slice(-1) === "'") {
59
+ data = Buffer.concat([Buffer.from('00', 'hex'), key]);
60
+ childIdx = parseInt(stringIdx.slice(0, stringIdx.length - 1), 10) + 0x80000000;
61
+ }
62
+ else {
63
+ const pk = curve.keyFromPrivate(key, 'hex');
64
+ data = Buffer.from(pk.getPublic().encodeCompressed());
65
+ childIdx = parseInt(stringIdx, 10);
66
+ }
67
+ data = Buffer.concat([data, Buffer.from(childIdx.toString(16).padStart(8, '0'), 'hex')]);
68
+ const intermediary = crypto_1.default.createHmac('sha512', chainCode).update(data).digest();
69
+ const k1 = new bignumber_js_1.default(intermediary.subarray(0, 32).toString('hex'), 16);
70
+ const k2 = new bignumber_js_1.default(key.toString('hex'), 16);
71
+ const c = new bignumber_js_1.default(curve.n.toString());
72
+ const protoKey = k1.plus(k2).mod(c).toString(16);
73
+ key = Buffer.from(protoKey.padStart(64, '0'), 'hex');
74
+ chainCode = intermediary.slice(32, intermediary.length);
75
+ }
76
+ return key.toString('hex');
77
+ }
78
+ static generateMnemonic() {
79
+ return bip39.generateMnemonic(128);
80
+ }
81
+ static isValidMnemonic(word) {
82
+ const wordArray = Array.isArray(word) ? word : word.trim().split(' ');
83
+ return wordArray.length === 12 || wordArray.length === 24;
84
+ }
85
+ static isMnemonic(word) {
86
+ const wordArray = Array.isArray(word) ? word : word.trim().split(' ');
87
+ return wordArray.length > 1;
88
+ }
89
+ static extractIndexFromPath(bip44Path) {
90
+ return parseInt(bip44Path.split('/').pop());
91
+ }
92
+ static getBip44Path(path, order = 0) {
93
+ return path.replace('?', order.toString());
94
+ }
95
+ }
96
+ exports.BSKeychainHelper = BSKeychainHelper;
@@ -1,3 +1,4 @@
1
+ import { TBSNetwork } from '../interfaces';
1
2
  type RetryOptions = {
2
3
  retries?: number;
3
4
  delay?: number;
@@ -6,5 +7,6 @@ type RetryOptions = {
6
7
  export declare class BSUtilsHelper {
7
8
  static wait(ms: number): Promise<unknown>;
8
9
  static retry<T = any>(callback: () => Promise<T>, options?: RetryOptions): Promise<T>;
10
+ static validateNetwork(network: TBSNetwork, availableNetworks: TBSNetwork[], availableNetworkURLs: string[]): boolean;
9
11
  }
10
12
  export {};
@@ -8,9 +8,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
15
  exports.BSUtilsHelper = void 0;
13
16
  const error_1 = require("../error");
17
+ const lodash_isequal_1 = __importDefault(require("lodash.isequal"));
14
18
  class BSUtilsHelper {
15
19
  static wait(ms) {
16
20
  return new Promise(resolve => setTimeout(resolve, ms));
@@ -36,5 +40,13 @@ class BSUtilsHelper {
36
40
  return reject(new error_1.BSError('Timeout: ' + errorMessage, 'TIMEOUT'));
37
41
  }));
38
42
  }
43
+ static validateNetwork(network, availableNetworks, availableNetworkURLs) {
44
+ const isValid = availableNetworks.some(networkItem => (0, lodash_isequal_1.default)({ id: network.id, type: network.type, name: network.name }, { id: networkItem.id, type: networkItem.type, name: networkItem.name }));
45
+ if (!isValid)
46
+ return false;
47
+ if (!availableNetworkURLs.includes(network.url))
48
+ return false;
49
+ return true;
50
+ }
39
51
  }
40
52
  exports.BSUtilsHelper = BSUtilsHelper;
package/dist/index.d.ts CHANGED
@@ -4,9 +4,11 @@ export * from './helpers/BSPromisesHelper';
4
4
  export * from './helpers/BSBigNumberHelper';
5
5
  export * from './helpers/BSUtilsHelper';
6
6
  export * from './helpers/BSAccountHelper';
7
+ export * from './helpers/BSKeychainHelper';
7
8
  export * from './services/exchange-data/CryptoCompareEDS';
8
9
  export * from './services/exchange-data/FlamingoForthewinEDS';
9
10
  export * from './services/token/TokenService';
11
+ export * from './services/nft-data/GhostMarketNDS';
10
12
  export * from './functions';
11
13
  export * from './interfaces';
12
14
  export * from './error';
package/dist/index.js CHANGED
@@ -20,9 +20,11 @@ __exportStar(require("./helpers/BSPromisesHelper"), exports);
20
20
  __exportStar(require("./helpers/BSBigNumberHelper"), exports);
21
21
  __exportStar(require("./helpers/BSUtilsHelper"), exports);
22
22
  __exportStar(require("./helpers/BSAccountHelper"), exports);
23
+ __exportStar(require("./helpers/BSKeychainHelper"), exports);
23
24
  __exportStar(require("./services/exchange-data/CryptoCompareEDS"), exports);
24
25
  __exportStar(require("./services/exchange-data/FlamingoForthewinEDS"), exports);
25
26
  __exportStar(require("./services/token/TokenService"), exports);
27
+ __exportStar(require("./services/nft-data/GhostMarketNDS"), exports);
26
28
  __exportStar(require("./functions"), exports);
27
29
  __exportStar(require("./interfaces"), exports);
28
30
  __exportStar(require("./error"), exports);