@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.
- package/README.md +1 -1
- package/dist/contract/amm/margin/index.d.ts +20 -45
- package/dist/contract/amm/margin/index.js +20 -17
- package/dist/contract/amm/primary/index.d.ts +22 -53
- package/dist/contract/amm/primary/index.js +3 -0
- package/dist/contract/amm/secondary/index.d.ts +16 -29
- package/dist/contract/amm/secondary/index.js +3 -0
- package/dist/contract/bond/index.d.ts +24 -31
- package/dist/contract/bond/index.js +25 -22
- package/dist/contract/cash/index.d.ts +21 -28
- package/dist/contract/cash/index.js +19 -16
- package/dist/contract/client/index.d.ts +33 -73
- package/dist/contract/client/index.js +11 -8
- package/dist/contract/custody/index.d.ts +20 -45
- package/dist/contract/custody/index.js +3 -0
- package/dist/contract/distribution/index.d.ts +32 -42
- package/dist/contract/distribution/index.js +20 -17
- package/dist/contract/erc20/index.d.ts +16 -29
- package/dist/contract/erc20/index.js +3 -0
- package/dist/contract/factory/index.d.ts +32 -66
- package/dist/contract/factory/index.js +14 -11
- package/dist/contract/index.d.ts +15 -0
- package/dist/contract/index.js +163 -16
- package/dist/contract/liquidity/index.d.ts +98 -144
- package/dist/contract/liquidity/index.js +63 -60
- package/dist/contract/loans/compound/index.d.ts +17 -21
- package/dist/contract/loans/compound/index.js +7 -4
- package/dist/contract/pool/index.d.ts +12 -13
- package/dist/contract/pool/index.js +4 -1
- package/dist/contract/rates/index.d.ts +13 -17
- package/dist/contract/rates/index.js +3 -0
- package/dist/contract/securitiesfactory/index.d.ts +23 -48
- package/dist/contract/securitiesfactory/index.js +6 -3
- package/dist/contract/security/index.d.ts +36 -109
- package/dist/contract/security/index.js +3 -0
- package/dist/contract/token/index.d.ts +19 -35
- package/dist/contract/token/index.js +7 -4
- package/dist/utils/constants.js +1 -0
- package/package.json +5 -4
package/dist/contract/index.js
CHANGED
|
@@ -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 =
|
|
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
|
-
|
|
417
|
-
//
|
|
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
|
-
|
|
435
|
-
|
|
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
|
|
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
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
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
|
-
|
|
47
|
-
|
|
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
|
-
|
|
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
|
-
|
|
68
|
-
|
|
57
|
+
Fetches registered platforms
|
|
58
|
+
*/
|
|
69
59
|
getPlatforms(): any;
|
|
70
60
|
/**
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
getInvestment(_investor: string, _token: string, options?:
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
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
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
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
|
}
|