@verified-network/verified-sdk 2.0.0 → 2.0.2

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 (39) hide show
  1. package/README.md +1 -1
  2. package/dist/contract/amm/margin/index.d.ts +20 -45
  3. package/dist/contract/amm/margin/index.js +20 -17
  4. package/dist/contract/amm/primary/index.d.ts +22 -53
  5. package/dist/contract/amm/primary/index.js +3 -0
  6. package/dist/contract/amm/secondary/index.d.ts +16 -29
  7. package/dist/contract/amm/secondary/index.js +3 -0
  8. package/dist/contract/bond/index.d.ts +24 -31
  9. package/dist/contract/bond/index.js +25 -22
  10. package/dist/contract/cash/index.d.ts +21 -28
  11. package/dist/contract/cash/index.js +19 -16
  12. package/dist/contract/client/index.d.ts +33 -73
  13. package/dist/contract/client/index.js +11 -8
  14. package/dist/contract/custody/index.d.ts +20 -45
  15. package/dist/contract/custody/index.js +3 -0
  16. package/dist/contract/distribution/index.d.ts +32 -42
  17. package/dist/contract/distribution/index.js +20 -17
  18. package/dist/contract/erc20/index.d.ts +16 -29
  19. package/dist/contract/erc20/index.js +3 -0
  20. package/dist/contract/factory/index.d.ts +32 -66
  21. package/dist/contract/factory/index.js +14 -11
  22. package/dist/contract/index.d.ts +15 -0
  23. package/dist/contract/index.js +163 -16
  24. package/dist/contract/liquidity/index.d.ts +98 -144
  25. package/dist/contract/liquidity/index.js +63 -60
  26. package/dist/contract/loans/compound/index.d.ts +17 -21
  27. package/dist/contract/loans/compound/index.js +7 -4
  28. package/dist/contract/pool/index.d.ts +12 -13
  29. package/dist/contract/pool/index.js +4 -1
  30. package/dist/contract/rates/index.d.ts +13 -17
  31. package/dist/contract/rates/index.js +3 -0
  32. package/dist/contract/securitiesfactory/index.d.ts +23 -48
  33. package/dist/contract/securitiesfactory/index.js +6 -3
  34. package/dist/contract/security/index.d.ts +36 -109
  35. package/dist/contract/security/index.js +3 -0
  36. package/dist/contract/token/index.d.ts +19 -35
  37. package/dist/contract/token/index.js +7 -4
  38. package/dist/utils/constants.js +1 -0
  39. package/package.json +5 -4
@@ -5,6 +5,9 @@ exports.VerifiedContract = exports.DATATYPES = void 0;
5
5
  const ethers_1 = require("ethers");
6
6
  const account_1 = require("@biconomy/account");
7
7
  const constants_1 = require("../utils/constants");
8
+ const abstractjs_1 = require("@biconomy/abstractjs");
9
+ const chains_1 = require("viem/chains");
10
+ const viem_1 = require("viem");
8
11
  var STATUS;
9
12
  (function (STATUS) {
10
13
  STATUS[STATUS["SUCCESS"] = 0] = "SUCCESS";
@@ -386,13 +389,85 @@ class VerifiedContract {
386
389
  }
387
390
  }
388
391
  else {
389
- console.error("gasless transaction failed with error: ", err);
392
+ console.error("gasless transaction failed with error: ", (err === null || err === void 0 ? void 0 : err.message) || err);
390
393
  console.log("will use ethers....");
391
394
  return await this.callFunctionWithEthers(functionName, ...args);
392
395
  }
393
396
  }
394
397
  }
