hedge-web3 0.2.16 → 0.2.17

Sign up to get free protection for your applications and to get access to all the features.
@@ -1754,6 +1754,212 @@ export declare type Vault = {
1754
1754
  }
1755
1755
  ];
1756
1756
  "args": [];
1757
+ },
1758
+ {
1759
+ "name": "psmCreate";
1760
+ "accounts": [
1761
+ {
1762
+ "name": "payer";
1763
+ "isMut": true;
1764
+ "isSigner": true;
1765
+ },
1766
+ {
1767
+ "name": "vaultSystemState";
1768
+ "isMut": true;
1769
+ "isSigner": false;
1770
+ },
1771
+ {
1772
+ "name": "psmAccount";
1773
+ "isMut": true;
1774
+ "isSigner": false;
1775
+ },
1776
+ {
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": "collateralDecimals";
1806
+ "type": "u8";
1807
+ },
1808
+ {
1809
+ "name": "overrideCurrentTime";
1810
+ "type": "i64";
1811
+ }
1812
+ ];
1813
+ },
1814
+ {
1815
+ "name": "psmMintUsh";
1816
+ "accounts": [
1817
+ {
1818
+ "name": "payer";
1819
+ "isMut": true;
1820
+ "isSigner": true;
1821
+ },
1822
+ {
1823
+ "name": "vaultSystemState";
1824
+ "isMut": true;
1825
+ "isSigner": false;
1826
+ },
1827
+ {
1828
+ "name": "feePool";
1829
+ "isMut": true;
1830
+ "isSigner": false;
1831
+ },
1832
+ {
1833
+ "name": "feePoolAssociatedUshTokenAccount";
1834
+ "isMut": true;
1835
+ "isSigner": false;
1836
+ },
1837
+ {
1838
+ "name": "psmAccount";
1839
+ "isMut": true;
1840
+ "isSigner": false;
1841
+ },
1842
+ {
1843
+ "name": "psmAccountAta";
1844
+ "isMut": true;
1845
+ "isSigner": false;
1846
+ },
1847
+ {
1848
+ "name": "ownerUshAccount";
1849
+ "isMut": true;
1850
+ "isSigner": false;
1851
+ },
1852
+ {
1853
+ "name": "ownerCollateralAccount";
1854
+ "isMut": true;
1855
+ "isSigner": false;
1856
+ },
1857
+ {
1858
+ "name": "collateralMint";
1859
+ "isMut": false;
1860
+ "isSigner": false;
1861
+ },
1862
+ {
1863
+ "name": "ushMint";
1864
+ "isMut": true;
1865
+ "isSigner": false;
1866
+ },
1867
+ {
1868
+ "name": "systemProgram";
1869
+ "isMut": false;
1870
+ "isSigner": false;
1871
+ },
1872
+ {
1873
+ "name": "tokenProgram";
1874
+ "isMut": false;
1875
+ "isSigner": false;
1876
+ }
1877
+ ];
1878
+ "args": [
1879
+ {
1880
+ "name": "collateralAmount";
1881
+ "type": "u64";
1882
+ },
1883
+ {
1884
+ "name": "overrideCurrentTime";
1885
+ "type": "i64";
1886
+ }
1887
+ ];
1888
+ },
1889
+ {
1890
+ "name": "psmRedeemUsh";
1891
+ "accounts": [
1892
+ {
1893
+ "name": "payer";
1894
+ "isMut": true;
1895
+ "isSigner": true;
1896
+ },
1897
+ {
1898
+ "name": "vaultSystemState";
1899
+ "isMut": true;
1900
+ "isSigner": false;
1901
+ },
1902
+ {
1903
+ "name": "feePool";
1904
+ "isMut": true;
1905
+ "isSigner": false;
1906
+ },
1907
+ {
1908
+ "name": "feePoolAssociatedUshTokenAccount";
1909
+ "isMut": true;
1910
+ "isSigner": false;
1911
+ },
1912
+ {
1913
+ "name": "psmAccount";
1914
+ "isMut": true;
1915
+ "isSigner": false;
1916
+ },
1917
+ {
1918
+ "name": "psmAccountAta";
1919
+ "isMut": true;
1920
+ "isSigner": false;
1921
+ },
1922
+ {
1923
+ "name": "ownerUshAccount";
1924
+ "isMut": true;
1925
+ "isSigner": false;
1926
+ },
1927
+ {
1928
+ "name": "ownerCollateralAccount";
1929
+ "isMut": true;
1930
+ "isSigner": false;
1931
+ },
1932
+ {
1933
+ "name": "collateralMint";
1934
+ "isMut": false;
1935
+ "isSigner": false;
1936
+ },
1937
+ {
1938
+ "name": "ushMint";
1939
+ "isMut": true;
1940
+ "isSigner": false;
1941
+ },
1942
+ {
1943
+ "name": "systemProgram";
1944
+ "isMut": false;
1945
+ "isSigner": false;
1946
+ },
1947
+ {
1948
+ "name": "tokenProgram";
1949
+ "isMut": false;
1950
+ "isSigner": false;
1951
+ }
1952
+ ];
1953
+ "args": [
1954
+ {
1955
+ "name": "ushAmount";
1956
+ "type": "u64";
1957
+ },
1958
+ {
1959
+ "name": "overrideCurrentTime";
1960
+ "type": "i64";
1961
+ }
1962
+ ];
1757
1963
  }
