hedge-web3 0.2.15 → 0.2.18

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.
@@ -1756,7 +1756,7 @@ export declare type Vault = {
1756
1756
  "args": [];
1757
1757
  },
1758
1758
  {
1759
- "name": "adminResetVaultPointers";
1759
+ "name": "psmCreate";
1760
1760
  "accounts": [
1761
1761
  {
1762
1762
  "name": "payer";
@@ -1769,37 +1769,245 @@ export declare type Vault = {
1769
1769
  "isSigner": false;
1770
1770
  },
1771
1771
  {
1772
- "name": "vaultAccount";
1772
+ "name": "psmAccount";
1773
1773
  "isMut": true;
1774
1774
  "isSigner": false;
1775
1775
  },
1776
1776
  {
1777
- "name": "vaultAssociatedTokenAccount";
1777
+ "name": "collateralMint";
1778
+ "isMut": false;
1779
+ "isSigner": false;
1780
+ },
1781
+ {
1782
+ "name": "systemProgram";
1783
+ "isMut": false;
1784
+ "isSigner": false;
1785
+ }
1786
+ ];
1787
+ "args": [
1788
+ {
1789
+ "name": "mintFee";
1790
+ "type": "u64";
1791
+ },
1792
+ {
1793
+ "name": "redeemFee";
1794
+ "type": "u64";
1795
+ },
1796
+ {
1797
+ "name": "debtLimit";
1798
+ "type": "u64";
1799
+ },
1800
+ {
1801
+ "name": "minSwap";
1802
+ "type": "u64";
1803
+ },
1804
+ {
1805
+ "name": "overrideCurrentTime";
1806
+ "type": "i64";
1807
+ }
1808
+ ];
1809
+ },
1810
+ {
1811
+ "name": "psmEditAccount";
1812
+ "accounts": [
1813
+ {
1814
+ "name": "payer";
1815
+ "isMut": true;
1816
+ "isSigner": true;
1817
+ },
1818
+ {
1819
+ "name": "vaultSystemState";
1778
1820
  "isMut": true;
1779
1821
  "isSigner": false;
1780
1822
  },
1781
1823
  {
1782
- "name": "vaultTypeAccount";
1824
+ "name": "psmAccount";
1783
1825
  "isMut": true;
1784
1826
  "isSigner": false;
1785
1827
  },
1786
1828
  {
1787
- "name": "vaultTypeAssociatedTokenAccount";
1829
+ "name": "collateralMint";
1830
+ "isMut": false;
1831
+ "isSigner": false;
1832
+ },
1833
+ {
1834
+ "name": "systemProgram";
1835
+ "isMut": false;
1836
+ "isSigner": false;
1837
+ }
1838
+ ];
1839
+ "args": [
1840
+ {
1841
+ "name": "mintFee";
1842
+ "type": "u64";
1843
+ },
1844
+ {
1845
+ "name": "redeemFee";
1846
+ "type": "u64";
1847
+ },
1848
+ {
1849
+ "name": "debtLimit";
1850
+ "type": "u64";
1851
+ },
1852
+ {
1853
+ "name": "minSwap";
1854
+ "type": "u64";
1855
+ },
1856
+ {
1857
+ "name": "overrideCurrentTime";
1858
+ "type": "i64";
1859
+ }
1860
+ ];
1861
+ },
1862
+ {
1863
+ "name": "psmMintUsh";
1864
+ "accounts": [
1865
+ {
1866
+ "name": "payer";
1867
+ "isMut": true;
1868
+ "isSigner": true;
1869
+ },
1870
+ {
1871
+ "name": "vaultSystemState";
1872
+ "isMut": true;
1873
+ "isSigner": false;
1874
+ },
1875
+ {
1876
+ "name": "feePool";
1877
+ "isMut": true;
1878
+ "isSigner": false;
1879
+ },
1880
+ {
1881
+ "name": "feePoolAssociatedUshTokenAccount";
1882
+ "isMut": true;
1883
+ "isSigner": false;
1884
+ },
1885
+ {
1886
+ "name": "psmAccount";
1887
+ "isMut": true;
1888
+ "isSigner": false;
1889
+ },
1890
+ {
1891
+ "name": "psmAccountAta";
1892
+ "isMut": true;
1893
+ "isSigner": false;
1894
+ },
1895
+ {
1896
+ "name": "ownerUshAccount";
1897
+ "isMut": true;
1898
+ "isSigner": false;
1899
+ },
1900
+ {
1901
+ "name": "ownerCollateralAccount";
1788
1902
  "isMut": true;
1789
1903
  "isSigner": false;
1790
1904
  },
1791
1905
  {
1792
1906
  "name": "collateralMint";
1907
+ "isMut": false;
1908
+ "isSigner": false;
1909
+ },
1910
+ {
1911
+ "name": "ushMint";
1793
1912
  "isMut": true;
1794
1913
  "isSigner": false;
1795
1914
  },
1915
+ {
1916
+ "name": "systemProgram";
1917
+ "isMut": false;
1918
+ "isSigner": false;
1919
+ },
1796
1920
  {
1797
1921
  "name": "tokenProgram";
1798
1922
  "isMut": false;
1799
1923
  "isSigner": false;
1800
1924
  }
1801
1925
  ];
1802
- "args": [];
1926
+ "args": [
1927
+ {
1928
+ "name": "collateralAmount";
1929
+ "type": "u64";
1930
+ },
1931
+ {
1932
+ "name": "overrideCurrentTime";
1933
+ "type": "i64";
1934
+ }
1935
+ ];
1936
+ },
1937
+ {
1938
+ "name": "psmRedeemUsh";
1939
+ "accounts": [
1940
+ {
1941
+ "name": "payer";
1942
+ "isMut": true;
1943
+ "isSigner": true;
1944
+ },
1945
+ {
1946
+ "name": "vaultSystemState";
1947
+ "isMut": true;
1948
+ "isSigner": false;
1949
+ },
1950
+ {
1951
+ "name": "feePool";
1952
+ "isMut": true;
1953
+ "isSigner": false;
1954
+ },
1955
+ {
1956
+ "name": "feePoolAssociatedUshTokenAccount";
1957
+ "isMut": true;
1958
+ "isSigner": false;
1959
+ },
1960
+ {
1961
+ "name": "psmAccount";
1962
+ "isMut": true;
1963
+ "isSigner": false;
1964
+ },
1965
+ {
1966
+ "name": "psmAccountAta";
1967
+ "isMut": true;
1968
+ "isSigner": false;
1969
+ },
1970
+ {
1971
+ "name": "ownerUshAccount";
1972
+ "isMut": true;
1973
+ "isSigner": false;
1974
+ },
1975
+ {
1976
+ "name": "ownerCollateralAccount";
1977
+ "isMut": true;
1978
+ "isSigner": false;
1979
+ },
1980
+ {
1981
+ "name": "collateralMint";
1982
+ "isMut": false;
1983
+ "isSigner": false;
1984
+ },
1985
+ {
1986
+ "name": "ushMint";
1987
+ "isMut": true;
1988
+ "isSigner": false;
1989
+ },
1990
+ {
1991
+ "name": "systemProgram";
1992
+ "isMut": false;
1993
+ "isSigner": false;
1994
+ },
1995
+ {
1996
+ "name": "tokenProgram";
1997
+ "isMut": false;
1998
+ "isSigner": false;
1999
+ }
2000
+ ];
2001
+ "args": [
2002
+ {
2003
+ "name": "ushAmount";
2004
+ "type": "u64";
2005
+ },
2006
+ {
2007
+ "name": "overrideCurrentTime";
2008
+ "type": "i64";
2009
+ }
2010
+ ];
1803
2011
  }
1804
2012
  ];