398
+ /** Constructs and call function using MEE client that allows gas payment in ERC20 tokens */
399
+ async callFunctionWithMEEClient(nexusAccount, chainId, tx, paymentToken) {
400
+ var _a, _b, _c;
401
+ let res = {};
402
+ let txHash = "";
403
+ try {
404
+ const meeClient = await (0, abstractjs_1.createMeeClient)({
405
+ account: nexusAccount,
406
+ });
407
+ const transactionInstruction = await nexusAccount.build({
408
+ type: "default",
409
+ data: {
410
+ chainId,
411
+ calls: [tx],
412
+ },
413
+ });
414
+ // Execute the transaction using passed paymentToken
415
+ const { hash } = await meeClient.execute({
416
+ feeToken: {
417
+ chainId,
418
+ address: paymentToken,
419
+ },
420
+ instructions: [transactionInstruction],
421
+ });
422
+ txHash = hash;
423
+ console.log(`MEE transaction hash: ${hash}`);
424
+ // Wait for transaction to complete
425
+ const receipt = await meeClient.waitForSupertransactionReceipt({ hash });
426
+ if (((_a = receipt === null || receipt === void 0 ? void 0 : receipt.receipts) === null || _a === void 0 ? void 0 : _a.length) > 1) {
427
+ //at least 2 receipts
428
+ const txReceipt = receipt === null || receipt === void 0 ? void 0 : receipt.receipts[((_b = receipt === null || receipt === void 0 ? void 0 : receipt.receipts) === null || _b === void 0 ? void 0 : _b.length) - 1];
429
+ if ((txReceipt === null || txReceipt === void 0 ? void 0 : txReceipt.status) === "success") {
430
+ res.status = STATUS.SUCCESS;
431
+ res.response = {
432
+ hash: txReceipt === null || txReceipt === void 0 ? void 0 : txReceipt.transactionHash,
433
+ result: txReceipt,
434
+ }; //TODO: update result on response
435
+ res.message = "";
436
+ }
437
+ else {
438
+ res.status = STATUS.ERROR;
439
+ res.response = {
440
+ hash: txReceipt === null || txReceipt === void 0 ? void 0 : txReceipt.transactionHash,
441
+ result: txReceipt,
442
+ }; //TODO: update result on response
443
+ res.message = "";
444
+ }
445
+ return res;
446
+ }
447
+ else {
448
+ console.error("Mee client transaction failed with error: ", "Receipts lesser than one.");
449
+ res.status = STATUS.ERROR;
450
+ res.response = {
451
+ hash: (_c = receipt === null || receipt === void 0 ? void 0 : receipt.receipts[0]) === null || _c === void 0 ? void 0 : _c.transactionHash,
452
+ result: receipt === null || receipt === void 0 ? void 0 : receipt.receipts[0],
453
+ }; //TODO: update result on response
454
+ res.message = "";
455
+ return res;
456
+ }
457
+ }
458
+ catch (err) {
459
+ console.error("Erc20 payment transaction failed with error: ", (err === null || err === void 0 ? void 0 : err.message) || err);
460
+ res.status = STATUS.ERROR;
461
+ res.response = {
462
+ hash: txHash,
463
+ result: {},
464
+ }; //TODO: update result on response
465
+ res.message = "";
466
+ return res;
467
+ }
468
+ }
395
469
  async callContract(functionName, ...args) {
470
+ var _a, _b, _c, _d;
396
471
  // Check if the function is a read function
397
472
  if (this.isReadFunction(functionName)) {
398
473
  console.log("read function will use ethers");
@@ -400,30 +475,22 @@ class VerifiedContract {
400
475
  }
401
476
  const chainId = await this.signer.getChainId();
402
477
  if (this.supportsGasless(chainId)) {
403
- console.log("gassless supported will use userop");
478
+ console.log("gassless supported will use userop or mee client");
404
479
  //call contract through userop for gasless transaction
405
480
  let options = [];
406
481
  const totalArguments = args.length;
482
+ const optionsRaw = args.splice(-1);
407
483
  //reduce args to exclude options
408
484
  if (totalArguments > 1)
409
- options = args.splice(-1);
485
+ options = optionsRaw;
410
486
  //console.log('options before', options);
411
487
  if (options == 0)
412
488
  options[0] = {};
413
489
  //create smart account for signer
414
490
  const smartAccount = await this.createSmartAccount(chainId);
415
491
  const account = await smartAccount.getAccountAddress();
416
- const signerAddress = await this.signer.getAddress();
417
- //sanitize arguments to use smartaccount address
418
- /*const newArgs = args.map((_arg: any) => {
419
- if (
420
- typeof _arg === "string" &&
421
- _arg.toLowerCase() === signerAddress.toLowerCase()
422
- ) {
423
- _arg = account;
424
- }
425
- return _arg;
426
- });*/
492
+ // console.log("smart account address: ", account);
493
+ // const signerAddress = await this.signer.getAddress();
427
494
  //construct calldata for function
428
495
  let fn = this.contract.populateTransaction[functionName];
429
496
  let _res = await fn(...args);
@@ -431,8 +498,25 @@ class VerifiedContract {
431
498
  to: this.contract.address,
432
499
  data: _res.data,
433
500
  };
434
- const paymentToken = constants_1.PaymasterConstants[`${chainId}`]["PAYMENT_TOKEN"] || "";
435
- return await this.callFunctionAsUserOp(smartAccount, tx1, functionName, paymentToken, ...args);
501
+ if ((_a = optionsRaw[0]) === null || _a === void 0 ? void 0 : _a.paymentToken) {
502
+ console.log("Using Mee client with paymentToken of: ", (_b = optionsRaw[0]) === null || _b === void 0 ? void 0 : _b.paymentToken);
503
+ const _signer = this.signer;
504
+ const nexusAccount = await (0, abstractjs_1.toMultichainNexusAccount)({
505
+ chains: [chains_1.base, chains_1.mainnet, chains_1.sepolia, chains_1.gnosis, chains_1.baseSepolia, chains_1.polygon],
506
+ transports: [(0, viem_1.http)(), (0, viem_1.http)(), (0, viem_1.http)(), (0, viem_1.http)(), (0, viem_1.http)(), (0, viem_1.http)()],
507
+ signer: _signer,
508
+ });
509
+ const meeAddress = nexusAccount.addressOn(chainId);
510
+ // console.log("nexus account address: ", meeAddress);
511
+ return await this.callFunctionWithMEEClient(nexusAccount, chainId, tx1, (_c = optionsRaw[0]) === null || _c === void 0 ? void 0 : _c.paymentToken);
512
+ }
513
+ else {
514
+ console.log("Using Userop since no payment token...");
515
+ const paymentToken = ((_d = options[0]) === null || _d === void 0 ? void 0 : _d.paymentToken) ||
516
+ constants_1.PaymasterConstants[`${chainId}`]["PAYMENT_TOKEN"] ||
517
+ "";
518
+ return await this.callFunctionAsUserOp(smartAccount, tx1, functionName, paymentToken, ...args);
519
+ }
436
520
  }
437
521
  else {
438
522
  //call contract through normal ether.js
@@ -440,6 +524,69 @@ class VerifiedContract {
440
524
  return await this.callFunctionWithEthers(functionName, ...args);
441
525
  }
442
526
  }
527
+ async getQuote(paymentTokenAddress, functionName, args) {
528
+ var _a, _b;
529
+ const chainId = await this.signer.getChainId();
530
+ if (this.supportsGasless(chainId)) {
531
+ const _signer = this.signer;
532
+ const nexusAccount = await (0, abstractjs_1.toMultichainNexusAccount)({
533
+ chains: [chains_1.base, chains_1.mainnet, chains_1.sepolia, chains_1.gnosis, chains_1.baseSepolia, chains_1.polygon],
534
+ transports: [(0, viem_1.http)(), (0, viem_1.http)(), (0, viem_1.http)(), (0, viem_1.http)(), (0, viem_1.http)(), (0, viem_1.http)()],
535
+ signer: _signer,
536
+ });
537
+ if (paymentTokenAddress) {
538
+ //construct calldata for function
539
+ try {
540
+ let fn = this.contract.populateTransaction[functionName];
541
+ let _res = await fn(...args);
542
+ const tx1 = {
543
+ to: this.contract.address,
544
+ data: _res.data,
545
+ };
546
+ const meeClient = await (0, abstractjs_1.createMeeClient)({
547
+ account: nexusAccount,
548
+ });
549
+ const transactionInstruction = await nexusAccount.build({
550
+ type: "default",
551
+ data: {
552
+ chainId,
553
+ calls: [tx1],
554
+ },
555
+ });
556
+ const tkAddress = paymentTokenAddress;
557
+ const quote = await meeClient.getQuote({
558
+ instructions: [transactionInstruction],
559
+ feeToken: { address: tkAddress, chainId },
560
+ });
561
+ return {
562
+ tokenAddress: paymentTokenAddress,
563
+ amount: quote === null || quote === void 0 ? void 0 : quote.paymentInfo.tokenAmount,
564
+ amountInWei: quote === null || quote === void 0 ? void 0 : quote.paymentInfo.tokenWeiAmount,
565
+ amouuntValue: quote === null || quote === void 0 ? void 0 : quote.paymentInfo.tokenValue,
566
+ chainId,
567
+ functionName,
568
+ };
569
+ }
570
+ catch (err) {
571
+ if ((_a = err === null || err === void 0 ? void 0 : err.message) === null || _a === void 0 ? void 0 : _a.includes("fn is not a function")) {
572
+ throw new Error(`Function ${functionName} not found in contract's ABI`);
573
+ }
574
+ else if ((_b = err === null || err === void 0 ? void 0 : err.message) === null || _b === void 0 ? void 0 : _b.includes("code=INVALID_ARGUMENT")) {
575
+ throw new TypeError(`Invalid arguments type`);
576
+ }
577
+ throw new Error((err === null || err === void 0 ? void 0 : err.message) || "getQuote failed.");
578
+ }
579
+ }
580
+ }
581
+ return {
582
+ tokenAddress: "",
583
+ amount: "0",
584
+ amountInWei: "0",
585
+ amouuntValue: "0",
586
+ chainId,
587
+ functionName,
588
+ };
589
+ }
443
590
  getEvent(eventName, callback) {
444
591
  let res = {};
445
592
  this.contract.once(eventName, (...data) => {
@@ -1,117 +1,92 @@
1
- import { VerifiedContract } from '../index';
1
+ import { VerifiedContract, Options } from "../index";
2
2
  import { VerifiedWallet } from "../../wallet";
3
3
  export default class LiquidityContract extends VerifiedContract {
4
4
  contractAddress: string;
5
5
  constructor(signer: VerifiedWallet, contractNetworkAddress: string);
6
- /**
7
- Creates supply of the Verified Liquidity token after initial issue with constructor defined parameters
8
- @param _supply total supply of VITTA
9
- @param _cap investment limit for each investor
10
- @param _limit time limit for issue close
11
- */
12
- createSupply(_cap: string, _limit: string, options?: {
13
- gasPrice: number;
14
- gasLimit: number;
15
- }): any;
16
- /**
17
- Specifies list of supported tokens that can be invested in the Verified Liquidity token
18
- @param _tokens array of supported token addresses
19
- */
20
- supportTokens(_tokens: string, _name: string, options?: {
21
- gasPrice: number;
22
- gasLimit: number;
23
- }): any;
24
- /**
25
- Checks if a specified token is supported for investing in the Verified Liquidity token
26
- @param _token token that is supported for investment
27
- */
28
- checkSupportForToken(_token: string, options?: {
29
- gasPrice: number;
30
- gasLimit: number;
31
- }): any;
32
- /**
33
- Removes support for token for investing in the Verified Liquidity token
34
- @param _token token that is supported for investment
35
- */
36
- removeToken(_token: string, options?: {
37
- gasPrice: number;
38
- gasLimit: number;
39
- }): any;
6
+ _getMeeQuote(paymentTokenAddress: string, functionName: string, args: any[]): Promise<{
7
+ tokenAddress: string;
8
+ amount: string;
9
+ amountInWei: string;
10
+ amouuntValue: string;
11
+ chainId: number;
12
+ functionName: string;
13
+ }>;
14
+ /**
15
+ Creates supply of the Verified Liquidity token after initial issue with constructor defined parameters
16
+ @param _supply total supply of VITTA
17
+ @param _cap investment limit for each investor
18
+ @param _limit time limit for issue close
19
+ */
20
+ createSupply(_cap: string, _limit: string, options?: Options): any;
21
+ /**
22
+ Specifies list of supported tokens that can be invested in the Verified Liquidity token
23
+ @param _tokens array of supported token addresses
24
+ */
25
+ supportTokens(_tokens: string, _name: string, options?: Options): any;
26
+ /**
27
+ Checks if a specified token is supported for investing in the Verified Liquidity token
28
+ @param _token token that is supported for investment
29
+ */
30
+ checkSupportForToken(_token: string, options?: Options): any;
31
+ /**
32
+ Removes support for token for investing in the Verified Liquidity token
33
+ @param _token token that is supported for investment
34
+ */
35
+ removeToken(_token: string, options?: Options): any;
40
36
  /**
41
37
  * Returns list of supported liquidity tokens (eg, VITTA, USDC, DAI)
42
38
  * @returns array of struct of tokens
43
39
  */
44
40
  getSupportedTokens(): any;
45
41
  /**
46
- Registers a liquidity platform (eg, DEX) where Verified Liquidity tokens can be used to underwrite investments
47
- @param _liquidityPlatform address of the market making platform
48
- */
49
- registerPlatform(_platform: string, _name: string, options?: {
50
- gasPrice: number;
51
- gasLimit: number;
52
- }): any;
53
- /**
54
- Used by external apps (eg, exchange, wallet) to buy Verified Liquidity token
55
- @param _token address of token used by investor to buy the VITTA
56
- @param _amount amount of token that is transferred from investor to this VITTA issuing contract's account for the investor
57
- */
58
- buy(_token: string, _amount: string, options?: {
59
- gasPrice: number;
60
- gasLimit: number;
61
- }): any;
42
+ Registers a liquidity platform (eg, DEX) where Verified Liquidity tokens can be used to underwrite investments
43
+ @param _liquidityPlatform address of the market making platform
44
+ */
45
+ registerPlatform(_platform: string, _name: string, options?: Options): any;
62
46
  /**
63
- Fetches investors in VITTA
64
- */
47
+ Used by external apps (eg, exchange, wallet) to buy Verified Liquidity token
48
+ @param _token address of token used by investor to buy the VITTA
49
+ @param _amount amount of token that is transferred from investor to this VITTA issuing contract's account for the investor
50
+ */
51
+ buy(_token: string, _amount: string, options?: Options): any;
52
+ /**
53
+ Fetches investors in VITTA
54
+ */
65
55
  getInvestors(): any;
66
56
  /**
67
- Fetches registered platforms
68
- */
57
+ Fetches registered platforms
58
+ */
69
59
  getPlatforms(): any;
70
60
  /**
71
- Fetches investment detail for specific investor in VITTA
72
- @param _investor address of investor
73
- @param _token address of token invested by investor
74
- */
75
- getInvestment(_investor: string, _token: string, options?: {
76
- gasPrice: number;
77
- gasLimit: number;
78
- }): any;
79
- /**
80
- Used by Issuers (eg, asset managers) to issue VITTA to investors or refund paid in tokens to investors if investment cap is breached
81
- @param _investor address of investor
82
- @param _token address of token invested in VITTA
83
- @param _tokenAmount amount of token invested in VITTA
84
- @param _LPToIssue amount of VITTA to issue to investor
85
- */
86
- issue(_investor: string, _token: string, _tokenAmount: string, _LPToIssue: string, options?: {
87
- gasPrice: number;
88
- gasLimit: number;
89
- }): any;
90
- /**
91
- Used by VITTA holder to stake it for providing liquidity for underwriting investments
92
- @param _toStake amount of VITTA to stake
93
- */
94
- stake(_toStake: string, options?: {
95
- gasPrice: number;
96
- gasLimit: number;
97
- }): any;
98
- /**
99
- Used by VITTA holder to withdraw staked liquidity for underwriting investments
100
- @param _fromStake amount of VITTA staked
101
- */
102
- withdraw(_fromStake: string, options?: {
103
- gasPrice: number;
104
- gasLimit: number;
105
- }): any;
106
- /**
107
- Pay out of income to VITTA Liquidity providers
108
- @param _distribution amount of VITTA to mint and distribute pro rata to liquidity providers
109
- @param _platform address of liquidity platform
110
- */
111
- payOut(_distribution: string, _platform: string, options?: {
112
- gasPrice: number;
113
- gasLimit: number;
114
- }): any;
61
+ Fetches investment detail for specific investor in VITTA
62
+ @param _investor address of investor
63
+ @param _token address of token invested by investor
64
+ */
65
+ getInvestment(_investor: string, _token: string, options?: Options): any;
66
+ /**
67
+ Used by Issuers (eg, asset managers) to issue VITTA to investors or refund paid in tokens to investors if investment cap is breached
68
+ @param _investor address of investor
69
+ @param _token address of token invested in VITTA
70
+ @param _tokenAmount amount of token invested in VITTA
71
+ @param _LPToIssue amount of VITTA to issue to investor
72
+ */
73
+ issue(_investor: string, _token: string, _tokenAmount: string, _LPToIssue: string, options?: Options): any;
74
+ /**
75
+ Used by VITTA holder to stake it for providing liquidity for underwriting investments
76
+ @param _toStake amount of VITTA to stake
77
+ */
78
+ stake(_toStake: string, options?: Options): any;
79
+ /**
80
+ Used by VITTA holder to withdraw staked liquidity for underwriting investments
81
+ @param _fromStake amount of VITTA staked
82
+ */
83
+ withdraw(_fromStake: string, options?: Options): any;
84
+ /**
85
+ Pay out of income to VITTA Liquidity providers
86
+ @param _distribution amount of VITTA to mint and distribute pro rata to liquidity providers
87
+ @param _platform address of liquidity platform
88
+ */
89
+ payOut(_distribution: string, _platform: string, options?: Options): any;
115
90
  /**
116
91
  * Adds asset manager to manage liquidity
117
92
  * @param _platform address of market making platform (eg Balancer)
@@ -119,10 +94,7 @@ export default class LiquidityContract extends VerifiedContract {
119
94
  * @param options
120
95
  * @returns none
121
96
  */
122
- addManager(_platform: string, _manager: string, options?: {
123
- gasPrice: number;
124
- gasLimit: number;
125
- }): any;
97
+ addManager(_platform: string, _manager: string, options?: Options): any;
126
98
  /**
127
99
  * Removes asset manager managing liquidity
128
100
  * @param _platform address of market making platform (eg Balancer)
@@ -130,45 +102,33 @@ export default class LiquidityContract extends VerifiedContract {
130
102
  * @param options
131
103
  * @returns none
132
104
  */
133
- removeManager(_platform: string, _manager: string, options?: {
134
- gasPrice: number;
135
- gasLimit: number;
136
- }): any;
105
+ removeManager(_platform: string, _manager: string, options?: Options): any;
137
106
  /**
138
107
  * Fetches asset managers
139
108
  * @param _platform address of market making platform
140
109
  * @param options
141
110
  * @returns array of asset manager addresses
142
111
  */
143
- getManagers(_platform: string, options?: {
144
- gasPrice: number;
145
- gasLimit: number;
146
- }): any;
147
- /**
148
- * Gets return on investment performance of market making platform
149
- * @param _platform address of market making platform
150
- * @param options
151
- * @returns uint256 unstakedLiquidity,
152
- uint256 balancePlatformLiquidity,
153
- uint256 platformLiquidityProvided,
154
- uint256 platformCommissionsEarned
155
- */
156
- getPlatformPerformance(_platform: string, options?: {
157
- gasPrice: number;
158
- gasLimit: number;
159
- }): any;
160
- /**
161
- * Gets return on investment performance for asset manager
162
- * @param _platform address of market making platform (eg Balancer)
163
- * @param _manager address of asset manager
164
- * @param options
165
- * @returns uint256 managerLiquidityProvided,
166
- uint256 managerCommissionsEarned
167
- */
168
- getManagerPerformance(_platform: string, _token: string, _manager: string, options?: {
169
- gasPrice: number;
170
- gasLimit: number;
171
- }): any;
112
+ getManagers(_platform: string, options?: Options): any;
113
+ /**
114
+ * Gets return on investment performance of market making platform
115
+ * @param _platform address of market making platform
116
+ * @param options
117
+ * @returns uint256 unstakedLiquidity,
118
+ uint256 balancePlatformLiquidity,
119
+ uint256 platformLiquidityProvided,
120
+ uint256 platformCommissionsEarned
121
+ */
122
+ getPlatformPerformance(_platform: string, options?: Options): any;
123
+ /**
124
+ * Gets return on investment performance for asset manager
125
+ * @param _platform address of market making platform (eg Balancer)
126
+ * @param _manager address of asset manager
127
+ * @param options
128
+ * @returns uint256 managerLiquidityProvided,
129
+ uint256 managerCommissionsEarned
130
+ */
131
+ getManagerPerformance(_platform: string, _token: string, _manager: string, options?: Options): any;
172
132
  /**
173
133
  * Provides liquidity to asset managers on platform
174
134
  * @param _platform address of market making platform
@@ -177,19 +137,13 @@ export default class LiquidityContract extends VerifiedContract {
177
137
  * @param options
178
138
  * @returns none
179
139
  */
180
- provideLiquidity(_platform: string, _manager: string, _liquidity: string, _token: string, _tokenAmount: string, options?: {
181
- gasPrice: number;
182
- gasLimit: number;
183
- }): any;
140
+ provideLiquidity(_platform: string, _manager: string, _liquidity: string, _token: string, _tokenAmount: string, options?: Options): any;
184
141
  /**
185
142
  * Fetches balance of investor
186
143
  * @param _investor address of investor
187
144
  * @param options
188
145
  * @returns balance of investor
189
146
  */
190
- balanceOf(_investor: string, options?: {
191
- gasPrice: number;
192
- gasLimit: number;
193
- }): any;
147
+ balanceOf(_investor: string, options?: Options): any;
194
148
  notifyIssue(callback: any): object;
195
149
  }