@karn_lat/protocol-sdk 0.1.0-alpha.1
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 +68 -0
- package/dist/__tests__/setup.d.ts +14 -0
- package/dist/__tests__/setup.d.ts.map +1 -0
- package/dist/__tests__/setup.js +44 -0
- package/dist/__tests__/setup.js.map +1 -0
- package/dist/clients/GovernorClient.d.ts +9 -0
- package/dist/clients/GovernorClient.d.ts.map +1 -0
- package/dist/clients/GovernorClient.js +18 -0
- package/dist/clients/GovernorClient.js.map +1 -0
- package/dist/clients/TreasuryClient.d.ts +9 -0
- package/dist/clients/TreasuryClient.d.ts.map +1 -0
- package/dist/clients/TreasuryClient.js +18 -0
- package/dist/clients/TreasuryClient.js.map +1 -0
- package/dist/clients/ValocracyClient.d.ts +13 -0
- package/dist/clients/ValocracyClient.d.ts.map +1 -0
- package/dist/clients/ValocracyClient.js +32 -0
- package/dist/clients/ValocracyClient.js.map +1 -0
- package/dist/clients/index.d.ts +4 -0
- package/dist/clients/index.d.ts.map +1 -0
- package/dist/clients/index.js +4 -0
- package/dist/clients/index.js.map +1 -0
- package/dist/generated/governor/src/index.d.ts +400 -0
- package/dist/generated/governor/src/index.d.ts.map +1 -0
- package/dist/generated/governor/src/index.js +63 -0
- package/dist/generated/governor/src/index.js.map +1 -0
- package/dist/generated/treasury/src/index.d.ts +474 -0
- package/dist/generated/treasury/src/index.d.ts.map +1 -0
- package/dist/generated/treasury/src/index.js +54 -0
- package/dist/generated/treasury/src/index.js.map +1 -0
- package/dist/generated/valocracy/src/index.d.ts +807 -0
- package/dist/generated/valocracy/src/index.d.ts.map +1 -0
- package/dist/generated/valocracy/src/index.js +114 -0
- package/dist/generated/valocracy/src/index.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/react/hooks/useGovernor.d.ts +24 -0
- package/dist/react/hooks/useGovernor.d.ts.map +1 -0
- package/dist/react/hooks/useGovernor.js +45 -0
- package/dist/react/hooks/useGovernor.js.map +1 -0
- package/dist/react/hooks/useMultiWallet.d.ts +35 -0
- package/dist/react/hooks/useMultiWallet.d.ts.map +1 -0
- package/dist/react/hooks/useMultiWallet.js +87 -0
- package/dist/react/hooks/useMultiWallet.js.map +1 -0
- package/dist/react/hooks/useTreasury.d.ts +14 -0
- package/dist/react/hooks/useTreasury.d.ts.map +1 -0
- package/dist/react/hooks/useTreasury.js +45 -0
- package/dist/react/hooks/useTreasury.js.map +1 -0
- package/dist/react/hooks/useValocracy.d.ts +16 -0
- package/dist/react/hooks/useValocracy.d.ts.map +1 -0
- package/dist/react/hooks/useValocracy.js +54 -0
- package/dist/react/hooks/useValocracy.js.map +1 -0
- package/dist/react/hooks/useWallet.d.ts +13 -0
- package/dist/react/hooks/useWallet.d.ts.map +1 -0
- package/dist/react/hooks/useWallet.js +51 -0
- package/dist/react/hooks/useWallet.js.map +1 -0
- package/dist/react/index.d.ts +7 -0
- package/dist/react/index.d.ts.map +1 -0
- package/dist/react/index.js +7 -0
- package/dist/react/index.js.map +1 -0
- package/dist/react/providers/KarnProvider.d.ts +25 -0
- package/dist/react/providers/KarnProvider.d.ts.map +1 -0
- package/dist/react/providers/KarnProvider.js +25 -0
- package/dist/react/providers/KarnProvider.js.map +1 -0
- package/dist/utils/decay.d.ts +19 -0
- package/dist/utils/decay.d.ts.map +1 -0
- package/dist/utils/decay.js +33 -0
- package/dist/utils/decay.js.map +1 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +4 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/polling.d.ts +75 -0
- package/dist/utils/polling.d.ts.map +1 -0
- package/dist/utils/polling.js +104 -0
- package/dist/utils/polling.js.map +1 -0
- package/dist/utils/simulation.d.ts +67 -0
- package/dist/utils/simulation.d.ts.map +1 -0
- package/dist/utils/simulation.js +88 -0
- package/dist/utils/simulation.js.map +1 -0
- package/dist/wallet/WalletManager.d.ts +77 -0
- package/dist/wallet/WalletManager.d.ts.map +1 -0
- package/dist/wallet/WalletManager.js +268 -0
- package/dist/wallet/WalletManager.js.map +1 -0
- package/dist/wallet/adapters/AlbedoAdapter.d.ts +47 -0
- package/dist/wallet/adapters/AlbedoAdapter.d.ts.map +1 -0
- package/dist/wallet/adapters/AlbedoAdapter.js +84 -0
- package/dist/wallet/adapters/AlbedoAdapter.js.map +1 -0
- package/dist/wallet/adapters/FreighterAdapter.d.ts +42 -0
- package/dist/wallet/adapters/FreighterAdapter.d.ts.map +1 -0
- package/dist/wallet/adapters/FreighterAdapter.js +107 -0
- package/dist/wallet/adapters/FreighterAdapter.js.map +1 -0
- package/dist/wallet/adapters/LobstrAdapter.d.ts +34 -0
- package/dist/wallet/adapters/LobstrAdapter.d.ts.map +1 -0
- package/dist/wallet/adapters/LobstrAdapter.js +89 -0
- package/dist/wallet/adapters/LobstrAdapter.js.map +1 -0
- package/dist/wallet/adapters/RabetAdapter.d.ts +39 -0
- package/dist/wallet/adapters/RabetAdapter.d.ts.map +1 -0
- package/dist/wallet/adapters/RabetAdapter.js +104 -0
- package/dist/wallet/adapters/RabetAdapter.js.map +1 -0
- package/dist/wallet/adapters/xBullAdapter.d.ts +41 -0
- package/dist/wallet/adapters/xBullAdapter.d.ts.map +1 -0
- package/dist/wallet/adapters/xBullAdapter.js +72 -0
- package/dist/wallet/adapters/xBullAdapter.js.map +1 -0
- package/dist/wallet/index.d.ts +20 -0
- package/dist/wallet/index.d.ts.map +1 -0
- package/dist/wallet/index.js +23 -0
- package/dist/wallet/index.js.map +1 -0
- package/dist/wallet/types.d.ts +165 -0
- package/dist/wallet/types.d.ts.map +1 -0
- package/dist/wallet/types.js +50 -0
- package/dist/wallet/types.js.map +1 -0
- package/examples/basic-usage.ts +28 -0
- package/jest.config.js +37 -0
- package/package.json +58 -0
- package/src/__tests__/README.md +364 -0
- package/src/__tests__/setup.ts +57 -0
- package/src/__tests__/utils/decay.test.ts +331 -0
- package/src/__tests__/wallet/WalletManager.test.ts +410 -0
- package/src/clients/GovernorClient.ts +23 -0
- package/src/clients/TreasuryClient.ts +23 -0
- package/src/clients/ValocracyClient.ts +48 -0
- package/src/clients/index.ts +3 -0
- package/src/generated/governor/README.md +54 -0
- package/src/generated/governor/package.json +17 -0
- package/src/generated/governor/src/index.ts +428 -0
- package/src/generated/governor/tsconfig.json +98 -0
- package/src/generated/treasury/README.md +54 -0
- package/src/generated/treasury/package.json +17 -0
- package/src/generated/treasury/src/index.ts +495 -0
- package/src/generated/treasury/tsconfig.json +98 -0
- package/src/generated/valocracy/README.md +54 -0
- package/src/generated/valocracy/package.json +17 -0
- package/src/generated/valocracy/src/index.ts +831 -0
- package/src/generated/valocracy/tsconfig.json +98 -0
- package/src/index.ts +4 -0
- package/src/react/hooks/useGovernor.ts +69 -0
- package/src/react/hooks/useMultiWallet.ts +169 -0
- package/src/react/hooks/useTreasury.ts +57 -0
- package/src/react/hooks/useValocracy.ts +66 -0
- package/src/react/hooks/useWallet.ts +60 -0
- package/src/react/index.ts +6 -0
- package/src/react/providers/KarnProvider.tsx +63 -0
- package/src/utils/decay.ts +44 -0
- package/src/utils/index.ts +3 -0
- package/src/utils/polling.ts +193 -0
- package/src/utils/simulation.ts +136 -0
- package/src/wallet/WalletManager.ts +360 -0
- package/src/wallet/adapters/AlbedoAdapter.ts +140 -0
- package/src/wallet/adapters/FreighterAdapter.ts +179 -0
- package/src/wallet/adapters/LobstrAdapter.ts +142 -0
- package/src/wallet/adapters/RabetAdapter.ts +162 -0
- package/src/wallet/adapters/xBullAdapter.ts +123 -0
- package/src/wallet/index.ts +37 -0
- package/src/wallet/types.ts +204 -0
- package/tsconfig.json +40 -0
|
@@ -0,0 +1,831 @@
|
|
|
1
|
+
import { Buffer } from "buffer";
|
|
2
|
+
import { Address } from '@stellar/stellar-sdk';
|
|
3
|
+
import {
|
|
4
|
+
AssembledTransaction,
|
|
5
|
+
Client as ContractClient,
|
|
6
|
+
ClientOptions as ContractClientOptions,
|
|
7
|
+
MethodOptions,
|
|
8
|
+
Result,
|
|
9
|
+
Spec as ContractSpec,
|
|
10
|
+
} from '@stellar/stellar-sdk/contract';
|
|
11
|
+
import type {
|
|
12
|
+
u32,
|
|
13
|
+
i32,
|
|
14
|
+
u64,
|
|
15
|
+
i64,
|
|
16
|
+
u128,
|
|
17
|
+
i128,
|
|
18
|
+
u256,
|
|
19
|
+
i256,
|
|
20
|
+
Option,
|
|
21
|
+
Typepoint,
|
|
22
|
+
Duration,
|
|
23
|
+
} from '@stellar/stellar-sdk/contract';
|
|
24
|
+
export * from '@stellar/stellar-sdk'
|
|
25
|
+
export * as contract from '@stellar/stellar-sdk/contract'
|
|
26
|
+
export * as rpc from '@stellar/stellar-sdk/rpc'
|
|
27
|
+
|
|
28
|
+
if (typeof window !== 'undefined') {
|
|
29
|
+
//@ts-ignore Buffer exists
|
|
30
|
+
window.Buffer = window.Buffer || Buffer;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Valor type definition with rarity and metadata
|
|
39
|
+
*/
|
|
40
|
+
export interface Valor {
|
|
41
|
+
/**
|
|
42
|
+
* Metadata string (e.g., description, URI)
|
|
43
|
+
*/
|
|
44
|
+
metadata: string;
|
|
45
|
+
/**
|
|
46
|
+
* The rarity multiplier for this valor type
|
|
47
|
+
*/
|
|
48
|
+
rarity: u64;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* User statistics including level and expiration
|
|
54
|
+
*/
|
|
55
|
+
export interface UserStats {
|
|
56
|
+
/**
|
|
57
|
+
* The expiration timestamp (Unix seconds)
|
|
58
|
+
*/
|
|
59
|
+
expiry: u64;
|
|
60
|
+
/**
|
|
61
|
+
* The accumulated governance level
|
|
62
|
+
*/
|
|
63
|
+
level: u64;
|
|
64
|
+
/**
|
|
65
|
+
* The permanent portion of level that never decays (e.g., Founder badge)
|
|
66
|
+
*/
|
|
67
|
+
permanent_level: u64;
|
|
68
|
+
/**
|
|
69
|
+
* Whether the user has verified their identity (ADR-003)
|
|
70
|
+
*/
|
|
71
|
+
verified: boolean;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export const ValocracyError = {
|
|
75
|
+
/**
|
|
76
|
+
* Contract has already been initialized
|
|
77
|
+
*/
|
|
78
|
+
1: {message:"AlreadyInitialized"},
|
|
79
|
+
/**
|
|
80
|
+
* Contract has not been initialized
|
|
81
|
+
*/
|
|
82
|
+
2: {message:"NotInitialized"},
|
|
83
|
+
/**
|
|
84
|
+
* Caller is not authorized (not a member or not the governor)
|
|
85
|
+
*/
|
|
86
|
+
3: {message:"NotAuthorized"},
|
|
87
|
+
/**
|
|
88
|
+
* Valor ID does not exist
|
|
89
|
+
*/
|
|
90
|
+
4: {message:"NonExistentValor"},
|
|
91
|
+
/**
|
|
92
|
+
* Token ID does not exist
|
|
93
|
+
*/
|
|
94
|
+
5: {message:"NonExistentToken"},
|
|
95
|
+
/**
|
|
96
|
+
* Account does not exist
|
|
97
|
+
*/
|
|
98
|
+
6: {message:"NonExistentAccount"},
|
|
99
|
+
/**
|
|
100
|
+
* Token is soulbound and cannot be transferred
|
|
101
|
+
*/
|
|
102
|
+
7: {message:"TokenSoulbound"},
|
|
103
|
+
/**
|
|
104
|
+
* User has already self-registered (has a Member badge)
|
|
105
|
+
*/
|
|
106
|
+
8: {message:"AlreadyRegistered"},
|
|
107
|
+
/**
|
|
108
|
+
* Invalid signature
|
|
109
|
+
*/
|
|
110
|
+
9: {message:"InvalidSignature"},
|
|
111
|
+
/**
|
|
112
|
+
* Nonce already used
|
|
113
|
+
*/
|
|
114
|
+
10: {message:"NonceUsed"},
|
|
115
|
+
/**
|
|
116
|
+
* Signature expired
|
|
117
|
+
*/
|
|
118
|
+
11: {message:"SignatureExpired"},
|
|
119
|
+
/**
|
|
120
|
+
* Invalid Valor ID
|
|
121
|
+
*/
|
|
122
|
+
12: {message:"InvalidValorId"},
|
|
123
|
+
/**
|
|
124
|
+
* Mint not authorized
|
|
125
|
+
*/
|
|
126
|
+
13: {message:"MintNotAuthorized"},
|
|
127
|
+
/**
|
|
128
|
+
* Badge not mintable
|
|
129
|
+
*/
|
|
130
|
+
14: {message:"BadgeNotMintable"},
|
|
131
|
+
/**
|
|
132
|
+
* Reentrancy detected
|
|
133
|
+
*/
|
|
134
|
+
15: {message:"ReentrancyDetected"}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* Storage keys for the contract
|
|
139
|
+
*/
|
|
140
|
+
export type DataKey = {tag: "Admin", values: void} | {tag: "Initialized", values: void} | {tag: "Founder", values: void} | {tag: "Governor", values: void} | {tag: "Treasury", values: void} | {tag: "TotalSupply", values: void} | {tag: "MemberValorId", values: void} | {tag: "TokenValorId", values: readonly [u64]} | {tag: "ValorData", values: readonly [u64]} | {tag: "UserStats", values: readonly [string]} | {tag: "TokenOwner", values: readonly [u64]} | {tag: "Signer", values: void} | {tag: "UsedNonce", values: readonly [string, u64]};
|
|
141
|
+
|
|
142
|
+
export interface Client {
|
|
143
|
+
/**
|
|
144
|
+
* Construct and simulate a mint transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
145
|
+
* Mint a new soulbound NFT to an account.
|
|
146
|
+
*
|
|
147
|
+
* Requires authorization from a valid minter for the specific badge category.
|
|
148
|
+
* - Governance/Leadership/Track: See RBAC matrix
|
|
149
|
+
* - Community: Any member
|
|
150
|
+
*/
|
|
151
|
+
mint: ({minter, recipient, valor_id}: {minter: string, recipient: string, valor_id: u64}, options?: {
|
|
152
|
+
/**
|
|
153
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
154
|
+
*/
|
|
155
|
+
fee?: number;
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
159
|
+
*/
|
|
160
|
+
timeoutInSeconds?: number;
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
164
|
+
*/
|
|
165
|
+
simulate?: boolean;
|
|
166
|
+
}) => Promise<AssembledTransaction<Result<u64>>>
|
|
167
|
+
|
|
168
|
+
/**
|
|
169
|
+
* Construct and simulate a name transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
170
|
+
* Get the contract name
|
|
171
|
+
*/
|
|
172
|
+
name: (options?: {
|
|
173
|
+
/**
|
|
174
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
175
|
+
*/
|
|
176
|
+
fee?: number;
|
|
177
|
+
|
|
178
|
+
/**
|
|
179
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
180
|
+
*/
|
|
181
|
+
timeoutInSeconds?: number;
|
|
182
|
+
|
|
183
|
+
/**
|
|
184
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
185
|
+
*/
|
|
186
|
+
simulate?: boolean;
|
|
187
|
+
}) => Promise<AssembledTransaction<string>>
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* Construct and simulate a revoke transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
191
|
+
* Revoke (burn) a badge token.
|
|
192
|
+
*
|
|
193
|
+
* Governor-only. Removes the token, reduces the user's level by
|
|
194
|
+
* the badge's rarity value. Used for governance-decided removal.
|
|
195
|
+
*/
|
|
196
|
+
revoke: ({token_id}: {token_id: u64}, options?: {
|
|
197
|
+
/**
|
|
198
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
199
|
+
*/
|
|
200
|
+
fee?: number;
|
|
201
|
+
|
|
202
|
+
/**
|
|
203
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
204
|
+
*/
|
|
205
|
+
timeoutInSeconds?: number;
|
|
206
|
+
|
|
207
|
+
/**
|
|
208
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
209
|
+
*/
|
|
210
|
+
simulate?: boolean;
|
|
211
|
+
}) => Promise<AssembledTransaction<Result<void>>>
|
|
212
|
+
|
|
213
|
+
/**
|
|
214
|
+
* Construct and simulate a symbol transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
215
|
+
* Get the contract symbol
|
|
216
|
+
*/
|
|
217
|
+
symbol: (options?: {
|
|
218
|
+
/**
|
|
219
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
220
|
+
*/
|
|
221
|
+
fee?: number;
|
|
222
|
+
|
|
223
|
+
/**
|
|
224
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
225
|
+
*/
|
|
226
|
+
timeoutInSeconds?: number;
|
|
227
|
+
|
|
228
|
+
/**
|
|
229
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
230
|
+
*/
|
|
231
|
+
simulate?: boolean;
|
|
232
|
+
}) => Promise<AssembledTransaction<string>>
|
|
233
|
+
|
|
234
|
+
/**
|
|
235
|
+
* Construct and simulate a founder transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
236
|
+
* Get the founder address
|
|
237
|
+
*/
|
|
238
|
+
founder: (options?: {
|
|
239
|
+
/**
|
|
240
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
241
|
+
*/
|
|
242
|
+
fee?: number;
|
|
243
|
+
|
|
244
|
+
/**
|
|
245
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
246
|
+
*/
|
|
247
|
+
timeoutInSeconds?: number;
|
|
248
|
+
|
|
249
|
+
/**
|
|
250
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
251
|
+
*/
|
|
252
|
+
simulate?: boolean;
|
|
253
|
+
}) => Promise<AssembledTransaction<Option<string>>>
|
|
254
|
+
|
|
255
|
+
/**
|
|
256
|
+
* Construct and simulate a upgrade transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
257
|
+
* Upgrade the contract to a new WASM hash.
|
|
258
|
+
* Only callable by the governor (requires governance proposal).
|
|
259
|
+
*/
|
|
260
|
+
upgrade: ({new_wasm_hash}: {new_wasm_hash: Buffer}, options?: {
|
|
261
|
+
/**
|
|
262
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
263
|
+
*/
|
|
264
|
+
fee?: number;
|
|
265
|
+
|
|
266
|
+
/**
|
|
267
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
268
|
+
*/
|
|
269
|
+
timeoutInSeconds?: number;
|
|
270
|
+
|
|
271
|
+
/**
|
|
272
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
273
|
+
*/
|
|
274
|
+
simulate?: boolean;
|
|
275
|
+
}) => Promise<AssembledTransaction<Result<void>>>
|
|
276
|
+
|
|
277
|
+
/**
|
|
278
|
+
* Construct and simulate a governor transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
279
|
+
* Get the governor contract address
|
|
280
|
+
*/
|
|
281
|
+
governor: (options?: {
|
|
282
|
+
/**
|
|
283
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
284
|
+
*/
|
|
285
|
+
fee?: number;
|
|
286
|
+
|
|
287
|
+
/**
|
|
288
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
289
|
+
*/
|
|
290
|
+
timeoutInSeconds?: number;
|
|
291
|
+
|
|
292
|
+
/**
|
|
293
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
294
|
+
*/
|
|
295
|
+
simulate?: boolean;
|
|
296
|
+
}) => Promise<AssembledTransaction<Option<string>>>
|
|
297
|
+
|
|
298
|
+
/**
|
|
299
|
+
* Construct and simulate a level_of transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
300
|
+
* Get the raw level of an account (without decay)
|
|
301
|
+
*/
|
|
302
|
+
level_of: ({account}: {account: string}, options?: {
|
|
303
|
+
/**
|
|
304
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
305
|
+
*/
|
|
306
|
+
fee?: number;
|
|
307
|
+
|
|
308
|
+
/**
|
|
309
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
310
|
+
*/
|
|
311
|
+
timeoutInSeconds?: number;
|
|
312
|
+
|
|
313
|
+
/**
|
|
314
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
315
|
+
*/
|
|
316
|
+
simulate?: boolean;
|
|
317
|
+
}) => Promise<AssembledTransaction<u64>>
|
|
318
|
+
|
|
319
|
+
/**
|
|
320
|
+
* Construct and simulate a owner_of transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
321
|
+
* Get the owner of a token
|
|
322
|
+
*/
|
|
323
|
+
owner_of: ({token_id}: {token_id: u64}, options?: {
|
|
324
|
+
/**
|
|
325
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
326
|
+
*/
|
|
327
|
+
fee?: number;
|
|
328
|
+
|
|
329
|
+
/**
|
|
330
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
331
|
+
*/
|
|
332
|
+
timeoutInSeconds?: number;
|
|
333
|
+
|
|
334
|
+
/**
|
|
335
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
336
|
+
*/
|
|
337
|
+
simulate?: boolean;
|
|
338
|
+
}) => Promise<AssembledTransaction<Option<string>>>
|
|
339
|
+
|
|
340
|
+
/**
|
|
341
|
+
* Construct and simulate a treasury transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
342
|
+
* Get the treasury contract address
|
|
343
|
+
*/
|
|
344
|
+
treasury: (options?: {
|
|
345
|
+
/**
|
|
346
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
347
|
+
*/
|
|
348
|
+
fee?: number;
|
|
349
|
+
|
|
350
|
+
/**
|
|
351
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
352
|
+
*/
|
|
353
|
+
timeoutInSeconds?: number;
|
|
354
|
+
|
|
355
|
+
/**
|
|
356
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
357
|
+
*/
|
|
358
|
+
simulate?: boolean;
|
|
359
|
+
}) => Promise<AssembledTransaction<Option<string>>>
|
|
360
|
+
|
|
361
|
+
/**
|
|
362
|
+
* Construct and simulate a expiry_of transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
363
|
+
* Get the expiry timestamp of an account
|
|
364
|
+
*/
|
|
365
|
+
expiry_of: ({account}: {account: string}, options?: {
|
|
366
|
+
/**
|
|
367
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
368
|
+
*/
|
|
369
|
+
fee?: number;
|
|
370
|
+
|
|
371
|
+
/**
|
|
372
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
373
|
+
*/
|
|
374
|
+
timeoutInSeconds?: number;
|
|
375
|
+
|
|
376
|
+
/**
|
|
377
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
378
|
+
*/
|
|
379
|
+
simulate?: boolean;
|
|
380
|
+
}) => Promise<AssembledTransaction<u64>>
|
|
381
|
+
|
|
382
|
+
/**
|
|
383
|
+
* Construct and simulate a get_votes transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
384
|
+
* Get the current voting power (Mana) of an account
|
|
385
|
+
*
|
|
386
|
+
* Mana = MEMBER_FLOOR + bonus (decay applies to extra_level only)
|
|
387
|
+
* Registered accounts always retain at least MEMBER_FLOOR voting power.
|
|
388
|
+
*/
|
|
389
|
+
get_votes: ({account}: {account: string}, options?: {
|
|
390
|
+
/**
|
|
391
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
392
|
+
*/
|
|
393
|
+
fee?: number;
|
|
394
|
+
|
|
395
|
+
/**
|
|
396
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
397
|
+
*/
|
|
398
|
+
timeoutInSeconds?: number;
|
|
399
|
+
|
|
400
|
+
/**
|
|
401
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
402
|
+
*/
|
|
403
|
+
simulate?: boolean;
|
|
404
|
+
}) => Promise<AssembledTransaction<u64>>
|
|
405
|
+
|
|
406
|
+
/**
|
|
407
|
+
* Construct and simulate a rarity_of transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
408
|
+
* Get the rarity of a valor type
|
|
409
|
+
*/
|
|
410
|
+
rarity_of: ({valor_id}: {valor_id: u64}, options?: {
|
|
411
|
+
/**
|
|
412
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
413
|
+
*/
|
|
414
|
+
fee?: number;
|
|
415
|
+
|
|
416
|
+
/**
|
|
417
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
418
|
+
*/
|
|
419
|
+
timeoutInSeconds?: number;
|
|
420
|
+
|
|
421
|
+
/**
|
|
422
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
423
|
+
*/
|
|
424
|
+
simulate?: boolean;
|
|
425
|
+
}) => Promise<AssembledTransaction<u64>>
|
|
426
|
+
|
|
427
|
+
/**
|
|
428
|
+
* Construct and simulate a set_valor transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
429
|
+
* Create or update a Valor type with rarity and metadata.
|
|
430
|
+
*
|
|
431
|
+
* Governor-only. Badge type changes require a governance proposal.
|
|
432
|
+
*/
|
|
433
|
+
set_valor: ({valor_id, rarity, metadata}: {valor_id: u64, rarity: u64, metadata: string}, options?: {
|
|
434
|
+
/**
|
|
435
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
436
|
+
*/
|
|
437
|
+
fee?: number;
|
|
438
|
+
|
|
439
|
+
/**
|
|
440
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
441
|
+
*/
|
|
442
|
+
timeoutInSeconds?: number;
|
|
443
|
+
|
|
444
|
+
/**
|
|
445
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
446
|
+
*/
|
|
447
|
+
simulate?: boolean;
|
|
448
|
+
}) => Promise<AssembledTransaction<Result<void>>>
|
|
449
|
+
|
|
450
|
+
/**
|
|
451
|
+
* Construct and simulate a initialize transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
452
|
+
* Initialize the Valocracy contract.
|
|
453
|
+
*
|
|
454
|
+
* No admin: sets all configuration at once. Registers initial valor types,
|
|
455
|
+
* mints the Founder badge, and stores the member badge ID for self-registration.
|
|
456
|
+
*
|
|
457
|
+
* # Arguments
|
|
458
|
+
* * `founder` - Address that receives the permanent Founder badge
|
|
459
|
+
* * `governor` - Governor contract address
|
|
460
|
+
* * `treasury` - Treasury contract address
|
|
461
|
+
* * `name` - Contract name
|
|
462
|
+
* * `symbol` - Contract symbol
|
|
463
|
+
* * `member_valor_id` - Valor ID used by self_register() (the Member badge)
|
|
464
|
+
* * `valor_ids` - List of valor IDs to register
|
|
465
|
+
* * `valor_rarities` - List of rarities (parallel to valor_ids)
|
|
466
|
+
* * `valor_metadatas` - List of metadata strings (parallel to valor_ids)
|
|
467
|
+
* * `founder_valor_id` - Which valor_id is the Founder badge
|
|
468
|
+
*/
|
|
469
|
+
initialize: ({founder, governor, treasury, member_valor_id, valor_ids, valor_rarities, valor_metadatas, founder_valor_id, signer}: {founder: string, governor: string, treasury: string, member_valor_id: u64, valor_ids: Array<u64>, valor_rarities: Array<u64>, valor_metadatas: Array<string>, founder_valor_id: u64, signer: Buffer}, options?: {
|
|
470
|
+
/**
|
|
471
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
472
|
+
*/
|
|
473
|
+
fee?: number;
|
|
474
|
+
|
|
475
|
+
/**
|
|
476
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
477
|
+
*/
|
|
478
|
+
timeoutInSeconds?: number;
|
|
479
|
+
|
|
480
|
+
/**
|
|
481
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
482
|
+
*/
|
|
483
|
+
simulate?: boolean;
|
|
484
|
+
}) => Promise<AssembledTransaction<Result<void>>>
|
|
485
|
+
|
|
486
|
+
/**
|
|
487
|
+
* Construct and simulate a is_verified transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
488
|
+
* Check if a member has completed identity verification (ADR-003).
|
|
489
|
+
*
|
|
490
|
+
* Returns false if the account is not registered.
|
|
491
|
+
*/
|
|
492
|
+
is_verified: ({account}: {account: string}, options?: {
|
|
493
|
+
/**
|
|
494
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
495
|
+
*/
|
|
496
|
+
fee?: number;
|
|
497
|
+
|
|
498
|
+
/**
|
|
499
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
500
|
+
*/
|
|
501
|
+
timeoutInSeconds?: number;
|
|
502
|
+
|
|
503
|
+
/**
|
|
504
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
505
|
+
*/
|
|
506
|
+
simulate?: boolean;
|
|
507
|
+
}) => Promise<AssembledTransaction<boolean>>
|
|
508
|
+
|
|
509
|
+
/**
|
|
510
|
+
* Construct and simulate a metadata_of transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
511
|
+
* Get the metadata of a valor type
|
|
512
|
+
*/
|
|
513
|
+
metadata_of: ({valor_id}: {valor_id: u64}, options?: {
|
|
514
|
+
/**
|
|
515
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
516
|
+
*/
|
|
517
|
+
fee?: number;
|
|
518
|
+
|
|
519
|
+
/**
|
|
520
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
521
|
+
*/
|
|
522
|
+
timeoutInSeconds?: number;
|
|
523
|
+
|
|
524
|
+
/**
|
|
525
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
526
|
+
*/
|
|
527
|
+
simulate?: boolean;
|
|
528
|
+
}) => Promise<AssembledTransaction<string>>
|
|
529
|
+
|
|
530
|
+
/**
|
|
531
|
+
* Construct and simulate a valor_id_of transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
532
|
+
* Get the valor ID linked to a token
|
|
533
|
+
*/
|
|
534
|
+
valor_id_of: ({token_id}: {token_id: u64}, options?: {
|
|
535
|
+
/**
|
|
536
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
537
|
+
*/
|
|
538
|
+
fee?: number;
|
|
539
|
+
|
|
540
|
+
/**
|
|
541
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
542
|
+
*/
|
|
543
|
+
timeoutInSeconds?: number;
|
|
544
|
+
|
|
545
|
+
/**
|
|
546
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
547
|
+
*/
|
|
548
|
+
simulate?: boolean;
|
|
549
|
+
}) => Promise<AssembledTransaction<Option<u64>>>
|
|
550
|
+
|
|
551
|
+
/**
|
|
552
|
+
* Construct and simulate a set_verified transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
553
|
+
* Set the verification status of a member (ADR-003).
|
|
554
|
+
*
|
|
555
|
+
* Governor-only. Used after identity verification is complete.
|
|
556
|
+
* Unverified members cannot withdraw funds from the treasury.
|
|
557
|
+
*/
|
|
558
|
+
set_verified: ({member, verified}: {member: string, verified: boolean}, options?: {
|
|
559
|
+
/**
|
|
560
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
561
|
+
*/
|
|
562
|
+
fee?: number;
|
|
563
|
+
|
|
564
|
+
/**
|
|
565
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
566
|
+
*/
|
|
567
|
+
timeoutInSeconds?: number;
|
|
568
|
+
|
|
569
|
+
/**
|
|
570
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
571
|
+
*/
|
|
572
|
+
simulate?: boolean;
|
|
573
|
+
}) => Promise<AssembledTransaction<Result<void>>>
|
|
574
|
+
|
|
575
|
+
/**
|
|
576
|
+
* Construct and simulate a total_supply transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
577
|
+
* Get total supply of minted tokens
|
|
578
|
+
*/
|
|
579
|
+
total_supply: (options?: {
|
|
580
|
+
/**
|
|
581
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
582
|
+
*/
|
|
583
|
+
fee?: number;
|
|
584
|
+
|
|
585
|
+
/**
|
|
586
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
587
|
+
*/
|
|
588
|
+
timeoutInSeconds?: number;
|
|
589
|
+
|
|
590
|
+
/**
|
|
591
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
592
|
+
*/
|
|
593
|
+
simulate?: boolean;
|
|
594
|
+
}) => Promise<AssembledTransaction<u64>>
|
|
595
|
+
|
|
596
|
+
/**
|
|
597
|
+
* Construct and simulate a guardian_mint transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
598
|
+
* Mint a new soulbound NFT using backend signature (Guardian).
|
|
599
|
+
*
|
|
600
|
+
* Payload: account | valor_id | nonce | expiry
|
|
601
|
+
*/
|
|
602
|
+
guardian_mint: ({account, valor_id, signature, nonce, expiry}: {account: string, valor_id: u64, signature: Buffer, nonce: u64, expiry: u64}, options?: {
|
|
603
|
+
/**
|
|
604
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
605
|
+
*/
|
|
606
|
+
fee?: number;
|
|
607
|
+
|
|
608
|
+
/**
|
|
609
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
610
|
+
*/
|
|
611
|
+
timeoutInSeconds?: number;
|
|
612
|
+
|
|
613
|
+
/**
|
|
614
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
615
|
+
*/
|
|
616
|
+
simulate?: boolean;
|
|
617
|
+
}) => Promise<AssembledTransaction<Result<u64>>>
|
|
618
|
+
|
|
619
|
+
/**
|
|
620
|
+
* Construct and simulate a self_register transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
621
|
+
*/
|
|
622
|
+
self_register: ({caller, signature, nonce, expiry}: {caller: string, signature: Buffer, nonce: u64, expiry: u64}, options?: {
|
|
623
|
+
/**
|
|
624
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
625
|
+
*/
|
|
626
|
+
fee?: number;
|
|
627
|
+
|
|
628
|
+
/**
|
|
629
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
630
|
+
*/
|
|
631
|
+
timeoutInSeconds?: number;
|
|
632
|
+
|
|
633
|
+
/**
|
|
634
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
635
|
+
*/
|
|
636
|
+
simulate?: boolean;
|
|
637
|
+
}) => Promise<AssembledTransaction<Result<u64>>>
|
|
638
|
+
|
|
639
|
+
/**
|
|
640
|
+
* Construct and simulate a calculate_mana transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
641
|
+
* Calculate Mana (voting power with Member Floor)
|
|
642
|
+
*
|
|
643
|
+
* Formula: Mana = floor + bonus
|
|
644
|
+
* - floor = MEMBER_FLOOR (fixed constant, e.g. 5)
|
|
645
|
+
* - extra_level = level - floor
|
|
646
|
+
* - bonus = (extra_level * time_remaining) / VACANCY_PERIOD
|
|
647
|
+
*
|
|
648
|
+
* Inactive members decay to exactly MEMBER_FLOOR regardless of their
|
|
649
|
+
* accumulated level. Legacy status offers zero protection against inactivity.
|
|
650
|
+
*/
|
|
651
|
+
calculate_mana: ({level, permanent_level, expiry, current_time}: {level: u64, permanent_level: u64, expiry: u64, current_time: u64}, options?: {
|
|
652
|
+
/**
|
|
653
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
654
|
+
*/
|
|
655
|
+
fee?: number;
|
|
656
|
+
|
|
657
|
+
/**
|
|
658
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
659
|
+
*/
|
|
660
|
+
timeoutInSeconds?: number;
|
|
661
|
+
|
|
662
|
+
/**
|
|
663
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
664
|
+
*/
|
|
665
|
+
simulate?: boolean;
|
|
666
|
+
}) => Promise<AssembledTransaction<u64>>
|
|
667
|
+
|
|
668
|
+
/**
|
|
669
|
+
* Construct and simulate a vacancy_period transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
670
|
+
* Get the vacancy period (180 days in seconds)
|
|
671
|
+
*/
|
|
672
|
+
vacancy_period: (options?: {
|
|
673
|
+
/**
|
|
674
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
675
|
+
*/
|
|
676
|
+
fee?: number;
|
|
677
|
+
|
|
678
|
+
/**
|
|
679
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
680
|
+
*/
|
|
681
|
+
timeoutInSeconds?: number;
|
|
682
|
+
|
|
683
|
+
/**
|
|
684
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
685
|
+
*/
|
|
686
|
+
simulate?: boolean;
|
|
687
|
+
}) => Promise<AssembledTransaction<u64>>
|
|
688
|
+
|
|
689
|
+
/**
|
|
690
|
+
* Construct and simulate a update_governor transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
691
|
+
* Update the governor contract address (migration path).
|
|
692
|
+
* Only callable by the current governor.
|
|
693
|
+
*/
|
|
694
|
+
update_governor: ({new_governor}: {new_governor: string}, options?: {
|
|
695
|
+
/**
|
|
696
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
697
|
+
*/
|
|
698
|
+
fee?: number;
|
|
699
|
+
|
|
700
|
+
/**
|
|
701
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
702
|
+
*/
|
|
703
|
+
timeoutInSeconds?: number;
|
|
704
|
+
|
|
705
|
+
/**
|
|
706
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
707
|
+
*/
|
|
708
|
+
simulate?: boolean;
|
|
709
|
+
}) => Promise<AssembledTransaction<Result<void>>>
|
|
710
|
+
|
|
711
|
+
/**
|
|
712
|
+
* Construct and simulate a update_treasury transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
713
|
+
* Update the treasury contract address.
|
|
714
|
+
* Only callable by the current governor.
|
|
715
|
+
*/
|
|
716
|
+
update_treasury: ({new_treasury}: {new_treasury: string}, options?: {
|
|
717
|
+
/**
|
|
718
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
719
|
+
*/
|
|
720
|
+
fee?: number;
|
|
721
|
+
|
|
722
|
+
/**
|
|
723
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
724
|
+
*/
|
|
725
|
+
timeoutInSeconds?: number;
|
|
726
|
+
|
|
727
|
+
/**
|
|
728
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
729
|
+
*/
|
|
730
|
+
simulate?: boolean;
|
|
731
|
+
}) => Promise<AssembledTransaction<Result<void>>>
|
|
732
|
+
|
|
733
|
+
/**
|
|
734
|
+
* Construct and simulate a has_voting_power transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
735
|
+
* Check if account has any active voting power
|
|
736
|
+
*
|
|
737
|
+
* Any registered account (level > 0) always has at least MEMBER_FLOOR voting power.
|
|
738
|
+
*/
|
|
739
|
+
has_voting_power: ({account}: {account: string}, options?: {
|
|
740
|
+
/**
|
|
741
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
742
|
+
*/
|
|
743
|
+
fee?: number;
|
|
744
|
+
|
|
745
|
+
/**
|
|
746
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
747
|
+
*/
|
|
748
|
+
timeoutInSeconds?: number;
|
|
749
|
+
|
|
750
|
+
/**
|
|
751
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
752
|
+
*/
|
|
753
|
+
simulate?: boolean;
|
|
754
|
+
}) => Promise<AssembledTransaction<boolean>>
|
|
755
|
+
|
|
756
|
+
/**
|
|
757
|
+
* Construct and simulate a permanent_level_of transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
758
|
+
* Get the permanent level of an account
|
|
759
|
+
*/
|
|
760
|
+
permanent_level_of: ({account}: {account: string}, options?: {
|
|
761
|
+
/**
|
|
762
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
763
|
+
*/
|
|
764
|
+
fee?: number;
|
|
765
|
+
|
|
766
|
+
/**
|
|
767
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
768
|
+
*/
|
|
769
|
+
timeoutInSeconds?: number;
|
|
770
|
+
|
|
771
|
+
/**
|
|
772
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
773
|
+
*/
|
|
774
|
+
simulate?: boolean;
|
|
775
|
+
}) => Promise<AssembledTransaction<u64>>
|
|
776
|
+
|
|
777
|
+
}
|
|
778
|
+
export class Client extends ContractClient {
|
|
779
|
+
static async deploy<T = Client>(
|
|
780
|
+
/** Options for initializing a Client as well as for calling a method, with extras specific to deploying. */
|
|
781
|
+
options: MethodOptions &
|
|
782
|
+
Omit<ContractClientOptions, "contractId"> & {
|
|
783
|
+
/** The hash of the Wasm blob, which must already be installed on-chain. */
|
|
784
|
+
wasmHash: Buffer | string;
|
|
785
|
+
/** Salt used to generate the contract's ID. Passed through to {@link Operation.createCustomContract}. Default: random. */
|
|
786
|
+
salt?: Buffer | Uint8Array;
|
|
787
|
+
/** The format used to decode `wasmHash`, if it's provided as a string. */
|
|
788
|
+
format?: "hex" | "base64";
|
|
789
|
+
}
|
|
790
|
+
): Promise<AssembledTransaction<T>> {
|
|
791
|
+
return ContractClient.deploy(null, options)
|
|
792
|
+
}
|
|
793
|
+
constructor(public readonly options: ContractClientOptions) {
|
|
794
|
+
super(
|
|
795
|
+
new ContractSpec([ "AAAAAAAAALtNaW50IGEgbmV3IHNvdWxib3VuZCBORlQgdG8gYW4gYWNjb3VudC4KClJlcXVpcmVzIGF1dGhvcml6YXRpb24gZnJvbSBhIHZhbGlkIG1pbnRlciBmb3IgdGhlIHNwZWNpZmljIGJhZGdlIGNhdGVnb3J5LgotIEdvdmVybmFuY2UvTGVhZGVyc2hpcC9UcmFjazogU2VlIFJCQUMgbWF0cml4Ci0gQ29tbXVuaXR5OiBBbnkgbWVtYmVyAAAAAARtaW50AAAAAwAAAAAAAAAGbWludGVyAAAAAAATAAAAAAAAAAlyZWNpcGllbnQAAAAAAAATAAAAAAAAAAh2YWxvcl9pZAAAAAYAAAABAAAD6QAAAAYAAAfQAAAADlZhbG9jcmFjeUVycm9yAAA=",
|
|
796
|
+
"AAAAAAAAABVHZXQgdGhlIGNvbnRyYWN0IG5hbWUAAAAAAAAEbmFtZQAAAAAAAAABAAAAEA==",
|
|
797
|
+
"AAAAAAAAAJpSZXZva2UgKGJ1cm4pIGEgYmFkZ2UgdG9rZW4uCgpHb3Zlcm5vci1vbmx5LiBSZW1vdmVzIHRoZSB0b2tlbiwgcmVkdWNlcyB0aGUgdXNlcidzIGxldmVsIGJ5CnRoZSBiYWRnZSdzIHJhcml0eSB2YWx1ZS4gVXNlZCBmb3IgZ292ZXJuYW5jZS1kZWNpZGVkIHJlbW92YWwuAAAAAAAGcmV2b2tlAAAAAAABAAAAAAAAAAh0b2tlbl9pZAAAAAYAAAABAAAD6QAAA+0AAAAAAAAH0AAAAA5WYWxvY3JhY3lFcnJvcgAA",
|
|
798
|
+
"AAAAAAAAABdHZXQgdGhlIGNvbnRyYWN0IHN5bWJvbAAAAAAGc3ltYm9sAAAAAAAAAAAAAQAAABA=",
|
|
799
|
+
"AAAAAAAAABdHZXQgdGhlIGZvdW5kZXIgYWRkcmVzcwAAAAAHZm91bmRlcgAAAAAAAAAAAQAAA+gAAAAT",
|
|
800
|
+
"AAAAAAAAAGZVcGdyYWRlIHRoZSBjb250cmFjdCB0byBhIG5ldyBXQVNNIGhhc2guCk9ubHkgY2FsbGFibGUgYnkgdGhlIGdvdmVybm9yIChyZXF1aXJlcyBnb3Zlcm5hbmNlIHByb3Bvc2FsKS4AAAAAAAd1cGdyYWRlAAAAAAEAAAAAAAAADW5ld193YXNtX2hhc2gAAAAAAAPuAAAAIAAAAAEAAAPpAAAD7QAAAAAAAAfQAAAADlZhbG9jcmFjeUVycm9yAAA=",
|
|
801
|
+
"AAAAAAAAACFHZXQgdGhlIGdvdmVybm9yIGNvbnRyYWN0IGFkZHJlc3MAAAAAAAAIZ292ZXJub3IAAAAAAAAAAQAAA+gAAAAT",
|
|
802
|
+
"AAAAAAAAAC9HZXQgdGhlIHJhdyBsZXZlbCBvZiBhbiBhY2NvdW50ICh3aXRob3V0IGRlY2F5KQAAAAAIbGV2ZWxfb2YAAAABAAAAAAAAAAdhY2NvdW50AAAAABMAAAABAAAABg==",
|
|
803
|
+
"AAAAAAAAABhHZXQgdGhlIG93bmVyIG9mIGEgdG9rZW4AAAAIb3duZXJfb2YAAAABAAAAAAAAAAh0b2tlbl9pZAAAAAYAAAABAAAD6AAAABM=",
|
|
804
|
+
"AAAAAAAAACFHZXQgdGhlIHRyZWFzdXJ5IGNvbnRyYWN0IGFkZHJlc3MAAAAAAAAIdHJlYXN1cnkAAAAAAAAAAQAAA+gAAAAT",
|
|
805
|
+
"AAAAAAAAACZHZXQgdGhlIGV4cGlyeSB0aW1lc3RhbXAgb2YgYW4gYWNjb3VudAAAAAAACWV4cGlyeV9vZgAAAAAAAAEAAAAAAAAAB2FjY291bnQAAAAAEwAAAAEAAAAG",
|
|
806
|
+
"AAAAAAAAALhHZXQgdGhlIGN1cnJlbnQgdm90aW5nIHBvd2VyIChNYW5hKSBvZiBhbiBhY2NvdW50CgpNYW5hID0gTUVNQkVSX0ZMT09SICsgYm9udXMgKGRlY2F5IGFwcGxpZXMgdG8gZXh0cmFfbGV2ZWwgb25seSkKUmVnaXN0ZXJlZCBhY2NvdW50cyBhbHdheXMgcmV0YWluIGF0IGxlYXN0IE1FTUJFUl9GTE9PUiB2b3RpbmcgcG93ZXIuAAAACWdldF92b3RlcwAAAAAAAAEAAAAAAAAAB2FjY291bnQAAAAAEwAAAAEAAAAG",
|
|
807
|
+
"AAAAAAAAAB5HZXQgdGhlIHJhcml0eSBvZiBhIHZhbG9yIHR5cGUAAAAAAAlyYXJpdHlfb2YAAAAAAAABAAAAAAAAAAh2YWxvcl9pZAAAAAYAAAABAAAABg==",
|
|
808
|
+
"AAAAAAAAAHlDcmVhdGUgb3IgdXBkYXRlIGEgVmFsb3IgdHlwZSB3aXRoIHJhcml0eSBhbmQgbWV0YWRhdGEuCgpHb3Zlcm5vci1vbmx5LiBCYWRnZSB0eXBlIGNoYW5nZXMgcmVxdWlyZSBhIGdvdmVybmFuY2UgcHJvcG9zYWwuAAAAAAAACXNldF92YWxvcgAAAAAAAAMAAAAAAAAACHZhbG9yX2lkAAAABgAAAAAAAAAGcmFyaXR5AAAAAAAGAAAAAAAAAAhtZXRhZGF0YQAAABAAAAABAAAD6QAAA+0AAAAAAAAH0AAAAA5WYWxvY3JhY3lFcnJvcgAA",
|
|
809
|
+
"AAAAAAAAAshJbml0aWFsaXplIHRoZSBWYWxvY3JhY3kgY29udHJhY3QuCgpObyBhZG1pbjogc2V0cyBhbGwgY29uZmlndXJhdGlvbiBhdCBvbmNlLiBSZWdpc3RlcnMgaW5pdGlhbCB2YWxvciB0eXBlcywKbWludHMgdGhlIEZvdW5kZXIgYmFkZ2UsIGFuZCBzdG9yZXMgdGhlIG1lbWJlciBiYWRnZSBJRCBmb3Igc2VsZi1yZWdpc3RyYXRpb24uCgojIEFyZ3VtZW50cwoqIGBmb3VuZGVyYCAtIEFkZHJlc3MgdGhhdCByZWNlaXZlcyB0aGUgcGVybWFuZW50IEZvdW5kZXIgYmFkZ2UKKiBgZ292ZXJub3JgIC0gR292ZXJub3IgY29udHJhY3QgYWRkcmVzcwoqIGB0cmVhc3VyeWAgLSBUcmVhc3VyeSBjb250cmFjdCBhZGRyZXNzCiogYG5hbWVgIC0gQ29udHJhY3QgbmFtZQoqIGBzeW1ib2xgIC0gQ29udHJhY3Qgc3ltYm9sCiogYG1lbWJlcl92YWxvcl9pZGAgLSBWYWxvciBJRCB1c2VkIGJ5IHNlbGZfcmVnaXN0ZXIoKSAodGhlIE1lbWJlciBiYWRnZSkKKiBgdmFsb3JfaWRzYCAtIExpc3Qgb2YgdmFsb3IgSURzIHRvIHJlZ2lzdGVyCiogYHZhbG9yX3Jhcml0aWVzYCAtIExpc3Qgb2YgcmFyaXRpZXMgKHBhcmFsbGVsIHRvIHZhbG9yX2lkcykKKiBgdmFsb3JfbWV0YWRhdGFzYCAtIExpc3Qgb2YgbWV0YWRhdGEgc3RyaW5ncyAocGFyYWxsZWwgdG8gdmFsb3JfaWRzKQoqIGBmb3VuZGVyX3ZhbG9yX2lkYCAtIFdoaWNoIHZhbG9yX2lkIGlzIHRoZSBGb3VuZGVyIGJhZGdlAAAACmluaXRpYWxpemUAAAAAAAkAAAAAAAAAB2ZvdW5kZXIAAAAAEwAAAAAAAAAIZ292ZXJub3IAAAATAAAAAAAAAAh0cmVhc3VyeQAAABMAAAAAAAAAD21lbWJlcl92YWxvcl9pZAAAAAAGAAAAAAAAAAl2YWxvcl9pZHMAAAAAAAPqAAAABgAAAAAAAAAOdmFsb3JfcmFyaXRpZXMAAAAAA+oAAAAGAAAAAAAAAA92YWxvcl9tZXRhZGF0YXMAAAAD6gAAABAAAAAAAAAAEGZvdW5kZXJfdmFsb3JfaWQAAAAGAAAAAAAAAAZzaWduZXIAAAAAA+4AAAAgAAAAAQAAA+kAAAPtAAAAAAAAB9AAAAAOVmFsb2NyYWN5RXJyb3IAAA==",
|
|
810
|
+
"AAAAAAAAAHFDaGVjayBpZiBhIG1lbWJlciBoYXMgY29tcGxldGVkIGlkZW50aXR5IHZlcmlmaWNhdGlvbiAoQURSLTAwMykuCgpSZXR1cm5zIGZhbHNlIGlmIHRoZSBhY2NvdW50IGlzIG5vdCByZWdpc3RlcmVkLgAAAAAAAAtpc192ZXJpZmllZAAAAAABAAAAAAAAAAdhY2NvdW50AAAAABMAAAABAAAAAQ==",
|
|
811
|
+
"AAAAAAAAACBHZXQgdGhlIG1ldGFkYXRhIG9mIGEgdmFsb3IgdHlwZQAAAAttZXRhZGF0YV9vZgAAAAABAAAAAAAAAAh2YWxvcl9pZAAAAAYAAAABAAAAEA==",
|
|
812
|
+
"AAAAAAAAACJHZXQgdGhlIHZhbG9yIElEIGxpbmtlZCB0byBhIHRva2VuAAAAAAALdmFsb3JfaWRfb2YAAAAAAQAAAAAAAAAIdG9rZW5faWQAAAAGAAAAAQAAA+gAAAAG",
|
|
813
|
+
"AAAAAAAAAKxTZXQgdGhlIHZlcmlmaWNhdGlvbiBzdGF0dXMgb2YgYSBtZW1iZXIgKEFEUi0wMDMpLgoKR292ZXJub3Itb25seS4gVXNlZCBhZnRlciBpZGVudGl0eSB2ZXJpZmljYXRpb24gaXMgY29tcGxldGUuClVudmVyaWZpZWQgbWVtYmVycyBjYW5ub3Qgd2l0aGRyYXcgZnVuZHMgZnJvbSB0aGUgdHJlYXN1cnkuAAAADHNldF92ZXJpZmllZAAAAAIAAAAAAAAABm1lbWJlcgAAAAAAEwAAAAAAAAAIdmVyaWZpZWQAAAABAAAAAQAAA+kAAAPtAAAAAAAAB9AAAAAOVmFsb2NyYWN5RXJyb3IAAA==",
|
|
814
|
+
"AAAAAAAAACFHZXQgdG90YWwgc3VwcGx5IG9mIG1pbnRlZCB0b2tlbnMAAAAAAAAMdG90YWxfc3VwcGx5AAAAAAAAAAEAAAAG",
|
|
815
|
+
"AAAAAAAAAGpNaW50IGEgbmV3IHNvdWxib3VuZCBORlQgdXNpbmcgYmFja2VuZCBzaWduYXR1cmUgKEd1YXJkaWFuKS4KClBheWxvYWQ6IGFjY291bnQgfCB2YWxvcl9pZCB8IG5vbmNlIHwgZXhwaXJ5AAAAAAANZ3VhcmRpYW5fbWludAAAAAAAAAUAAAAAAAAAB2FjY291bnQAAAAAEwAAAAAAAAAIdmFsb3JfaWQAAAAGAAAAAAAAAAlzaWduYXR1cmUAAAAAAAPuAAAAQAAAAAAAAAAFbm9uY2UAAAAAAAAGAAAAAAAAAAZleHBpcnkAAAAAAAYAAAABAAAD6QAAAAYAAAfQAAAADlZhbG9jcmFjeUVycm9yAAA=",
|
|
816
|
+
"AAAAAAAAAAAAAAANc2VsZl9yZWdpc3RlcgAAAAAAAAQAAAAAAAAABmNhbGxlcgAAAAAAEwAAAAAAAAAJc2lnbmF0dXJlAAAAAAAD7gAAAEAAAAAAAAAABW5vbmNlAAAAAAAABgAAAAAAAAAGZXhwaXJ5AAAAAAAGAAAAAQAAA+kAAAAGAAAH0AAAAA5WYWxvY3JhY3lFcnJvcgAA",
|
|
817
|
+
"AAAAAAAAAWZDYWxjdWxhdGUgTWFuYSAodm90aW5nIHBvd2VyIHdpdGggTWVtYmVyIEZsb29yKQoKRm9ybXVsYTogTWFuYSA9IGZsb29yICsgYm9udXMKLSBmbG9vciA9IE1FTUJFUl9GTE9PUiAoZml4ZWQgY29uc3RhbnQsIGUuZy4gNSkKLSBleHRyYV9sZXZlbCA9IGxldmVsIC0gZmxvb3IKLSBib251cyA9IChleHRyYV9sZXZlbCAqIHRpbWVfcmVtYWluaW5nKSAvIFZBQ0FOQ1lfUEVSSU9ECgpJbmFjdGl2ZSBtZW1iZXJzIGRlY2F5IHRvIGV4YWN0bHkgTUVNQkVSX0ZMT09SIHJlZ2FyZGxlc3Mgb2YgdGhlaXIKYWNjdW11bGF0ZWQgbGV2ZWwuIExlZ2FjeSBzdGF0dXMgb2ZmZXJzIHplcm8gcHJvdGVjdGlvbiBhZ2FpbnN0IGluYWN0aXZpdHkuAAAAAAAOY2FsY3VsYXRlX21hbmEAAAAAAAQAAAAAAAAABWxldmVsAAAAAAAABgAAAAAAAAAPcGVybWFuZW50X2xldmVsAAAAAAYAAAAAAAAABmV4cGlyeQAAAAAABgAAAAAAAAAMY3VycmVudF90aW1lAAAABgAAAAEAAAAG",
|
|
818
|
+
"AAAAAAAAACxHZXQgdGhlIHZhY2FuY3kgcGVyaW9kICgxODAgZGF5cyBpbiBzZWNvbmRzKQAAAA52YWNhbmN5X3BlcmlvZAAAAAAAAAAAAAEAAAAG",
|
|
819
|
+
"AAAAAAAAAF1VcGRhdGUgdGhlIGdvdmVybm9yIGNvbnRyYWN0IGFkZHJlc3MgKG1pZ3JhdGlvbiBwYXRoKS4KT25seSBjYWxsYWJsZSBieSB0aGUgY3VycmVudCBnb3Zlcm5vci4AAAAAAAAPdXBkYXRlX2dvdmVybm9yAAAAAAEAAAAAAAAADG5ld19nb3Zlcm5vcgAAABMAAAABAAAD6QAAA+0AAAAAAAAH0AAAAA5WYWxvY3JhY3lFcnJvcgAA",
|
|
820
|
+
"AAAAAAAAAExVcGRhdGUgdGhlIHRyZWFzdXJ5IGNvbnRyYWN0IGFkZHJlc3MuCk9ubHkgY2FsbGFibGUgYnkgdGhlIGN1cnJlbnQgZ292ZXJub3IuAAAAD3VwZGF0ZV90cmVhc3VyeQAAAAABAAAAAAAAAAxuZXdfdHJlYXN1cnkAAAATAAAAAQAAA+kAAAPtAAAAAAAAB9AAAAAOVmFsb2NyYWN5RXJyb3IAAA==",
|
|
821
|
+
"AAAAAAAAAH9DaGVjayBpZiBhY2NvdW50IGhhcyBhbnkgYWN0aXZlIHZvdGluZyBwb3dlcgoKQW55IHJlZ2lzdGVyZWQgYWNjb3VudCAobGV2ZWwgPiAwKSBhbHdheXMgaGFzIGF0IGxlYXN0IE1FTUJFUl9GTE9PUiB2b3RpbmcgcG93ZXIuAAAAABBoYXNfdm90aW5nX3Bvd2VyAAAAAQAAAAAAAAAHYWNjb3VudAAAAAATAAAAAQAAAAE=",
|
|
822
|
+
"AAAAAAAAACVHZXQgdGhlIHBlcm1hbmVudCBsZXZlbCBvZiBhbiBhY2NvdW50AAAAAAAAEnBlcm1hbmVudF9sZXZlbF9vZgAAAAAAAQAAAAAAAAAHYWNjb3VudAAAAAATAAAAAQAAAAY=",
|
|
823
|
+
"AAAAAQAAAC5WYWxvciB0eXBlIGRlZmluaXRpb24gd2l0aCByYXJpdHkgYW5kIG1ldGFkYXRhAAAAAAAAAAAABVZhbG9yAAAAAAAAAgAAAChNZXRhZGF0YSBzdHJpbmcgKGUuZy4sIGRlc2NyaXB0aW9uLCBVUkkpAAAACG1ldGFkYXRhAAAAEAAAAClUaGUgcmFyaXR5IG11bHRpcGxpZXIgZm9yIHRoaXMgdmFsb3IgdHlwZQAAAAAAAAZyYXJpdHkAAAAAAAY=",
|
|
824
|
+
"AAAAAQAAAC5Vc2VyIHN0YXRpc3RpY3MgaW5jbHVkaW5nIGxldmVsIGFuZCBleHBpcmF0aW9uAAAAAAAAAAAACVVzZXJTdGF0cwAAAAAAAAQAAAAnVGhlIGV4cGlyYXRpb24gdGltZXN0YW1wIChVbml4IHNlY29uZHMpAAAAAAZleHBpcnkAAAAAAAYAAAAgVGhlIGFjY3VtdWxhdGVkIGdvdmVybmFuY2UgbGV2ZWwAAAAFbGV2ZWwAAAAAAAAGAAAARlRoZSBwZXJtYW5lbnQgcG9ydGlvbiBvZiBsZXZlbCB0aGF0IG5ldmVyIGRlY2F5cyAoZS5nLiwgRm91bmRlciBiYWRnZSkAAAAAAA9wZXJtYW5lbnRfbGV2ZWwAAAAABgAAADZXaGV0aGVyIHRoZSB1c2VyIGhhcyB2ZXJpZmllZCB0aGVpciBpZGVudGl0eSAoQURSLTAwMykAAAAAAAh2ZXJpZmllZAAAAAE=",
|
|
825
|
+
"AAAABAAAAAAAAAAAAAAADlZhbG9jcmFjeUVycm9yAAAAAAAPAAAAJUNvbnRyYWN0IGhhcyBhbHJlYWR5IGJlZW4gaW5pdGlhbGl6ZWQAAAAAAAASQWxyZWFkeUluaXRpYWxpemVkAAAAAAABAAAAIUNvbnRyYWN0IGhhcyBub3QgYmVlbiBpbml0aWFsaXplZAAAAAAAAA5Ob3RJbml0aWFsaXplZAAAAAAAAgAAADtDYWxsZXIgaXMgbm90IGF1dGhvcml6ZWQgKG5vdCBhIG1lbWJlciBvciBub3QgdGhlIGdvdmVybm9yKQAAAAANTm90QXV0aG9yaXplZAAAAAAAAAMAAAAXVmFsb3IgSUQgZG9lcyBub3QgZXhpc3QAAAAAEE5vbkV4aXN0ZW50VmFsb3IAAAAEAAAAF1Rva2VuIElEIGRvZXMgbm90IGV4aXN0AAAAABBOb25FeGlzdGVudFRva2VuAAAABQAAABZBY2NvdW50IGRvZXMgbm90IGV4aXN0AAAAAAASTm9uRXhpc3RlbnRBY2NvdW50AAAAAAAGAAAALFRva2VuIGlzIHNvdWxib3VuZCBhbmQgY2Fubm90IGJlIHRyYW5zZmVycmVkAAAADlRva2VuU291bGJvdW5kAAAAAAAHAAAANVVzZXIgaGFzIGFscmVhZHkgc2VsZi1yZWdpc3RlcmVkIChoYXMgYSBNZW1iZXIgYmFkZ2UpAAAAAAAAEUFscmVhZHlSZWdpc3RlcmVkAAAAAAAACAAAABFJbnZhbGlkIHNpZ25hdHVyZQAAAAAAABBJbnZhbGlkU2lnbmF0dXJlAAAACQAAABJOb25jZSBhbHJlYWR5IHVzZWQAAAAAAAlOb25jZVVzZWQAAAAAAAAKAAAAEVNpZ25hdHVyZSBleHBpcmVkAAAAAAAAEFNpZ25hdHVyZUV4cGlyZWQAAAALAAAAEEludmFsaWQgVmFsb3IgSUQAAAAOSW52YWxpZFZhbG9ySWQAAAAAAAwAAAATTWludCBub3QgYXV0aG9yaXplZAAAAAARTWludE5vdEF1dGhvcml6ZWQAAAAAAAANAAAAEkJhZGdlIG5vdCBtaW50YWJsZQAAAAAAEEJhZGdlTm90TWludGFibGUAAAAOAAAAE1JlZW50cmFuY3kgZGV0ZWN0ZWQAAAAAElJlZW50cmFuY3lEZXRlY3RlZAAAAAAADw==",
|
|
826
|
+
"AAAAAgAAAB1TdG9yYWdlIGtleXMgZm9yIHRoZSBjb250cmFjdAAAAAAAAAAAAAAHRGF0YUtleQAAAAANAAAAAAAAAEpBZG1pbiBhZGRyZXNzIChrZXB0IGZvciBiYWNrd2FyZCBjb21wYXQgZHVyaW5nIG1pZ3JhdGlvbiwgd2lsbCBiZSByZW1vdmVkKQAAAAAABUFkbWluAAAAAAAAAAAAAClXaGV0aGVyIHRoZSBjb250cmFjdCBoYXMgYmVlbiBpbml0aWFsaXplZAAAAAAAAAtJbml0aWFsaXplZAAAAAAAAAAAMkZvdW5kZXIgYWRkcmVzcyAocmVjZWl2ZXMgcGVybWFuZW50IEZvdW5kZXIgYmFkZ2UpAAAAAAAHRm91bmRlcgAAAAAAAAAAGUdvdmVybm9yIGNvbnRyYWN0IGFkZHJlc3MAAAAAAAAIR292ZXJub3IAAAAAAAAAGVRyZWFzdXJ5IGNvbnRyYWN0IGFkZHJlc3MAAAAAAAAIVHJlYXN1cnkAAAAAAAAAFlRvdGFsIHN1cHBseSBvZiB0b2tlbnMAAAAAAAtUb3RhbFN1cHBseQAAAAAAAAAAOVRoZSB2YWxvcl9pZCB1c2VkIGJ5IHNlbGZfcmVnaXN0ZXIoKSBmb3IgdGhlIE1lbWJlciBiYWRnZQAAAAAAAA1NZW1iZXJWYWxvcklkAAAAAAAAAQAAABxUb2tlbiBJRCAtPiBWYWxvciBJRCBtYXBwaW5nAAAADFRva2VuVmFsb3JJZAAAAAEAAAAGAAAAAQAAAB5WYWxvciBJRCAtPiBWYWxvciBkYXRhIG1hcHBpbmcAAAAAAAlWYWxvckRhdGEAAAAAAAABAAAABgAAAAEAAAAcQWNjb3VudCAtPiBVc2VyU3RhdHMgbWFwcGluZwAAAAlVc2VyU3RhdHMAAAAAAAABAAAAEwAAAAEAAAAhVG9rZW4gSUQgLT4gT3duZXIgYWRkcmVzcyBtYXBwaW5nAAAAAAAAClRva2VuT3duZXIAAAAAAAEAAAAGAAAAAAAAAC1CYWNrZW5kIHB1YmxpYyBrZXkgZm9yIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24AAAAAAAAGU2lnbmVyAAAAAAABAAAAOVVzZWQgbm9uY2VzIGZvciByZXBsYXkgcHJvdGVjdGlvbjogKEFkZHJlc3MsIHU2NCkgLT4gYm9vbAAAAAAAAAlVc2VkTm9uY2UAAAAAAAACAAAAEwAAAAY=" ]),
|
|
827
|
+
options
|
|
828
|
+
)
|
|
829
|
+
}
|
|
830
|
+
|
|
831
|
+
}
|