@instadapp/interop-x 0.0.0-dev.ee3d74b → 0.0.0-dev.ef38dfb

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 (55) hide show
  1. package/dist/package.json +3 -1
  2. package/dist/src/abi/index.js +2 -0
  3. package/dist/src/abi/instList.json +232 -0
  4. package/dist/src/api/index.js +7 -0
  5. package/dist/src/constants/addresses.js +4 -2
  6. package/dist/src/db/models/transaction.js +15 -7
  7. package/dist/src/errors/index.js +10 -0
  8. package/dist/src/gnosis/actions/aaveV2/source.js +15 -4
  9. package/dist/src/gnosis/actions/aaveV2/target.js +78 -0
  10. package/dist/src/index.js +1 -1
  11. package/dist/src/tasks/InteropX/ProcessSubmitSubmitEvents.js +15 -3
  12. package/dist/src/tasks/InteropX/ProcessValidateEvents.js +184 -0
  13. package/dist/src/tasks/InteropX/SyncLogExecuteEvents.js +112 -0
  14. package/dist/src/tasks/InteropX/SyncLogSubmitEvents.js +1 -0
  15. package/dist/src/tasks/InteropX/SyncLogValidateEvents.js +105 -0
  16. package/dist/src/tasks/index.js +10 -1
  17. package/dist/src/typechain/InstList.js +2 -0
  18. package/dist/src/typechain/factories/InstList__factory.js +249 -0
  19. package/dist/src/typechain/factories/index.js +3 -1
  20. package/dist/src/typechain/index.js +3 -1
  21. package/dist/src/utils/async.js +18 -0
  22. package/dist/src/utils/dsa.js +24 -0
  23. package/dist/src/utils/formatting.js +17 -0
  24. package/dist/src/utils/gnosis.js +62 -0
  25. package/dist/src/utils/http.js +10 -0
  26. package/dist/src/utils/index.js +20 -219
  27. package/dist/src/utils/interop.js +16 -0
  28. package/dist/src/utils/web3.js +92 -0
  29. package/package.json +3 -1
  30. package/src/abi/index.ts +2 -0
  31. package/src/abi/instList.json +232 -0
  32. package/src/api/index.ts +8 -0
  33. package/src/constants/addresses.ts +5 -3
  34. package/src/db/models/transaction.ts +134 -80
  35. package/src/errors/index.ts +6 -0
  36. package/src/gnosis/actions/aaveV2/source.ts +19 -5
  37. package/src/gnosis/actions/aaveV2/target.ts +130 -2
  38. package/src/tasks/InteropX/ProcessSubmitSubmitEvents.ts +20 -3
  39. package/src/tasks/InteropX/ProcessValidateEvents.ts +274 -0
  40. package/src/tasks/InteropX/SyncLogExecuteEvents.ts +162 -0
  41. package/src/tasks/InteropX/SyncLogSubmitEvents.ts +1 -0
  42. package/src/tasks/InteropX/SyncLogValidateEvents.ts +152 -0
  43. package/src/tasks/index.ts +13 -1
  44. package/src/typechain/InstList.ts +402 -0
  45. package/src/typechain/factories/InstList__factory.ts +253 -0
  46. package/src/typechain/factories/index.ts +1 -0
  47. package/src/typechain/index.ts +2 -0
  48. package/src/utils/async.ts +22 -0
  49. package/src/utils/dsa.ts +30 -0
  50. package/src/utils/formatting.ts +15 -0
  51. package/src/utils/gnosis.ts +123 -0
  52. package/src/utils/http.ts +6 -0
  53. package/src/utils/index.ts +7 -365
  54. package/src/utils/interop.ts +28 -0
  55. package/src/utils/web3.ts +131 -0
