@heliofi/launchpad-common 0.0.2 → 0.0.7

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 (47) hide show
  1. package/dist/src/domain/constants/blockchain.d.ts +1 -0
  2. package/dist/src/domain/constants/blockchain.js +2 -1
  3. package/dist/src/domain/constants/blockchain.js.map +1 -1
  4. package/dist/src/domain/curves/BaseCurve.d.ts +7 -5
  5. package/dist/src/domain/curves/BaseCurve.js.map +1 -1
  6. package/dist/src/domain/curves/LinearCurveV1.d.ts +6 -5
  7. package/dist/src/domain/curves/LinearCurveV1.js +56 -59
  8. package/dist/src/domain/curves/LinearCurveV1.js.map +1 -1
  9. package/dist/src/domain/curves/getCurve.d.ts +3 -0
  10. package/dist/src/domain/curves/getCurve.js +13 -0
  11. package/dist/src/domain/curves/getCurve.js.map +1 -0
  12. package/dist/src/domain/curves/index.d.ts +1 -0
  13. package/dist/src/domain/curves/index.js +1 -0
  14. package/dist/src/domain/curves/index.js.map +1 -1
  15. package/dist/src/domain/curves/tests/LinearCurveV1.spec.js +21 -16
  16. package/dist/src/domain/curves/tests/LinearCurveV1.spec.js.map +1 -1
  17. package/dist/src/domain/curves/types.d.ts +10 -0
  18. package/dist/src/domain/curves/types.js.map +1 -1
  19. package/dist/src/domain/model/buy/prepare/dtos/BuyTxPrepare.dto.d.ts +0 -1
  20. package/dist/src/domain/model/buy/prepare/dtos/BuyTxPrepare.dto.js +0 -7
  21. package/dist/src/domain/model/buy/prepare/dtos/BuyTxPrepare.dto.js.map +1 -1
  22. package/dist/src/domain/model/curve/dtos/CreateCurve.dto.d.ts +1 -0
  23. package/dist/src/domain/model/curve/dtos/CreateCurve.dto.js +5 -0
  24. package/dist/src/domain/model/curve/dtos/CreateCurve.dto.js.map +1 -1
  25. package/dist/src/domain/model/curve/entities/Curve.entity.d.ts +1 -0
  26. package/dist/src/domain/model/curve/entities/Curve.entity.js.map +1 -1
  27. package/dist/src/domain/model/tx-token-payload/TxTokenPayload.d.ts +1 -0
  28. package/dist/tsconfig.tsbuildinfo +1 -1
  29. package/package.json +2 -2
  30. package/dist/src/domain/constants/blockchainEngineType.d.ts +0 -5
  31. package/dist/src/domain/constants/blockchainEngineType.js +0 -10
  32. package/dist/src/domain/constants/blockchainEngineType.js.map +0 -1
  33. package/dist/src/domain/model/create-mint/PrepareCreateMint.dto.d.ts +0 -4
  34. package/dist/src/domain/model/create-mint/PrepareCreateMint.dto.js +0 -27
  35. package/dist/src/domain/model/create-mint/PrepareCreateMint.dto.js.map +0 -1
  36. package/dist/src/domain/model/create-mint/index.d.ts +0 -1
  37. package/dist/src/domain/model/create-mint/index.js +0 -18
  38. package/dist/src/domain/model/create-mint/index.js.map +0 -1
  39. package/dist/src/domain/model/token-listing/entities/TokenListing.entity.d.ts +0 -19
  40. package/dist/src/domain/model/token-listing/entities/TokenListing.entity.js +0 -8
  41. package/dist/src/domain/model/token-listing/entities/TokenListing.entity.js.map +0 -1
  42. package/dist/src/domain/model/token-listing/entities/index.d.ts +0 -1
  43. package/dist/src/domain/model/token-listing/entities/index.js +0 -18
  44. package/dist/src/domain/model/token-listing/entities/index.js.map +0 -1
  45. package/dist/src/domain/model/token-listing/index.d.ts +0 -1
  46. package/dist/src/domain/model/token-listing/index.js +0 -18
  47. package/dist/src/domain/model/token-listing/index.js.map +0 -1
@@ -11,3 +11,4 @@ export declare enum BlockchainEngineType {
11
11
  }
12
12
  export declare const blockchainEngineMap: Map<BlockchainSymbol, BlockchainEngineType>;
13
13
  export declare function getDefaultBlockChainName(): BlockchainSymbol;
14
+ export declare const triggerBuild = 0;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDefaultBlockChainName = exports.blockchainEngineMap = exports.BlockchainEngineType = exports.BlockchainSymbol = void 0;
3
+ exports.triggerBuild = exports.getDefaultBlockChainName = exports.blockchainEngineMap = exports.BlockchainEngineType = exports.BlockchainSymbol = void 0;
4
4
  var BlockchainSymbol;
