@metadaoproject/futarchy 0.4.0-alpha.32 → 0.4.0-alpha.34

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 (109) hide show
  1. package/package.json +1 -1
  2. package/dist/index.d.ts +0 -1
  3. package/dist/index.js +0 -2
  4. package/dist/index.js.map +0 -1
  5. package/dist/v0.3/AmmClient.d.ts +0 -223
  6. package/dist/v0.3/AmmClient.js +0 -186
  7. package/dist/v0.3/AmmClient.js.map +0 -1
  8. package/dist/v0.3/AutocratClient.d.ts +0 -234
  9. package/dist/v0.3/AutocratClient.js +0 -270
  10. package/dist/v0.3/AutocratClient.js.map +0 -1
  11. package/dist/v0.3/ConditionalVaultClient.d.ts +0 -281
  12. package/dist/v0.3/ConditionalVaultClient.js +0 -135
  13. package/dist/v0.3/ConditionalVaultClient.js.map +0 -1
  14. package/dist/v0.3/FutarchyClient.d.ts +0 -26
  15. package/dist/v0.3/FutarchyClient.js +0 -47
  16. package/dist/v0.3/FutarchyClient.js.map +0 -1
  17. package/dist/v0.3/constants.d.ts +0 -9
  18. package/dist/v0.3/constants.js +0 -10
  19. package/dist/v0.3/constants.js.map +0 -1
  20. package/dist/v0.3/index.d.ts +0 -7
  21. package/dist/v0.3/index.js +0 -8
  22. package/dist/v0.3/index.js.map +0 -1
  23. package/dist/v0.3/types/amm.d.ts +0 -542
  24. package/dist/v0.3/types/amm.js +0 -542
  25. package/dist/v0.3/types/amm.js.map +0 -1
  26. package/dist/v0.3/types/autocrat.d.ts +0 -632
  27. package/dist/v0.3/types/autocrat.js +0 -632
  28. package/dist/v0.3/types/autocrat.js.map +0 -1
  29. package/dist/v0.3/types/conditional_vault.d.ts +0 -448
  30. package/dist/v0.3/types/conditional_vault.js +0 -448
  31. package/dist/v0.3/types/conditional_vault.js.map +0 -1
  32. package/dist/v0.3/types/index.d.ts +0 -21
  33. package/dist/v0.3/types/index.js +0 -4
  34. package/dist/v0.3/types/index.js.map +0 -1
  35. package/dist/v0.3/types/utils.d.ts +0 -3
  36. package/dist/v0.3/types/utils.js +0 -2
  37. package/dist/v0.3/types/utils.js.map +0 -1
  38. package/dist/v0.3/utils/ammMath.d.ts +0 -39
  39. package/dist/v0.3/utils/ammMath.js +0 -142
  40. package/dist/v0.3/utils/ammMath.js.map +0 -1
  41. package/dist/v0.3/utils/cu.d.ts +0 -10
  42. package/dist/v0.3/utils/cu.js +0 -11
  43. package/dist/v0.3/utils/cu.js.map +0 -1
  44. package/dist/v0.3/utils/filters.d.ts +0 -3
  45. package/dist/v0.3/utils/filters.js +0 -14
  46. package/dist/v0.3/utils/filters.js.map +0 -1
  47. package/dist/v0.3/utils/index.d.ts +0 -16
  48. package/dist/v0.3/utils/index.js +0 -30
  49. package/dist/v0.3/utils/index.js.map +0 -1
  50. package/dist/v0.3/utils/instruction.d.ts +0 -4
  51. package/dist/v0.3/utils/instruction.js +0 -10
  52. package/dist/v0.3/utils/instruction.js.map +0 -1
  53. package/dist/v0.3/utils/metadata.d.ts +0 -4
  54. package/dist/v0.3/utils/metadata.js +0 -26
  55. package/dist/v0.3/utils/metadata.js.map +0 -1
  56. package/dist/v0.3/utils/pda.d.ts +0 -10
  57. package/dist/v0.3/utils/pda.js +0 -47
  58. package/dist/v0.3/utils/pda.js.map +0 -1
  59. package/dist/v0.4/AmmClient.d.ts +0 -266
  60. package/dist/v0.4/AmmClient.js +0 -186
  61. package/dist/v0.4/AmmClient.js.map +0 -1
  62. package/dist/v0.4/AutocratClient.d.ts +0 -234
  63. package/dist/v0.4/AutocratClient.js +0 -377
  64. package/dist/v0.4/AutocratClient.js.map +0 -1
  65. package/dist/v0.4/ConditionalVaultClient.d.ts +0 -315
  66. package/dist/v0.4/ConditionalVaultClient.js +0 -226
  67. package/dist/v0.4/ConditionalVaultClient.js.map +0 -1
  68. package/dist/v0.4/constants.d.ts +0 -9
  69. package/dist/v0.4/constants.js +0 -10
  70. package/dist/v0.4/constants.js.map +0 -1
  71. package/dist/v0.4/index.d.ts +0 -6
  72. package/dist/v0.4/index.js +0 -7
  73. package/dist/v0.4/index.js.map +0 -1
  74. package/dist/v0.4/types/amm.d.ts +0 -813
  75. package/dist/v0.4/types/amm.js +0 -813
  76. package/dist/v0.4/types/amm.js.map +0 -1
  77. package/dist/v0.4/types/autocrat.d.ts +0 -641
  78. package/dist/v0.4/types/autocrat.js +0 -641
  79. package/dist/v0.4/types/autocrat.js.map +0 -1
  80. package/dist/v0.4/types/conditional_vault.d.ts +0 -920
  81. package/dist/v0.4/types/conditional_vault.js +0 -920
  82. package/dist/v0.4/types/conditional_vault.js.map +0 -1
  83. package/dist/v0.4/types/index.d.ts +0 -30
  84. package/dist/v0.4/types/index.js +0 -7
  85. package/dist/v0.4/types/index.js.map +0 -1
  86. package/dist/v0.4/types/utils.d.ts +0 -3
  87. package/dist/v0.4/types/utils.js +0 -2
  88. package/dist/v0.4/types/utils.js.map +0 -1
  89. package/dist/v0.4/utils/cu.d.ts +0 -10
  90. package/dist/v0.4/utils/cu.js +0 -11
  91. package/dist/v0.4/utils/cu.js.map +0 -1
  92. package/dist/v0.4/utils/filters.d.ts +0 -3
  93. package/dist/v0.4/utils/filters.js +0 -14
  94. package/dist/v0.4/utils/filters.js.map +0 -1
  95. package/dist/v0.4/utils/index.d.ts +0 -16
  96. package/dist/v0.4/utils/index.js +0 -30
  97. package/dist/v0.4/utils/index.js.map +0 -1
  98. package/dist/v0.4/utils/instruction.d.ts +0 -4
  99. package/dist/v0.4/utils/instruction.js +0 -10
  100. package/dist/v0.4/utils/instruction.js.map +0 -1
  101. package/dist/v0.4/utils/metadata.d.ts +0 -4
  102. package/dist/v0.4/utils/metadata.js +0 -26
  103. package/dist/v0.4/utils/metadata.js.map +0 -1
  104. package/dist/v0.4/utils/pda.d.ts +0 -17
  105. package/dist/v0.4/utils/pda.js +0 -75
  106. package/dist/v0.4/utils/pda.js.map +0 -1
  107. package/dist/v0.4/utils/priceMath.d.ts +0 -54
  108. package/dist/v0.4/utils/priceMath.js +0 -116
  109. package/dist/v0.4/utils/priceMath.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metadaoproject/futarchy",