1758
1964
  ];
1759
1965
  "accounts": [
@@ -1985,6 +2191,80 @@ export declare type Vault = {
1985
2191
  ];
1986
2192
  };
1987
2193
  },
2194
+ {
2195
+ "name": "psmAccount";
2196
+ "type": {
2197
+ "kind": "struct";
2198
+ "fields": [
2199
+ {
2200
+ "name": "collateralMint";
2201
+ "type": "publicKey";
2202
+ },
2203
+ {
2204
+ "name": "minCollateralRatio";
2205
+ "type": "u128";
2206
+ },
2207
+ {
2208
+ "name": "mintFee";
2209
+ "type": "u128";
2210
+ },
2211
+ {
2212
+ "name": "redeemFee";
2213
+ "type": "u128";
2214
+ },
2215
+ {
2216
+ "name": "totalFeesAccumulatedUsh";
2217
+ "type": "u128";
2218
+ },
2219
+ {
2220
+ "name": "totalFeesAccumulatedCollateral";
2221
+ "type": "u128";
2222
+ },
2223
+ {
2224
+ "name": "recentPrice";
2225
+ "type": "u128";
2226
+ },
2227
+ {
2228
+ "name": "debtLimit";
2229
+ "type": "u64";
2230
+ },
2231
+ {
2232
+ "name": "deposited";
2233
+ "type": "u64";
2234
+ },
2235
+ {
2236
+ "name": "amountMinted";
2237
+ "type": "u64";
2238
+ },
2239
+ {
2240
+ "name": "minSwap";
2241
+ "type": "u64";
2242
+ },
2243
+ {
2244
+ "name": "timeCreated";
2245
+ "type": "u64";
2246
+ },
2247
+ {
2248
+ "name": "timeLastInteraction";
2249
+ "type": "u64";
2250
+ },
2251
+ {
2252
+ "name": "priceLastUpdatedTimestamp";
2253
+ "type": "u64";
2254
+ },
2255
+ {
2256
+ "name": "psmStatus";
2257
+ "type": {
2258
+ "defined": "PsmStatus";
2259
+ };
2260
+ },
2261
+ {
2262
+ "name": "collateralDecimals";
2263
+ "type": "u8";
2264
+ }
2265
+ ];
2266
+ };
2267
+ },
1988
2268
  {
1989
2269
  "name": "stakingPoolPosition";
1990
2270
  "type": {
@@ -2562,6 +2842,26 @@ export declare type Vault = {
2562
2842
  ];
2563
2843
  };
2564
2844
  },
2845
+ {
2846
+ "name": "PsmStatus";
2847
+ "type": {
2848
+ "kind": "enum";
2849
+ "variants": [
2850
+ {
2851
+ "name": "PsmEnabled";
2852
+ },
2853
+ {
2854
+ "name": "PsmDisabled";
2855
+ },
2856
+ {
2857
+ "name": "MintOnly";
2858
+ },
2859
+ {
2860
+ "name": "RedeemOnly";
2861
+ }
2862
+ ];
2863
+ };
2864
+ },
2565
2865
  {
2566
2866
  "name": "SystemStatus";
2567
2867
  "type": {
@@ -2858,26 +3158,36 @@ export declare type Vault = {
2858
3158
  },
2859
3159
  {
2860
3160
  "code": 6027;
3161
+ "name": "PsmDisabled";
3162
+ "msg": "PSM is currently disabled.";
3163
+ },
3164
+ {
3165
+ "code": 6028;
3166
+ "name": "PsmError";
3167
+ "msg": "PSM error.";
3168
+ },
3169
+ {
3170
+ "code": 6029;
2861
3171
  "name": "UpdateVaultTypeBadMaxDebtExtended";
2862
3172
  "msg": "New Max debt extended value is less than the current debt!";
2863
3173
  },
2864
3174
  {
2865
- "code": 6028;
3175
+ "code": 6030;
2866
3176
  "name": "UpdateVaultTypeNoEnabledOracles";
2867
3177
  "msg": "No Enabled Oracles!";
2868
3178
  },
2869
3179
  {
2870
- "code": 6029;
3180
+ "code": 6031;
2871
3181
  "name": "UpdateVaultTypeDuplicateOraclePriorities";
2872
3182
  "msg": "Duplicate Oracle Priorities";
2873
3183
  },
2874
3184
  {
2875
- "code": 6030;
3185
+ "code": 6032;
2876
3186
  "name": "UpdateVaultTypeInvalidOraclePriority";
2877
3187
  "msg": "Invalid Oracle Priority";
2878
3188
  },
2879
3189
  {
2880
- "code": 6031;
3190
+ "code": 6033;
2881
3191
  "name": "OracleUpdateFailed";
2882
3192
  "msg": "OracleUpdateFailed";
2883
3193
  }
@@ -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>;