5
5
  (function (BlockchainSymbol) {
6
6
  BlockchainSymbol["SOL"] = "SOL";
@@ -24,4 +24,5 @@ function getDefaultBlockChainName() {
24
24
  return BlockchainSymbol.SOL;
25
25
  }
26
26
  exports.getDefaultBlockChainName = getDefaultBlockChainName;
27
+ exports.triggerBuild = 0;
27
28
  //# sourceMappingURL=blockchain.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"blockchain.js","sourceRoot":"","sources":["../../../../src/domain/constants/blockchain.ts"],"names":[],"mappings":";;;AAAA,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,+BAAW,CAAA;IACX,+BAAW,CAAA;IACX,uCAAmB,CAAA;IACnB,uCAAmB,CAAA;AACrB,CAAC,EALW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAK3B;AAED,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC9B,mCAAW,CAAA;IACX,mCAAW,CAAA;IACX,mCAAW,CAAA;AACb,CAAC,EAJW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAI/B;AAEY,QAAA,mBAAmB,GAAG,IAAI,GAAG,CAGxC;IACA,CAAC,gBAAgB,CAAC,GAAG,EAAE,oBAAoB,CAAC,GAAG,CAAC;IAChD,CAAC,gBAAgB,CAAC,GAAG,EAAE,oBAAoB,CAAC,GAAG,CAAC;IAChD,CAAC,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,CAAC,GAAG,CAAC;IACpD,CAAC,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,CAAC,GAAG,CAAC;CACrD,CAAC,CAAC;AAEH,SAAgB,wBAAwB;IACtC,OAAO,gBAAgB,CAAC,GAAG,CAAC;AAC9B,CAAC;AAFD,4DAEC"}
1
+ {"version":3,"file":"blockchain.js","sourceRoot":"","sources":["../../../../src/domain/constants/blockchain.ts"],"names":[],"mappings":";;;AAAA,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,+BAAW,CAAA;IACX,+BAAW,CAAA;IACX,uCAAmB,CAAA;IACnB,uCAAmB,CAAA;AACrB,CAAC,EALW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAK3B;AAED,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC9B,mCAAW,CAAA;IACX,mCAAW,CAAA;IACX,mCAAW,CAAA;AACb,CAAC,EAJW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAI/B;AAEY,QAAA,mBAAmB,GAAG,IAAI,GAAG,CAGxC;IACA,CAAC,gBAAgB,CAAC,GAAG,EAAE,oBAAoB,CAAC,GAAG,CAAC;IAChD,CAAC,gBAAgB,CAAC,GAAG,EAAE,oBAAoB,CAAC,GAAG,CAAC;IAChD,CAAC,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,CAAC,GAAG,CAAC;IACpD,CAAC,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,CAAC,GAAG,CAAC;CACrD,CAAC,CAAC;AAEH,SAAgB,wBAAwB;IACtC,OAAO,gBAAgB,CAAC,GAAG,CAAC;AAC9B,CAAC;AAFD,4DAEC;AAEY,QAAA,YAAY,GAAG,CAAC,CAAC"}
@@ -1,13 +1,15 @@
1
1
  import BigNumber from 'bignumber.js';
2
2
  import { CurveType } from '../constants';
3
+ import { CalculatePriceOptions } from './types';
3
4
  export declare abstract class BaseCurve {
4
5
  dynamicThreshold: number;
6
+ curveLimit: number;
5
7
  curveType: CurveType;
6
- abstract calculateCostForNTokens(nAmount: bigint, curvePosition: bigint, totalSupply: bigint, decimalNr: number, collateralThreshold: bigint, collateralDecimals: number): bigint | undefined;
7
- abstract tokensToMigrate(curveAllocation: bigint, totalSupply: bigint, decimals: number, collateralThreshold: bigint, collateralDecimals: number): bigint | undefined;
8
+ abstract calculateCostForNTokens(options: CalculatePriceOptions): bigint | undefined;
9
+ abstract tokensToMigrate(coefA: BigNumber, coefB: BigNumber, allocation: bigint, decimalsNr: number, migrationFee: number): bigint | undefined;
8
10
  abstract tokensToBurn(totalSupply: bigint, allocation: bigint, tokensToMigrate: bigint): bigint | undefined;
9
11
  abstract migrationFee(): bigint;
10
- abstract calculateCurvePrice(curvePosition: bigint, totalSupply: bigint, decimalNr: number, collateralThreshold: bigint, collateralDecimals: number): bigint | undefined;
11
- abstract getCoefA(totalSupply: bigint, decimalNr: number, collateralThreshold: bigint, collateralDecimals: number): BigNumber;
12
- abstract getCoefB(collateralDecimals: number): BigNumber;
12
+ abstract calculateCurvePrice(coefA: BigNumber, coefB: BigNumber, curvePosition: bigint, collateralDecimals: number): bigint | undefined;
13
+ abstract getCoefA(coef_b: BigNumber, totalSupply: bigint, decimalNr: number, marketcapThreshold: bigint, marketcapDecimalNr: number): BigNumber;
14
+ abstract getCoefB(collateralDecimalsNr: number): BigNumber;
13
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BaseCurve.js","sourceRoot":"","sources":["../../../../src/domain/curves/BaseCurve.ts"],"names":[],"mappings":";;;AAGA,MAAsB,SAAS;CA8C9B;AA9CD,8BA8CC"}
1
+ {"version":3,"file":"BaseCurve.js","sourceRoot":"","sources":["../../../../src/domain/curves/BaseCurve.ts"],"names":[],"mappings":";;;AAIA,MAAsB,SAAS;CA2C9B;AA3CD,8BA2CC"}
@@ -1,16 +1,17 @@
1
1
  import BigNumber from 'bignumber.js';
2
2
  import { BaseCurve } from './BaseCurve';
3
- import { CurveDefaults } from './types';
3
+ import { CalculatePriceOptions, CurveDefaults } from './types';
4
4
  export declare class LinearCurveV1 extends BaseCurve {
5
5
  dynamicThreshold: number;
6
6
  maxThreshold: number;
7
+ curveLimit: number;
7
8
  readonly curveDefaults: CurveDefaults;
8
9
  constructor();
9
- calculateCostForNTokens(nAmount: bigint, curvePosition: bigint, totalSupply: bigint, decimalNr: number, collateralThreshold: bigint, collateralDecimalsNr: number): bigint | undefined;
10
- tokensToMigrate(curveAllocation: bigint, totalSupply: bigint, decimalsNr: number, collateralThreshold: bigint, collateralDecimalsNr: number): bigint | undefined;
10
+ calculateCostForNTokens(options: CalculatePriceOptions): bigint | undefined;
11
+ tokensToMigrate(coefA: BigNumber, coefB: BigNumber, allocation: bigint, decimalsNr: number, migrationFee: number): bigint | undefined;
11
12
  tokensToBurn(totalSupply: bigint, allocation: bigint, tokensToMigrate: bigint): bigint | undefined;
12
13
  migrationFee(): bigint;
13
- calculateCurvePrice(curvePosition: bigint, totalSupply: bigint, decimalNr: number, collateralThreshold: bigint, collateralDecimalsNr: number): bigint | undefined;
14
- getCoefA(totalSupply: bigint, decimalNr: number, collateralThreshold: bigint, collateralDecimalsNr: number): BigNumber;
14
+ calculateCurvePrice(coefA: BigNumber, coefB: BigNumber, curvePosition: bigint, collateralDecimals: number): bigint | undefined;
15
+ getCoefA(coefB: BigNumber, totalSupply: bigint, decimalNr: number, marketcapThreshold: bigint, marketcapDecimalNr: number): BigNumber;
15
16
  getCoefB(collateralDecimalsNr: number): BigNumber;
16
17
  }
@@ -12,6 +12,7 @@ class LinearCurveV1 extends BaseCurve_1.BaseCurve {
12
12
  super();
13
13
  this.dynamicThreshold = 55;
14
14
  this.maxThreshold = 65;
15
+ this.curveLimit = 3300;
15
16
  this.curveDefaults = {
16
17
  tokenDecimals: 9,
17
18
  type: constants_1.CurveType.LINEAR_V1,
@@ -20,48 +21,50 @@ class LinearCurveV1 extends BaseCurve_1.BaseCurve {
20
21
  minAllocationTokenAmount: (BigInt(1e18) * BigInt(this.dynamicThreshold)) / 100n,
21
22
  maxAllocationTokenAmount: (BigInt(1e18) * BigInt(this.maxThreshold)) / 100n,
22
23
  marketCapThreshold: 500n * BigInt(1e9),
24
+ address: '11111111111111111111111111111111',
23
25
  };
24
26
  this.curveType = constants_1.CurveType.LINEAR_V1;
25
27
  }
26
- calculateCostForNTokens(nAmount, curvePosition, totalSupply, decimalNr, collateralThreshold, collateralDecimalsNr) {
27
- const coefA = this.getCoefA(totalSupply, decimalNr, collateralThreshold, collateralDecimalsNr);
28
- const decimals = new bignumber_js_1.default(10).pow(decimalNr);
29
- const collateralDecimalValue = new bignumber_js_1.default(10).pow(collateralDecimalsNr);
30
- const coefficientB = this.getCoefB(collateralDecimalsNr);
31
- const n = new bignumber_js_1.default(nAmount.toString()).div(decimals);
32
- const m = new bignumber_js_1.default(curvePosition.toString()).div(decimals);
33
- const cost = coefA
28
+ calculateCostForNTokens(options) {
29
+ const { coefA, coefB, nAmount, curvePosition, decimalsNr, collateralDecimalsNr, } = options;
30
+ const tokenDecimals = new bignumber_js_1.default(10).pow(decimalsNr);
31
+ const collateralDecimals = new bignumber_js_1.default(10).pow(collateralDecimalsNr);
32
+ const n = new bignumber_js_1.default(nAmount.toString()).dividedBy(tokenDecimals);
33
+ const m = new bignumber_js_1.default(curvePosition.toString()).dividedBy(tokenDecimals);
34
+ const two = new bignumber_js_1.default(2);
35
+ const half = new bignumber_js_1.default(0.5);
36
+ const result = half
37
+ .multipliedBy(coefA)
34
38
  .multipliedBy(n)
35
- .multipliedBy(new bignumber_js_1.default(2).multipliedBy(m).plus(n))
36
- .plus(coefficientB.multipliedBy(n))
37
- .multipliedBy(collateralDecimalValue);
39
+ .multipliedBy(two.multipliedBy(m).plus(n))
40
+ .plus(coefB.multipliedBy(n))
41
+ .multipliedBy(collateralDecimals);
38
42
  try {
39
- return BigInt(cost.toFixed(0));
43
+ return BigInt(result.toFixed(0));
40
44
  }
41
- catch (error) {
45
+ catch (e) {
42
46
  return undefined;
43
47
  }
44
48
  }
45
- tokensToMigrate(curveAllocation, totalSupply, decimalsNr, collateralThreshold, collateralDecimalsNr) {
46
- const coefA = this.getCoefA(totalSupply, decimalsNr, collateralThreshold, collateralDecimalsNr);
49
+ tokensToMigrate(coefA, coefB, allocation, decimalsNr, migrationFee) {
50
+ const decimalsPow = new bignumber_js_1.default(10).pow(decimalsNr);
51
+ const curveAllocationNormalized = new bignumber_js_1.default(allocation.toString()).dividedBy(decimalsPow);
52
+ const feeInCollateral = new bignumber_js_1.default(migrationFee).dividedBy(decimalsPow);
53
+ const half = new bignumber_js_1.default(0.5);
54
+ const numerator = half
55
+ .multipliedBy(coefA)
56
+ .multipliedBy(curveAllocationNormalized)
57
+ .multipliedBy(curveAllocationNormalized)
58
+ .plus(coefB.multipliedBy(curveAllocationNormalized))
59
+ .minus(feeInCollateral);
60
+ const denominator = coefA
61
+ .multipliedBy(curveAllocationNormalized)
62
+ .plus(coefB);
63
+ const result = numerator.dividedBy(denominator).multipliedBy(decimalsPow);
47
64
  try {
48
- const decimals = new bignumber_js_1.default(10).pow(decimalsNr);
49
- const collateralDecimals = new bignumber_js_1.default(10).pow(collateralDecimalsNr);
50
- const coefficientB = this.getCoefB(collateralDecimalsNr);
51
- const curveAllocationNormalized = new bignumber_js_1.default(curveAllocation.toString()).div(decimals);
52
- const feeInSol = new bignumber_js_1.default(this.migrationFee().toString()).div(collateralDecimals);
53
- const numerator = new bignumber_js_1.default(5)
54
- .multipliedBy(coefA)
55
- .multipliedBy(curveAllocationNormalized)
56
- .multipliedBy(curveAllocationNormalized)
57
- .plus(coefficientB.multipliedBy(curveAllocationNormalized))
58
- .minus(feeInSol);
59
- const denominator = coefA
60
- .multipliedBy(curveAllocationNormalized)
61
- .plus(coefficientB);
62
- return BigInt(numerator.div(denominator).multipliedBy(decimals).toFixed(0));
65
+ return BigInt(result.toFixed(0));
63
66
  }
64
- catch (error) {
67
+ catch (e) {
65
68
  return undefined;
66
69
  }
67
70
  }
@@ -69,48 +72,42 @@ class LinearCurveV1 extends BaseCurve_1.BaseCurve {
69
72
  if (totalSupply < allocation) {
70
73
  return undefined;
71
74
  }
72
- const remainingSupply = totalSupply - allocation;
73
- if (remainingSupply < tokensToMigrate) {
75
+ const remaining_supply = totalSupply - allocation;
76
+ if (remaining_supply < tokensToMigrate) {
74
77
  return undefined;
75
78
  }
76
- return remainingSupply - tokensToMigrate;
79
+ return remaining_supply - tokensToMigrate;
77
80
  }
78
81
  migrationFee() {
79
82
  return BigInt(2000000000);
80
83
  }
81
- calculateCurvePrice(curvePosition, totalSupply, decimalNr, collateralThreshold, collateralDecimalsNr) {
82
- const coefA = this.getCoefA(totalSupply, decimalNr, collateralThreshold, collateralDecimalsNr);
83
- const decimals = new bignumber_js_1.default(10).pow(collateralDecimalsNr);
84
+ calculateCurvePrice(coefA, coefB, curvePosition, collateralDecimals) {
85
+ const decimals = new bignumber_js_1.default(10).pow(collateralDecimals);
84
86
  const x = new bignumber_js_1.default(curvePosition.toString());
85
- const coefficientB = this.getCoefB(collateralDecimalsNr);
87
+ const price = coefA
88
+ .multipliedBy(x)
89
+ .dividedBy(decimals)
90
+ .plus(coefB)
91
+ .multipliedBy(decimals);
86
92
  try {
87
- const price = coefA
88
- .multipliedBy(x)
89
- .div(decimals)
90
- .plus(coefficientB)
91
- .multipliedBy(decimals);
92
93
  return BigInt(price.toFixed(0));
93
94
  }
94
- catch (error) {
95
+ catch (e) {
95
96
  return undefined;
96
97
  }
97
98
  }
98
- getCoefA(totalSupply, decimalNr, collateralThreshold, collateralDecimalsNr) {
99
- const decimals = new bignumber_js_1.default(10).pow(decimalNr);
100
- const collateralDecimals = new bignumber_js_1.default(10).pow(collateralDecimalsNr);
101
- const coefficientB = this.getCoefB(collateralDecimalsNr);
102
- const dynamicThreshold = new bignumber_js_1.default(this.dynamicThreshold.toString()).div(100);
103
- const dynamicThresholdInTokens = new bignumber_js_1.default(totalSupply.toString())
99
+ getCoefA(coefB, totalSupply, decimalNr, marketcapThreshold, marketcapDecimalNr) {
100
+ const tokenDecimals = new bignumber_js_1.default(10).pow(decimalNr);
101
+ const marketcapDecimals = new bignumber_js_1.default(10).pow(marketcapDecimalNr);
102
+ const dynamicThreshold = new bignumber_js_1.default(this.dynamicThreshold.toString()).dividedBy(100);
103
+ const dynamicThresholdInWholeUnit = new bignumber_js_1.default(totalSupply.toString())
104
104
  .multipliedBy(dynamicThreshold)
105
- .div(decimals);
106
- const collateralThresholdInSol = new bignumber_js_1.default(collateralThreshold.toString()).div(collateralDecimals);
107
- const numerator = new bignumber_js_1.default(2)
108
- .multipliedBy(collateralThresholdInSol)
109
- .minus(new bignumber_js_1.default(2)
110
- .multipliedBy(coefficientB)
111
- .multipliedBy(dynamicThresholdInTokens));
112
- const denominator = dynamicThresholdInTokens;
113
- return numerator.div(denominator).div(denominator);
105
+ .dividedBy(tokenDecimals);
106
+ const marketcapThresholdInWholeUnit = new bignumber_js_1.default(marketcapThreshold.toString()).dividedBy(marketcapDecimals);
107
+ return marketcapThresholdInWholeUnit
108
+ .dividedBy(dynamicThresholdInWholeUnit)
109
+ .minus(coefB)
110
+ .dividedBy(dynamicThresholdInWholeUnit);
114
111
  }
115
112
  getCoefB(collateralDecimalsNr) {
116
113
  return new bignumber_js_1.default(1).dividedBy(new bignumber_js_1.default(10).pow(collateralDecimalsNr));
@@ -1 +1 @@
1
- {"version":3,"file":"LinearCurveV1.js","sourceRoot":"","sources":["../../../../src/domain/curves/LinearCurveV1.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LinearCurveV1.js","sourceRoot":"","sources":["../../../../src/domain/curves/LinearCurveV1.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { CurveType } from '../constants';
2
+ import { BaseCurve } from './BaseCurve';
3
+ export declare const getCurve: (curveType: CurveType) => BaseCurve;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCurve = void 0;
4
+ const constants_1 = require("../constants");
5
+ const LinearCurveV1_1 = require("./LinearCurveV1");
6
+ const getCurve = (curveType) => {
7
+ if (curveType === constants_1.CurveType.LINEAR_V1) {
8
+ return new LinearCurveV1_1.LinearCurveV1();
9
+ }
10
+ throw new Error('Curve type not supported');
11
+ };
12
+ exports.getCurve = getCurve;
13
+ //# sourceMappingURL=getCurve.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCurve.js","sourceRoot":"","sources":["../../../../src/domain/curves/getCurve.ts"],"names":[],"mappings":";;;AAAA,4CAAyC;AAEzC,mDAAgD;AAEzC,MAAM,QAAQ,GAAG,CAAC,SAAoB,EAAa,EAAE;IAC1D,IAAI,SAAS,KAAK,qBAAS,CAAC,SAAS,EAAE;QACrC,OAAO,IAAI,6BAAa,EAAE,CAAC;KAC5B;IACD,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;AAC9C,CAAC,CAAC;AALW,QAAA,QAAQ,YAKnB"}
@@ -1,3 +1,4 @@
1
1
  export * from './BaseCurve';
2
2
  export * from './LinearCurveV1';
3
3
  export * from './types';
4
+ export * from './getCurve';
@@ -17,4 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./BaseCurve"), exports);
18
18
  __exportStar(require("./LinearCurveV1"), exports);
19
19
  __exportStar(require("./types"), exports);
20
+ __exportStar(require("./getCurve"), exports);
20
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/domain/curves/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,kDAAgC;AAChC,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/domain/curves/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,kDAAgC;AAChC,0CAAwB;AACxB,6CAA2B"}
@@ -4,15 +4,21 @@ const LinearCurveV1_1 = require("../LinearCurveV1");
4
4
  describe('LinearCurveV1', () => {
5
5
  let curve;
6
6
  const totalSupply = BigInt((1e18).toString());
7
- const decimalNr = 9;
8
- const collateralThreshold = BigInt(200e9);
9
- const collateralDecimals = 9;
7
+ const decimalsNr = 9;
8
+ const marketcapThreshold = BigInt(500e9);
9
+ const marketcapDecimalsNr = 9;
10
+ const collateralDecimalsNr = 9;
11
+ const migrationFee = 2;
12
+ let coefA;
13
+ let coefB;
10
14
  beforeAll(() => {
11
15
  curve = new LinearCurveV1_1.LinearCurveV1();
12
16
  });
13
- describe('getCoeeficientA', () => {
14
- it('should get coefficient a value', () => {
15
- const coefA = curve.getCoefA(totalSupply, decimalNr, collateralThreshold, collateralDecimals);
17
+ describe('getCoeficients', () => {
18
+ it('should get coefficient a and b value', () => {
19
+ coefB = curve.getCoefB(collateralDecimalsNr);
20
+ expect(coefB.toNumber()).toBe(1e-9);
21
+ coefA = curve.getCoefA(coefB, totalSupply, decimalsNr, marketcapThreshold, marketcapDecimalsNr);
16
22
  expect(coefA.toNumber()).toBeGreaterThan(1e-15);
17
23
  expect(coefA.toNumber()).toBeLessThan(2e-15);
18
24
  });
@@ -21,22 +27,21 @@ describe('LinearCurveV1', () => {
21
27
  it('should calculate the correct cost for 1e6 tokens', () => {
22
28
  const nAmount = BigInt(1e12);
23
29
  const curvePosition = BigInt(0);
24
- const expectedCost = curve.calculateCostForNTokens(nAmount, curvePosition, totalSupply, decimalNr, collateralThreshold, collateralDecimals);
30
+ const expectedCost = curve.calculateCostForNTokens({
31
+ coefA,
32
+ coefB,
33
+ nAmount,
34
+ curvePosition,
35
+ decimalsNr,
36
+ collateralDecimalsNr,
37
+ });
25
38
  expect(expectedCost).toBe(BigInt(1001));
26
39
  });
27
40
  });
28
- describe('tokensToBurn', () => {
29
- it('should calculate the correct tokens to burn after migration', () => {
30
- const allocation = BigInt(1e12);
31
- const tokensToMigrate = BigInt(2e17);
32
- const expectedBurn = curve.tokensToBurn(totalSupply, allocation, tokensToMigrate);
33
- expect(expectedBurn).toBeDefined();
34
- });
35
- });
36
41
  describe('tokensToMigrate', () => {
37
42
  it('should calculate the correct tokens to migrate based on allocation', () => {
38
43
  const curveAllocation = BigInt(5.5e17);
39
- const expectedMigrate = curve.tokensToMigrate(curveAllocation, totalSupply, decimalNr, collateralThreshold, collateralDecimals);
44
+ const expectedMigrate = curve.tokensToMigrate(coefA, coefB, curveAllocation, decimalsNr, migrationFee);
40
45
  expect(expectedMigrate).toBeDefined();
41
46
  });
42
47
  });
@@ -1 +1 @@
1
- {"version":3,"file":"LinearCurveV1.spec.js","sourceRoot":"","sources":["../../../../../src/domain/curves/tests/LinearCurveV1.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LinearCurveV1.spec.js","sourceRoot":"","sources":["../../../../../src/domain/curves/tests/LinearCurveV1.spec.ts"],"names":[],"mappings":";;AACA,oDAAiD;AAEjD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,IAAI,KAAoB,CAAC;IACzB,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,CAAC,CAAC;IACrB,MAAM,kBAAkB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,mBAAmB,GAAG,CAAC,CAAC;IAC9B,MAAM,oBAAoB,GAAG,CAAC,CAAC;IAC/B,MAAM,YAAY,GAAG,CAAC,CAAC;IAEvB,IAAI,KAAgB,CAAC;IACrB,IAAI,KAAgB,CAAC;IAErB,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,GAAG,IAAI,6BAAa,EAAE,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;YAC7C,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEpC,KAAK,GAAG,KAAK,CAAC,QAAQ,CACpB,KAAK,EACL,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,mBAAmB,CACpB,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAChD,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;YAC1D,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAC7B,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAChC,MAAM,YAAY,GAAG,KAAK,CAAC,uBAAuB,CAAC;gBACjD,KAAK;gBACL,KAAK;gBACL,OAAO;gBACP,aAAa;gBACb,UAAU;gBACV,oBAAoB;aACrB,CAAC,CAAC;YACH,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;YAC5E,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YACvC,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,CAC3C,KAAK,EACL,KAAK,EACL,eAAe,EACf,UAAU,EACV,YAAY,CACb,CAAC;YACF,MAAM,CAAC,eAAe,CAAC,CAAC,WAAW,EAAE,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;YACrE,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YACvC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CACrC,WAAW,EACX,UAAU,EACV,eAAe,CAChB,CAAC;YACF,MAAM,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import BigNumber from 'bignumber.js';
1
2
  import { CurveType, DefaultCurrencies } from '../constants';
2
3
  export declare type CurveDefaults = {
3
4
  tokenDecimals: number;
@@ -7,6 +8,7 @@ export declare type CurveDefaults = {
7
8
  minAllocationTokenAmount: bigint;
8
9
  maxAllocationTokenAmount: bigint;
9
10
  marketCapThreshold: bigint;
11
+ address: string;
10
12
  };
11
13
  export declare enum ContractCurrency {
12
14
  SOL = 0
@@ -16,3 +18,11 @@ export declare enum ContractCurveType {
16
18
  }
17
19
  export declare const toContractCurrency: (currency: DefaultCurrencies) => ContractCurrency;
18
20
  export declare const toContractCurveType: (curveType: CurveType) => ContractCurveType;
21
+ export interface CalculatePriceOptions {
22
+ coefA: BigNumber;
23
+ coefB: BigNumber;
24
+ nAmount: bigint;
25
+ curvePosition: bigint;
26
+ decimalsNr: number;
27
+ collateralDecimalsNr: number;
28
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/domain/curves/types.ts"],"names":[],"mappings":";;;AAAA,4CAA4D;AAY5D,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IAC1B,qDAAO,CAAA;AACT,CAAC,EAFW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAE3B;AAED,IAAY,iBAEX;AAFD,WAAY,iBAAiB;IAC3B,mEAAa,CAAA;AACf,CAAC,EAFW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAE5B;AAEM,MAAM,kBAAkB,GAAG,CAChC,QAA2B,EACT,EAAE;IACpB,QAAQ,QAAQ,EAAE;QAChB,KAAK,6BAAiB,CAAC,GAAG;YACxB,OAAO,gBAAgB,CAAC,GAAG,CAAC;QAC9B;YACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,EAAE,CAAC,CAAC;KACtD;AACH,CAAC,CAAC;AATW,QAAA,kBAAkB,sBAS7B;AAEK,MAAM,mBAAmB,GAAG,CACjC,SAAoB,EACD,EAAE;IACrB,QAAQ,SAAS,EAAE;QACjB,KAAK,qBAAS,CAAC,SAAS;YACtB,OAAO,iBAAiB,CAAC,SAAS,CAAC;QACrC;YACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC;KACvD;AACH,CAAC,CAAC;AATW,QAAA,mBAAmB,uBAS9B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/domain/curves/types.ts"],"names":[],"mappings":";;;AACA,4CAA4D;AAa5D,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IAC1B,qDAAO,CAAA;AACT,CAAC,EAFW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAE3B;AAED,IAAY,iBAEX;AAFD,WAAY,iBAAiB;IAC3B,mEAAa,CAAA;AACf,CAAC,EAFW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAE5B;AAEM,MAAM,kBAAkB,GAAG,CAChC,QAA2B,EACT,EAAE;IACpB,QAAQ,QAAQ,EAAE;QAChB,KAAK,6BAAiB,CAAC,GAAG;YACxB,OAAO,gBAAgB,CAAC,GAAG,CAAC;QAC9B;YACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,EAAE,CAAC,CAAC;KACtD;AACH,CAAC,CAAC;AATW,QAAA,kBAAkB,sBAS7B;AAEK,MAAM,mBAAmB,GAAG,CACjC,SAAoB,EACD,EAAE;IACrB,QAAQ,SAAS,EAAE;QACjB,KAAK,qBAAS,CAAC,SAAS;YACtB,OAAO,iBAAiB,CAAC,SAAS,CAAC;QACrC;YACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC;KACvD;AACH,CAAC,CAAC;AATW,QAAA,mBAAmB,uBAS9B"}
@@ -1,6 +1,5 @@
1
1
  export declare class BuyTxPrepareDto {
2
2
  creatorPK: string;
3
3
  amount: string;
4
- collateralAmount: string;
5
4
  slippageBps: number;
6
5
  }
@@ -21,16 +21,9 @@ __decorate([
21
21
  ], BuyTxPrepareDto.prototype, "creatorPK", void 0);
22
22
  __decorate([
23
23
  (0, class_transformer_1.Transform)(({ value }) => BigInt(value)),
24
- (0, class_validator_1.IsString)(),
25
24
  (0, class_validator_1.IsNotEmpty)(),
26
25
  __metadata("design:type", String)
27
26
  ], BuyTxPrepareDto.prototype, "amount", void 0);
28
- __decorate([
29
- (0, class_transformer_1.Transform)(({ value }) => BigInt(value)),
30
- (0, class_validator_1.IsString)(),
31
- (0, class_validator_1.IsNotEmpty)(),
32
- __metadata("design:type", String)
33
- ], BuyTxPrepareDto.prototype, "collateralAmount", void 0);
34
27
  __decorate([
35
28
  (0, class_validator_1.IsNumber)(),
36
29
  (0, class_validator_1.IsNotEmpty)(),
@@ -1 +1 @@
1
- {"version":3,"file":"BuyTxPrepare.dto.js","sourceRoot":"","sources":["../../../../../../../src/domain/model/buy/prepare/dtos/BuyTxPrepare.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAiE;AACjE,yDAA8C;AAE9C,MAAa,eAAe;CAkB3B;AAjBC;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;kDACK;AAElB;IAAC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;+CACE;AAEf;IAAC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;yDACY;AAEzB;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;oDACO;AAjBtB,0CAkBC"}
1
+ {"version":3,"file":"BuyTxPrepare.dto.js","sourceRoot":"","sources":["../../../../../../../src/domain/model/buy/prepare/dtos/BuyTxPrepare.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAiE;AACjE,yDAA8C;AAE9C,MAAa,eAAe;CAY3B;AAXC;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;kDACK;AAElB;IAAC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvC,IAAA,4BAAU,GAAE;;+CACE;AAEf;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;oDACO;AAXtB,0CAYC"}
@@ -9,4 +9,5 @@ export declare class CreateCurveDto {
9
9
  marketCapThreshold: bigint;
10
10
  marketCapCurrencyId: string;
11
11
  collateralCurrencyId: string;
12
+ address: string;
12
13
  }
@@ -56,5 +56,10 @@ __decorate([
56
56
  (0, class_validator_1.IsNotEmpty)(),
57
57
  __metadata("design:type", String)
58
58
  ], CreateCurveDto.prototype, "collateralCurrencyId", void 0);
59
+ __decorate([
60
+ (0, class_validator_1.IsString)(),
61
+ (0, class_validator_1.IsNotEmpty)(),
62
+ __metadata("design:type", String)
63
+ ], CreateCurveDto.prototype, "address", void 0);
59
64
  exports.CreateCurveDto = CreateCurveDto;
60
65
  //# sourceMappingURL=CreateCurve.dto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreateCurve.dto.js","sourceRoot":"","sources":["../../../../../../src/domain/model/curve/dtos/CreateCurve.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAyE;AACzE,kDAA+C;AAE/C,MAAa,cAAc;CAiC1B;AAhCC;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,wBAAM,EAAC,qBAAS,CAAC;IACjB,IAAA,4BAAU,GAAE;;4CACG;AAEhB;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;8CACE;AAEf;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;8CACE;AAEf;IAAC,IAAA,4BAAU,GAAE;;mDACO;AAEpB;IAAC,IAAA,4BAAU,GAAE;;gEACoB;AAEjC;IAAC,IAAA,4BAAU,GAAE;;gEACoB;AAEjC;IAAC,IAAA,4BAAU,GAAE;;0DACc;AAE3B;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;2DACe;AAE5B;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;4DACgB;AAhC/B,wCAiCC"}
1
+ {"version":3,"file":"CreateCurve.dto.js","sourceRoot":"","sources":["../../../../../../src/domain/model/curve/dtos/CreateCurve.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAyE;AACzE,kDAA+C;AAE/C,MAAa,cAAc;CAqC1B;AApCC;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,wBAAM,EAAC,qBAAS,CAAC;IACjB,IAAA,4BAAU,GAAE;;4CACG;AAEhB;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;8CACE;AAEf;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;8CACE;AAEf;IAAC,IAAA,4BAAU,GAAE;;mDACO;AAEpB;IAAC,IAAA,4BAAU,GAAE;;gEACoB;AAEjC;IAAC,IAAA,4BAAU,GAAE;;gEACoB;AAEjC;IAAC,IAAA,4BAAU,GAAE;;0DACc;AAE3B;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;2DACe;AAE5B;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;4DACgB;AAE7B;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;+CACG;AApClB,wCAqCC"}
@@ -8,6 +8,7 @@ export declare class Curve extends Entity {
8
8
  marketCapThreshold: bigint;
9
9
  type: CurveType;
10
10
  symbol: string;
11
+ address: string;
11
12
  feeBps: number;
12
13
  marketCapCurrency: BaseCurrency;
13
14
  collateralCurrency: BaseCurrency;
@@ -1 +1 @@
1
- {"version":3,"file":"Curve.entity.js","sourceRoot":"","sources":["../../../../../../src/domain/model/curve/entities/Curve.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAA8C;AAC9C,yCAAsC;AAItC,MAAa,KAAM,SAAQ,eAAM;CAsBhC;AArBC;IAAC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;0CACpB;AAEpB;IAAC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;uDACP;AAEjC;IAAC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;uDACP;AAEjC;IAAC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;iDACb;AAX7B,sBAsBC"}
1
+ {"version":3,"file":"Curve.entity.js","sourceRoot":"","sources":["../../../../../../src/domain/model/curve/entities/Curve.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAA8C;AAC9C,yCAAsC;AAItC,MAAa,KAAM,SAAQ,eAAM;CAwBhC;AAvBC;IAAC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;0CACpB;AAEpB;IAAC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;uDACP;AAEjC;IAAC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;uDACP;AAEjC;IAAC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;iDACb;AAX7B,sBAwBC"}
@@ -1,4 +1,5 @@
1
1
  export interface TxTokenPayload {
2
+ pairId: string;
2
3
  txId: string;
3
4
  sessionHash: string;
4
5
  txHash: string;