3
- "version": "0.4.0-alpha.32",
3
+ "version": "0.4.0-alpha.34",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
package/dist/index.d.ts DELETED
@@ -1 +0,0 @@
1
- export { sha256 } from "@noble/hashes/sha256";
package/dist/index.js DELETED
@@ -1,2 +0,0 @@
1
- export { sha256 } from "@noble/hashes/sha256";
2
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1,223 +0,0 @@
1
- import { AnchorProvider, IdlTypes, Program } from "@coral-xyz/anchor";
2
- import { AddressLookupTableAccount, PublicKey } from "@solana/web3.js";
3
- import { Amm as AmmIDLType } from "./types/amm.js";
4
- import BN from "bn.js";
5
- import { AmmAccount, LowercaseKeys } from "./types/index.js";
6
- export type SwapType = LowercaseKeys<IdlTypes<AmmIDLType>["SwapType"]>;
7
- export type CreateAmmClientParams = {
8
- provider: AnchorProvider;
9
- ammProgramId?: PublicKey;
10
- };
11
- export declare class AmmClient {
12
- readonly provider: AnchorProvider;
13
- readonly program: Program<AmmIDLType>;
14
- readonly luts: AddressLookupTableAccount[];
15
- constructor(provider: AnchorProvider, ammProgramId: PublicKey, luts: AddressLookupTableAccount[]);
16
- static createClient(createAutocratClientParams: CreateAmmClientParams): AmmClient;
17
- getProgramId(): PublicKey;
18
- createAmm(proposal: PublicKey, baseMint: PublicKey, quoteMint: PublicKey, twapInitialObservation: number, twapMaxObservationChangePerUpdate?: number): Promise<PublicKey>;
19
- createAmmIx(baseMint: PublicKey, quoteMint: PublicKey, twapInitialObservation: BN, twapMaxObservationChangePerUpdate: BN): import("@coral-xyz/anchor/dist/cjs/program/namespace/methods.js").MethodsBuilder<AmmIDLType, {
20
- name: "createAmm";
21
- accounts: [{
22
- name: "user";
23
- isMut: true;
24
- isSigner: true;
25
- }, {
26
- name: "amm";
27
- isMut: true;
28
- isSigner: false;
29
- }, {
30
- name: "lpMint";
31
- isMut: true;
32
- isSigner: false;
33
- }, {
34
- name: "baseMint";
35
- isMut: false;
36
- isSigner: false;
37
- }, {
38
- name: "quoteMint";
39
- isMut: false;
40
- isSigner: false;
41
- }, {
42
- name: "vaultAtaBase";
43
- isMut: true;
44
- isSigner: false;
45
- }, {
46
- name: "vaultAtaQuote";
47
- isMut: true;
48
- isSigner: false;
49
- }, {
50
- name: "associatedTokenProgram";
51
- isMut: false;
52
- isSigner: false;
53
- }, {
54
- name: "tokenProgram";
55
- isMut: false;
56
- isSigner: false;
57
- }, {
58
- name: "systemProgram";
59
- isMut: false;
60
- isSigner: false;
61
- }];
62
- args: [{
63
- name: "args";
64
- type: {
65
- defined: "CreateAmmArgs";
66
- };
67
- }];
68
- } & {
69
- name: "createAmm";
70
- }>;
71
- addLiquidity(amm: PublicKey, quoteAmount?: number, baseAmount?: number): Promise<string | undefined>;
72
- addLiquidityIx(amm: PublicKey, baseMint: PublicKey, quoteMint: PublicKey, quoteAmount: BN, maxBaseAmount: BN, minLpTokens: BN, user?: PublicKey): import("@coral-xyz/anchor/dist/cjs/program/namespace/methods.js").MethodsBuilder<AmmIDLType, {
73
- name: "addLiquidity";
74
- accounts: [{
75
- name: "user";
76
- isMut: true;
77
- isSigner: true;
78
- }, {
79
- name: "amm";
80
- isMut: true;
81
- isSigner: false;
82
- }, {
83
- name: "lpMint";
84
- isMut: true;
85
- isSigner: false;
86
- }, {
87
- name: "userLpAccount";
88
- isMut: true;
89
- isSigner: false;
90
- }, {
91
- name: "userBaseAccount";
92
- isMut: true;
93
- isSigner: false;
94
- }, {
95
- name: "userQuoteAccount";
96
- isMut: true;
97
- isSigner: false;
98
- }, {
99
- name: "vaultAtaBase";
100
- isMut: true;
101
- isSigner: false;
102
- }, {
103
- name: "vaultAtaQuote";
104
- isMut: true;
105
- isSigner: false;
106
- }, {
107
- name: "tokenProgram";
108
- isMut: false;
109
- isSigner: false;
110
- }];
111
- args: [{
112
- name: "args";
113
- type: {
114
- defined: "AddLiquidityArgs";
115
- };
116
- }];
117
- } & {
118
- name: "addLiquidity";
119
- }>;
120
- removeLiquidityIx(ammAddr: PublicKey, baseMint: PublicKey, quoteMint: PublicKey, lpTokensToBurn: BN, minBaseAmount: BN, minQuoteAmount: BN): import("@coral-xyz/anchor/dist/cjs/program/namespace/methods.js").MethodsBuilder<AmmIDLType, {
121
- name: "removeLiquidity";
122
- accounts: [{
123
- name: "user";
124
- isMut: true;
125
- isSigner: true;
126
- }, {
127
- name: "amm";
128
- isMut: true;
129
- isSigner: false;
130
- }, {
131
- name: "lpMint";
132
- isMut: true;
133
- isSigner: false;
134
- }, {
135
- name: "userLpAccount";
136
- isMut: true;
137
- isSigner: false;
138
- }, {
139
- name: "userBaseAccount";
140
- isMut: true;
141
- isSigner: false;
142
- }, {
143
- name: "userQuoteAccount";
144
- isMut: true;
145
- isSigner: false;
146
- }, {
147
- name: "vaultAtaBase";
148
- isMut: true;
149
- isSigner: false;
150
- }, {
151
- name: "vaultAtaQuote";
152
- isMut: true;
153
- isSigner: false;
154
- }, {
155
- name: "tokenProgram";
156
- isMut: false;
157
- isSigner: false;
158
- }];
159
- args: [{
160
- name: "args";
161
- type: {
162
- defined: "RemoveLiquidityArgs";
163
- };
164
- }];
165
- } & {
166
- name: "removeLiquidity";
167
- }>;
168
- swap(amm: PublicKey, swapType: SwapType, inputAmount: number, outputAmountMin: number): Promise<string>;
169
- swapIx(amm: PublicKey, baseMint: PublicKey, quoteMint: PublicKey, swapType: SwapType, inputAmount: BN, outputAmountMin: BN, user?: PublicKey, payer?: PublicKey): import("@coral-xyz/anchor/dist/cjs/program/namespace/methods.js").MethodsBuilder<AmmIDLType, {
170
- name: "swap";
171
- accounts: [{
172
- name: "user";
173
- isMut: true;
174
- isSigner: true;
175
- }, {
176
- name: "amm";
177
- isMut: true;
178
- isSigner: false;
179
- }, {
180
- name: "userBaseAccount";
181
- isMut: true;
182
- isSigner: false;
183
- }, {
184
- name: "userQuoteAccount";
185
- isMut: true;
186
- isSigner: false;
187
- }, {
188
- name: "vaultAtaBase";
189
- isMut: true;
190
- isSigner: false;
191
- }, {
192
- name: "vaultAtaQuote";
193
- isMut: true;
194
- isSigner: false;
195
- }, {
196
- name: "tokenProgram";
197
- isMut: false;
198
- isSigner: false;
199
- }];
200
- args: [{
201
- name: "args";
202
- type: {
203
- defined: "SwapArgs";
204
- };
205
- }];
206
- } & {
207
- name: "swap";
208
- }>;
209
- crankThatTwap(amm: PublicKey): Promise<string>;
210
- crankThatTwapIx(amm: PublicKey): import("@coral-xyz/anchor/dist/cjs/program/namespace/methods.js").MethodsBuilder<AmmIDLType, {
211
- name: "crankThatTwap";
212
- accounts: [{
213
- name: "amm";
214
- isMut: true;
215
- isSigner: false;
216
- }];
217
- args: [];
218
- } & {
219
- name: "crankThatTwap";
220
- }>;
221
- getAmm(amm: PublicKey): Promise<AmmAccount>;
222
- getDecimals(mint: PublicKey): Promise<number>;
223
- }
@@ -1,186 +0,0 @@
1
- import { Program } from "@coral-xyz/anchor";
2
- import { IDL as AmmIDL } from "./types/amm.js";
3
- import BN from "bn.js";
4
- import { AMM_PROGRAM_ID } from "./constants.js";
5
- import { getAmmLpMintAddr, getAmmAddr } from "./utils/pda.js";
6
- import { unpackMint, getAssociatedTokenAddressSync, createAssociatedTokenAccountIdempotentInstruction, } from "@solana/spl-token";
7
- import { AmmMath, PriceMath } from "./utils/ammMath.js";
8
- export class AmmClient {
9
- provider;
10
- program;
11
- luts;
12
- constructor(provider, ammProgramId, luts) {
13
- this.provider = provider;
14
- this.program = new Program(AmmIDL, ammProgramId, provider);
15
- this.luts = luts;
16
- }
17
- static createClient(createAutocratClientParams) {
18
- let { provider, ammProgramId: programId } = createAutocratClientParams;
19
- const luts = [];
20
- return new AmmClient(provider, programId || AMM_PROGRAM_ID, luts);
21
- }
22
- getProgramId() {
23
- return this.program.programId;
24
- }
25
- async createAmm(proposal, baseMint, quoteMint, twapInitialObservation, twapMaxObservationChangePerUpdate) {
26
- if (!twapMaxObservationChangePerUpdate) {
27
- twapMaxObservationChangePerUpdate = twapInitialObservation * 0.02;
28
- }
29
- let [amm] = getAmmAddr(this.getProgramId(), baseMint, quoteMint);
30
- let baseDecimals = unpackMint(baseMint, await this.provider.connection.getAccountInfo(baseMint)).decimals;
31
- let quoteDecimals = unpackMint(quoteMint, await this.provider.connection.getAccountInfo(quoteMint)).decimals;
32
- let [twapFirstObservationScaled, twapMaxObservationChangePerUpdateScaled] = PriceMath.getAmmPrices(baseDecimals, quoteDecimals, twapInitialObservation, twapMaxObservationChangePerUpdate);
33
- await this.createAmmIx(baseMint, quoteMint, twapFirstObservationScaled, twapMaxObservationChangePerUpdateScaled).rpc();
34
- return amm;
35
- }
36
- // both twap values need to be scaled beforehand
37
- createAmmIx(baseMint, quoteMint, twapInitialObservation, twapMaxObservationChangePerUpdate) {
38
- let [amm] = getAmmAddr(this.getProgramId(), baseMint, quoteMint);
39
- let [lpMint] = getAmmLpMintAddr(this.getProgramId(), amm);
40
- let vaultAtaBase = getAssociatedTokenAddressSync(baseMint, amm, true);
41
- let vaultAtaQuote = getAssociatedTokenAddressSync(quoteMint, amm, true);
42
- return this.program.methods
43
- .createAmm({
44
- twapInitialObservation,
45
- twapMaxObservationChangePerUpdate,
46
- })
47
- .accounts({
48
- user: this.provider.publicKey,
49
- amm,
50
- lpMint,
51
- baseMint,
52
- quoteMint,
53
- vaultAtaBase,
54
- vaultAtaQuote,
55
- });
56
- }
57
- async addLiquidity(amm, quoteAmount, baseAmount) {
58
- let storedAmm = await this.getAmm(amm);
59
- let lpMintSupply = unpackMint(storedAmm.lpMint, await this.provider.connection.getAccountInfo(storedAmm.lpMint)).supply;
60
- let quoteAmountCasted;
61
- let baseAmountCasted;
62
- if (quoteAmount != undefined) {
63
- let quoteDecimals = unpackMint(storedAmm.quoteMint, await this.provider.connection.getAccountInfo(storedAmm.quoteMint)).decimals;
64
- quoteAmountCasted = new BN(quoteAmount).mul(new BN(10).pow(new BN(quoteDecimals)));
65
- }
66
- if (baseAmount != undefined) {
67
- let baseDecimals = unpackMint(storedAmm.baseMint, await this.provider.connection.getAccountInfo(storedAmm.baseMint)).decimals;
68
- baseAmountCasted = new BN(baseAmount).mul(new BN(10).pow(new BN(baseDecimals)));
69
- }
70
- if (lpMintSupply == 0n) {
71
- if (quoteAmount == undefined || baseAmount == undefined) {
72
- throw new Error("No pool created yet, you need to specify both base and quote");
73
- }
74
- // console.log(quoteAmountCasted?.toString());
75
- // console.log(baseAmountCasted?.toString())
76
- return await this.addLiquidityIx(amm, storedAmm.baseMint, storedAmm.quoteMint, quoteAmountCasted, baseAmountCasted, new BN(0)).rpc();
77
- }
78
- // quoteAmount == undefined ? undefined : new BN(quoteAmount);
79
- // let baseAmountCasted: BN | undefined =
80
- // baseAmount == undefined ? undefined : new BN(baseAmount);
81
- let sim = AmmMath.simulateAddLiquidity(storedAmm.baseAmount, storedAmm.quoteAmount, Number(lpMintSupply), baseAmountCasted, quoteAmountCasted);
82
- await this.addLiquidityIx(amm, storedAmm.baseMint, storedAmm.quoteMint, sim.quoteAmount, sim.baseAmount, sim.expectedLpTokens).rpc();
83
- }
84
- addLiquidityIx(amm, baseMint, quoteMint, quoteAmount, maxBaseAmount, minLpTokens, user = this.provider.publicKey) {
85
- const [lpMint] = getAmmLpMintAddr(this.program.programId, amm);
86
- const userLpAccount = getAssociatedTokenAddressSync(lpMint, user);
87
- return this.program.methods
88
- .addLiquidity({
89
- quoteAmount,
90
- maxBaseAmount,
91
- minLpTokens,
92
- })
93
- .accounts({
94
- user,
95
- amm,
96
- lpMint,
97
- userLpAccount,
98
- userBaseAccount: getAssociatedTokenAddressSync(baseMint, user),
99
- userQuoteAccount: getAssociatedTokenAddressSync(quoteMint, user),
100
- vaultAtaBase: getAssociatedTokenAddressSync(baseMint, amm, true),
101
- vaultAtaQuote: getAssociatedTokenAddressSync(quoteMint, amm, true),
102
- })
103
- .preInstructions([
104
- createAssociatedTokenAccountIdempotentInstruction(this.provider.publicKey, userLpAccount, this.provider.publicKey, lpMint),
105
- ]);
106
- }
107
- removeLiquidityIx(ammAddr, baseMint, quoteMint, lpTokensToBurn, minBaseAmount, minQuoteAmount) {
108
- const [lpMint] = getAmmLpMintAddr(this.program.programId, ammAddr);
109
- return this.program.methods
110
- .removeLiquidity({
111
- lpTokensToBurn,
112
- minBaseAmount,
113
- minQuoteAmount,
114
- })
115
- .accounts({
116
- user: this.provider.publicKey,
117
- amm: ammAddr,
118
- lpMint,
119
- userLpAccount: getAssociatedTokenAddressSync(lpMint, this.provider.publicKey),
120
- userBaseAccount: getAssociatedTokenAddressSync(baseMint, this.provider.publicKey),
121
- userQuoteAccount: getAssociatedTokenAddressSync(quoteMint, this.provider.publicKey),
122
- vaultAtaBase: getAssociatedTokenAddressSync(baseMint, ammAddr, true),
123
- vaultAtaQuote: getAssociatedTokenAddressSync(quoteMint, ammAddr, true),
124
- });
125
- }
126
- async swap(amm, swapType, inputAmount, outputAmountMin) {
127
- const storedAmm = await this.getAmm(amm);
128
- let quoteDecimals = await this.getDecimals(storedAmm.quoteMint);
129
- let baseDecimals = await this.getDecimals(storedAmm.baseMint);
130
- let inputAmountScaled;
131
- let outputAmountMinScaled;
132
- if (swapType.buy) {
133
- inputAmountScaled = PriceMath.scale(inputAmount, quoteDecimals);
134
- outputAmountMinScaled = PriceMath.scale(outputAmountMin, baseDecimals);
135
- }
136
- else {
137
- inputAmountScaled = PriceMath.scale(inputAmount, baseDecimals);
138
- outputAmountMinScaled = PriceMath.scale(outputAmountMin, quoteDecimals);
139
- }
140
- return await this.swapIx(amm, storedAmm.baseMint, storedAmm.quoteMint, swapType, inputAmountScaled, outputAmountMinScaled).rpc();
141
- }
142
- swapIx(amm, baseMint, quoteMint, swapType, inputAmount, outputAmountMin, user = this.provider.publicKey, payer = this.provider.publicKey) {
143
- const receivingToken = swapType.buy ? baseMint : quoteMint;
144
- return this.program.methods
145
- .swap({
146
- swapType,
147
- inputAmount,
148
- outputAmountMin,
149
- })
150
- .accounts({
151
- user,
152
- amm,
153
- userBaseAccount: getAssociatedTokenAddressSync(baseMint, user, true),
154
- userQuoteAccount: getAssociatedTokenAddressSync(quoteMint, user, true),
155
- vaultAtaBase: getAssociatedTokenAddressSync(baseMint, amm, true),
156
- vaultAtaQuote: getAssociatedTokenAddressSync(quoteMint, amm, true),
157
- })
158
- .preInstructions([
159
- // create the receiving token account if it doesn't exist
160
- createAssociatedTokenAccountIdempotentInstruction(payer, getAssociatedTokenAddressSync(receivingToken, user), user, receivingToken),
161
- ]);
162
- }
163
- async crankThatTwap(amm) {
164
- return this.crankThatTwapIx(amm).rpc();
165
- }
166
- crankThatTwapIx(amm) {
167
- return this.program.methods.crankThatTwap().accounts({
168
- amm,
169
- });
170
- }
171
- // getter functions
172
- // async getLTWAP(ammAddr: PublicKey): Promise<number> {
173
- // const amm = await this.program.account.amm.fetch(ammAddr);
174
- // return amm.twapLastObservationUq64X32
175
- // .div(new BN(2).pow(new BN(32)))
176
- // .toNumber();
177
- // }
178
- async getAmm(amm) {
179
- return await this.program.account.amm.fetch(amm);
180
- }
181
- async getDecimals(mint) {
182
- return unpackMint(mint, await this.provider.connection.getAccountInfo(mint))
183
- .decimals;
184
- }
185
- }
186
- //# sourceMappingURL=AmmClient.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AmmClient.js","sourceRoot":"","sources":["../../src/v0.3/AmmClient.ts"],"names":[],"mappings":"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"}
@@ -1,234 +0,0 @@
1
- import { AnchorProvider, Program } from "@coral-xyz/anchor";
2
- import { AddressLookupTableAccount, Keypair, PublicKey, Transaction } from "@solana/web3.js";
3
- import { ProposalInstruction, InitializeDaoParams } from "./types/index.js";
4
- import { Autocrat } from "./types/autocrat.js";
5
- import BN from "bn.js";
6
- import { ConditionalVaultClient } from "./ConditionalVaultClient.js";
7
- import { AmmClient } from "./AmmClient.js";
8
- import { DaoAccount, Proposal } from "./types/index.js";
9
- export type CreateClientParams = {
10
- provider: AnchorProvider;
11
- autocratProgramId?: PublicKey;
12
- conditionalVaultProgramId?: PublicKey;
13
- ammProgramId?: PublicKey;
14
- };
15
- export type ProposalVaults = {
16
- baseVault: PublicKey;
17
- quoteVault: PublicKey;
18
- };
19
- export declare class AutocratClient {
20
- readonly provider: AnchorProvider;
21
- readonly autocrat: Program<Autocrat>;
22
- readonly vaultClient: ConditionalVaultClient;
23
- readonly ammClient: AmmClient;
24
- readonly luts: AddressLookupTableAccount[];
25
- constructor(provider: AnchorProvider, autocratProgramId: PublicKey, conditionalVaultProgramId: PublicKey, ammProgramId: PublicKey, luts: AddressLookupTableAccount[]);
26
- static createClient(createAutocratClientParams: CreateClientParams): AutocratClient;
27
- getProposal(proposal: PublicKey): Promise<Proposal>;
28
- getDao(dao: PublicKey): Promise<DaoAccount>;
29
- getProposalPdas(proposal: PublicKey, baseMint: PublicKey, quoteMint: PublicKey, dao: PublicKey): {
30
- baseVault: PublicKey;
31
- quoteVault: PublicKey;
32
- passBaseMint: PublicKey;
33
- passQuoteMint: PublicKey;
34
- failBaseMint: PublicKey;
35
- failQuoteMint: PublicKey;
36
- passAmm: PublicKey;
37
- failAmm: PublicKey;
38
- passLp: PublicKey;
39
- failLp: PublicKey;
40
- };
41
- initializeDao(tokenMint: PublicKey, tokenPriceUiAmount: number, minBaseFutarchicLiquidity: number, minQuoteFutarchicLiquidity: number, usdcMint?: PublicKey, daoKeypair?: Keypair): Promise<PublicKey>;
42
- initializeDaoIx(daoKeypair: Keypair, tokenMint: PublicKey, params: InitializeDaoParams, usdcMint?: PublicKey): import("@coral-xyz/anchor/dist/cjs/program/namespace/methods.js").MethodsBuilder<Autocrat, {
43
- name: "initializeDao";
44
- accounts: [{
45
- name: "dao";
46
- isMut: true;
47
- isSigner: true;
48
- }, {
49
- name: "payer";
50
- isMut: true;
51
- isSigner: true;
52
- }, {
53
- name: "systemProgram";
54
- isMut: false;
55
- isSigner: false;
56
- }, {
57
- name: "tokenMint";
58
- isMut: false;
59
- isSigner: false;
60
- }, {
61
- name: "usdcMint";
62
- isMut: false;
63
- isSigner: false;
64
- }];
65
- args: [{
66
- name: "params";
67
- type: {
68
- defined: "InitializeDaoParams";
69
- };
70
- }];
71
- } & {
72
- name: "initializeDao";
73
- }>;
74
- initializeProposal(dao: PublicKey, descriptionUrl: string, instruction: ProposalInstruction, baseTokensToLP: BN, quoteTokensToLP: BN): Promise<PublicKey>;
75
- createProposalTxAndPDAs(dao: PublicKey, descriptionUrl: string, instruction: ProposalInstruction, baseTokensToLP: BN, quoteTokensToLP: BN): Promise<[
76
- Transaction[],
77
- {
78
- proposalAcct: PublicKey;
79
- baseCondVaultAcct: PublicKey;
80
- quoteCondVaultAcct: PublicKey;
81
- passMarketAcct: PublicKey;
82
- failMarketAcct: PublicKey;
83
- }
84
- ]>;
85
- initializeProposalIx(descriptionUrl: string, instruction: ProposalInstruction, dao: PublicKey, baseMint: PublicKey, quoteMint: PublicKey, passLpTokensToLock: BN, failLpTokensToLock: BN, nonce: BN): import("@coral-xyz/anchor/dist/cjs/program/namespace/methods.js").MethodsBuilder<Autocrat, {
86
- name: "initializeProposal";
87
- accounts: [{
88
- name: "proposal";
89
- isMut: true;
90
- isSigner: false;
91
- }, {
92
- name: "dao";
93
- isMut: true;
94
- isSigner: false;
95
- }, {
96
- name: "quoteVault";
97
- isMut: false;
98
- isSigner: false;
99
- }, {
100
- name: "baseVault";
101
- isMut: false;
102
- isSigner: false;
103
- }, {
104
- name: "passAmm";
105
- isMut: false;
106
- isSigner: false;
107
- }, {
108
- name: "passLpMint";
109
- isMut: false;
110
- isSigner: false;
111
- }, {
112
- name: "failLpMint";
113
- isMut: false;
114
- isSigner: false;
115
- }, {
116
- name: "failAmm";
117
- isMut: false;
118
- isSigner: false;
119
- }, {
120
- name: "passLpUserAccount";
121
- isMut: true;
122
- isSigner: false;
123
- }, {
124
- name: "failLpUserAccount";
125
- isMut: true;
126
- isSigner: false;
127
- }, {
128
- name: "passLpVaultAccount";
129
- isMut: true;
130
- isSigner: false;
131
- }, {
132
- name: "failLpVaultAccount";
133
- isMut: true;
134
- isSigner: false;
135
- }, {
136
- name: "proposer";
137
- isMut: true;
138
- isSigner: true;
139
- }, {
140
- name: "tokenProgram";
141
- isMut: false;
142
- isSigner: false;
143
- }, {
144
- name: "systemProgram";
145
- isMut: false;
146
- isSigner: false;
147
- }];
148
- args: [{
149
- name: "params";
150
- type: {
151
- defined: "InitializeProposalParams";
152
- };
153
- }];
154
- } & {
155
- name: "initializeProposal";
156
- }>;
157
- finalizeProposal(proposal: PublicKey): Promise<string>;
158
- finalizeProposalIx(proposal: PublicKey, instruction: any, dao: PublicKey, daoToken: PublicKey, usdc: PublicKey, proposer: PublicKey): import("@coral-xyz/anchor/dist/cjs/program/namespace/methods.js").MethodsBuilder<Autocrat, {
159
- name: "finalizeProposal";
160
- accounts: [{
161
- name: "proposal";
162
- isMut: true;
163
- isSigner: false;
164
- }, {
165
- name: "passAmm";
166
- isMut: false;
167
- isSigner: false;
168
- }, {
169
- name: "failAmm";
170
- isMut: false;
171
- isSigner: false;
172
- }, {
173
- name: "dao";
174
- isMut: false;
175
- isSigner: false;
176
- }, {
177
- name: "baseVault";
178
- isMut: true;
179
- isSigner: false;
180
- }, {
181
- name: "quoteVault";
182
- isMut: true;
183
- isSigner: false;
184
- }, {
185
- name: "treasury";
186
- isMut: false;
187
- isSigner: false;
188
- }, {
189
- name: "passLpUserAccount";
190
- isMut: true;
191
- isSigner: false;
192
- }, {
193
- name: "failLpUserAccount";
194
- isMut: true;
195
- isSigner: false;
196
- }, {
197
- name: "passLpVaultAccount";
198
- isMut: true;
199
- isSigner: false;
200
- }, {
201
- name: "failLpVaultAccount";
202
- isMut: true;
203
- isSigner: false;
204
- }, {
205
- name: "tokenProgram";
206
- isMut: false;
207
- isSigner: false;
208
- }, {
209
- name: "vaultProgram";
210
- isMut: false;
211
- isSigner: false;
212
- }];
213
- args: [];
214
- } & {
215
- name: "finalizeProposal";
216
- }>;
217
- executeProposal(proposal: PublicKey): Promise<string>;
218
- executeProposalIx(proposal: PublicKey, dao: PublicKey, instruction: any): import("@coral-xyz/anchor/dist/cjs/program/namespace/methods.js").MethodsBuilder<Autocrat, {
219
- name: "executeProposal";
220
- accounts: [{
221
- name: "proposal";
222
- isMut: true;
223
- isSigner: false;
224
- }, {
225
- name: "dao";
226
- isMut: false;
227
- isSigner: false;
228
- }];
229
- args: [];
230
- } & {
231
- name: "executeProposal";
232
- }>;
233
- crankProposalMarkets(proposals: PublicKey[], priorityFeeMicroLamports: number): Promise<void>;
234
- }