1805
2013
  "accounts": [
@@ -2031,6 +2239,80 @@ export declare type Vault = {
2031
2239
  ];
2032
2240
  };
2033
2241
  },
2242
+ {
2243
+ "name": "psmAccount";
2244
+ "type": {
2245
+ "kind": "struct";
2246
+ "fields": [
2247
+ {
2248
+ "name": "collateralMint";
2249
+ "type": "publicKey";
2250
+ },
2251
+ {
2252
+ "name": "minCollateralRatio";
2253
+ "type": "u128";
2254
+ },
2255
+ {
2256
+ "name": "mintFee";
2257
+ "type": "u128";
2258
+ },
2259
+ {
2260
+ "name": "redeemFee";
2261
+ "type": "u128";
2262
+ },
2263
+ {
2264
+ "name": "totalFeesAccumulatedUsh";
2265
+ "type": "u128";
2266
+ },
2267
+ {
2268
+ "name": "totalFeesAccumulatedCollateral";
2269
+ "type": "u128";
2270
+ },
2271
+ {
2272
+ "name": "recentPrice";
2273
+ "type": "u128";
2274
+ },
2275
+ {
2276
+ "name": "debtLimit";
2277
+ "type": "u64";
2278
+ },
2279
+ {
2280
+ "name": "deposited";
2281
+ "type": "u64";
2282
+ },
2283
+ {
2284
+ "name": "amountMinted";
2285
+ "type": "u64";
2286
+ },
2287
+ {
2288
+ "name": "minSwap";
2289
+ "type": "u64";
2290
+ },
2291
+ {
2292
+ "name": "timeCreated";
2293
+ "type": "u64";
2294
+ },
2295
+ {
2296
+ "name": "timeLastInteraction";
2297
+ "type": "u64";
2298
+ },
2299
+ {
2300
+ "name": "priceLastUpdatedTimestamp";
2301
+ "type": "u64";
2302
+ },
2303
+ {
2304
+ "name": "psmStatus";
2305
+ "type": {
2306
+ "defined": "PsmStatus";
2307
+ };
2308
+ },
2309
+ {
2310
+ "name": "collateralDecimals";
2311
+ "type": "u8";
2312
+ }
2313
+ ];
2314
+ };
2315
+ },
2034
2316
  {
2035
2317
  "name": "stakingPoolPosition";
2036
2318
  "type": {
@@ -2608,6 +2890,26 @@ export declare type Vault = {
2608
2890
  ];
2609
2891
  };
2610
2892
  },