@@ -86,6 +86,7 @@ class SyncLogSubmitEvents extends BaseTask {
86
86
  submitEvent: {
87
87
  actionId,
88
88
  actionIdHashHash,
89
+ actionIdHash: actionIdHashHash,
89
90
  vnonce: vnonce.toString(),
90
91
  position: {
91
92
  withdraw: position.withdraw.map((v) => ({
@@ -0,0 +1,152 @@
1
+ import { BaseTask } from "../BaseTask";
2
+ import Logger from "@/logger";
3
+ import { ethers } from "ethers";
4
+ import abi from "@/abi";
5
+ import { Transaction } from "@/db";
6
+ import {
7
+ generateInteropTransactionHash,
8
+ getContract,
9
+ getRpcProviderUrl,
10
+ } from "@/utils";
11
+ import { addresses } from "@/constants";
12
+ import { ChainId } from "@/types";
13
+ import config from "@/config";
14
+ import { InteropX } from "@/typechain";
15
+ import { Op } from "sequelize";
16
+
17
+ class SyncLogValidateEvents extends BaseTask {
18
+ contractAddress: string;
19
+ provider: ethers.providers.JsonRpcProvider;
20
+ contract: InteropX;
21
+ chainId: ChainId;
22
+
23
+ constructor({ chainId }: { chainId: ChainId }) {
24
+ super({
25
+ logger: new Logger("InteropX::SyncLogValidateEvents"),
26
+ });
27
+ this.chainId = chainId;
28
+ }
29
+
30
+ async pollHandler() {
31
+ const currentBlock = await this.provider.getBlockNumber();
32
+
33
+ const events = await this.contract.queryFilter(
34
+ this.contract.filters.LogValidate(),
35
+ currentBlock - 2000,
36
+ currentBlock
37
+ );
38
+
39
+ let processedEvents = 0;
40
+
41
+ for (const event of events) {
42
+ try {
43
+ if (!event.args) {
44
+ continue;
45
+ }
46
+
47
+ const {
48
+ sourceSpells,
49
+ position,
50
+ actionId,
51
+ actionIdHash,
52
+ sourceSender,
53
+ sourceDsaId,
54
+ targetDsaId,
55
+ sourceChainId,
56
+ targetChainId,
57
+ vnonce,
58
+ metadata,
59
+ } = event.args;
60
+
61
+ const uniqueIdentifier = {
62
+ actionId,
63
+ vnonce: vnonce.toString(),
64
+ sourceSender: sourceSender.toString(),
65
+ sourceChainId: sourceChainId.toNumber(),
66
+ targetChainId: targetChainId.toNumber(),
67
+ sourceDsaId: sourceDsaId.toString(),
68
+ targetDsaId: targetDsaId.toString(),
69
+ };
70
+
71
+ let transactionHash = generateInteropTransactionHash(uniqueIdentifier);
72
+
73
+ const transaction = await Transaction.findOne({
74
+ where: {
75
+ transactionHash,
76
+ validateEvent: { [Op.eq]: null },
77
+ },
78
+ });
79
+
80
+ if (!transaction) {
81
+ continue;
82
+ }
83
+
84
+ if (transaction.sourceStatus != "success") {
85
+ transaction.sourceStatus = "success";
86
+ }
87
+
88
+ if (!transaction.sourceCreatedAt) {
89
+ transaction.sourceCreatedAt = new Date();
90
+ }
91
+
92
+ transaction.sourceTransactionHash = event.transactionHash;
93
+ transaction.sourceBlockNumber = event.blockNumber;
94
+ transaction.sourceLogs = [];
95
+ transaction.validateEvent = {
96
+ actionId,
97
+ actionIdHashHash: actionIdHash,
98
+ actionIdHash,
99
+ vnonce: vnonce.toString(),
100
+ sourceSpells: sourceSpells.map(({ connector, data }) => ({
101
+ connector,
102
+ data,
103
+ })),
104
+ position: {
105
+ withdraw: position.withdraw.map((v) => ({
106
+ sourceToken: v.sourceToken,
107
+ targetToken: v.targetToken,
108
+ amount: v.amount.toString(),
109
+ })),
110
+ supply: position.supply.map((v) => ({
111
+ sourceToken: v.sourceToken,
112
+ targetToken: v.targetToken,
113
+ amount: v.amount.toString(),
114
+ })),
115
+ },
116
+ sourceChainId: sourceChainId.toNumber(),
117
+ targetChainId: targetChainId.toNumber(),
118
+ sourceSender,
119
+ sourceDsaId: sourceDsaId.toString(),
120
+ targetDsaId: targetDsaId.toString(),
121
+ metadata,
122
+ }
123
+ await transaction.save();
124
+
125
+ this.logger.info(`New InteropX tranaction: ${transactionHash} `);
126
+ } catch (error) {
127
+ this.logger.error(error);
128
+ }
129
+ }
130
+
131
+ if (processedEvents > 0)
132
+ this.logger.info(`${processedEvents} events processed`);
133
+ }
134
+
135
+ async start(): Promise<void> {
136
+ this.contractAddress = addresses[this.chainId].interopX;
137
+
138
+ this.provider = new ethers.providers.JsonRpcProvider(
139
+ getRpcProviderUrl(this.chainId)
140
+ );
141
+
142
+ this.contract = getContract<InteropX>(
143
+ this.contractAddress,
144
+ abi.interopX,
145
+ new ethers.Wallet(config.privateKey!, this.provider)
146
+ );
147
+
148
+ await super.start();
149
+ }
150
+ }
151
+
152
+ export default SyncLogValidateEvents;
@@ -7,6 +7,9 @@ import AutoUpdateTask from "./AutoUpdateTask";
7
7
 
8
8
  import SyncLogSubmitEvents from "./InteropX/SyncLogSubmitEvents";
9
9
  import ProcessSubmitSubmitEvents from "./InteropX/ProcessSubmitSubmitEvents";
10
+ import SyncLogValidateEvents from "./InteropX/SyncLogValidateEvents";
11
+ import ProcessValidateEvents from "./InteropX/ProcessValidateEvents";
12
+ import SyncLogExecuteEvents from "./InteropX/SyncLogExecuteEvents";
10
13
 
11
14
  export class Tasks {
12
15
 
@@ -21,6 +24,15 @@ export class Tasks {
21
24
  new ProcessSubmitSubmitEvents({ chainId: 137 }),
22
25
  new ProcessSubmitSubmitEvents({ chainId: 43114 }),
23
26
 
27
+ new SyncLogValidateEvents({ chainId: 137 }),
28
+ new SyncLogValidateEvents({ chainId: 43114 }),
29
+
30
+ new ProcessValidateEvents({ chainId: 137 }),
31
+ new ProcessValidateEvents({ chainId: 43114 }),
32
+
33
+ new SyncLogExecuteEvents({ targetChainId: 137 }),
34
+ new SyncLogExecuteEvents({ targetChainId: 43114 }),
35
+
24
36
  new SyncTransactionStatusTask(),
25
37
  ];
26
38
 
@@ -28,7 +40,7 @@ export class Tasks {
28
40
  for (const task of this.tasks) {
29
41
  try {
30
42
  task.start();
31
- await wait(1000)
43
+ await wait(300)
32
44
  } catch (error) {
33
45
  console.error(`Error starting task: ${task.constructor.name}`);
34
46
  }
@@ -0,0 +1,402 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ ContractTransaction,
11
+ Overrides,
12
+ PopulatedTransaction,
13
+ Signer,
14
+ utils,
15
+ } from "ethers";
16
+ import type { FunctionFragment, Result } from "@ethersproject/abi";
17
+ import type { Listener, Provider } from "@ethersproject/providers";
18
+ import type {
19
+ TypedEventFilter,
20
+ TypedEvent,
21
+ TypedListener,
22
+ OnEvent,
23
+ } from "./common";
24
+
25
+ export interface InstListInterface extends utils.Interface {
26
+ functions: {
27
+ "accountAddr(uint64)": FunctionFragment;
28
+ "accountID(address)": FunctionFragment;
29
+ "accountLink(uint64)": FunctionFragment;
30
+ "accountList(uint64,address)": FunctionFragment;
31
+ "accounts()": FunctionFragment;
32
+ "addAuth(address)": FunctionFragment;
33
+ "init(address)": FunctionFragment;
34
+ "instaIndex()": FunctionFragment;
35
+ "removeAuth(address)": FunctionFragment;
36
+ "userLink(address)": FunctionFragment;
37
+ "userList(address,uint64)": FunctionFragment;
38
+ };
39
+
40
+ getFunction(
41
+ nameOrSignatureOrTopic:
42
+ | "accountAddr"
43
+ | "accountID"
44
+ | "accountLink"
45
+ | "accountList"
46
+ | "accounts"
47
+ | "addAuth"
48
+ | "init"
49
+ | "instaIndex"
50
+ | "removeAuth"
51
+ | "userLink"
52
+ | "userList"
53
+ ): FunctionFragment;
54
+
55
+ encodeFunctionData(
56
+ functionFragment: "accountAddr",
57
+ values: [BigNumberish]
58
+ ): string;
59
+ encodeFunctionData(functionFragment: "accountID", values: [string]): string;
60
+ encodeFunctionData(
61
+ functionFragment: "accountLink",
62
+ values: [BigNumberish]
63
+ ): string;
64
+ encodeFunctionData(
65
+ functionFragment: "accountList",
66
+ values: [BigNumberish, string]
67
+ ): string;
68
+ encodeFunctionData(functionFragment: "accounts", values?: undefined): string;
69
+ encodeFunctionData(functionFragment: "addAuth", values: [string]): string;
70
+ encodeFunctionData(functionFragment: "init", values: [string]): string;
71
+ encodeFunctionData(
72
+ functionFragment: "instaIndex",
73
+ values?: undefined
74
+ ): string;
75
+ encodeFunctionData(functionFragment: "removeAuth", values: [string]): string;
76
+ encodeFunctionData(functionFragment: "userLink", values: [string]): string;
77
+ encodeFunctionData(
78
+ functionFragment: "userList",
79
+ values: [string, BigNumberish]
80
+ ): string;
81
+
82
+ decodeFunctionResult(
83
+ functionFragment: "accountAddr",
84
+ data: BytesLike
85
+ ): Result;
86
+ decodeFunctionResult(functionFragment: "accountID", data: BytesLike): Result;
87
+ decodeFunctionResult(
88
+ functionFragment: "accountLink",
89
+ data: BytesLike
90
+ ): Result;
91
+ decodeFunctionResult(
92
+ functionFragment: "accountList",
93
+ data: BytesLike
94
+ ): Result;
95
+ decodeFunctionResult(functionFragment: "accounts", data: BytesLike): Result;
96
+ decodeFunctionResult(functionFragment: "addAuth", data: BytesLike): Result;
97
+ decodeFunctionResult(functionFragment: "init", data: BytesLike): Result;
98
+ decodeFunctionResult(functionFragment: "instaIndex", data: BytesLike): Result;
99
+ decodeFunctionResult(functionFragment: "removeAuth", data: BytesLike): Result;
100
+ decodeFunctionResult(functionFragment: "userLink", data: BytesLike): Result;
101
+ decodeFunctionResult(functionFragment: "userList", data: BytesLike): Result;
102
+
103
+ events: {};
104
+ }
105
+
106
+ export interface InstList extends BaseContract {
107
+ connect(signerOrProvider: Signer | Provider | string): this;
108
+ attach(addressOrName: string): this;
109
+ deployed(): Promise<this>;
110
+
111
+ interface: InstListInterface;
112
+
113
+ queryFilter<TEvent extends TypedEvent>(
114
+ event: TypedEventFilter<TEvent>,
115
+ fromBlockOrBlockhash?: string | number | undefined,
116
+ toBlock?: string | number | undefined
117
+ ): Promise<Array<TEvent>>;
118
+
119
+ listeners<TEvent extends TypedEvent>(
120
+ eventFilter?: TypedEventFilter<TEvent>
121
+ ): Array<TypedListener<TEvent>>;
122
+ listeners(eventName?: string): Array<Listener>;
123
+ removeAllListeners<TEvent extends TypedEvent>(
124
+ eventFilter: TypedEventFilter<TEvent>
125
+ ): this;
126
+ removeAllListeners(eventName?: string): this;
127
+ off: OnEvent<this>;
128
+ on: OnEvent<this>;
129
+ once: OnEvent<this>;
130
+ removeListener: OnEvent<this>;
131
+
132
+ functions: {
133
+ accountAddr(
134
+ arg0: BigNumberish,
135
+ overrides?: CallOverrides
136
+ ): Promise<[string]>;
137
+
138
+ accountID(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>;
139
+
140
+ accountLink(
141
+ arg0: BigNumberish,
142
+ overrides?: CallOverrides
143
+ ): Promise<
144
+ [string, string, BigNumber] & {
145
+ first: string;
146
+ last: string;
147
+ count: BigNumber;
148
+ }
149
+ >;
150
+
151
+ accountList(
152
+ arg0: BigNumberish,
153
+ arg1: string,
154
+ overrides?: CallOverrides
155
+ ): Promise<[string, string] & { prev: string; next: string }>;
156
+
157
+ accounts(overrides?: CallOverrides): Promise<[BigNumber]>;
158
+
159
+ addAuth(
160
+ _owner: string,
161
+ overrides?: Overrides & { from?: string | Promise<string> }
162
+ ): Promise<ContractTransaction>;
163
+
164
+ init(
165
+ _account: string,
166
+ overrides?: Overrides & { from?: string | Promise<string> }
167
+ ): Promise<ContractTransaction>;
168
+
169
+ instaIndex(overrides?: CallOverrides): Promise<[string]>;
170
+
171
+ removeAuth(
172
+ _owner: string,
173
+ overrides?: Overrides & { from?: string | Promise<string> }
174
+ ): Promise<ContractTransaction>;
175
+
176
+ userLink(
177
+ arg0: string,
178
+ overrides?: CallOverrides
179
+ ): Promise<
180
+ [BigNumber, BigNumber, BigNumber] & {
181
+ first: BigNumber;
182
+ last: BigNumber;
183
+ count: BigNumber;
184
+ }
185
+ >;
186
+
187
+ userList(
188
+ arg0: string,
189
+ arg1: BigNumberish,
190
+ overrides?: CallOverrides
191
+ ): Promise<[BigNumber, BigNumber] & { prev: BigNumber; next: BigNumber }>;
192
+ };
193
+
194
+ accountAddr(arg0: BigNumberish, overrides?: CallOverrides): Promise<string>;
195
+
196
+ accountID(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
197
+
198
+ accountLink(
199
+ arg0: BigNumberish,
200
+ overrides?: CallOverrides
201
+ ): Promise<
202
+ [string, string, BigNumber] & {
203
+ first: string;
204
+ last: string;
205
+ count: BigNumber;
206
+ }
207
+ >;
208
+
209
+ accountList(
210
+ arg0: BigNumberish,
211
+ arg1: string,
212
+ overrides?: CallOverrides
213
+ ): Promise<[string, string] & { prev: string; next: string }>;
214
+
215
+ accounts(overrides?: CallOverrides): Promise<BigNumber>;
216
+
217
+ addAuth(
218
+ _owner: string,
219
+ overrides?: Overrides & { from?: string | Promise<string> }
220
+ ): Promise<ContractTransaction>;
221
+
222
+ init(
223
+ _account: string,
224
+ overrides?: Overrides & { from?: string | Promise<string> }
225
+ ): Promise<ContractTransaction>;
226
+
227
+ instaIndex(overrides?: CallOverrides): Promise<string>;
228
+
229
+ removeAuth(
230
+ _owner: string,
231
+ overrides?: Overrides & { from?: string | Promise<string> }
232
+ ): Promise<ContractTransaction>;
233
+
234
+ userLink(
235
+ arg0: string,
236
+ overrides?: CallOverrides
237
+ ): Promise<
238
+ [BigNumber, BigNumber, BigNumber] & {
239
+ first: BigNumber;
240
+ last: BigNumber;
241
+ count: BigNumber;
242
+ }
243
+ >;
244
+
245
+ userList(
246
+ arg0: string,
247
+ arg1: BigNumberish,
248
+ overrides?: CallOverrides
249
+ ): Promise<[BigNumber, BigNumber] & { prev: BigNumber; next: BigNumber }>;
250
+
251
+ callStatic: {
252
+ accountAddr(arg0: BigNumberish, overrides?: CallOverrides): Promise<string>;
253
+
254
+ accountID(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
255
+
256
+ accountLink(
257
+ arg0: BigNumberish,
258
+ overrides?: CallOverrides
259
+ ): Promise<
260
+ [string, string, BigNumber] & {
261
+ first: string;
262
+ last: string;
263
+ count: BigNumber;
264
+ }
265
+ >;
266
+
267
+ accountList(
268
+ arg0: BigNumberish,
269
+ arg1: string,
270
+ overrides?: CallOverrides
271
+ ): Promise<[string, string] & { prev: string; next: string }>;
272
+
273
+ accounts(overrides?: CallOverrides): Promise<BigNumber>;
274
+
275
+ addAuth(_owner: string, overrides?: CallOverrides): Promise<void>;
276
+
277
+ init(_account: string, overrides?: CallOverrides): Promise<void>;
278
+
279
+ instaIndex(overrides?: CallOverrides): Promise<string>;
280
+
281
+ removeAuth(_owner: string, overrides?: CallOverrides): Promise<void>;
282
+
283
+ userLink(
284
+ arg0: string,
285
+ overrides?: CallOverrides
286
+ ): Promise<
287
+ [BigNumber, BigNumber, BigNumber] & {
288
+ first: BigNumber;
289
+ last: BigNumber;
290
+ count: BigNumber;
291
+ }
292
+ >;
293
+
294
+ userList(
295
+ arg0: string,
296
+ arg1: BigNumberish,
297
+ overrides?: CallOverrides
298
+ ): Promise<[BigNumber, BigNumber] & { prev: BigNumber; next: BigNumber }>;
299
+ };
300
+
301
+ filters: {};
302
+
303
+ estimateGas: {
304
+ accountAddr(
305
+ arg0: BigNumberish,
306
+ overrides?: CallOverrides
307
+ ): Promise<BigNumber>;
308
+
309
+ accountID(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
310
+
311
+ accountLink(
312
+ arg0: BigNumberish,
313
+ overrides?: CallOverrides
314
+ ): Promise<BigNumber>;
315
+
316
+ accountList(
317
+ arg0: BigNumberish,
318
+ arg1: string,
319
+ overrides?: CallOverrides
320
+ ): Promise<BigNumber>;
321
+
322
+ accounts(overrides?: CallOverrides): Promise<BigNumber>;
323
+
324
+ addAuth(
325
+ _owner: string,
326
+ overrides?: Overrides & { from?: string | Promise<string> }
327
+ ): Promise<BigNumber>;
328
+
329
+ init(
330
+ _account: string,
331
+ overrides?: Overrides & { from?: string | Promise<string> }
332
+ ): Promise<BigNumber>;
333
+
334
+ instaIndex(overrides?: CallOverrides): Promise<BigNumber>;
335
+
336
+ removeAuth(
337
+ _owner: string,
338
+ overrides?: Overrides & { from?: string | Promise<string> }
339
+ ): Promise<BigNumber>;
340
+
341
+ userLink(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
342
+
343
+ userList(
344
+ arg0: string,
345
+ arg1: BigNumberish,
346
+ overrides?: CallOverrides
347
+ ): Promise<BigNumber>;
348
+ };
349
+
350
+ populateTransaction: {
351
+ accountAddr(
352
+ arg0: BigNumberish,
353
+ overrides?: CallOverrides
354
+ ): Promise<PopulatedTransaction>;
355
+
356
+ accountID(
357
+ arg0: string,
358
+ overrides?: CallOverrides
359
+ ): Promise<PopulatedTransaction>;
360
+
361
+ accountLink(
362
+ arg0: BigNumberish,
363
+ overrides?: CallOverrides
364
+ ): Promise<PopulatedTransaction>;
365
+
366
+ accountList(
367
+ arg0: BigNumberish,
368
+ arg1: string,
369
+ overrides?: CallOverrides
370
+ ): Promise<PopulatedTransaction>;
371
+
372
+ accounts(overrides?: CallOverrides): Promise<PopulatedTransaction>;
373
+
374
+ addAuth(
375
+ _owner: string,
376
+ overrides?: Overrides & { from?: string | Promise<string> }
377
+ ): Promise<PopulatedTransaction>;
378
+
379
+ init(
380
+ _account: string,
381
+ overrides?: Overrides & { from?: string | Promise<string> }
382
+ ): Promise<PopulatedTransaction>;
383
+
384
+ instaIndex(overrides?: CallOverrides): Promise<PopulatedTransaction>;
385
+
386
+ removeAuth(
387
+ _owner: string,
388
+ overrides?: Overrides & { from?: string | Promise<string> }
389
+ ): Promise<PopulatedTransaction>;
390
+
391
+ userLink(
392
+ arg0: string,
393
+ overrides?: CallOverrides
394
+ ): Promise<PopulatedTransaction>;
395
+
396
+ userList(
397
+ arg0: string,
398
+ arg1: BigNumberish,
399
+ overrides?: CallOverrides
400
+ ): Promise<PopulatedTransaction>;
401
+ };
402
+ }