@evergonlabs/tmi-protocol-api-client 0.3.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.
@@ -0,0 +1,1828 @@
1
+ import * as _hey_api_client_fetch from '@hey-api/client-fetch';
2
+ import { TDataShape, Options as Options$1, Client, Config } from '@hey-api/client-fetch';
3
+
4
+ type Platform = {
5
+ /**
6
+ * Supported chain id
7
+ */
8
+ chainId: '11155111' | '31337';
9
+ /**
10
+ * Transaction hash
11
+ */
12
+ txHash: string;
13
+ /**
14
+ * Date ISO format
15
+ */
16
+ createdAt: Date;
17
+ contractAddress: string;
18
+ adminAddress: string;
19
+ /**
20
+ * Date ISO format
21
+ */
22
+ updatedAt: Date;
23
+ };
24
+ /**
25
+ * Provide page details in order to implement pagination
26
+ */
27
+ type PageRequest = {
28
+ /**
29
+ * How many entries to skip from the start
30
+ */
31
+ skip: number;
32
+ /**
33
+ * How many items per page should be retrieved
34
+ */
35
+ limit: number;
36
+ };
37
+ type Pool = {
38
+ /**
39
+ * Supported chain id
40
+ */
41
+ chainId: '11155111' | '31337';
42
+ /**
43
+ * Address of deployed Platform contract
44
+ */
45
+ platform: string;
46
+ rewardsHandler: string;
47
+ assetHandler: string;
48
+ /**
49
+ * Transaction hash
50
+ */
51
+ txHash: string;
52
+ /**
53
+ * Id of a Pool
54
+ */
55
+ poolId: string;
56
+ /**
57
+ * Date ISO format
58
+ */
59
+ createdAt: Date;
60
+ };
61
+ type Stake = {
62
+ /**
63
+ * Supported chain id
64
+ */
65
+ chainId: '11155111' | '31337';
66
+ /**
67
+ * Address of deployed Platform contract
68
+ */
69
+ platform: string;
70
+ /**
71
+ * If empty or 0 then it's platform-wide
72
+ */
73
+ poolId?: string;
74
+ /**
75
+ * Address role assigned to
76
+ */
77
+ owner: string;
78
+ /**
79
+ * Id of a Stake position (NFT Id)
80
+ */
81
+ stakeId: string;
82
+ activePackets: string;
83
+ rewardsClaimed: string;
84
+ /**
85
+ * Whether stake is active or withdrawn and closed
86
+ */
87
+ isActive: boolean;
88
+ /**
89
+ * Date ISO format
90
+ */
91
+ unlockTimestamp: Date;
92
+ /**
93
+ * Date ISO format
94
+ */
95
+ startTimestamp: Date;
96
+ /**
97
+ * Date ISO format
98
+ */
99
+ createdAt: Date;
100
+ /**
101
+ * Date ISO format
102
+ */
103
+ updatedAt: Date;
104
+ };
105
+ type StakeEvent = {
106
+ /**
107
+ * Unique event id
108
+ */
109
+ id: string;
110
+ /**
111
+ * Supported chain id
112
+ */
113
+ chainId: '11155111' | '31337';
114
+ /**
115
+ * Address of deployed Platform contract
116
+ */
117
+ platform: string;
118
+ /**
119
+ * If empty or 0 then it's platform-wide
120
+ */
121
+ poolId?: string;
122
+ /**
123
+ * Address role assigned to
124
+ */
125
+ owner: string;
126
+ /**
127
+ * Id of a Stake position (NFT Id)
128
+ */
129
+ stakeId: string;
130
+ /**
131
+ * Date ISO format
132
+ */
133
+ createdAt: Date;
134
+ /**
135
+ * Transaction hash
136
+ */
137
+ txHash: string;
138
+ };
139
+ type Role = {
140
+ /**
141
+ * User-friendly display name of a role
142
+ */
143
+ name: string;
144
+ /**
145
+ * Hexademical identifier of role
146
+ */
147
+ value: string;
148
+ };
149
+ /**
150
+ * Details of a transaction that can be sent to the blockchain
151
+ */
152
+ type Transaction = {
153
+ /**
154
+ * Encoded contract execution data
155
+ */
156
+ data: string;
157
+ /**
158
+ * Address of a contract to interact with
159
+ */
160
+ to: string;
161
+ details: {
162
+ /**
163
+ * Function name
164
+ */
165
+ functionName: string;
166
+ /**
167
+ * Address of a contract to interact with
168
+ */
169
+ address: string;
170
+ /**
171
+ * ABI of a contract. Can be used for error and data decoding
172
+ */
173
+ abi: Array<unknown>;
174
+ /**
175
+ * Decoded arguments
176
+ */
177
+ args: Array<unknown>;
178
+ };
179
+ };
180
+ type RoleAssignment = {
181
+ /**
182
+ * Supported chain id
183
+ */
184
+ chainId: '11155111' | '31337';
185
+ /**
186
+ * Address of deployed Platform contract
187
+ */
188
+ platform: string;
189
+ /**
190
+ * Hexademical identifier of role
191
+ */
192
+ roleId: string;
193
+ /**
194
+ * If empty or 0 then it's platform-wide
195
+ */
196
+ poolId?: string;
197
+ /**
198
+ * Address role assigned to
199
+ */
200
+ owner: string;
201
+ /**
202
+ * Date ISO format
203
+ */
204
+ createdAt: Date;
205
+ /**
206
+ * Date ISO format
207
+ */
208
+ updatedAt: Date;
209
+ };
210
+ type EstimateGasResponse = {
211
+ /**
212
+ * Amount of gas (in WEI) that is needed for specified transaction
213
+ */
214
+ value: string;
215
+ };
216
+ type AmountTwoBorder = {
217
+ /**
218
+ * The minimum number (uint256) of input packets required to create and maintain a position within the campaign must be less than or equal to maxAmount.
219
+ */
220
+ minAmount: string;
221
+ /**
222
+ * The maximum number (uint256) of input packets that a position can support within the campaign. must be strictly greater than 0 (if no upper limit is required, use safe uint256 value.
223
+ */
224
+ maxAmount: string;
225
+ };
226
+ /**
227
+ * An array of tuples where:
228
+ * 1st element: An amount of Packets defining thresholds for amount-based multipliers.
229
+ * 2nd element: A respective multiplier values for each threshold.
230
+ *
231
+ * Example of an interval-based schema configuration: If packetsAndMultipliers = `[[100, 2], [300, 4]]`:
232
+ * A position with less than 100 staked packets will receive an amount multiplier of 1 (no multiplier).
233
+ * A position with staked packets between 100 and 299 will receive an amount multiplier of 2.
234
+ * A position with staked packets 300 or more will receive an amount multiplier of 4.
235
+ *
236
+ * In addition to amount-wise scaling of rewards, staking campaigns may also scale
237
+ * rewards based on the lock period (i.e., lock multipliers).
238
+ *
239
+ * This implementation focuses solely on staked amount scaling, ensuring that
240
+ * positions receive rewards according to the interval-based amount multiplier
241
+ * schema defined by the associated campaign.
242
+ *
243
+ * IMPORTANT: `All values must be in strictly increasing order`
244
+ *
245
+ */
246
+ type AmountMultInterval = Array<[
247
+ string,
248
+ string
249
+ ]>;
250
+ /**
251
+ * Address and amount of tokens per Packet to be used as an Input for a Staking Pool
252
+ */
253
+ type Erc20Input = {
254
+ /**
255
+ * An address of the ERC20 token encapsulated by the Input Packet.
256
+ */
257
+ contract: string;
258
+ /**
259
+ * Amount of tokens per Packet (using Wei)
260
+ */
261
+ amountOfTokensPerPacket: string;
262
+ };
263
+ /**
264
+ * Address and amount of tokens per Packet to be used as a Reward for a staking Pool
265
+ */
266
+ type Erc20Reward = {
267
+ /**
268
+ * An address of the ERC20 token encapsulated by the reward Packet.
269
+ */
270
+ contract: string;
271
+ /**
272
+ * Amount of tokens per Packet
273
+ *
274
+ * IMPORTANT: should be parsed with each token's decimal precision (using wei values)
275
+ */
276
+ amountOfTokensPerPacket: string;
277
+ };
278
+ type Erc721Meta = {
279
+ /**
280
+ * Symbol for ERC721 that is going to be used on-chain
281
+ */
282
+ symbol: string;
283
+ /**
284
+ * Name for ERC721 that is going to be used on-chain
285
+ */
286
+ name: string;
287
+ /**
288
+ * Use ipfs base uri to maintain decentralized accessibility of metadata.
289
+ *
290
+ * You may also specify https but it's not recommended
291
+ */
292
+ baseUri: string;
293
+ };
294
+ /**
295
+ * Details of Rewards Distribution
296
+ */
297
+ type RewardDistributionComplex = {
298
+ /**
299
+ * Duration applied to perpetual reward distribution.
300
+ *
301
+ * e.g. Every 5 minute rewards are expected to be notified (it is not mandatory though)
302
+ */
303
+ duration: string;
304
+ /**
305
+ * The Wallet address that is configured as Distributor of Rewards
306
+ *
307
+ * Distributor must approve assets-spending for Diamond contract before Campaign is started
308
+ */
309
+ distributor: string;
310
+ };
311
+ type LockTwoBorder = {
312
+ /**
313
+ * The minimum required time duration (in seconds), that staked assets must
314
+ * be locked when the positions are either created (stake) or increased (restake).
315
+ *
316
+ *
317
+ *
318
+ * Note: Must be less than or equal to maxAcceptedLockPeriod.
319
+ */
320
+ minAcceptedLockPeriod: string;
321
+ /**
322
+ * The maximum allowed time duration (in seconds), that staked assets can be
323
+ * locked when the positions are either created (stake) or increased (restake).
324
+ *
325
+ *
326
+ *
327
+ * Note: Must be greater than 0 (if no upper limit is required, use max int 256).
328
+ */
329
+ maxAcceptedLockPeriod: string;
330
+ };
331
+ /**
332
+ * An array of tuples where:
333
+ *
334
+ * 1st element: A time duration (in seconds) defining lock duration thresholds for lock-based multipliers.
335
+ * 2nd element: A respective multiplier values for each threshold.
336
+ * Example: If lockPeriods = [[100, 2], [300, 4]]
337
+ *
338
+ * A position with lock duration less than 100 seconds will receive a lock multiplier of 1 (no multiplier).
339
+ * A position with lock duration between 100 and 299 seconds will receive a lock multiplier of 2.
340
+ * A position with lock duration 300 seconds or more will receive a lock multiplier of 4.
341
+ *
342
+ */
343
+ type LockMultInterval = Array<[
344
+ string,
345
+ string
346
+ ]>;
347
+ type GetStakingPlatformsGetV0Data = {
348
+ body?: never;
349
+ path?: never;
350
+ query: {
351
+ /**
352
+ * Supported chain id
353
+ */
354
+ chainId: '11155111' | '31337';
355
+ /**
356
+ * Address of deployed Platform contract
357
+ */
358
+ address: string;
359
+ };
360
+ url: '/staking/platforms/get/v0';
361
+ };
362
+ type GetStakingPlatformsGetV0Errors = {
363
+ /**
364
+ * Zod Error
365
+ */
366
+ 400: {
367
+ status: 400;
368
+ message: string;
369
+ };
370
+ /**
371
+ * No platform found
372
+ */
373
+ 404: {
374
+ success: false;
375
+ message: string;
376
+ name: string;
377
+ };
378
+ };
379
+ type GetStakingPlatformsGetV0Error = GetStakingPlatformsGetV0Errors[keyof GetStakingPlatformsGetV0Errors];
380
+ type GetStakingPlatformsGetV0Responses = {
381
+ /**
382
+ * Platform details
383
+ */
384
+ 200: Platform;
385
+ };
386
+ type GetStakingPlatformsGetV0Response = GetStakingPlatformsGetV0Responses[keyof GetStakingPlatformsGetV0Responses];
387
+ type PostStakingPlatformsSearchV0Data = {
388
+ body?: {
389
+ page: PageRequest;
390
+ filter: {
391
+ /**
392
+ * Supported chain id
393
+ */
394
+ chainId?: '11155111' | '31337';
395
+ owner?: string;
396
+ };
397
+ };
398
+ path?: never;
399
+ query?: never;
400
+ url: '/staking/platforms/search/v0';
401
+ };
402
+ type PostStakingPlatformsSearchV0Responses = {
403
+ /**
404
+ * Returns list of platforms by specified filter
405
+ */
406
+ 200: Array<Platform>;
407
+ };
408
+ type PostStakingPlatformsSearchV0Response = PostStakingPlatformsSearchV0Responses[keyof PostStakingPlatformsSearchV0Responses];
409
+ type PostStakingPoolsSearchPoolsV0Data = {
410
+ body?: {
411
+ page: PageRequest;
412
+ filter: {
413
+ /**
414
+ * Supported chain id
415
+ */
416
+ chainId?: '11155111' | '31337';
417
+ /**
418
+ * Address of deployed Platform contract
419
+ */
420
+ platform?: string;
421
+ };
422
+ };
423
+ path?: never;
424
+ query?: never;
425
+ url: '/staking/pools/searchPools/v0';
426
+ };
427
+ type PostStakingPoolsSearchPoolsV0Responses = {
428
+ /**
429
+ * Returns list of pools by specified filter
430
+ */
431
+ 200: Array<Pool>;
432
+ };
433
+ type PostStakingPoolsSearchPoolsV0Response = PostStakingPoolsSearchPoolsV0Responses[keyof PostStakingPoolsSearchPoolsV0Responses];
434
+ type GetStakingPoolsGetPoolV0Data = {
435
+ body?: never;
436
+ path?: never;
437
+ query: {
438
+ /**
439
+ * Supported chain id
440
+ */
441
+ chainId: '11155111' | '31337';
442
+ /**
443
+ * Id of a Pool
444
+ */
445
+ poolId: string;
446
+ /**
447
+ * Address of deployed Platform contract
448
+ */
449
+ platform: string;
450
+ };
451
+ url: '/staking/pools/getPool/v0';
452
+ };
453
+ type GetStakingPoolsGetPoolV0Errors = {
454
+ /**
455
+ * Zod Error
456
+ */
457
+ 400: {
458
+ status: 400;
459
+ message: string;
460
+ };
461
+ /**
462
+ * No pool found
463
+ */
464
+ 404: {
465
+ success: false;
466
+ message: string;
467
+ name: string;
468
+ };
469
+ };
470
+ type GetStakingPoolsGetPoolV0Error = GetStakingPoolsGetPoolV0Errors[keyof GetStakingPoolsGetPoolV0Errors];
471
+ type GetStakingPoolsGetPoolV0Responses = {
472
+ /**
473
+ * List platforms
474
+ */
475
+ 200: Pool;
476
+ };
477
+ type GetStakingPoolsGetPoolV0Response = GetStakingPoolsGetPoolV0Responses[keyof GetStakingPoolsGetPoolV0Responses];
478
+ type PostStakingStakesSearchStakesV0Data = {
479
+ body?: {
480
+ page: PageRequest;
481
+ filter: {
482
+ /**
483
+ * Supported chain id
484
+ */
485
+ chainId?: '11155111' | '31337';
486
+ owner?: string;
487
+ /**
488
+ * Address of deployed Platform contract
489
+ */
490
+ platform?: string;
491
+ /**
492
+ * Id of a Pool
493
+ */
494
+ poolId?: string;
495
+ };
496
+ };
497
+ path?: never;
498
+ query?: never;
499
+ url: '/staking/stakes/searchStakes/v0';
500
+ };
501
+ type PostStakingStakesSearchStakesV0Responses = {
502
+ /**
503
+ * Returns list of stakes within specified platforms and pools
504
+ */
505
+ 200: Array<Stake>;
506
+ };
507
+ type PostStakingStakesSearchStakesV0Response = PostStakingStakesSearchStakesV0Responses[keyof PostStakingStakesSearchStakesV0Responses];
508
+ type PostStakingStakesSearchStakeEventsV0Data = {
509
+ body?: {
510
+ page: PageRequest;
511
+ filter: {
512
+ /**
513
+ * Supported chain id
514
+ */
515
+ chainId?: '11155111' | '31337';
516
+ owner?: string;
517
+ /**
518
+ * Address of deployed Platform contract
519
+ */
520
+ platform?: string;
521
+ /**
522
+ * Id of a Pool
523
+ */
524
+ poolId?: string;
525
+ };
526
+ };
527
+ path?: never;
528
+ query?: never;
529
+ url: '/staking/stakes/searchStakeEvents/v0';
530
+ };
531
+ type PostStakingStakesSearchStakeEventsV0Responses = {
532
+ /**
533
+ * Returns list of stakes events within specified platforms and pools
534
+ */
535
+ 200: Array<StakeEvent>;
536
+ };
537
+ type PostStakingStakesSearchStakeEventsV0Response = PostStakingStakesSearchStakeEventsV0Responses[keyof PostStakingStakesSearchStakeEventsV0Responses];
538
+ type GetStakingStakesGetStakeV0Data = {
539
+ body?: never;
540
+ path?: never;
541
+ query: {
542
+ /**
543
+ * Supported chain id
544
+ */
545
+ chainId: '11155111' | '31337';
546
+ /**
547
+ * Address of deployed Platform contract
548
+ */
549
+ platform: string;
550
+ /**
551
+ * Id of a Stake position (NFT Id)
552
+ */
553
+ stakeId: string;
554
+ };
555
+ url: '/staking/stakes/getStake/v0';
556
+ };
557
+ type GetStakingStakesGetStakeV0Errors = {
558
+ /**
559
+ * Zod Error
560
+ */
561
+ 400: {
562
+ status: 400;
563
+ message: string;
564
+ };
565
+ /**
566
+ * No stake found
567
+ */
568
+ 404: {
569
+ success: false;
570
+ message: string;
571
+ name: string;
572
+ };
573
+ };
574
+ type GetStakingStakesGetStakeV0Error = GetStakingStakesGetStakeV0Errors[keyof GetStakingStakesGetStakeV0Errors];
575
+ type GetStakingStakesGetStakeV0Responses = {
576
+ /**
577
+ * Stake details
578
+ */
579
+ 200: Stake;
580
+ };
581
+ type GetStakingStakesGetStakeV0Response = GetStakingStakesGetStakeV0Responses[keyof GetStakingStakesGetStakeV0Responses];
582
+ type GetStakingRolesGetRolesV0Data = {
583
+ body?: never;
584
+ path?: never;
585
+ query?: never;
586
+ url: '/staking/roles/getRoles/v0';
587
+ };
588
+ type GetStakingRolesGetRolesV0Errors = {
589
+ /**
590
+ * Zod Error
591
+ */
592
+ 400: {
593
+ status: 400;
594
+ message: string;
595
+ };
596
+ };
597
+ type GetStakingRolesGetRolesV0Error = GetStakingRolesGetRolesV0Errors[keyof GetStakingRolesGetRolesV0Errors];
598
+ type GetStakingRolesGetRolesV0Responses = {
599
+ /**
600
+ * List of available roles
601
+ */
602
+ 200: Array<Role>;
603
+ };
604
+ type GetStakingRolesGetRolesV0Response = GetStakingRolesGetRolesV0Responses[keyof GetStakingRolesGetRolesV0Responses];
605
+ type PostStakingRolesGrantRoleV0Data = {
606
+ body?: {
607
+ /**
608
+ * Address of deployed Platform contract
609
+ */
610
+ platform: string;
611
+ /**
612
+ * List of address you want assign role to
613
+ */
614
+ addresses: Array<string>;
615
+ /**
616
+ * Id of a role assign to
617
+ */
618
+ role: ('Admin' | 'Open' | 'Creator' | 'Staker') | string;
619
+ };
620
+ path?: never;
621
+ query?: never;
622
+ url: '/staking/roles/grantRole/v0';
623
+ };
624
+ type PostStakingRolesGrantRoleV0Responses = {
625
+ /**
626
+ * Returns estimated gas or estimation error
627
+ */
628
+ 200: Transaction;
629
+ };
630
+ type PostStakingRolesGrantRoleV0Response = PostStakingRolesGrantRoleV0Responses[keyof PostStakingRolesGrantRoleV0Responses];
631
+ type PostStakingRolesSearchRolesV0Data = {
632
+ body?: {
633
+ page: PageRequest;
634
+ filter: {
635
+ /**
636
+ * Supported chain id
637
+ */
638
+ chainId?: '11155111' | '31337';
639
+ owner?: string;
640
+ /**
641
+ * Address of deployed Platform contract
642
+ */
643
+ platform?: string;
644
+ /**
645
+ * Id of a Pool
646
+ */
647
+ poolId?: string;
648
+ };
649
+ };
650
+ path?: never;
651
+ query?: never;
652
+ url: '/staking/roles/searchRoles/v0';
653
+ };
654
+ type PostStakingRolesSearchRolesV0Responses = {
655
+ /**
656
+ * Returns list of assignments within specified platforms and pools
657
+ */
658
+ 200: Array<RoleAssignment>;
659
+ };
660
+ type PostStakingRolesSearchRolesV0Response = PostStakingRolesSearchRolesV0Responses[keyof PostStakingRolesSearchRolesV0Responses];
661
+ type PostStakingRolesSearchRoleEventsV0Data = {
662
+ body?: {
663
+ page: PageRequest;
664
+ filter: {
665
+ /**
666
+ * Supported chain id
667
+ */
668
+ chainId?: '11155111' | '31337';
669
+ owner?: string;
670
+ /**
671
+ * Address of deployed Platform contract
672
+ */
673
+ platform?: string;
674
+ /**
675
+ * Id of a Pool
676
+ */
677
+ poolId?: string;
678
+ };
679
+ };
680
+ path?: never;
681
+ query?: never;
682
+ url: '/staking/roles/searchRoleEvents/v0';
683
+ };
684
+ type PostStakingRolesSearchRoleEventsV0Responses = {
685
+ /**
686
+ * Returns list of role events by some filter
687
+ */
688
+ 200: Array<RoleAssignment>;
689
+ };
690
+ type PostStakingRolesSearchRoleEventsV0Response = PostStakingRolesSearchRoleEventsV0Responses[keyof PostStakingRolesSearchRoleEventsV0Responses];
691
+ type PostStakingGasEstimateGasV0Data = {
692
+ body?: {
693
+ /**
694
+ * Supported chain id
695
+ */
696
+ chainId: '11155111' | '31337';
697
+ data: string;
698
+ from: string;
699
+ to: string;
700
+ };
701
+ path?: never;
702
+ query?: never;
703
+ url: '/staking/gas/estimateGas/v0';
704
+ };
705
+ type PostStakingGasEstimateGasV0Responses = {
706
+ /**
707
+ * Returns estimated gas or estimation error
708
+ */
709
+ 200: EstimateGasResponse;
710
+ };
711
+ type PostStakingGasEstimateGasV0Response = PostStakingGasEstimateGasV0Responses[keyof PostStakingGasEstimateGasV0Responses];
712
+ type GetStakingTemplatesReputationV0GetPlatformDeployEventData = {
713
+ body?: never;
714
+ path?: never;
715
+ query: {
716
+ /**
717
+ * Supported chain id
718
+ */
719
+ chainId: '11155111' | '31337';
720
+ /**
721
+ * Transaction hash
722
+ */
723
+ hash: string;
724
+ };
725
+ url: '/stakingTemplates/reputation/v0/getPlatformDeployEvent';
726
+ };
727
+ type GetStakingTemplatesReputationV0GetPlatformDeployEventErrors = {
728
+ /**
729
+ * Zod Error
730
+ */
731
+ 400: {
732
+ status: 400;
733
+ message: string;
734
+ };
735
+ };
736
+ type GetStakingTemplatesReputationV0GetPlatformDeployEventError = GetStakingTemplatesReputationV0GetPlatformDeployEventErrors[keyof GetStakingTemplatesReputationV0GetPlatformDeployEventErrors];
737
+ type GetStakingTemplatesReputationV0GetPlatformDeployEventResponses = {
738
+ /**
739
+ * Returns estimated gas or estimation error
740
+ */
741
+ 200: {
742
+ diamondAddress: string;
743
+ admin: string;
744
+ };
745
+ };
746
+ type GetStakingTemplatesReputationV0GetPlatformDeployEventResponse = GetStakingTemplatesReputationV0GetPlatformDeployEventResponses[keyof GetStakingTemplatesReputationV0GetPlatformDeployEventResponses];
747
+ type GetStakingTemplatesReputationV0GetStakeEventData = {
748
+ body?: never;
749
+ path?: never;
750
+ query: {
751
+ /**
752
+ * Supported chain id
753
+ */
754
+ chainId: '11155111' | '31337';
755
+ /**
756
+ * Transaction hash
757
+ */
758
+ hash: string;
759
+ };
760
+ url: '/stakingTemplates/reputation/v0/getStakeEvent';
761
+ };
762
+ type GetStakingTemplatesReputationV0GetStakeEventErrors = {
763
+ /**
764
+ * Zod Error
765
+ */
766
+ 400: {
767
+ status: 400;
768
+ message: string;
769
+ };
770
+ };
771
+ type GetStakingTemplatesReputationV0GetStakeEventError = GetStakingTemplatesReputationV0GetStakeEventErrors[keyof GetStakingTemplatesReputationV0GetStakeEventErrors];
772
+ type GetStakingTemplatesReputationV0GetStakeEventResponses = {
773
+ /**
774
+ * Details of the created stake position
775
+ */
776
+ 200: {
777
+ /**
778
+ * Id of a Pool
779
+ */
780
+ poolId: string;
781
+ /**
782
+ * Id of a Stake position (NFT Id)
783
+ */
784
+ stakeId: string;
785
+ operator: string;
786
+ owner: string;
787
+ };
788
+ };
789
+ type GetStakingTemplatesReputationV0GetStakeEventResponse = GetStakingTemplatesReputationV0GetStakeEventResponses[keyof GetStakingTemplatesReputationV0GetStakeEventResponses];
790
+ type GetStakingTemplatesReputationV0GetCreatePoolEventData = {
791
+ body?: never;
792
+ path?: never;
793
+ query: {
794
+ /**
795
+ * Supported chain id
796
+ */
797
+ chainId: '11155111' | '31337';
798
+ /**
799
+ * Transaction hash
800
+ */
801
+ hash: string;
802
+ };
803
+ url: '/stakingTemplates/reputation/v0/getCreatePoolEvent';
804
+ };
805
+ type GetStakingTemplatesReputationV0GetCreatePoolEventErrors = {
806
+ /**
807
+ * Zod Error
808
+ */
809
+ 400: {
810
+ status: 400;
811
+ message: string;
812
+ };
813
+ };
814
+ type GetStakingTemplatesReputationV0GetCreatePoolEventError = GetStakingTemplatesReputationV0GetCreatePoolEventErrors[keyof GetStakingTemplatesReputationV0GetCreatePoolEventErrors];
815
+ type GetStakingTemplatesReputationV0GetCreatePoolEventResponses = {
816
+ /**
817
+ * Details of the created pool
818
+ */
819
+ 200: {
820
+ /**
821
+ * Id of a Pool
822
+ */
823
+ poolId: string;
824
+ rewardAssetHandler: string;
825
+ inputAssetKeeper: string;
826
+ };
827
+ };
828
+ type GetStakingTemplatesReputationV0GetCreatePoolEventResponse = GetStakingTemplatesReputationV0GetCreatePoolEventResponses[keyof GetStakingTemplatesReputationV0GetCreatePoolEventResponses];
829
+ type PostStakingTemplatesReputationV0GetRewardData = {
830
+ body?: {
831
+ /**
832
+ * Address of deployed Platform contract
833
+ */
834
+ platform: string;
835
+ /**
836
+ * Id of a Stake position (NFT Id)
837
+ */
838
+ stakeId: string;
839
+ };
840
+ path?: never;
841
+ query?: never;
842
+ url: '/stakingTemplates/reputation/v0/getReward';
843
+ };
844
+ type PostStakingTemplatesReputationV0GetRewardResponses = {
845
+ /**
846
+ * Compiled Get Rewards transaction details
847
+ */
848
+ 200: Transaction;
849
+ };
850
+ type PostStakingTemplatesReputationV0GetRewardResponse = PostStakingTemplatesReputationV0GetRewardResponses[keyof PostStakingTemplatesReputationV0GetRewardResponses];
851
+ type PostStakingTemplatesReputationV0PartialUnstakeData = {
852
+ body?: {
853
+ /**
854
+ * Address of deployed Platform contract
855
+ */
856
+ platform: string;
857
+ /**
858
+ * Id of a Stake position (NFT Id)
859
+ */
860
+ stakeId: string;
861
+ /**
862
+ * The number of input packets to withdraw from the position, thereby decreasing it.
863
+ */
864
+ amount: string;
865
+ };
866
+ path?: never;
867
+ query?: never;
868
+ url: '/stakingTemplates/reputation/v0/partialUnstake';
869
+ };
870
+ type PostStakingTemplatesReputationV0PartialUnstakeResponses = {
871
+ /**
872
+ * Compiled Partial Unstake transaction details
873
+ */
874
+ 200: Transaction;
875
+ };
876
+ type PostStakingTemplatesReputationV0PartialUnstakeResponse = PostStakingTemplatesReputationV0PartialUnstakeResponses[keyof PostStakingTemplatesReputationV0PartialUnstakeResponses];
877
+ type PostStakingTemplatesReputationV0RestakeData = {
878
+ body?: {
879
+ /**
880
+ * Address of deployed Platform contract
881
+ */
882
+ platform: string;
883
+ /**
884
+ * Id of a Pool
885
+ */
886
+ poolId: string;
887
+ /**
888
+ * Number of Packets to be stacked. Each underlying asset must be approved to Staking Platform contract instance
889
+ */
890
+ amount: string;
891
+ };
892
+ path?: never;
893
+ query?: never;
894
+ url: '/stakingTemplates/reputation/v0/restake';
895
+ };
896
+ type PostStakingTemplatesReputationV0RestakeResponses = {
897
+ /**
898
+ * Get the Stake transaction details
899
+ */
900
+ 200: Transaction;
901
+ };
902
+ type PostStakingTemplatesReputationV0RestakeResponse = PostStakingTemplatesReputationV0RestakeResponses[keyof PostStakingTemplatesReputationV0RestakeResponses];
903
+ type PostStakingTemplatesReputationV0StakeData = {
904
+ body?: {
905
+ /**
906
+ * Address of deployed Platform contract
907
+ */
908
+ platform: string;
909
+ /**
910
+ * Id of a Pool
911
+ */
912
+ poolId: string;
913
+ /**
914
+ * Number of Packets to be stacked. Each underlying asset must be approved to Staking Platform contract instance
915
+ */
916
+ amount: string;
917
+ };
918
+ path?: never;
919
+ query?: never;
920
+ url: '/stakingTemplates/reputation/v0/stake';
921
+ };
922
+ type PostStakingTemplatesReputationV0StakeResponses = {
923
+ /**
924
+ * Get the Stake transaction details
925
+ */
926
+ 200: Transaction;
927
+ };
928
+ type PostStakingTemplatesReputationV0StakeResponse = PostStakingTemplatesReputationV0StakeResponses[keyof PostStakingTemplatesReputationV0StakeResponses];
929
+ type PostStakingTemplatesReputationV0UnstakeData = {
930
+ body?: {
931
+ /**
932
+ * Address of deployed Platform contract
933
+ */
934
+ platform: string;
935
+ /**
936
+ * Id of a Stake position (NFT Id)
937
+ */
938
+ stakeId: string;
939
+ };
940
+ path?: never;
941
+ query?: never;
942
+ url: '/stakingTemplates/reputation/v0/unstake';
943
+ };
944
+ type PostStakingTemplatesReputationV0UnstakeResponses = {
945
+ /**
946
+ * Compiled Unstake transaction details
947
+ */
948
+ 200: Transaction;
949
+ };
950
+ type PostStakingTemplatesReputationV0UnstakeResponse = PostStakingTemplatesReputationV0UnstakeResponses[keyof PostStakingTemplatesReputationV0UnstakeResponses];
951
+ type PostStakingTemplatesReputationV0CreatePoolData = {
952
+ body?: {
953
+ /**
954
+ * Address of deployed Platform contract
955
+ */
956
+ platform: string;
957
+ /**
958
+ * Start time when Staking Pool starts (ISO string)
959
+ */
960
+ startDate: Date;
961
+ amount: AmountTwoBorder;
962
+ amountMult: AmountMultInterval;
963
+ stakingErc20: Erc20Input;
964
+ rewardErc20: Erc20Reward;
965
+ /**
966
+ * Base campaign rate multiplier. How many Packets allocated to a Staker each second as a Reward
967
+ */
968
+ rate: string;
969
+ };
970
+ path?: never;
971
+ query?: never;
972
+ url: '/stakingTemplates/reputation/v0/createPool';
973
+ };
974
+ type PostStakingTemplatesReputationV0CreatePoolResponses = {
975
+ /**
976
+ * Compiled Create Pool transaction details
977
+ */
978
+ 200: Transaction;
979
+ };
980
+ type PostStakingTemplatesReputationV0CreatePoolResponse = PostStakingTemplatesReputationV0CreatePoolResponses[keyof PostStakingTemplatesReputationV0CreatePoolResponses];
981
+ type PostStakingTemplatesReputationV0CreatePlatformData = {
982
+ body?: {
983
+ /**
984
+ * Id of targeted chain
985
+ */
986
+ chainId: '11155111' | '31337';
987
+ /**
988
+ * Details of the NFT that is going to be minted for user to track it's stake
989
+ */
990
+ erc721: Erc721Meta;
991
+ /**
992
+ * Whether NFT can be transferred to other wallet (secondary market the stake)
993
+ */
994
+ isSoulbound: boolean;
995
+ /**
996
+ * Grant admin role to speficied address
997
+ */
998
+ adminAddress: string;
999
+ };
1000
+ path?: never;
1001
+ query?: never;
1002
+ url: '/stakingTemplates/reputation/v0/createPlatform';
1003
+ };
1004
+ type PostStakingTemplatesReputationV0CreatePlatformResponses = {
1005
+ /**
1006
+ * Compiled Create Platform transaction details
1007
+ */
1008
+ 200: Transaction;
1009
+ };
1010
+ type PostStakingTemplatesReputationV0CreatePlatformResponse = PostStakingTemplatesReputationV0CreatePlatformResponses[keyof PostStakingTemplatesReputationV0CreatePlatformResponses];
1011
+ type GetStakingTemplatesReputationLockV0GetPlatformDeployEventData = {
1012
+ body?: never;
1013
+ path?: never;
1014
+ query: {
1015
+ /**
1016
+ * Supported chain id
1017
+ */
1018
+ chainId: '11155111' | '31337';
1019
+ /**
1020
+ * Transaction hash
1021
+ */
1022
+ hash: string;
1023
+ };
1024
+ url: '/stakingTemplates/reputationLock/v0/getPlatformDeployEvent';
1025
+ };
1026
+ type GetStakingTemplatesReputationLockV0GetPlatformDeployEventErrors = {
1027
+ /**
1028
+ * Zod Error
1029
+ */
1030
+ 400: {
1031
+ status: 400;
1032
+ message: string;
1033
+ };
1034
+ };
1035
+ type GetStakingTemplatesReputationLockV0GetPlatformDeployEventError = GetStakingTemplatesReputationLockV0GetPlatformDeployEventErrors[keyof GetStakingTemplatesReputationLockV0GetPlatformDeployEventErrors];
1036
+ type GetStakingTemplatesReputationLockV0GetPlatformDeployEventResponses = {
1037
+ /**
1038
+ * Returns estimated gas or estimation error
1039
+ */
1040
+ 200: {
1041
+ diamondAddress: string;
1042
+ admin: string;
1043
+ };
1044
+ };
1045
+ type GetStakingTemplatesReputationLockV0GetPlatformDeployEventResponse = GetStakingTemplatesReputationLockV0GetPlatformDeployEventResponses[keyof GetStakingTemplatesReputationLockV0GetPlatformDeployEventResponses];
1046
+ type GetStakingTemplatesReputationLockV0GetStakeEventData = {
1047
+ body?: never;
1048
+ path?: never;
1049
+ query: {
1050
+ /**
1051
+ * Supported chain id
1052
+ */
1053
+ chainId: '11155111' | '31337';
1054
+ /**
1055
+ * Transaction hash
1056
+ */
1057
+ hash: string;
1058
+ };
1059
+ url: '/stakingTemplates/reputationLock/v0/getStakeEvent';
1060
+ };
1061
+ type GetStakingTemplatesReputationLockV0GetStakeEventErrors = {
1062
+ /**
1063
+ * Zod Error
1064
+ */
1065
+ 400: {
1066
+ status: 400;
1067
+ message: string;
1068
+ };
1069
+ };
1070
+ type GetStakingTemplatesReputationLockV0GetStakeEventError = GetStakingTemplatesReputationLockV0GetStakeEventErrors[keyof GetStakingTemplatesReputationLockV0GetStakeEventErrors];
1071
+ type GetStakingTemplatesReputationLockV0GetStakeEventResponses = {
1072
+ /**
1073
+ * Details of the created stake position
1074
+ */
1075
+ 200: {
1076
+ /**
1077
+ * Id of a Pool
1078
+ */
1079
+ poolId: string;
1080
+ /**
1081
+ * Id of a Stake position (NFT Id)
1082
+ */
1083
+ stakeId: string;
1084
+ operator: string;
1085
+ owner: string;
1086
+ };
1087
+ };
1088
+ type GetStakingTemplatesReputationLockV0GetStakeEventResponse = GetStakingTemplatesReputationLockV0GetStakeEventResponses[keyof GetStakingTemplatesReputationLockV0GetStakeEventResponses];
1089
+ type GetStakingTemplatesReputationLockV0GetCreatePoolEventData = {
1090
+ body?: never;
1091
+ path?: never;
1092
+ query: {
1093
+ /**
1094
+ * Supported chain id
1095
+ */
1096
+ chainId: '11155111' | '31337';
1097
+ /**
1098
+ * Transaction hash
1099
+ */
1100
+ hash: string;
1101
+ };
1102
+ url: '/stakingTemplates/reputationLock/v0/getCreatePoolEvent';
1103
+ };
1104
+ type GetStakingTemplatesReputationLockV0GetCreatePoolEventErrors = {
1105
+ /**
1106
+ * Zod Error
1107
+ */
1108
+ 400: {
1109
+ status: 400;
1110
+ message: string;
1111
+ };
1112
+ };
1113
+ type GetStakingTemplatesReputationLockV0GetCreatePoolEventError = GetStakingTemplatesReputationLockV0GetCreatePoolEventErrors[keyof GetStakingTemplatesReputationLockV0GetCreatePoolEventErrors];
1114
+ type GetStakingTemplatesReputationLockV0GetCreatePoolEventResponses = {
1115
+ /**
1116
+ * Details of the created pool
1117
+ */
1118
+ 200: {
1119
+ /**
1120
+ * Id of a Pool
1121
+ */
1122
+ poolId: string;
1123
+ rewardAssetHandler: string;
1124
+ inputAssetKeeper: string;
1125
+ };
1126
+ };
1127
+ type GetStakingTemplatesReputationLockV0GetCreatePoolEventResponse = GetStakingTemplatesReputationLockV0GetCreatePoolEventResponses[keyof GetStakingTemplatesReputationLockV0GetCreatePoolEventResponses];
1128
+ type PostStakingTemplatesReputationLockV0GetRewardData = {
1129
+ body?: {
1130
+ /**
1131
+ * Address of deployed Platform contract
1132
+ */
1133
+ platform: string;
1134
+ /**
1135
+ * Id of a Stake position (NFT Id)
1136
+ */
1137
+ stakeId: string;
1138
+ };
1139
+ path?: never;
1140
+ query?: never;
1141
+ url: '/stakingTemplates/reputationLock/v0/getReward';
1142
+ };
1143
+ type PostStakingTemplatesReputationLockV0GetRewardResponses = {
1144
+ /**
1145
+ * Compiled Get Rewards transaction details
1146
+ */
1147
+ 200: Transaction;
1148
+ };
1149
+ type PostStakingTemplatesReputationLockV0GetRewardResponse = PostStakingTemplatesReputationLockV0GetRewardResponses[keyof PostStakingTemplatesReputationLockV0GetRewardResponses];
1150
+ type PostStakingTemplatesReputationLockV0PartialUnstakeData = {
1151
+ body?: {
1152
+ /**
1153
+ * Address of deployed Platform contract
1154
+ */
1155
+ platform: string;
1156
+ /**
1157
+ * Id of a Stake position (NFT Id)
1158
+ */
1159
+ stakeId: string;
1160
+ /**
1161
+ * The number of input packets to withdraw from the position, thereby decreasing it.
1162
+ */
1163
+ amount: string;
1164
+ };
1165
+ path?: never;
1166
+ query?: never;
1167
+ url: '/stakingTemplates/reputationLock/v0/partialUnstake';
1168
+ };
1169
+ type PostStakingTemplatesReputationLockV0PartialUnstakeResponses = {
1170
+ /**
1171
+ * Compiled Partial Unstake transaction details
1172
+ */
1173
+ 200: Transaction;
1174
+ };
1175
+ type PostStakingTemplatesReputationLockV0PartialUnstakeResponse = PostStakingTemplatesReputationLockV0PartialUnstakeResponses[keyof PostStakingTemplatesReputationLockV0PartialUnstakeResponses];
1176
+ type PostStakingTemplatesReputationLockV0RestakeData = {
1177
+ body?: {
1178
+ /**
1179
+ * Address of deployed Platform contract
1180
+ */
1181
+ platform: string;
1182
+ /**
1183
+ * Id of a Pool
1184
+ */
1185
+ poolId: string;
1186
+ /**
1187
+ * Number of Packets to be stacked. Each underlying asset must be approved to Staking Platform contract instance
1188
+ */
1189
+ amount: string;
1190
+ /**
1191
+ * The duration, in seconds, during which the position's staked Packets will be locked.
1192
+ */
1193
+ lockPeriod: string;
1194
+ };
1195
+ path?: never;
1196
+ query?: never;
1197
+ url: '/stakingTemplates/reputationLock/v0/restake';
1198
+ };
1199
+ type PostStakingTemplatesReputationLockV0RestakeResponses = {
1200
+ /**
1201
+ * Get the Stake transaction details
1202
+ */
1203
+ 200: Transaction;
1204
+ };
1205
+ type PostStakingTemplatesReputationLockV0RestakeResponse = PostStakingTemplatesReputationLockV0RestakeResponses[keyof PostStakingTemplatesReputationLockV0RestakeResponses];
1206
+ type PostStakingTemplatesReputationLockV0StakeData = {
1207
+ body?: {
1208
+ /**
1209
+ * Address of deployed Platform contract
1210
+ */
1211
+ platform: string;
1212
+ /**
1213
+ * Id of a Pool
1214
+ */
1215
+ poolId: string;
1216
+ /**
1217
+ * Number of Packets to be stacked. Each underlying asset must be approved to Staking Platform contract instance
1218
+ */
1219
+ amount: string;
1220
+ /**
1221
+ * Lock period in Seconds
1222
+ */
1223
+ lockPeriod: string;
1224
+ };
1225
+ path?: never;
1226
+ query?: never;
1227
+ url: '/stakingTemplates/reputationLock/v0/stake';
1228
+ };
1229
+ type PostStakingTemplatesReputationLockV0StakeResponses = {
1230
+ /**
1231
+ * Get the Stake transaction details
1232
+ */
1233
+ 200: Transaction;
1234
+ };
1235
+ type PostStakingTemplatesReputationLockV0StakeResponse = PostStakingTemplatesReputationLockV0StakeResponses[keyof PostStakingTemplatesReputationLockV0StakeResponses];
1236
+ type PostStakingTemplatesReputationLockV0UnstakeData = {
1237
+ body?: {
1238
+ /**
1239
+ * Address of deployed Platform contract
1240
+ */
1241
+ platform: string;
1242
+ /**
1243
+ * Id of a Stake position (NFT Id)
1244
+ */
1245
+ stakeId: string;
1246
+ };
1247
+ path?: never;
1248
+ query?: never;
1249
+ url: '/stakingTemplates/reputationLock/v0/unstake';
1250
+ };
1251
+ type PostStakingTemplatesReputationLockV0UnstakeResponses = {
1252
+ /**
1253
+ * Compiled Unstake transaction details
1254
+ */
1255
+ 200: Transaction;
1256
+ };
1257
+ type PostStakingTemplatesReputationLockV0UnstakeResponse = PostStakingTemplatesReputationLockV0UnstakeResponses[keyof PostStakingTemplatesReputationLockV0UnstakeResponses];
1258
+ type PostStakingTemplatesReputationLockV0CreatePoolData = {
1259
+ body?: {
1260
+ /**
1261
+ * Address of deployed Platform contract
1262
+ */
1263
+ platform: string;
1264
+ /**
1265
+ * Start time when Staking Pool starts (ISO string)
1266
+ */
1267
+ startDate: Date;
1268
+ amount: AmountTwoBorder;
1269
+ amountMult: AmountMultInterval;
1270
+ distribution: RewardDistributionComplex;
1271
+ stakingErc20: Erc20Input;
1272
+ rewardErc20: Erc20Reward;
1273
+ /**
1274
+ * Base campaign rate multiplier. How many Packets allocated to a Staker each second as a Reward
1275
+ */
1276
+ rate: string;
1277
+ lock: LockTwoBorder;
1278
+ lockMult: LockMultInterval;
1279
+ };
1280
+ path?: never;
1281
+ query?: never;
1282
+ url: '/stakingTemplates/reputationLock/v0/createPool';
1283
+ };
1284
+ type PostStakingTemplatesReputationLockV0CreatePoolResponses = {
1285
+ /**
1286
+ * Compiled Create Pool transaction details
1287
+ */
1288
+ 200: Transaction;
1289
+ };
1290
+ type PostStakingTemplatesReputationLockV0CreatePoolResponse = PostStakingTemplatesReputationLockV0CreatePoolResponses[keyof PostStakingTemplatesReputationLockV0CreatePoolResponses];
1291
+ type PostStakingTemplatesReputationLockV0CreatePlatformData = {
1292
+ body?: {
1293
+ /**
1294
+ * Id of targeted chain
1295
+ */
1296
+ chainId: '11155111' | '31337';
1297
+ /**
1298
+ * Details of the NFT that is going to be minted for user to track it's stake
1299
+ */
1300
+ erc721: Erc721Meta;
1301
+ /**
1302
+ * Whether NFT can be transferred to other wallet (secondary market the stake)
1303
+ */
1304
+ isSoulbound: boolean;
1305
+ /**
1306
+ * Grant admin role to speficied address
1307
+ */
1308
+ adminAddress: string;
1309
+ };
1310
+ path?: never;
1311
+ query?: never;
1312
+ url: '/stakingTemplates/reputationLock/v0/createPlatform';
1313
+ };
1314
+ type PostStakingTemplatesReputationLockV0CreatePlatformResponses = {
1315
+ /**
1316
+ * Compiled Create Platform transaction details
1317
+ */
1318
+ 200: Transaction;
1319
+ };
1320
+ type PostStakingTemplatesReputationLockV0CreatePlatformResponse = PostStakingTemplatesReputationLockV0CreatePlatformResponses[keyof PostStakingTemplatesReputationLockV0CreatePlatformResponses];
1321
+ type GetStakingTemplatesRwaV0GetPlatformDeployEventData = {
1322
+ body?: never;
1323
+ path?: never;
1324
+ query: {
1325
+ /**
1326
+ * Supported chain id
1327
+ */
1328
+ chainId: '11155111' | '31337';
1329
+ /**
1330
+ * Transaction hash
1331
+ */
1332
+ hash: string;
1333
+ };
1334
+ url: '/stakingTemplates/rwa/v0/getPlatformDeployEvent';
1335
+ };
1336
+ type GetStakingTemplatesRwaV0GetPlatformDeployEventErrors = {
1337
+ /**
1338
+ * Zod Error
1339
+ */
1340
+ 400: {
1341
+ status: 400;
1342
+ message: string;
1343
+ };
1344
+ };
1345
+ type GetStakingTemplatesRwaV0GetPlatformDeployEventError = GetStakingTemplatesRwaV0GetPlatformDeployEventErrors[keyof GetStakingTemplatesRwaV0GetPlatformDeployEventErrors];
1346
+ type GetStakingTemplatesRwaV0GetPlatformDeployEventResponses = {
1347
+ /**
1348
+ * Returns estimated gas or estimation error
1349
+ */
1350
+ 200: {
1351
+ diamondAddress: string;
1352
+ admin: string;
1353
+ };
1354
+ };
1355
+ type GetStakingTemplatesRwaV0GetPlatformDeployEventResponse = GetStakingTemplatesRwaV0GetPlatformDeployEventResponses[keyof GetStakingTemplatesRwaV0GetPlatformDeployEventResponses];
1356
+ type GetStakingTemplatesRwaV0GetStakeEventData = {
1357
+ body?: never;
1358
+ path?: never;
1359
+ query: {
1360
+ /**
1361
+ * Supported chain id
1362
+ */
1363
+ chainId: '11155111' | '31337';
1364
+ /**
1365
+ * Transaction hash
1366
+ */
1367
+ hash: string;
1368
+ };
1369
+ url: '/stakingTemplates/rwa/v0/getStakeEvent';
1370
+ };
1371
+ type GetStakingTemplatesRwaV0GetStakeEventErrors = {
1372
+ /**
1373
+ * Zod Error
1374
+ */
1375
+ 400: {
1376
+ status: 400;
1377
+ message: string;
1378
+ };
1379
+ };
1380
+ type GetStakingTemplatesRwaV0GetStakeEventError = GetStakingTemplatesRwaV0GetStakeEventErrors[keyof GetStakingTemplatesRwaV0GetStakeEventErrors];
1381
+ type GetStakingTemplatesRwaV0GetStakeEventResponses = {
1382
+ /**
1383
+ * Details of the created stake position
1384
+ */
1385
+ 200: {
1386
+ /**
1387
+ * Id of a Pool
1388
+ */
1389
+ poolId: string;
1390
+ /**
1391
+ * Id of a Stake position (NFT Id)
1392
+ */
1393
+ stakeId: string;
1394
+ operator: string;
1395
+ owner: string;
1396
+ };
1397
+ };
1398
+ type GetStakingTemplatesRwaV0GetStakeEventResponse = GetStakingTemplatesRwaV0GetStakeEventResponses[keyof GetStakingTemplatesRwaV0GetStakeEventResponses];
1399
+ type GetStakingTemplatesRwaV0GetCreatePoolEventData = {
1400
+ body?: never;
1401
+ path?: never;
1402
+ query: {
1403
+ /**
1404
+ * Supported chain id
1405
+ */
1406
+ chainId: '11155111' | '31337';
1407
+ /**
1408
+ * Transaction hash
1409
+ */
1410
+ hash: string;
1411
+ };
1412
+ url: '/stakingTemplates/rwa/v0/getCreatePoolEvent';
1413
+ };
1414
+ type GetStakingTemplatesRwaV0GetCreatePoolEventErrors = {
1415
+ /**
1416
+ * Zod Error
1417
+ */
1418
+ 400: {
1419
+ status: 400;
1420
+ message: string;
1421
+ };
1422
+ };
1423
+ type GetStakingTemplatesRwaV0GetCreatePoolEventError = GetStakingTemplatesRwaV0GetCreatePoolEventErrors[keyof GetStakingTemplatesRwaV0GetCreatePoolEventErrors];
1424
+ type GetStakingTemplatesRwaV0GetCreatePoolEventResponses = {
1425
+ /**
1426
+ * Details of the created pool
1427
+ */
1428
+ 200: {
1429
+ /**
1430
+ * Id of a Pool
1431
+ */
1432
+ poolId: string;
1433
+ rewardAssetHandler: string;
1434
+ inputAssetKeeper: string;
1435
+ };
1436
+ };
1437
+ type GetStakingTemplatesRwaV0GetCreatePoolEventResponse = GetStakingTemplatesRwaV0GetCreatePoolEventResponses[keyof GetStakingTemplatesRwaV0GetCreatePoolEventResponses];
1438
+ type PostStakingTemplatesRwaV0GetRewardData = {
1439
+ body?: {
1440
+ /**
1441
+ * Address of deployed Platform contract
1442
+ */
1443
+ platform: string;
1444
+ /**
1445
+ * Id of a Stake position (NFT Id)
1446
+ */
1447
+ stakeId: string;
1448
+ };
1449
+ path?: never;
1450
+ query?: never;
1451
+ url: '/stakingTemplates/rwa/v0/getReward';
1452
+ };
1453
+ type PostStakingTemplatesRwaV0GetRewardResponses = {
1454
+ /**
1455
+ * Compiled Get Rewards transaction details
1456
+ */
1457
+ 200: Transaction;
1458
+ };
1459
+ type PostStakingTemplatesRwaV0GetRewardResponse = PostStakingTemplatesRwaV0GetRewardResponses[keyof PostStakingTemplatesRwaV0GetRewardResponses];
1460
+ type PostStakingTemplatesRwaV0PartialUnstakeData = {
1461
+ body?: {
1462
+ /**
1463
+ * Address of deployed Platform contract
1464
+ */
1465
+ platform: string;
1466
+ /**
1467
+ * Id of a Stake position (NFT Id)
1468
+ */
1469
+ stakeId: string;
1470
+ /**
1471
+ * The number of input packets to withdraw from the position, thereby decreasing it.
1472
+ */
1473
+ amount: string;
1474
+ };
1475
+ path?: never;
1476
+ query?: never;
1477
+ url: '/stakingTemplates/rwa/v0/partialUnstake';
1478
+ };
1479
+ type PostStakingTemplatesRwaV0PartialUnstakeResponses = {
1480
+ /**
1481
+ * Compiled Partial Unstake transaction details
1482
+ */
1483
+ 200: Transaction;
1484
+ };
1485
+ type PostStakingTemplatesRwaV0PartialUnstakeResponse = PostStakingTemplatesRwaV0PartialUnstakeResponses[keyof PostStakingTemplatesRwaV0PartialUnstakeResponses];
1486
+ type PostStakingTemplatesRwaV0RestakeData = {
1487
+ body?: {
1488
+ /**
1489
+ * Address of deployed Platform contract
1490
+ */
1491
+ platform: string;
1492
+ /**
1493
+ * Id of a Pool
1494
+ */
1495
+ poolId: string;
1496
+ /**
1497
+ * Number of Packets to be stacked. Each underlying asset must be approved to Staking Platform contract instance
1498
+ */
1499
+ amount: string;
1500
+ };
1501
+ path?: never;
1502
+ query?: never;
1503
+ url: '/stakingTemplates/rwa/v0/restake';
1504
+ };
1505
+ type PostStakingTemplatesRwaV0RestakeResponses = {
1506
+ /**
1507
+ * Get the Stake transaction details
1508
+ */
1509
+ 200: Transaction;
1510
+ };
1511
+ type PostStakingTemplatesRwaV0RestakeResponse = PostStakingTemplatesRwaV0RestakeResponses[keyof PostStakingTemplatesRwaV0RestakeResponses];
1512
+ type PostStakingTemplatesRwaV0StakeData = {
1513
+ body?: {
1514
+ /**
1515
+ * Address of deployed Platform contract
1516
+ */
1517
+ platform: string;
1518
+ /**
1519
+ * Id of a Pool
1520
+ */
1521
+ poolId: string;
1522
+ /**
1523
+ * Number of Packets to be stacked. Each underlying asset must be approved to Staking Platform contract instance
1524
+ */
1525
+ amount: string;
1526
+ };
1527
+ path?: never;
1528
+ query?: never;
1529
+ url: '/stakingTemplates/rwa/v0/stake';
1530
+ };
1531
+ type PostStakingTemplatesRwaV0StakeResponses = {
1532
+ /**
1533
+ * Get the Stake transaction details
1534
+ */
1535
+ 200: Transaction;
1536
+ };
1537
+ type PostStakingTemplatesRwaV0StakeResponse = PostStakingTemplatesRwaV0StakeResponses[keyof PostStakingTemplatesRwaV0StakeResponses];
1538
+ type PostStakingTemplatesRwaV0UnstakeData = {
1539
+ body?: {
1540
+ /**
1541
+ * Address of deployed Platform contract
1542
+ */
1543
+ platform: string;
1544
+ /**
1545
+ * Id of a Stake position (NFT Id)
1546
+ */
1547
+ stakeId: string;
1548
+ };
1549
+ path?: never;
1550
+ query?: never;
1551
+ url: '/stakingTemplates/rwa/v0/unstake';
1552
+ };
1553
+ type PostStakingTemplatesRwaV0UnstakeResponses = {
1554
+ /**
1555
+ * Compiled Unstake transaction details
1556
+ */
1557
+ 200: Transaction;
1558
+ };
1559
+ type PostStakingTemplatesRwaV0UnstakeResponse = PostStakingTemplatesRwaV0UnstakeResponses[keyof PostStakingTemplatesRwaV0UnstakeResponses];
1560
+ type PostStakingTemplatesRwaV0CreatePoolData = {
1561
+ body?: {
1562
+ /**
1563
+ * Address of deployed Platform contract
1564
+ */
1565
+ platform: string;
1566
+ /**
1567
+ * Start time when Staking Pool starts (ISO string)
1568
+ */
1569
+ startDate: Date;
1570
+ /**
1571
+ * The maximum number (uint256) of input Packets that can be allocated to the campaign.
1572
+ *
1573
+ * If 0, then no upper limit is enforced on the specified campaign.
1574
+ */
1575
+ hardcapAmount: string;
1576
+ distribution: RewardDistributionComplex;
1577
+ erc20Input: Erc20Input;
1578
+ erc20Reward: Erc20Reward;
1579
+ };
1580
+ path?: never;
1581
+ query?: never;
1582
+ url: '/stakingTemplates/rwa/v0/createPool';
1583
+ };
1584
+ type PostStakingTemplatesRwaV0CreatePoolResponses = {
1585
+ /**
1586
+ * Compiled Create Pool transaction details
1587
+ */
1588
+ 200: Transaction;
1589
+ };
1590
+ type PostStakingTemplatesRwaV0CreatePoolResponse = PostStakingTemplatesRwaV0CreatePoolResponses[keyof PostStakingTemplatesRwaV0CreatePoolResponses];
1591
+ type PostStakingTemplatesRwaV0CreatePlatformData = {
1592
+ body?: {
1593
+ /**
1594
+ * Id of targeted chain
1595
+ */
1596
+ chainId: '11155111' | '31337';
1597
+ /**
1598
+ * Details of the NFT that is going to be minted for user to track it's stake
1599
+ */
1600
+ erc721: Erc721Meta;
1601
+ /**
1602
+ * Whether NFT can be transferred to other wallet (secondary market the stake)
1603
+ */
1604
+ isSoulbound: boolean;
1605
+ /**
1606
+ * Grant admin role to speficied address
1607
+ */
1608
+ adminAddress: string;
1609
+ };
1610
+ path?: never;
1611
+ query?: never;
1612
+ url: '/stakingTemplates/rwa/v0/createPlatform';
1613
+ };
1614
+ type PostStakingTemplatesRwaV0CreatePlatformResponses = {
1615
+ /**
1616
+ * Compiled Create Platform transaction details
1617
+ */
1618
+ 200: Transaction;
1619
+ };
1620
+ type PostStakingTemplatesRwaV0CreatePlatformResponse = PostStakingTemplatesRwaV0CreatePlatformResponses[keyof PostStakingTemplatesRwaV0CreatePlatformResponses];
1621
+ type PostStakingTemplatesRwaV0NotifyRewardsData = {
1622
+ body?: {
1623
+ /**
1624
+ * Address of deployed Platform contract
1625
+ */
1626
+ platform: string;
1627
+ /**
1628
+ * Id of a Pool
1629
+ */
1630
+ poolId: string;
1631
+ /**
1632
+ * The number of Input Packets to add to Pool.
1633
+ */
1634
+ amount: string;
1635
+ };
1636
+ path?: never;
1637
+ query?: never;
1638
+ url: '/stakingTemplates/rwa/v0/notifyRewards';
1639
+ };
1640
+ type PostStakingTemplatesRwaV0NotifyRewardsResponses = {
1641
+ /**
1642
+ * Compiled Reward notification transaction details
1643
+ */
1644
+ 200: Transaction;
1645
+ };
1646
+ type PostStakingTemplatesRwaV0NotifyRewardsResponse = PostStakingTemplatesRwaV0NotifyRewardsResponses[keyof PostStakingTemplatesRwaV0NotifyRewardsResponses];
1647
+ type ClientOptions = {
1648
+ baseUrl: `${string}://${string}` | (string & {});
1649
+ };
1650
+
1651
+ type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options$1<TData, ThrowOnError> & {
1652
+ /**
1653
+ * You can provide a client instance returned by `createClient()` instead of
1654
+ * individual options. This might be also useful if you want to implement a
1655
+ * custom client.
1656
+ */
1657
+ client?: Client;
1658
+ };
1659
+
1660
+ type IEnv = {
1661
+ name: string;
1662
+ baseUrl: string;
1663
+ };
1664
+ declare const envs: {
1665
+ readonly test: {
1666
+ readonly name: "Test";
1667
+ readonly baseUrl: "https://protocol-api.tec.tjrsgon.com";
1668
+ };
1669
+ };
1670
+ declare function getEnv<T extends keyof typeof envs>(type: T): {
1671
+ readonly test: {
1672
+ readonly name: "Test";
1673
+ readonly baseUrl: "https://protocol-api.tec.tjrsgon.com";
1674
+ };
1675
+ }[T];
1676
+
1677
+ type IApiConfig = {
1678
+ env: IEnv;
1679
+ apiKey?: string;
1680
+ };
1681
+ declare const api: {
1682
+ createClient: (config: IApiConfig, overrides?: Config) => _hey_api_client_fetch.Client;
1683
+ /**
1684
+ * Pre-defined templates for Staking platforms
1685
+ * Each template has it's own set of rules, parameters and actions
1686
+ */
1687
+ stakingTemplates: {
1688
+ reputation: {
1689
+ createPlatform: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationV0CreatePlatformData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1690
+ createPool: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationV0CreatePoolData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1691
+ getReward: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationV0GetRewardData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1692
+ partialUnstake: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationV0PartialUnstakeData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1693
+ restake: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationV0RestakeData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1694
+ stake: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationV0StakeData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1695
+ unstake: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationV0UnstakeData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1696
+ getCreatePoolEvent: <ThrowOnError extends boolean = false>(options: Options<GetStakingTemplatesReputationV0GetCreatePoolEventData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<{
1697
+ poolId: string;
1698
+ rewardAssetHandler: string;
1699
+ inputAssetKeeper: string;
1700
+ }, {
1701
+ status: 400;
1702
+ message: string;
1703
+ }, ThrowOnError>;
1704
+ getPlatformDeployEvent: <ThrowOnError extends boolean = false>(options: Options<GetStakingTemplatesReputationV0GetPlatformDeployEventData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<{
1705
+ diamondAddress: string;
1706
+ admin: string;
1707
+ }, {
1708
+ status: 400;
1709
+ message: string;
1710
+ }, ThrowOnError>;
1711
+ getStakeEvent: <ThrowOnError extends boolean = false>(options: Options<GetStakingTemplatesReputationV0GetStakeEventData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<{
1712
+ poolId: string;
1713
+ stakeId: string;
1714
+ operator: string;
1715
+ owner: string;
1716
+ }, {
1717
+ status: 400;
1718
+ message: string;
1719
+ }, ThrowOnError>;
1720
+ };
1721
+ reputationLock: {
1722
+ createPlatform: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationLockV0CreatePlatformData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1723
+ createPool: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationLockV0CreatePoolData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1724
+ getReward: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationLockV0GetRewardData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1725
+ partialUnstake: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationLockV0PartialUnstakeData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1726
+ restake: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationLockV0RestakeData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1727
+ stake: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationLockV0StakeData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1728
+ unstake: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesReputationLockV0UnstakeData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1729
+ getCreatePoolEvent: <ThrowOnError extends boolean = false>(options: Options<GetStakingTemplatesReputationLockV0GetCreatePoolEventData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<{
1730
+ poolId: string;
1731
+ rewardAssetHandler: string;
1732
+ inputAssetKeeper: string;
1733
+ }, {
1734
+ status: 400;
1735
+ message: string;
1736
+ }, ThrowOnError>;
1737
+ getPlatformDeployEvent: <ThrowOnError extends boolean = false>(options: Options<GetStakingTemplatesReputationLockV0GetPlatformDeployEventData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<{
1738
+ diamondAddress: string;
1739
+ admin: string;
1740
+ }, {
1741
+ status: 400;
1742
+ message: string;
1743
+ }, ThrowOnError>;
1744
+ getStakeEvent: <ThrowOnError extends boolean = false>(options: Options<GetStakingTemplatesReputationLockV0GetStakeEventData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<{
1745
+ poolId: string;
1746
+ stakeId: string;
1747
+ operator: string;
1748
+ owner: string;
1749
+ }, {
1750
+ status: 400;
1751
+ message: string;
1752
+ }, ThrowOnError>;
1753
+ };
1754
+ rwa: {
1755
+ createPlatform: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesRwaV0CreatePlatformData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1756
+ createPool: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesRwaV0CreatePoolData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1757
+ getReward: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesRwaV0GetRewardData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1758
+ notifyRewards: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesRwaV0NotifyRewardsData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1759
+ partialUnstake: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesRwaV0PartialUnstakeData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1760
+ restake: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesRwaV0RestakeData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1761
+ stake: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesRwaV0StakeData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1762
+ unstake: <ThrowOnError extends boolean = false>(options?: Options<PostStakingTemplatesRwaV0UnstakeData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1763
+ getCreatePoolEvent: <ThrowOnError extends boolean = false>(options: Options<GetStakingTemplatesRwaV0GetCreatePoolEventData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<{
1764
+ poolId: string;
1765
+ rewardAssetHandler: string;
1766
+ inputAssetKeeper: string;
1767
+ }, {
1768
+ status: 400;
1769
+ message: string;
1770
+ }, ThrowOnError>;
1771
+ getPlatformDeployEvent: <ThrowOnError extends boolean = false>(options: Options<GetStakingTemplatesRwaV0GetPlatformDeployEventData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<{
1772
+ diamondAddress: string;
1773
+ admin: string;
1774
+ }, {
1775
+ status: 400;
1776
+ message: string;
1777
+ }, ThrowOnError>;
1778
+ getStakeEvent: <ThrowOnError extends boolean = false>(options: Options<GetStakingTemplatesRwaV0GetStakeEventData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<{
1779
+ poolId: string;
1780
+ stakeId: string;
1781
+ operator: string;
1782
+ owner: string;
1783
+ }, {
1784
+ status: 400;
1785
+ message: string;
1786
+ }, ThrowOnError>;
1787
+ };
1788
+ };
1789
+ staking: {
1790
+ roles: {
1791
+ getRoles: <ThrowOnError extends boolean = false>(options?: Options<GetStakingRolesGetRolesV0Data, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Role[], {
1792
+ status: 400;
1793
+ message: string;
1794
+ }, ThrowOnError>;
1795
+ grantRole: <ThrowOnError extends boolean = false>(options?: Options<PostStakingRolesGrantRoleV0Data, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Transaction, unknown, ThrowOnError>;
1796
+ searchRoles: <ThrowOnError extends boolean = false>(options?: Options<PostStakingRolesSearchRolesV0Data, ThrowOnError>) => _hey_api_client_fetch.RequestResult<RoleAssignment[], unknown, ThrowOnError>;
1797
+ searchRoleEvents: <ThrowOnError extends boolean = false>(options?: Options<PostStakingRolesSearchRoleEventsV0Data, ThrowOnError>) => _hey_api_client_fetch.RequestResult<RoleAssignment[], unknown, ThrowOnError>;
1798
+ };
1799
+ stakes: {
1800
+ getStake: <ThrowOnError extends boolean = false>(options: Options<GetStakingStakesGetStakeV0Data, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Stake, GetStakingStakesGetStakeV0Error, ThrowOnError>;
1801
+ searchStakes: <ThrowOnError extends boolean = false>(options?: Options<PostStakingStakesSearchStakesV0Data, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Stake[], unknown, ThrowOnError>;
1802
+ searchStakeEvents: <ThrowOnError extends boolean = false>(options?: Options<PostStakingStakesSearchStakeEventsV0Data, ThrowOnError>) => _hey_api_client_fetch.RequestResult<StakeEvent[], unknown, ThrowOnError>;
1803
+ };
1804
+ pools: {
1805
+ getPool: <ThrowOnError extends boolean = false>(options: Options<GetStakingPoolsGetPoolV0Data, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Pool, GetStakingPoolsGetPoolV0Error, ThrowOnError>;
1806
+ searchPools: <ThrowOnError extends boolean = false>(options?: Options<PostStakingPoolsSearchPoolsV0Data, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Pool[], unknown, ThrowOnError>;
1807
+ };
1808
+ platforms: {
1809
+ getPlatform: <ThrowOnError extends boolean = false>(options: Options<GetStakingPlatformsGetV0Data, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Platform, GetStakingPlatformsGetV0Error, ThrowOnError>;
1810
+ searchPlatforms: <ThrowOnError extends boolean = false>(options?: Options<PostStakingPlatformsSearchV0Data, ThrowOnError>) => _hey_api_client_fetch.RequestResult<Platform[], unknown, ThrowOnError>;
1811
+ };
1812
+ gas: {
1813
+ estimateGas: <ThrowOnError extends boolean = false>(options?: Options<PostStakingGasEstimateGasV0Data, ThrowOnError>) => _hey_api_client_fetch.RequestResult<EstimateGasResponse, unknown, ThrowOnError>;
1814
+ };
1815
+ };
1816
+ };
1817
+ type ApiClient = ReturnType<(typeof api)["createClient"]>;
1818
+
1819
+ type ApiResponse<T> = {
1820
+ error: unknown;
1821
+ data: undefined;
1822
+ } | {
1823
+ error: undefined;
1824
+ data: T;
1825
+ };
1826
+ declare function handleApiResponse<T>(apiResponse: ApiResponse<T>): T;
1827
+
1828
+ export { type AmountMultInterval, type AmountTwoBorder, type ApiClient, type ApiResponse, type ClientOptions, type Erc20Input, type Erc20Reward, type Erc721Meta, type EstimateGasResponse, type GetStakingPlatformsGetV0Data, type GetStakingPlatformsGetV0Error, type GetStakingPlatformsGetV0Errors, type GetStakingPlatformsGetV0Response, type GetStakingPlatformsGetV0Responses, type GetStakingPoolsGetPoolV0Data, type GetStakingPoolsGetPoolV0Error, type GetStakingPoolsGetPoolV0Errors, type GetStakingPoolsGetPoolV0Response, type GetStakingPoolsGetPoolV0Responses, type GetStakingRolesGetRolesV0Data, type GetStakingRolesGetRolesV0Error, type GetStakingRolesGetRolesV0Errors, type GetStakingRolesGetRolesV0Response, type GetStakingRolesGetRolesV0Responses, type GetStakingStakesGetStakeV0Data, type GetStakingStakesGetStakeV0Error, type GetStakingStakesGetStakeV0Errors, type GetStakingStakesGetStakeV0Response, type GetStakingStakesGetStakeV0Responses, type GetStakingTemplatesReputationLockV0GetCreatePoolEventData, type GetStakingTemplatesReputationLockV0GetCreatePoolEventError, type GetStakingTemplatesReputationLockV0GetCreatePoolEventErrors, type GetStakingTemplatesReputationLockV0GetCreatePoolEventResponse, type GetStakingTemplatesReputationLockV0GetCreatePoolEventResponses, type GetStakingTemplatesReputationLockV0GetPlatformDeployEventData, type GetStakingTemplatesReputationLockV0GetPlatformDeployEventError, type GetStakingTemplatesReputationLockV0GetPlatformDeployEventErrors, type GetStakingTemplatesReputationLockV0GetPlatformDeployEventResponse, type GetStakingTemplatesReputationLockV0GetPlatformDeployEventResponses, type GetStakingTemplatesReputationLockV0GetStakeEventData, type GetStakingTemplatesReputationLockV0GetStakeEventError, type GetStakingTemplatesReputationLockV0GetStakeEventErrors, type GetStakingTemplatesReputationLockV0GetStakeEventResponse, type GetStakingTemplatesReputationLockV0GetStakeEventResponses, type GetStakingTemplatesReputationV0GetCreatePoolEventData, type GetStakingTemplatesReputationV0GetCreatePoolEventError, type GetStakingTemplatesReputationV0GetCreatePoolEventErrors, type GetStakingTemplatesReputationV0GetCreatePoolEventResponse, type GetStakingTemplatesReputationV0GetCreatePoolEventResponses, type GetStakingTemplatesReputationV0GetPlatformDeployEventData, type GetStakingTemplatesReputationV0GetPlatformDeployEventError, type GetStakingTemplatesReputationV0GetPlatformDeployEventErrors, type GetStakingTemplatesReputationV0GetPlatformDeployEventResponse, type GetStakingTemplatesReputationV0GetPlatformDeployEventResponses, type GetStakingTemplatesReputationV0GetStakeEventData, type GetStakingTemplatesReputationV0GetStakeEventError, type GetStakingTemplatesReputationV0GetStakeEventErrors, type GetStakingTemplatesReputationV0GetStakeEventResponse, type GetStakingTemplatesReputationV0GetStakeEventResponses, type GetStakingTemplatesRwaV0GetCreatePoolEventData, type GetStakingTemplatesRwaV0GetCreatePoolEventError, type GetStakingTemplatesRwaV0GetCreatePoolEventErrors, type GetStakingTemplatesRwaV0GetCreatePoolEventResponse, type GetStakingTemplatesRwaV0GetCreatePoolEventResponses, type GetStakingTemplatesRwaV0GetPlatformDeployEventData, type GetStakingTemplatesRwaV0GetPlatformDeployEventError, type GetStakingTemplatesRwaV0GetPlatformDeployEventErrors, type GetStakingTemplatesRwaV0GetPlatformDeployEventResponse, type GetStakingTemplatesRwaV0GetPlatformDeployEventResponses, type GetStakingTemplatesRwaV0GetStakeEventData, type GetStakingTemplatesRwaV0GetStakeEventError, type GetStakingTemplatesRwaV0GetStakeEventErrors, type GetStakingTemplatesRwaV0GetStakeEventResponse, type GetStakingTemplatesRwaV0GetStakeEventResponses, type IApiConfig, type IEnv, type LockMultInterval, type LockTwoBorder, type PageRequest, type Platform, type Pool, type PostStakingGasEstimateGasV0Data, type PostStakingGasEstimateGasV0Response, type PostStakingGasEstimateGasV0Responses, type PostStakingPlatformsSearchV0Data, type PostStakingPlatformsSearchV0Response, type PostStakingPlatformsSearchV0Responses, type PostStakingPoolsSearchPoolsV0Data, type PostStakingPoolsSearchPoolsV0Response, type PostStakingPoolsSearchPoolsV0Responses, type PostStakingRolesGrantRoleV0Data, type PostStakingRolesGrantRoleV0Response, type PostStakingRolesGrantRoleV0Responses, type PostStakingRolesSearchRoleEventsV0Data, type PostStakingRolesSearchRoleEventsV0Response, type PostStakingRolesSearchRoleEventsV0Responses, type PostStakingRolesSearchRolesV0Data, type PostStakingRolesSearchRolesV0Response, type PostStakingRolesSearchRolesV0Responses, type PostStakingStakesSearchStakeEventsV0Data, type PostStakingStakesSearchStakeEventsV0Response, type PostStakingStakesSearchStakeEventsV0Responses, type PostStakingStakesSearchStakesV0Data, type PostStakingStakesSearchStakesV0Response, type PostStakingStakesSearchStakesV0Responses, type PostStakingTemplatesReputationLockV0CreatePlatformData, type PostStakingTemplatesReputationLockV0CreatePlatformResponse, type PostStakingTemplatesReputationLockV0CreatePlatformResponses, type PostStakingTemplatesReputationLockV0CreatePoolData, type PostStakingTemplatesReputationLockV0CreatePoolResponse, type PostStakingTemplatesReputationLockV0CreatePoolResponses, type PostStakingTemplatesReputationLockV0GetRewardData, type PostStakingTemplatesReputationLockV0GetRewardResponse, type PostStakingTemplatesReputationLockV0GetRewardResponses, type PostStakingTemplatesReputationLockV0PartialUnstakeData, type PostStakingTemplatesReputationLockV0PartialUnstakeResponse, type PostStakingTemplatesReputationLockV0PartialUnstakeResponses, type PostStakingTemplatesReputationLockV0RestakeData, type PostStakingTemplatesReputationLockV0RestakeResponse, type PostStakingTemplatesReputationLockV0RestakeResponses, type PostStakingTemplatesReputationLockV0StakeData, type PostStakingTemplatesReputationLockV0StakeResponse, type PostStakingTemplatesReputationLockV0StakeResponses, type PostStakingTemplatesReputationLockV0UnstakeData, type PostStakingTemplatesReputationLockV0UnstakeResponse, type PostStakingTemplatesReputationLockV0UnstakeResponses, type PostStakingTemplatesReputationV0CreatePlatformData, type PostStakingTemplatesReputationV0CreatePlatformResponse, type PostStakingTemplatesReputationV0CreatePlatformResponses, type PostStakingTemplatesReputationV0CreatePoolData, type PostStakingTemplatesReputationV0CreatePoolResponse, type PostStakingTemplatesReputationV0CreatePoolResponses, type PostStakingTemplatesReputationV0GetRewardData, type PostStakingTemplatesReputationV0GetRewardResponse, type PostStakingTemplatesReputationV0GetRewardResponses, type PostStakingTemplatesReputationV0PartialUnstakeData, type PostStakingTemplatesReputationV0PartialUnstakeResponse, type PostStakingTemplatesReputationV0PartialUnstakeResponses, type PostStakingTemplatesReputationV0RestakeData, type PostStakingTemplatesReputationV0RestakeResponse, type PostStakingTemplatesReputationV0RestakeResponses, type PostStakingTemplatesReputationV0StakeData, type PostStakingTemplatesReputationV0StakeResponse, type PostStakingTemplatesReputationV0StakeResponses, type PostStakingTemplatesReputationV0UnstakeData, type PostStakingTemplatesReputationV0UnstakeResponse, type PostStakingTemplatesReputationV0UnstakeResponses, type PostStakingTemplatesRwaV0CreatePlatformData, type PostStakingTemplatesRwaV0CreatePlatformResponse, type PostStakingTemplatesRwaV0CreatePlatformResponses, type PostStakingTemplatesRwaV0CreatePoolData, type PostStakingTemplatesRwaV0CreatePoolResponse, type PostStakingTemplatesRwaV0CreatePoolResponses, type PostStakingTemplatesRwaV0GetRewardData, type PostStakingTemplatesRwaV0GetRewardResponse, type PostStakingTemplatesRwaV0GetRewardResponses, type PostStakingTemplatesRwaV0NotifyRewardsData, type PostStakingTemplatesRwaV0NotifyRewardsResponse, type PostStakingTemplatesRwaV0NotifyRewardsResponses, type PostStakingTemplatesRwaV0PartialUnstakeData, type PostStakingTemplatesRwaV0PartialUnstakeResponse, type PostStakingTemplatesRwaV0PartialUnstakeResponses, type PostStakingTemplatesRwaV0RestakeData, type PostStakingTemplatesRwaV0RestakeResponse, type PostStakingTemplatesRwaV0RestakeResponses, type PostStakingTemplatesRwaV0StakeData, type PostStakingTemplatesRwaV0StakeResponse, type PostStakingTemplatesRwaV0StakeResponses, type PostStakingTemplatesRwaV0UnstakeData, type PostStakingTemplatesRwaV0UnstakeResponse, type PostStakingTemplatesRwaV0UnstakeResponses, type RewardDistributionComplex, type Role, type RoleAssignment, type Stake, type StakeEvent, type Transaction, api, envs, getEnv, handleApiResponse };