2893
+ {
2894
+ "name": "PsmStatus";
2895
+ "type": {
2896
+ "kind": "enum";
2897
+ "variants": [
2898
+ {
2899
+ "name": "PsmEnabled";
2900
+ },
2901
+ {
2902
+ "name": "PsmDisabled";
2903
+ },
2904
+ {
2905
+ "name": "MintOnly";
2906
+ },
2907
+ {
2908
+ "name": "RedeemOnly";
2909
+ }
2910
+ ];
2911
+ };
2912
+ },
2611
2913
  {
2612
2914
  "name": "SystemStatus";
2613
2915
  "type": {
@@ -2904,26 +3206,41 @@ export declare type Vault = {
2904
3206
  },
2905
3207
  {
2906
3208
  "code": 6027;
3209
+ "name": "PsmDisabled";
3210
+ "msg": "PSM is currently disabled.";
3211
+ },
3212
+ {
3213
+ "code": 6028;
3214
+ "name": "PsmMaxDebtReached";
3215
+ "msg": "PSM - Max Debt reached";
3216
+ },
3217
+ {
3218
+ "code": 6029;
3219
+ "name": "PsmMinSwapAmount";
3220
+ "msg": "PSM - Need more to swap";
3221
+ },
3222
+ {
3223
+ "code": 6030;
2907
3224
  "name": "UpdateVaultTypeBadMaxDebtExtended";
2908
3225
  "msg": "New Max debt extended value is less than the current debt!";
2909
3226
  },
2910
3227
  {
2911
- "code": 6028;
3228
+ "code": 6031;
2912
3229
  "name": "UpdateVaultTypeNoEnabledOracles";
2913
3230
  "msg": "No Enabled Oracles!";
2914
3231
  },
2915
3232
  {
2916
- "code": 6029;
3233
+ "code": 6032;
2917
3234
  "name": "UpdateVaultTypeDuplicateOraclePriorities";
2918
3235
  "msg": "Duplicate Oracle Priorities";
2919
3236
  },
2920
3237
  {
2921
- "code": 6030;
3238
+ "code": 6033;
2922
3239
  "name": "UpdateVaultTypeInvalidOraclePriority";
2923
3240
  "msg": "Invalid Oracle Priority";
2924
3241
  },
2925
3242
  {
2926
- "code": 6031;
3243
+ "code": 6034;
2927
3244
  "name": "OracleUpdateFailed";
2928
3245
  "msg": "OracleUpdateFailed";
2929
3246
  }
@@ -7,6 +7,8 @@ export * from './instructions/closeLiquidationPoolPosition';
7
7
  export * from './instructions/claimLiquidationPoolPosition';
8
8
  export * from './instructions/closeClaimedLiquidationPoolPosition';
9
9
  export * from './instructions/createVault';
10
+ export * from './instructions/psmMintUsh';
11
+ export * from './instructions/psmRedeemUsh';
10
12
  export * from './instructions/depositVault';
11
13
  export * from './instructions/withdrawVault';
12
14
  export * from './instructions/loanVault';
@@ -0,0 +1,6 @@
1
+ /// <reference types="bn.js" />
2
+ import { BN, Program, Provider } from '@project-serum/anchor';
3
+ import { PublicKey, Signer, TransactionInstruction } from '@solana/web3.js';
4
+ import { Vault } from '../idl/vault';
5
+ export declare function psmMintUsh(program: Program<Vault>, provider: Provider, payer: Signer, collateralMint: PublicKey, collateralAmount: number, overrideTime?: number): Promise<PublicKey>;
6
+ export declare function psmMintUshInstruction(program: Program<Vault>, payerPublicKey: PublicKey, psmAccount: PublicKey, collateralMint: PublicKey, collateralAmount: BN, overrideTime?: number): Promise<TransactionInstruction>;
@@ -0,0 +1,6 @@
1
+ /// <reference types="bn.js" />
2
+ import { BN, Program, Provider } from '@project-serum/anchor';
3
+ import { PublicKey, Signer, TransactionInstruction } from '@solana/web3.js';
4
+ import { Vault } from '../idl/vault';
5
+ export declare function psmRedeemUsh(program: Program<Vault>, provider: Provider, payer: Signer, collateralMint: PublicKey, ushAmount: number, overrideTime?: number): Promise<PublicKey>;
6
+ export declare function psmRedeemUshInstruction(program: Program<Vault>, payerPublicKey: PublicKey, psmAccount: PublicKey, collateralMint: PublicKey, ushAmount: BN, overrideTime?: number): Promise<TransactionInstruction>;