@baseline-markets/sdk 1.1.0 → 1.2.0

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/dist/index.d.ts CHANGED
@@ -1,23 +1,4 @@
1
- import { Address, Hex, PublicClient, WalletClient, Call, toHex } from 'viem';
2
- export { mercuryAbis as abis } from '@baseline/contracts/abis';
3
-
4
- type LaunchMode = 'zrp' | 'standard';
5
- type BaseLaunchInput = {
6
- name: string;
7
- symbol: string;
8
- reserve: Address;
9
- totalSupply: bigint;
10
- initialPoolBTokens: bigint;
11
- creator: Address;
12
- creatorFeePct: bigint;
13
- mode?: LaunchMode;
14
- initialPoolReserves?: bigint;
15
- feeRecipient?: Address;
16
- swapFeePct?: bigint;
17
- salt?: Hex | null;
18
- reserveDecimals?: number;
19
- };
20
- type LaunchInput = BaseLaunchInput;
1
+ import { Address, Hex, Call, toHex, PublicClient, WalletClient } from 'viem';
21
2
 
22
3
  type CreatePoolParams = {
23
4
  bToken: Address;
@@ -127,8 +108,8 @@ type BTokenInfo = {
127
108
  chainId: number;
128
109
  relay: Address;
129
110
  bToken: Address;
130
- status: BTokenInfoStatus;
131
- bytecode: boolean;
111
+ status?: BTokenInfoStatus;
112
+ bytecode?: boolean;
132
113
  name?: string;
133
114
  symbol?: string;
134
115
  decimals?: number;
@@ -144,6 +125,148 @@ type BTokenInfo = {
144
125
  maker?: BTokenMakerInfo;
145
126
  };
146
127
 
128
+ type SerializedCall = {
129
+ to: Call['to'];
130
+ data?: Call['data'];
131
+ value: ReturnType<typeof toHex>;
132
+ };
133
+ type ExtendedCall<T = unknown> = Call & {
134
+ decode?: (data: Hex) => T;
135
+ };
136
+ type SimulatedCallResults<T extends readonly ExtendedCall[]> = {
137
+ [K in keyof T]: Required<T[K]> extends {
138
+ decode: (data: Hex) => infer Result;
139
+ } ? Result : Hex;
140
+ };
141
+ declare function simulateCalls<T extends readonly ExtendedCall[]>(publicClient: PublicClient, calls: T, opts?: {
142
+ account?: Address;
143
+ }): Promise<SimulatedCallResults<T>>;
144
+ declare function serializeCalls(calls: Call[]): SerializedCall[];
145
+
146
+ declare const WAD: bigint;
147
+ declare const ZERO_BYTES32: Hex;
148
+ type LaunchMode = 'zrp' | 'standard';
149
+ type BaseLaunchInput = {
150
+ name: string;
151
+ symbol: string;
152
+ reserve: Address;
153
+ totalSupply: bigint;
154
+ initialPoolBTokens: bigint;
155
+ creator: Address;
156
+ creatorFeePct: bigint;
157
+ mode?: LaunchMode;
158
+ initialPoolReserves?: bigint;
159
+ feeRecipient?: Address;
160
+ swapFeePct?: bigint;
161
+ salt?: Hex | null;
162
+ reserveDecimals?: number;
163
+ };
164
+ type LaunchInput = BaseLaunchInput;
165
+ type LaunchCallInput = BaseLaunchInput & {
166
+ relay: Address;
167
+ bToken: Address;
168
+ };
169
+ type BaseLaunchCallInput = {
170
+ relay: Address;
171
+ bToken: Address;
172
+ name: string;
173
+ symbol: string;
174
+ totalSupply: bigint;
175
+ salt: Hex;
176
+ };
177
+ declare function encodeZrpLaunchCalls(input: BaseLaunchCallInput & {
178
+ params: CreatePoolFromInvariantParams;
179
+ }): Call[];
180
+ declare function encodeStandardLaunchCalls(input: BaseLaunchCallInput & {
181
+ reserve: Address;
182
+ params: CreatePoolParams;
183
+ }): Call[];
184
+ declare function buildLaunchCalls(input: LaunchCallInput): Call[];
185
+ declare function validateLaunchCallInput(input: LaunchCallInput): void;
186
+
187
+ declare const MAX_UINT256: bigint;
188
+ type CallsApi = ReturnType<typeof createCallsApi>;
189
+ declare function createCallsApi(input: {
190
+ getRelay: () => Address;
191
+ getConfig: () => SDKConfig | undefined;
192
+ getAccount: () => Address;
193
+ getAllowance: (token: Address, owner: Address, spender: Address) => Promise<bigint>;
194
+ launch: (input: LaunchInput, opts?: {
195
+ account?: Address;
196
+ precomputedBToken?: Address;
197
+ }) => Promise<Call[]>;
198
+ }): {
199
+ launch: (input: LaunchInput, opts?: {
200
+ account?: Address;
201
+ precomputedBToken?: Address;
202
+ }) => Promise<Call[]>;
203
+ factory: {
204
+ createBToken: (name: string, symbol: string, totalSupply: bigint, salt: Hex) => ExtendedCall<`0x${string}`>;
205
+ createPool: (params: CreatePoolParams) => ExtendedCall<unknown>;
206
+ createPoolFromInvariant: (params: CreatePoolFromInvariantParams) => ExtendedCall<unknown>;
207
+ };
208
+ swap: {
209
+ buyTokensExactOut: (bToken: Address, amountOut: bigint, limitAmount: bigint, opts?: Pick<SwapOpts, "useNative">) => ExtendedCall<unknown>;
210
+ buyTokensExactIn: (bToken: Address, amountIn: bigint, limitAmount: bigint) => ExtendedCall<unknown>;
211
+ sellTokensExactIn: (bToken: Address, amountIn: bigint, limitAmount: bigint) => ExtendedCall<unknown>;
212
+ sellTokensExactOut: (bToken: Address, amountOut: bigint, limitAmount: bigint) => ExtendedCall<unknown>;
213
+ };
214
+ staking: {
215
+ deposit: (bToken: Address, user: Address, amount: bigint) => ExtendedCall<unknown>;
216
+ withdraw: (bToken: Address, amount: bigint) => ExtendedCall<unknown>;
217
+ claim: (bToken: Address, user: Address, asNative?: boolean) => ExtendedCall<bigint>;
218
+ };
219
+ credit: {
220
+ borrow: (bToken: Address, amount: bigint, recipient: Address, opts?: {
221
+ outputNative?: boolean;
222
+ }) => ExtendedCall<unknown>;
223
+ repay: (bToken: Address, reservesIn: bigint, recipient: Address, opts?: {
224
+ useNative?: boolean;
225
+ }) => ExtendedCall<unknown>;
226
+ leverage: (bToken: Address, totalCollateral: bigint, collateralIn: bigint, maxSwapReservesIn: bigint) => ExtendedCall<bigint>;
227
+ deleverage: (bToken: Address, collateralToSell: bigint, minSwapReservesOut: bigint) => ExtendedCall<{
228
+ collateralRedeemed: bigint;
229
+ debtRepaid: bigint;
230
+ refund: bigint;
231
+ }>;
232
+ };
233
+ approval: {
234
+ approve: (token: Address, spender: Address, amount: bigint) => ExtendedCall<boolean>;
235
+ ensure: (token: Address, spender: Address, required: bigint, opts?: {
236
+ owner?: Address;
237
+ policy?: ApprovalPolicy;
238
+ }) => Promise<Call[]>;
239
+ };
240
+ };
241
+ declare function approvalCalls(input: {
242
+ token: Address;
243
+ spender: Address;
244
+ required: bigint;
245
+ currentAllowance: bigint;
246
+ policy: ApprovalPolicy;
247
+ }): Call[];
248
+
249
+ type index_CallsApi = CallsApi;
250
+ type index_ExtendedCall<T = unknown> = ExtendedCall<T>;
251
+ type index_LaunchCallInput = LaunchCallInput;
252
+ type index_LaunchInput = LaunchInput;
253
+ type index_LaunchMode = LaunchMode;
254
+ declare const index_MAX_UINT256: typeof MAX_UINT256;
255
+ type index_SerializedCall = SerializedCall;
256
+ declare const index_WAD: typeof WAD;
257
+ declare const index_ZERO_BYTES32: typeof ZERO_BYTES32;
258
+ declare const index_approvalCalls: typeof approvalCalls;
259
+ declare const index_buildLaunchCalls: typeof buildLaunchCalls;
260
+ declare const index_createCallsApi: typeof createCallsApi;
261
+ declare const index_encodeStandardLaunchCalls: typeof encodeStandardLaunchCalls;
262
+ declare const index_encodeZrpLaunchCalls: typeof encodeZrpLaunchCalls;
263
+ declare const index_serializeCalls: typeof serializeCalls;
264
+ declare const index_simulateCalls: typeof simulateCalls;
265
+ declare const index_validateLaunchCallInput: typeof validateLaunchCallInput;
266
+ declare namespace index {
267
+ export { type index_CallsApi as CallsApi, type index_ExtendedCall as ExtendedCall, type index_LaunchCallInput as LaunchCallInput, type index_LaunchInput as LaunchInput, type index_LaunchMode as LaunchMode, index_MAX_UINT256 as MAX_UINT256, type index_SerializedCall as SerializedCall, index_WAD as WAD, index_ZERO_BYTES32 as ZERO_BYTES32, index_approvalCalls as approvalCalls, index_buildLaunchCalls as buildLaunchCalls, index_createCallsApi as createCallsApi, index_encodeStandardLaunchCalls as encodeStandardLaunchCalls, index_encodeZrpLaunchCalls as encodeZrpLaunchCalls, index_serializeCalls as serializeCalls, index_simulateCalls as simulateCalls, index_validateLaunchCallInput as validateLaunchCallInput };
268
+ }
269
+
147
270
  declare class BaselineSDK {
148
271
  readonly publicClient: PublicClient;
149
272
  readonly walletClient?: WalletClient;
@@ -152,7 +275,45 @@ declare class BaselineSDK {
152
275
  readonly calls: {
153
276
  launch: (input: LaunchInput, opts?: {
154
277
  account?: Address;
278
+ precomputedBToken?: Address;
155
279
  }) => Promise<Call[]>;
280
+ factory: {
281
+ createBToken: (name: string, symbol: string, totalSupply: bigint, salt: Hex) => ExtendedCall<`0x${string}`>;
282
+ createPool: (params: CreatePoolParams) => ExtendedCall<unknown>;
283
+ createPoolFromInvariant: (params: CreatePoolFromInvariantParams) => ExtendedCall<unknown>;
284
+ };
285
+ swap: {
286
+ buyTokensExactOut: (bToken: Address, amountOut: bigint, limitAmount: bigint, opts?: Pick<SwapOpts, "useNative">) => ExtendedCall<unknown>;
287
+ buyTokensExactIn: (bToken: Address, amountIn: bigint, limitAmount: bigint) => ExtendedCall<unknown>;
288
+ sellTokensExactIn: (bToken: Address, amountIn: bigint, limitAmount: bigint) => ExtendedCall<unknown>;
289
+ sellTokensExactOut: (bToken: Address, amountOut: bigint, limitAmount: bigint) => ExtendedCall<unknown>;
290
+ };
291
+ staking: {
292
+ deposit: (bToken: Address, user: Address, amount: bigint) => ExtendedCall<unknown>;
293
+ withdraw: (bToken: Address, amount: bigint) => ExtendedCall<unknown>;
294
+ claim: (bToken: Address, user: Address, asNative?: boolean) => ExtendedCall<bigint>;
295
+ };
296
+ credit: {
297
+ borrow: (bToken: Address, amount: bigint, recipient: Address, opts?: {
298
+ outputNative?: boolean;
299
+ }) => ExtendedCall<unknown>;
300
+ repay: (bToken: Address, reservesIn: bigint, recipient: Address, opts?: {
301
+ useNative?: boolean;
302
+ }) => ExtendedCall<unknown>;
303
+ leverage: (bToken: Address, totalCollateral: bigint, collateralIn: bigint, maxSwapReservesIn: bigint) => ExtendedCall<bigint>;
304
+ deleverage: (bToken: Address, collateralToSell: bigint, minSwapReservesOut: bigint) => ExtendedCall<{
305
+ collateralRedeemed: bigint;
306
+ debtRepaid: bigint;
307
+ refund: bigint;
308
+ }>;
309
+ };
310
+ approval: {
311
+ approve: (token: Address, spender: Address, amount: bigint) => ExtendedCall<boolean>;
312
+ ensure: (token: Address, spender: Address, required: bigint, opts?: {
313
+ owner?: Address;
314
+ policy?: ApprovalPolicy;
315
+ }) => Promise<Call[]>;
316
+ };
156
317
  };
157
318
  private getAccount;
158
319
  private requireWallet;
@@ -257,6 +418,7 @@ declare class BaselineSDK {
257
418
  refund: bigint;
258
419
  }>;
259
420
  getStakedAccount(bToken: Address, user: Address): Promise<StakedAccount>;
421
+ getEarned(bToken: Address, user: Address): Promise<bigint>;
260
422
  getCreditAccount(bToken: Address, user: Address): Promise<CreditAccount>;
261
423
  getTokenBalance(token: Address, user: Address): Promise<bigint>;
262
424
  approve(token: Address, spender: Address, amount: bigint, opts?: TxOpts): Promise<Hex>;
@@ -265,6 +427,7 @@ declare class BaselineSDK {
265
427
  policy?: 'infinite' | 'exact';
266
428
  }): Promise<void>;
267
429
  getBTokenInfo(bToken: Address): Promise<BTokenInfo>;
430
+ getBTokenStatus(bToken: Address, info?: Pick<BTokenInfo, 'reserve' | 'maker'>): Promise<Pick<BTokenInfo, 'status' | 'bytecode'>>;
268
431
  getReserve(bToken: Address): Promise<Address>;
269
432
  activePrice(bToken: Address): Promise<bigint>;
270
433
  quoteLeverage(bToken: Address, collateralIn: bigint, leverageFactor: bigint): Promise<{
@@ -275,13 +438,6 @@ declare class BaselineSDK {
275
438
  }>;
276
439
  }
277
440
 
278
- type SerializedCall = {
279
- to: Call['to'];
280
- data?: Call['data'];
281
- value: ReturnType<typeof toHex>;
282
- };
283
- declare function serializeCalls(calls: Call[]): SerializedCall[];
284
-
285
441
  /**
286
442
  * Coarse-grained category for an SDKError. Consumers should branch on this
287
443
  * instead of sniffing the message string or unwrapping `cause`.
@@ -302,6 +458,3508 @@ declare class SDKError extends Error {
302
458
  constructor(message: string, params?: Partial<SDKError>);
303
459
  }
304
460
 
461
+ declare function maxInWithSlippage(amountIn: bigint, slippageBps: number): bigint;
462
+ declare function minOutWithSlippage(amountOut: bigint, slippageBps: number): bigint;
463
+
464
+ declare const abis: {
465
+ bController: readonly [{
466
+ readonly type: "function";
467
+ readonly name: "LABEL";
468
+ readonly inputs: readonly [];
469
+ readonly outputs: readonly [{
470
+ readonly name: "";
471
+ readonly type: "bytes32";
472
+ readonly internalType: "bytes32";
473
+ }];
474
+ readonly stateMutability: "pure";
475
+ }, {
476
+ readonly type: "function";
477
+ readonly name: "ROUTES";
478
+ readonly inputs: readonly [];
479
+ readonly outputs: readonly [{
480
+ readonly name: "routes_";
481
+ readonly type: "bytes4[]";
482
+ readonly internalType: "bytes4[]";
483
+ }];
484
+ readonly stateMutability: "pure";
485
+ }, {
486
+ readonly type: "function";
487
+ readonly name: "VERSION";
488
+ readonly inputs: readonly [];
489
+ readonly outputs: readonly [{
490
+ readonly name: "";
491
+ readonly type: "uint256";
492
+ readonly internalType: "uint256";
493
+ }];
494
+ readonly stateMutability: "pure";
495
+ }, {
496
+ readonly type: "function";
497
+ readonly name: "claimPoolFees";
498
+ readonly inputs: readonly [{
499
+ readonly name: "_bToken";
500
+ readonly type: "address";
501
+ readonly internalType: "contract BToken";
502
+ }];
503
+ readonly outputs: readonly [];
504
+ readonly stateMutability: "nonpayable";
505
+ }, {
506
+ readonly type: "function";
507
+ readonly name: "claimPoolFeesMulti";
508
+ readonly inputs: readonly [{
509
+ readonly name: "_bTokens";
510
+ readonly type: "address[]";
511
+ readonly internalType: "contract BToken[]";
512
+ }];
513
+ readonly outputs: readonly [];
514
+ readonly stateMutability: "nonpayable";
515
+ }, {
516
+ readonly type: "function";
517
+ readonly name: "modifyCreatorFeePct";
518
+ readonly inputs: readonly [{
519
+ readonly name: "_bToken";
520
+ readonly type: "address";
521
+ readonly internalType: "contract BToken";
522
+ }, {
523
+ readonly name: "_creatorFeePct";
524
+ readonly type: "uint256";
525
+ readonly internalType: "uint256";
526
+ }];
527
+ readonly outputs: readonly [];
528
+ readonly stateMutability: "nonpayable";
529
+ }, {
530
+ readonly type: "function";
531
+ readonly name: "modifyLiquidityFeePct";
532
+ readonly inputs: readonly [{
533
+ readonly name: "_bToken";
534
+ readonly type: "address";
535
+ readonly internalType: "contract BToken";
536
+ }, {
537
+ readonly name: "_liquidityFeePct";
538
+ readonly type: "uint256";
539
+ readonly internalType: "uint256";
540
+ }];
541
+ readonly outputs: readonly [];
542
+ readonly stateMutability: "nonpayable";
543
+ }, {
544
+ readonly type: "function";
545
+ readonly name: "pausePool";
546
+ readonly inputs: readonly [{
547
+ readonly name: "_bToken";
548
+ readonly type: "address";
549
+ readonly internalType: "contract BToken";
550
+ }];
551
+ readonly outputs: readonly [];
552
+ readonly stateMutability: "nonpayable";
553
+ }, {
554
+ readonly type: "function";
555
+ readonly name: "pauseProtocol";
556
+ readonly inputs: readonly [];
557
+ readonly outputs: readonly [];
558
+ readonly stateMutability: "nonpayable";
559
+ }, {
560
+ readonly type: "function";
561
+ readonly name: "setBTokenDeployment";
562
+ readonly inputs: readonly [{
563
+ readonly name: "_bToken";
564
+ readonly type: "address";
565
+ readonly internalType: "contract BToken";
566
+ }, {
567
+ readonly name: "_deployer";
568
+ readonly type: "address";
569
+ readonly internalType: "address";
570
+ }, {
571
+ readonly name: "_totalSupply";
572
+ readonly type: "uint256";
573
+ readonly internalType: "uint256";
574
+ }];
575
+ readonly outputs: readonly [];
576
+ readonly stateMutability: "nonpayable";
577
+ }, {
578
+ readonly type: "function";
579
+ readonly name: "setDeployerProfile";
580
+ readonly inputs: readonly [{
581
+ readonly name: "_deployer";
582
+ readonly type: "address";
583
+ readonly internalType: "address";
584
+ }, {
585
+ readonly name: "_active";
586
+ readonly type: "bool";
587
+ readonly internalType: "bool";
588
+ }, {
589
+ readonly name: "_approvedCreditDeployer";
590
+ readonly type: "bool";
591
+ readonly internalType: "bool";
592
+ }, {
593
+ readonly name: "_pauser";
594
+ readonly type: "bool";
595
+ readonly internalType: "bool";
596
+ }, {
597
+ readonly name: "_protocolFeePct";
598
+ readonly type: "uint256";
599
+ readonly internalType: "uint256";
600
+ }, {
601
+ readonly name: "_liquidityFeePct";
602
+ readonly type: "uint256";
603
+ readonly internalType: "uint256";
604
+ }];
605
+ readonly outputs: readonly [];
606
+ readonly stateMutability: "nonpayable";
607
+ }, {
608
+ readonly type: "function";
609
+ readonly name: "setFeeRecipient";
610
+ readonly inputs: readonly [{
611
+ readonly name: "_bToken";
612
+ readonly type: "address";
613
+ readonly internalType: "contract BToken";
614
+ }, {
615
+ readonly name: "_feeRecipient";
616
+ readonly type: "address";
617
+ readonly internalType: "address";
618
+ }];
619
+ readonly outputs: readonly [];
620
+ readonly stateMutability: "nonpayable";
621
+ }, {
622
+ readonly type: "function";
623
+ readonly name: "setReserveApproval";
624
+ readonly inputs: readonly [{
625
+ readonly name: "_reserve";
626
+ readonly type: "address";
627
+ readonly internalType: "address";
628
+ }, {
629
+ readonly name: "_approved";
630
+ readonly type: "bool";
631
+ readonly internalType: "bool";
632
+ }];
633
+ readonly outputs: readonly [];
634
+ readonly stateMutability: "nonpayable";
635
+ }, {
636
+ readonly type: "function";
637
+ readonly name: "supportsInterface";
638
+ readonly inputs: readonly [{
639
+ readonly name: "_interfaceId";
640
+ readonly type: "bytes4";
641
+ readonly internalType: "bytes4";
642
+ }];
643
+ readonly outputs: readonly [{
644
+ readonly name: "";
645
+ readonly type: "bool";
646
+ readonly internalType: "bool";
647
+ }];
648
+ readonly stateMutability: "pure";
649
+ }, {
650
+ readonly type: "function";
651
+ readonly name: "transferCreator";
652
+ readonly inputs: readonly [{
653
+ readonly name: "_bToken";
654
+ readonly type: "address";
655
+ readonly internalType: "contract BToken";
656
+ }, {
657
+ readonly name: "_newCreator";
658
+ readonly type: "address";
659
+ readonly internalType: "address";
660
+ }];
661
+ readonly outputs: readonly [];
662
+ readonly stateMutability: "nonpayable";
663
+ }, {
664
+ readonly type: "function";
665
+ readonly name: "unpausePool";
666
+ readonly inputs: readonly [{
667
+ readonly name: "_bToken";
668
+ readonly type: "address";
669
+ readonly internalType: "contract BToken";
670
+ }];
671
+ readonly outputs: readonly [];
672
+ readonly stateMutability: "nonpayable";
673
+ }, {
674
+ readonly type: "function";
675
+ readonly name: "unpauseProtocol";
676
+ readonly inputs: readonly [];
677
+ readonly outputs: readonly [];
678
+ readonly stateMutability: "nonpayable";
679
+ }, {
680
+ readonly type: "event";
681
+ readonly name: "ApprovedCreditDeployerSet";
682
+ readonly inputs: readonly [{
683
+ readonly name: "user";
684
+ readonly type: "address";
685
+ readonly indexed: false;
686
+ readonly internalType: "address";
687
+ }, {
688
+ readonly name: "approved";
689
+ readonly type: "bool";
690
+ readonly indexed: false;
691
+ readonly internalType: "bool";
692
+ }];
693
+ readonly anonymous: false;
694
+ }, {
695
+ readonly type: "event";
696
+ readonly name: "CreatorFeePctSet";
697
+ readonly inputs: readonly [{
698
+ readonly name: "bToken";
699
+ readonly type: "address";
700
+ readonly indexed: false;
701
+ readonly internalType: "address";
702
+ }, {
703
+ readonly name: "creatorFeePct";
704
+ readonly type: "uint256";
705
+ readonly indexed: false;
706
+ readonly internalType: "uint256";
707
+ }];
708
+ readonly anonymous: false;
709
+ }, {
710
+ readonly type: "event";
711
+ readonly name: "CreatorTransferred";
712
+ readonly inputs: readonly [{
713
+ readonly name: "bToken";
714
+ readonly type: "address";
715
+ readonly indexed: false;
716
+ readonly internalType: "address";
717
+ }, {
718
+ readonly name: "newCreator";
719
+ readonly type: "address";
720
+ readonly indexed: false;
721
+ readonly internalType: "address";
722
+ }];
723
+ readonly anonymous: false;
724
+ }, {
725
+ readonly type: "event";
726
+ readonly name: "DeployerProfileSet";
727
+ readonly inputs: readonly [{
728
+ readonly name: "deployer";
729
+ readonly type: "address";
730
+ readonly indexed: false;
731
+ readonly internalType: "address";
732
+ }, {
733
+ readonly name: "profile";
734
+ readonly type: "tuple";
735
+ readonly indexed: false;
736
+ readonly internalType: "struct State.DeployerProfile";
737
+ readonly components: readonly [{
738
+ readonly name: "active";
739
+ readonly type: "bool";
740
+ readonly internalType: "bool";
741
+ }, {
742
+ readonly name: "approvedCreditDeployer";
743
+ readonly type: "bool";
744
+ readonly internalType: "bool";
745
+ }, {
746
+ readonly name: "pauser";
747
+ readonly type: "bool";
748
+ readonly internalType: "bool";
749
+ }, {
750
+ readonly name: "protocolFeePct";
751
+ readonly type: "uint64";
752
+ readonly internalType: "uint64";
753
+ }, {
754
+ readonly name: "liquidityFeePct";
755
+ readonly type: "uint64";
756
+ readonly internalType: "uint64";
757
+ }];
758
+ }];
759
+ readonly anonymous: false;
760
+ }, {
761
+ readonly type: "event";
762
+ readonly name: "DeployerSet";
763
+ readonly inputs: readonly [{
764
+ readonly name: "bToken";
765
+ readonly type: "address";
766
+ readonly indexed: false;
767
+ readonly internalType: "address";
768
+ }, {
769
+ readonly name: "deployer";
770
+ readonly type: "address";
771
+ readonly indexed: false;
772
+ readonly internalType: "address";
773
+ }];
774
+ readonly anonymous: false;
775
+ }, {
776
+ readonly type: "event";
777
+ readonly name: "FeeRecipientSet";
778
+ readonly inputs: readonly [{
779
+ readonly name: "bToken";
780
+ readonly type: "address";
781
+ readonly indexed: false;
782
+ readonly internalType: "address";
783
+ }, {
784
+ readonly name: "feeRecipient";
785
+ readonly type: "address";
786
+ readonly indexed: false;
787
+ readonly internalType: "address";
788
+ }];
789
+ readonly anonymous: false;
790
+ }, {
791
+ readonly type: "event";
792
+ readonly name: "FeesClaimed";
793
+ readonly inputs: readonly [{
794
+ readonly name: "bToken";
795
+ readonly type: "address";
796
+ readonly indexed: false;
797
+ readonly internalType: "address";
798
+ }, {
799
+ readonly name: "reserve";
800
+ readonly type: "address";
801
+ readonly indexed: false;
802
+ readonly internalType: "address";
803
+ }, {
804
+ readonly name: "creatorAmount";
805
+ readonly type: "uint256";
806
+ readonly indexed: false;
807
+ readonly internalType: "uint256";
808
+ }, {
809
+ readonly name: "protocolAmount";
810
+ readonly type: "uint256";
811
+ readonly indexed: false;
812
+ readonly internalType: "uint256";
813
+ }];
814
+ readonly anonymous: false;
815
+ }, {
816
+ readonly type: "event";
817
+ readonly name: "LiquidityFeePctSet";
818
+ readonly inputs: readonly [{
819
+ readonly name: "bToken";
820
+ readonly type: "address";
821
+ readonly indexed: false;
822
+ readonly internalType: "address";
823
+ }, {
824
+ readonly name: "liquidityFeePct";
825
+ readonly type: "uint256";
826
+ readonly indexed: false;
827
+ readonly internalType: "uint256";
828
+ }];
829
+ readonly anonymous: false;
830
+ }, {
831
+ readonly type: "event";
832
+ readonly name: "ReserveApproved";
833
+ readonly inputs: readonly [{
834
+ readonly name: "reserve";
835
+ readonly type: "address";
836
+ readonly indexed: false;
837
+ readonly internalType: "address";
838
+ }, {
839
+ readonly name: "approved";
840
+ readonly type: "bool";
841
+ readonly indexed: false;
842
+ readonly internalType: "bool";
843
+ }];
844
+ readonly anonymous: false;
845
+ }, {
846
+ readonly type: "error";
847
+ readonly name: "BController_InvalidCreatorFee";
848
+ readonly inputs: readonly [];
849
+ }, {
850
+ readonly type: "error";
851
+ readonly name: "BController_InvalidDecimals";
852
+ readonly inputs: readonly [];
853
+ }, {
854
+ readonly type: "error";
855
+ readonly name: "BController_InvalidLiquidityFee";
856
+ readonly inputs: readonly [];
857
+ }, {
858
+ readonly type: "error";
859
+ readonly name: "BController_NotCreatorOrExecutor";
860
+ readonly inputs: readonly [];
861
+ }, {
862
+ readonly type: "error";
863
+ readonly name: "BController_NotPauserOrExecutor";
864
+ readonly inputs: readonly [];
865
+ }, {
866
+ readonly type: "error";
867
+ readonly name: "Component_NotPermitted";
868
+ readonly inputs: readonly [];
869
+ }, {
870
+ readonly type: "error";
871
+ readonly name: "GuardLib_InsufficientSettledReserves";
872
+ readonly inputs: readonly [];
873
+ }, {
874
+ readonly type: "error";
875
+ readonly name: "GuardLib_Paused";
876
+ readonly inputs: readonly [];
877
+ }, {
878
+ readonly type: "error";
879
+ readonly name: "GuardLib_Reentrant";
880
+ readonly inputs: readonly [];
881
+ }, {
882
+ readonly type: "error";
883
+ readonly name: "GuardLib_ReserveAccountingMismatch";
884
+ readonly inputs: readonly [];
885
+ }];
886
+ bCredit: readonly [{
887
+ readonly type: "function";
888
+ readonly name: "LABEL";
889
+ readonly inputs: readonly [];
890
+ readonly outputs: readonly [{
891
+ readonly name: "";
892
+ readonly type: "bytes32";
893
+ readonly internalType: "bytes32";
894
+ }];
895
+ readonly stateMutability: "pure";
896
+ }, {
897
+ readonly type: "function";
898
+ readonly name: "ROUTES";
899
+ readonly inputs: readonly [];
900
+ readonly outputs: readonly [{
901
+ readonly name: "routes_";
902
+ readonly type: "bytes4[]";
903
+ readonly internalType: "bytes4[]";
904
+ }];
905
+ readonly stateMutability: "pure";
906
+ }, {
907
+ readonly type: "function";
908
+ readonly name: "VERSION";
909
+ readonly inputs: readonly [];
910
+ readonly outputs: readonly [{
911
+ readonly name: "";
912
+ readonly type: "uint256";
913
+ readonly internalType: "uint256";
914
+ }];
915
+ readonly stateMutability: "pure";
916
+ }, {
917
+ readonly type: "function";
918
+ readonly name: "borrow";
919
+ readonly inputs: readonly [{
920
+ readonly name: "_bToken";
921
+ readonly type: "address";
922
+ readonly internalType: "contract BToken";
923
+ }, {
924
+ readonly name: "_amount";
925
+ readonly type: "uint256";
926
+ readonly internalType: "uint256";
927
+ }, {
928
+ readonly name: "_recipient";
929
+ readonly type: "address";
930
+ readonly internalType: "address";
931
+ }];
932
+ readonly outputs: readonly [];
933
+ readonly stateMutability: "nonpayable";
934
+ }, {
935
+ readonly type: "function";
936
+ readonly name: "borrowNative";
937
+ readonly inputs: readonly [{
938
+ readonly name: "_bToken";
939
+ readonly type: "address";
940
+ readonly internalType: "contract BToken";
941
+ }, {
942
+ readonly name: "_amount";
943
+ readonly type: "uint256";
944
+ readonly internalType: "uint256";
945
+ }, {
946
+ readonly name: "_recipient";
947
+ readonly type: "address";
948
+ readonly internalType: "address";
949
+ }];
950
+ readonly outputs: readonly [];
951
+ readonly stateMutability: "nonpayable";
952
+ }, {
953
+ readonly type: "function";
954
+ readonly name: "claimCredit";
955
+ readonly inputs: readonly [{
956
+ readonly name: "_bToken";
957
+ readonly type: "address";
958
+ readonly internalType: "contract BToken";
959
+ }, {
960
+ readonly name: "_users";
961
+ readonly type: "address[]";
962
+ readonly internalType: "address[]";
963
+ }, {
964
+ readonly name: "_collaterals";
965
+ readonly type: "uint128[]";
966
+ readonly internalType: "uint128[]";
967
+ }, {
968
+ readonly name: "_debts";
969
+ readonly type: "uint128[]";
970
+ readonly internalType: "uint128[]";
971
+ }, {
972
+ readonly name: "_proofs";
973
+ readonly type: "bytes32[][]";
974
+ readonly internalType: "bytes32[][]";
975
+ }];
976
+ readonly outputs: readonly [];
977
+ readonly stateMutability: "nonpayable";
978
+ }, {
979
+ readonly type: "function";
980
+ readonly name: "deleverage";
981
+ readonly inputs: readonly [{
982
+ readonly name: "_bToken";
983
+ readonly type: "address";
984
+ readonly internalType: "contract BToken";
985
+ }, {
986
+ readonly name: "_collateralToSell";
987
+ readonly type: "uint256";
988
+ readonly internalType: "uint256";
989
+ }, {
990
+ readonly name: "_minSwapReservesOut";
991
+ readonly type: "uint256";
992
+ readonly internalType: "uint256";
993
+ }];
994
+ readonly outputs: readonly [{
995
+ readonly name: "collateralRedeemed_";
996
+ readonly type: "uint256";
997
+ readonly internalType: "uint256";
998
+ }, {
999
+ readonly name: "debtRepaid_";
1000
+ readonly type: "uint256";
1001
+ readonly internalType: "uint256";
1002
+ }, {
1003
+ readonly name: "refund_";
1004
+ readonly type: "uint256";
1005
+ readonly internalType: "uint256";
1006
+ }];
1007
+ readonly stateMutability: "nonpayable";
1008
+ }, {
1009
+ readonly type: "function";
1010
+ readonly name: "getBorrowForCollateral";
1011
+ readonly inputs: readonly [{
1012
+ readonly name: "_bToken";
1013
+ readonly type: "address";
1014
+ readonly internalType: "contract BToken";
1015
+ }, {
1016
+ readonly name: "_collateral";
1017
+ readonly type: "uint256";
1018
+ readonly internalType: "uint256";
1019
+ }];
1020
+ readonly outputs: readonly [{
1021
+ readonly name: "borrowAmount_";
1022
+ readonly type: "uint256";
1023
+ readonly internalType: "uint256";
1024
+ }, {
1025
+ readonly name: "fee_";
1026
+ readonly type: "uint256";
1027
+ readonly internalType: "uint256";
1028
+ }];
1029
+ readonly stateMutability: "view";
1030
+ }, {
1031
+ readonly type: "function";
1032
+ readonly name: "getMaxBorrow";
1033
+ readonly inputs: readonly [{
1034
+ readonly name: "_bToken";
1035
+ readonly type: "address";
1036
+ readonly internalType: "contract BToken";
1037
+ }, {
1038
+ readonly name: "_user";
1039
+ readonly type: "address";
1040
+ readonly internalType: "address";
1041
+ }];
1042
+ readonly outputs: readonly [{
1043
+ readonly name: "maxBorrow_";
1044
+ readonly type: "uint256";
1045
+ readonly internalType: "uint256";
1046
+ }];
1047
+ readonly stateMutability: "view";
1048
+ }, {
1049
+ readonly type: "function";
1050
+ readonly name: "leverage";
1051
+ readonly inputs: readonly [{
1052
+ readonly name: "_bToken";
1053
+ readonly type: "address";
1054
+ readonly internalType: "contract BToken";
1055
+ }, {
1056
+ readonly name: "_totalCollateral";
1057
+ readonly type: "uint256";
1058
+ readonly internalType: "uint256";
1059
+ }, {
1060
+ readonly name: "_collateralIn";
1061
+ readonly type: "uint256";
1062
+ readonly internalType: "uint256";
1063
+ }, {
1064
+ readonly name: "_maxSwapReservesIn";
1065
+ readonly type: "uint256";
1066
+ readonly internalType: "uint256";
1067
+ }];
1068
+ readonly outputs: readonly [{
1069
+ readonly name: "debt_";
1070
+ readonly type: "uint256";
1071
+ readonly internalType: "uint256";
1072
+ }];
1073
+ readonly stateMutability: "nonpayable";
1074
+ }, {
1075
+ readonly type: "function";
1076
+ readonly name: "previewBorrow";
1077
+ readonly inputs: readonly [{
1078
+ readonly name: "_bToken";
1079
+ readonly type: "address";
1080
+ readonly internalType: "contract BToken";
1081
+ }, {
1082
+ readonly name: "_user";
1083
+ readonly type: "address";
1084
+ readonly internalType: "address";
1085
+ }, {
1086
+ readonly name: "_borrowAmount";
1087
+ readonly type: "uint256";
1088
+ readonly internalType: "uint256";
1089
+ }];
1090
+ readonly outputs: readonly [{
1091
+ readonly name: "collateral_";
1092
+ readonly type: "uint256";
1093
+ readonly internalType: "uint256";
1094
+ }, {
1095
+ readonly name: "debt_";
1096
+ readonly type: "uint256";
1097
+ readonly internalType: "uint256";
1098
+ }, {
1099
+ readonly name: "fee_";
1100
+ readonly type: "uint256";
1101
+ readonly internalType: "uint256";
1102
+ }];
1103
+ readonly stateMutability: "view";
1104
+ }, {
1105
+ readonly type: "function";
1106
+ readonly name: "previewDepositAndBorrow";
1107
+ readonly inputs: readonly [{
1108
+ readonly name: "_bToken";
1109
+ readonly type: "address";
1110
+ readonly internalType: "contract BToken";
1111
+ }, {
1112
+ readonly name: "_user";
1113
+ readonly type: "address";
1114
+ readonly internalType: "address";
1115
+ }, {
1116
+ readonly name: "_depositAmount";
1117
+ readonly type: "uint256";
1118
+ readonly internalType: "uint256";
1119
+ }, {
1120
+ readonly name: "_borrowAmount";
1121
+ readonly type: "uint256";
1122
+ readonly internalType: "uint256";
1123
+ }];
1124
+ readonly outputs: readonly [{
1125
+ readonly name: "collateral_";
1126
+ readonly type: "uint256";
1127
+ readonly internalType: "uint256";
1128
+ }, {
1129
+ readonly name: "debt_";
1130
+ readonly type: "uint256";
1131
+ readonly internalType: "uint256";
1132
+ }, {
1133
+ readonly name: "fee_";
1134
+ readonly type: "uint256";
1135
+ readonly internalType: "uint256";
1136
+ }];
1137
+ readonly stateMutability: "view";
1138
+ }, {
1139
+ readonly type: "function";
1140
+ readonly name: "previewRebalanceCollateral";
1141
+ readonly inputs: readonly [{
1142
+ readonly name: "_bToken";
1143
+ readonly type: "address";
1144
+ readonly internalType: "contract BToken";
1145
+ }, {
1146
+ readonly name: "_collateral";
1147
+ readonly type: "uint256";
1148
+ readonly internalType: "uint256";
1149
+ }, {
1150
+ readonly name: "_debt";
1151
+ readonly type: "uint256";
1152
+ readonly internalType: "uint256";
1153
+ }];
1154
+ readonly outputs: readonly [{
1155
+ readonly name: "unlocked_";
1156
+ readonly type: "uint256";
1157
+ readonly internalType: "uint256";
1158
+ }];
1159
+ readonly stateMutability: "view";
1160
+ }, {
1161
+ readonly type: "function";
1162
+ readonly name: "previewRepay";
1163
+ readonly inputs: readonly [{
1164
+ readonly name: "_bToken";
1165
+ readonly type: "address";
1166
+ readonly internalType: "contract BToken";
1167
+ }, {
1168
+ readonly name: "_recipient";
1169
+ readonly type: "address";
1170
+ readonly internalType: "address";
1171
+ }, {
1172
+ readonly name: "_reservesIn";
1173
+ readonly type: "uint256";
1174
+ readonly internalType: "uint256";
1175
+ }];
1176
+ readonly outputs: readonly [{
1177
+ readonly name: "collateralRedeemed_";
1178
+ readonly type: "uint256";
1179
+ readonly internalType: "uint256";
1180
+ }, {
1181
+ readonly name: "debtRepaid_";
1182
+ readonly type: "uint256";
1183
+ readonly internalType: "uint256";
1184
+ }];
1185
+ readonly stateMutability: "view";
1186
+ }, {
1187
+ readonly type: "function";
1188
+ readonly name: "repay";
1189
+ readonly inputs: readonly [{
1190
+ readonly name: "_bToken";
1191
+ readonly type: "address";
1192
+ readonly internalType: "contract BToken";
1193
+ }, {
1194
+ readonly name: "_reservesIn";
1195
+ readonly type: "uint256";
1196
+ readonly internalType: "uint256";
1197
+ }, {
1198
+ readonly name: "_recipient";
1199
+ readonly type: "address";
1200
+ readonly internalType: "address";
1201
+ }];
1202
+ readonly outputs: readonly [];
1203
+ readonly stateMutability: "nonpayable";
1204
+ }, {
1205
+ readonly type: "function";
1206
+ readonly name: "repayWithNative";
1207
+ readonly inputs: readonly [{
1208
+ readonly name: "_bToken";
1209
+ readonly type: "address";
1210
+ readonly internalType: "contract BToken";
1211
+ }, {
1212
+ readonly name: "_recipient";
1213
+ readonly type: "address";
1214
+ readonly internalType: "address";
1215
+ }];
1216
+ readonly outputs: readonly [];
1217
+ readonly stateMutability: "payable";
1218
+ }, {
1219
+ readonly type: "function";
1220
+ readonly name: "supportsInterface";
1221
+ readonly inputs: readonly [{
1222
+ readonly name: "_interfaceId";
1223
+ readonly type: "bytes4";
1224
+ readonly internalType: "bytes4";
1225
+ }];
1226
+ readonly outputs: readonly [{
1227
+ readonly name: "";
1228
+ readonly type: "bool";
1229
+ readonly internalType: "bool";
1230
+ }];
1231
+ readonly stateMutability: "pure";
1232
+ }, {
1233
+ readonly type: "event";
1234
+ readonly name: "Borrow";
1235
+ readonly inputs: readonly [{
1236
+ readonly name: "bToken";
1237
+ readonly type: "address";
1238
+ readonly indexed: false;
1239
+ readonly internalType: "contract BToken";
1240
+ }, {
1241
+ readonly name: "user";
1242
+ readonly type: "address";
1243
+ readonly indexed: false;
1244
+ readonly internalType: "address";
1245
+ }, {
1246
+ readonly name: "borrowed";
1247
+ readonly type: "uint256";
1248
+ readonly indexed: false;
1249
+ readonly internalType: "uint256";
1250
+ }, {
1251
+ readonly name: "fee";
1252
+ readonly type: "uint256";
1253
+ readonly indexed: false;
1254
+ readonly internalType: "uint256";
1255
+ }, {
1256
+ readonly name: "post";
1257
+ readonly type: "tuple";
1258
+ readonly indexed: false;
1259
+ readonly internalType: "struct State.CreditAccount";
1260
+ readonly components: readonly [{
1261
+ readonly name: "collateral";
1262
+ readonly type: "uint128";
1263
+ readonly internalType: "uint128";
1264
+ }, {
1265
+ readonly name: "debt";
1266
+ readonly type: "uint128";
1267
+ readonly internalType: "uint128";
1268
+ }];
1269
+ }];
1270
+ readonly anonymous: false;
1271
+ }, {
1272
+ readonly type: "event";
1273
+ readonly name: "CreditClaim";
1274
+ readonly inputs: readonly [{
1275
+ readonly name: "bToken";
1276
+ readonly type: "address";
1277
+ readonly indexed: false;
1278
+ readonly internalType: "contract BToken";
1279
+ }, {
1280
+ readonly name: "users";
1281
+ readonly type: "address[]";
1282
+ readonly indexed: false;
1283
+ readonly internalType: "address[]";
1284
+ }, {
1285
+ readonly name: "collaterals";
1286
+ readonly type: "uint128[]";
1287
+ readonly indexed: false;
1288
+ readonly internalType: "uint128[]";
1289
+ }, {
1290
+ readonly name: "debts";
1291
+ readonly type: "uint128[]";
1292
+ readonly indexed: false;
1293
+ readonly internalType: "uint128[]";
1294
+ }];
1295
+ readonly anonymous: false;
1296
+ }, {
1297
+ readonly type: "event";
1298
+ readonly name: "Deleverage";
1299
+ readonly inputs: readonly [{
1300
+ readonly name: "bToken";
1301
+ readonly type: "address";
1302
+ readonly indexed: false;
1303
+ readonly internalType: "contract BToken";
1304
+ }, {
1305
+ readonly name: "user";
1306
+ readonly type: "address";
1307
+ readonly indexed: false;
1308
+ readonly internalType: "address";
1309
+ }, {
1310
+ readonly name: "collateralRedeemed";
1311
+ readonly type: "uint256";
1312
+ readonly indexed: false;
1313
+ readonly internalType: "uint256";
1314
+ }, {
1315
+ readonly name: "debtRepaid";
1316
+ readonly type: "uint256";
1317
+ readonly indexed: false;
1318
+ readonly internalType: "uint256";
1319
+ }, {
1320
+ readonly name: "collateralSold";
1321
+ readonly type: "uint256";
1322
+ readonly indexed: false;
1323
+ readonly internalType: "uint256";
1324
+ }, {
1325
+ readonly name: "refund";
1326
+ readonly type: "uint256";
1327
+ readonly indexed: false;
1328
+ readonly internalType: "uint256";
1329
+ }, {
1330
+ readonly name: "post";
1331
+ readonly type: "tuple";
1332
+ readonly indexed: false;
1333
+ readonly internalType: "struct State.CreditAccount";
1334
+ readonly components: readonly [{
1335
+ readonly name: "collateral";
1336
+ readonly type: "uint128";
1337
+ readonly internalType: "uint128";
1338
+ }, {
1339
+ readonly name: "debt";
1340
+ readonly type: "uint128";
1341
+ readonly internalType: "uint128";
1342
+ }];
1343
+ }];
1344
+ readonly anonymous: false;
1345
+ }, {
1346
+ readonly type: "event";
1347
+ readonly name: "Distributed";
1348
+ readonly inputs: readonly [{
1349
+ readonly name: "bToken";
1350
+ readonly type: "address";
1351
+ readonly indexed: false;
1352
+ readonly internalType: "address";
1353
+ }, {
1354
+ readonly name: "reserve";
1355
+ readonly type: "address";
1356
+ readonly indexed: false;
1357
+ readonly internalType: "address";
1358
+ }, {
1359
+ readonly name: "totalAmount";
1360
+ readonly type: "uint256";
1361
+ readonly indexed: false;
1362
+ readonly internalType: "uint256";
1363
+ }, {
1364
+ readonly name: "protocolFee";
1365
+ readonly type: "uint256";
1366
+ readonly indexed: false;
1367
+ readonly internalType: "uint256";
1368
+ }, {
1369
+ readonly name: "creatorFee";
1370
+ readonly type: "uint256";
1371
+ readonly indexed: false;
1372
+ readonly internalType: "uint256";
1373
+ }, {
1374
+ readonly name: "stakingFee";
1375
+ readonly type: "uint256";
1376
+ readonly indexed: false;
1377
+ readonly internalType: "uint256";
1378
+ }];
1379
+ readonly anonymous: false;
1380
+ }, {
1381
+ readonly type: "event";
1382
+ readonly name: "Leverage";
1383
+ readonly inputs: readonly [{
1384
+ readonly name: "bToken";
1385
+ readonly type: "address";
1386
+ readonly indexed: false;
1387
+ readonly internalType: "contract BToken";
1388
+ }, {
1389
+ readonly name: "user";
1390
+ readonly type: "address";
1391
+ readonly indexed: false;
1392
+ readonly internalType: "address";
1393
+ }, {
1394
+ readonly name: "collateralAdded";
1395
+ readonly type: "uint256";
1396
+ readonly indexed: false;
1397
+ readonly internalType: "uint256";
1398
+ }, {
1399
+ readonly name: "debtAdded";
1400
+ readonly type: "uint256";
1401
+ readonly indexed: false;
1402
+ readonly internalType: "uint256";
1403
+ }, {
1404
+ readonly name: "collateralIn";
1405
+ readonly type: "uint256";
1406
+ readonly indexed: false;
1407
+ readonly internalType: "uint256";
1408
+ }, {
1409
+ readonly name: "reservesIn";
1410
+ readonly type: "uint256";
1411
+ readonly indexed: false;
1412
+ readonly internalType: "uint256";
1413
+ }, {
1414
+ readonly name: "post";
1415
+ readonly type: "tuple";
1416
+ readonly indexed: false;
1417
+ readonly internalType: "struct State.CreditAccount";
1418
+ readonly components: readonly [{
1419
+ readonly name: "collateral";
1420
+ readonly type: "uint128";
1421
+ readonly internalType: "uint128";
1422
+ }, {
1423
+ readonly name: "debt";
1424
+ readonly type: "uint128";
1425
+ readonly internalType: "uint128";
1426
+ }];
1427
+ }];
1428
+ readonly anonymous: false;
1429
+ }, {
1430
+ readonly type: "event";
1431
+ readonly name: "Repay";
1432
+ readonly inputs: readonly [{
1433
+ readonly name: "bToken";
1434
+ readonly type: "address";
1435
+ readonly indexed: false;
1436
+ readonly internalType: "contract BToken";
1437
+ }, {
1438
+ readonly name: "user";
1439
+ readonly type: "address";
1440
+ readonly indexed: false;
1441
+ readonly internalType: "address";
1442
+ }, {
1443
+ readonly name: "collateralRedeemed";
1444
+ readonly type: "uint256";
1445
+ readonly indexed: false;
1446
+ readonly internalType: "uint256";
1447
+ }, {
1448
+ readonly name: "debtRepaid";
1449
+ readonly type: "uint256";
1450
+ readonly indexed: false;
1451
+ readonly internalType: "uint256";
1452
+ }, {
1453
+ readonly name: "post";
1454
+ readonly type: "tuple";
1455
+ readonly indexed: false;
1456
+ readonly internalType: "struct State.CreditAccount";
1457
+ readonly components: readonly [{
1458
+ readonly name: "collateral";
1459
+ readonly type: "uint128";
1460
+ readonly internalType: "uint128";
1461
+ }, {
1462
+ readonly name: "debt";
1463
+ readonly type: "uint128";
1464
+ readonly internalType: "uint128";
1465
+ }];
1466
+ }];
1467
+ readonly anonymous: false;
1468
+ }, {
1469
+ readonly type: "error";
1470
+ readonly name: "BCredit_AlreadyClaimed";
1471
+ readonly inputs: readonly [];
1472
+ }, {
1473
+ readonly type: "error";
1474
+ readonly name: "BCredit_CannotRepayContract";
1475
+ readonly inputs: readonly [];
1476
+ }, {
1477
+ readonly type: "error";
1478
+ readonly name: "BCredit_Deleverage_InvalidCollateralToSell";
1479
+ readonly inputs: readonly [];
1480
+ }, {
1481
+ readonly type: "error";
1482
+ readonly name: "BCredit_Deleverage_Undercollateralized";
1483
+ readonly inputs: readonly [];
1484
+ }, {
1485
+ readonly type: "error";
1486
+ readonly name: "BCredit_InsufficientCollateral";
1487
+ readonly inputs: readonly [];
1488
+ }, {
1489
+ readonly type: "error";
1490
+ readonly name: "BCredit_InvalidClaim";
1491
+ readonly inputs: readonly [];
1492
+ }, {
1493
+ readonly type: "error";
1494
+ readonly name: "BCredit_InvalidClaimLength";
1495
+ readonly inputs: readonly [];
1496
+ }, {
1497
+ readonly type: "error";
1498
+ readonly name: "BCredit_InvalidProof";
1499
+ readonly inputs: readonly [];
1500
+ }, {
1501
+ readonly type: "error";
1502
+ readonly name: "BCredit_Leverage_BorrowAmountTooLow";
1503
+ readonly inputs: readonly [];
1504
+ }, {
1505
+ readonly type: "error";
1506
+ readonly name: "BCredit_Leverage_InvalidStakedAmount";
1507
+ readonly inputs: readonly [];
1508
+ }, {
1509
+ readonly type: "error";
1510
+ readonly name: "BCredit_Leverage_ZeroCollateral";
1511
+ readonly inputs: readonly [];
1512
+ }, {
1513
+ readonly type: "error";
1514
+ readonly name: "BCredit_NoClaimMerkleRoot";
1515
+ readonly inputs: readonly [];
1516
+ }, {
1517
+ readonly type: "error";
1518
+ readonly name: "BCredit_RebalanceCollateral_Undercollateralized";
1519
+ readonly inputs: readonly [];
1520
+ }, {
1521
+ readonly type: "error";
1522
+ readonly name: "BCredit_RepaidMoreThanDebt";
1523
+ readonly inputs: readonly [];
1524
+ }, {
1525
+ readonly type: "error";
1526
+ readonly name: "BCredit_SystemClaim_Undercollateralized";
1527
+ readonly inputs: readonly [];
1528
+ }, {
1529
+ readonly type: "error";
1530
+ readonly name: "BCredit_UserClaim_Undercollateralized";
1531
+ readonly inputs: readonly [];
1532
+ }, {
1533
+ readonly type: "error";
1534
+ readonly name: "CollateralLib_InsufficientStake";
1535
+ readonly inputs: readonly [];
1536
+ }, {
1537
+ readonly type: "error";
1538
+ readonly name: "Component_NotPermitted";
1539
+ readonly inputs: readonly [];
1540
+ }, {
1541
+ readonly type: "error";
1542
+ readonly name: "GuardLib_Insolvent";
1543
+ readonly inputs: readonly [];
1544
+ }, {
1545
+ readonly type: "error";
1546
+ readonly name: "GuardLib_InsufficientSettledReserves";
1547
+ readonly inputs: readonly [];
1548
+ }, {
1549
+ readonly type: "error";
1550
+ readonly name: "GuardLib_InvalidCirculatingSupply";
1551
+ readonly inputs: readonly [];
1552
+ }, {
1553
+ readonly type: "error";
1554
+ readonly name: "GuardLib_Paused";
1555
+ readonly inputs: readonly [];
1556
+ }, {
1557
+ readonly type: "error";
1558
+ readonly name: "GuardLib_Reentrant";
1559
+ readonly inputs: readonly [];
1560
+ }, {
1561
+ readonly type: "error";
1562
+ readonly name: "GuardLib_ReserveAccountingMismatch";
1563
+ readonly inputs: readonly [];
1564
+ }, {
1565
+ readonly type: "error";
1566
+ readonly name: "NativeLib_AmountMismatch";
1567
+ readonly inputs: readonly [];
1568
+ }, {
1569
+ readonly type: "error";
1570
+ readonly name: "NativeLib_NotWrapped";
1571
+ readonly inputs: readonly [];
1572
+ }];
1573
+ bFactory: readonly [{
1574
+ readonly type: "function";
1575
+ readonly name: "LABEL";
1576
+ readonly inputs: readonly [];
1577
+ readonly outputs: readonly [{
1578
+ readonly name: "";
1579
+ readonly type: "bytes32";
1580
+ readonly internalType: "bytes32";
1581
+ }];
1582
+ readonly stateMutability: "pure";
1583
+ }, {
1584
+ readonly type: "function";
1585
+ readonly name: "ROUTES";
1586
+ readonly inputs: readonly [];
1587
+ readonly outputs: readonly [{
1588
+ readonly name: "routes_";
1589
+ readonly type: "bytes4[]";
1590
+ readonly internalType: "bytes4[]";
1591
+ }];
1592
+ readonly stateMutability: "pure";
1593
+ }, {
1594
+ readonly type: "function";
1595
+ readonly name: "VERSION";
1596
+ readonly inputs: readonly [];
1597
+ readonly outputs: readonly [{
1598
+ readonly name: "";
1599
+ readonly type: "uint256";
1600
+ readonly internalType: "uint256";
1601
+ }];
1602
+ readonly stateMutability: "pure";
1603
+ }, {
1604
+ readonly type: "function";
1605
+ readonly name: "createBToken";
1606
+ readonly inputs: readonly [{
1607
+ readonly name: "_name";
1608
+ readonly type: "string";
1609
+ readonly internalType: "string";
1610
+ }, {
1611
+ readonly name: "_symbol";
1612
+ readonly type: "string";
1613
+ readonly internalType: "string";
1614
+ }, {
1615
+ readonly name: "_totalSupply";
1616
+ readonly type: "uint256";
1617
+ readonly internalType: "uint256";
1618
+ }, {
1619
+ readonly name: "_salt";
1620
+ readonly type: "bytes32";
1621
+ readonly internalType: "bytes32";
1622
+ }];
1623
+ readonly outputs: readonly [{
1624
+ readonly name: "bToken_";
1625
+ readonly type: "address";
1626
+ readonly internalType: "contract BToken";
1627
+ }];
1628
+ readonly stateMutability: "nonpayable";
1629
+ }, {
1630
+ readonly type: "function";
1631
+ readonly name: "createPool";
1632
+ readonly inputs: readonly [{
1633
+ readonly name: "params";
1634
+ readonly type: "tuple";
1635
+ readonly internalType: "struct BFactory.CreateParams";
1636
+ readonly components: readonly [{
1637
+ readonly name: "bToken";
1638
+ readonly type: "address";
1639
+ readonly internalType: "contract BToken";
1640
+ }, {
1641
+ readonly name: "initialPoolBTokens";
1642
+ readonly type: "uint256";
1643
+ readonly internalType: "uint256";
1644
+ }, {
1645
+ readonly name: "reserve";
1646
+ readonly type: "address";
1647
+ readonly internalType: "address";
1648
+ }, {
1649
+ readonly name: "initialPoolReserves";
1650
+ readonly type: "uint256";
1651
+ readonly internalType: "uint256";
1652
+ }, {
1653
+ readonly name: "initialActivePrice";
1654
+ readonly type: "uint256";
1655
+ readonly internalType: "uint256";
1656
+ }, {
1657
+ readonly name: "initialBLV";
1658
+ readonly type: "uint256";
1659
+ readonly internalType: "uint256";
1660
+ }, {
1661
+ readonly name: "creator";
1662
+ readonly type: "address";
1663
+ readonly internalType: "address";
1664
+ }, {
1665
+ readonly name: "feeRecipient";
1666
+ readonly type: "address";
1667
+ readonly internalType: "address";
1668
+ }, {
1669
+ readonly name: "creatorFeePct";
1670
+ readonly type: "uint256";
1671
+ readonly internalType: "uint256";
1672
+ }, {
1673
+ readonly name: "swapFeePct";
1674
+ readonly type: "uint256";
1675
+ readonly internalType: "uint256";
1676
+ }, {
1677
+ readonly name: "createHook";
1678
+ readonly type: "bool";
1679
+ readonly internalType: "bool";
1680
+ }, {
1681
+ readonly name: "claimMerkleRoot";
1682
+ readonly type: "bytes32";
1683
+ readonly internalType: "bytes32";
1684
+ }, {
1685
+ readonly name: "initialCollateral";
1686
+ readonly type: "uint256";
1687
+ readonly internalType: "uint256";
1688
+ }, {
1689
+ readonly name: "initialDebt";
1690
+ readonly type: "uint256";
1691
+ readonly internalType: "uint256";
1692
+ }];
1693
+ }];
1694
+ readonly outputs: readonly [];
1695
+ readonly stateMutability: "payable";
1696
+ }, {
1697
+ readonly type: "function";
1698
+ readonly name: "createPoolFromInvariant";
1699
+ readonly inputs: readonly [{
1700
+ readonly name: "params";
1701
+ readonly type: "tuple";
1702
+ readonly internalType: "struct BFactory.CreateFromInvariantParams";
1703
+ readonly components: readonly [{
1704
+ readonly name: "bToken";
1705
+ readonly type: "address";
1706
+ readonly internalType: "contract BToken";
1707
+ }, {
1708
+ readonly name: "initialPoolBTokens";
1709
+ readonly type: "uint256";
1710
+ readonly internalType: "uint256";
1711
+ }, {
1712
+ readonly name: "reserve";
1713
+ readonly type: "address";
1714
+ readonly internalType: "address";
1715
+ }, {
1716
+ readonly name: "initialInvariant";
1717
+ readonly type: "uint256";
1718
+ readonly internalType: "uint256";
1719
+ }, {
1720
+ readonly name: "creator";
1721
+ readonly type: "address";
1722
+ readonly internalType: "address";
1723
+ }, {
1724
+ readonly name: "feeRecipient";
1725
+ readonly type: "address";
1726
+ readonly internalType: "address";
1727
+ }, {
1728
+ readonly name: "creatorFeePct";
1729
+ readonly type: "uint256";
1730
+ readonly internalType: "uint256";
1731
+ }, {
1732
+ readonly name: "swapFeePct";
1733
+ readonly type: "uint256";
1734
+ readonly internalType: "uint256";
1735
+ }, {
1736
+ readonly name: "createHook";
1737
+ readonly type: "bool";
1738
+ readonly internalType: "bool";
1739
+ }];
1740
+ }];
1741
+ readonly outputs: readonly [];
1742
+ readonly stateMutability: "nonpayable";
1743
+ }, {
1744
+ readonly type: "function";
1745
+ readonly name: "precomputeBTokenAddress";
1746
+ readonly inputs: readonly [{
1747
+ readonly name: "_name";
1748
+ readonly type: "string";
1749
+ readonly internalType: "string";
1750
+ }, {
1751
+ readonly name: "_symbol";
1752
+ readonly type: "string";
1753
+ readonly internalType: "string";
1754
+ }, {
1755
+ readonly name: "_totalSupply";
1756
+ readonly type: "uint256";
1757
+ readonly internalType: "uint256";
1758
+ }, {
1759
+ readonly name: "_salt";
1760
+ readonly type: "bytes32";
1761
+ readonly internalType: "bytes32";
1762
+ }, {
1763
+ readonly name: "_deployer";
1764
+ readonly type: "address";
1765
+ readonly internalType: "address";
1766
+ }];
1767
+ readonly outputs: readonly [{
1768
+ readonly name: "computedAddress_";
1769
+ readonly type: "address";
1770
+ readonly internalType: "address";
1771
+ }];
1772
+ readonly stateMutability: "view";
1773
+ }, {
1774
+ readonly type: "function";
1775
+ readonly name: "supportsInterface";
1776
+ readonly inputs: readonly [{
1777
+ readonly name: "_interfaceId";
1778
+ readonly type: "bytes4";
1779
+ readonly internalType: "bytes4";
1780
+ }];
1781
+ readonly outputs: readonly [{
1782
+ readonly name: "";
1783
+ readonly type: "bool";
1784
+ readonly internalType: "bool";
1785
+ }];
1786
+ readonly stateMutability: "pure";
1787
+ }, {
1788
+ readonly type: "event";
1789
+ readonly name: "BTokenCreated";
1790
+ readonly inputs: readonly [{
1791
+ readonly name: "bTokenAddress";
1792
+ readonly type: "address";
1793
+ readonly indexed: false;
1794
+ readonly internalType: "contract BToken";
1795
+ }, {
1796
+ readonly name: "name";
1797
+ readonly type: "string";
1798
+ readonly indexed: false;
1799
+ readonly internalType: "string";
1800
+ }, {
1801
+ readonly name: "symbol";
1802
+ readonly type: "string";
1803
+ readonly indexed: false;
1804
+ readonly internalType: "string";
1805
+ }, {
1806
+ readonly name: "decimals";
1807
+ readonly type: "uint8";
1808
+ readonly indexed: false;
1809
+ readonly internalType: "uint8";
1810
+ }, {
1811
+ readonly name: "totalSupply";
1812
+ readonly type: "uint256";
1813
+ readonly indexed: false;
1814
+ readonly internalType: "uint256";
1815
+ }, {
1816
+ readonly name: "creator";
1817
+ readonly type: "address";
1818
+ readonly indexed: false;
1819
+ readonly internalType: "address";
1820
+ }];
1821
+ readonly anonymous: false;
1822
+ }, {
1823
+ readonly type: "event";
1824
+ readonly name: "Initialized";
1825
+ readonly inputs: readonly [{
1826
+ readonly name: "bToken";
1827
+ readonly type: "address";
1828
+ readonly indexed: false;
1829
+ readonly internalType: "contract BToken";
1830
+ }, {
1831
+ readonly name: "activePrice";
1832
+ readonly type: "uint256";
1833
+ readonly indexed: false;
1834
+ readonly internalType: "uint256";
1835
+ }, {
1836
+ readonly name: "blvPrice";
1837
+ readonly type: "uint256";
1838
+ readonly indexed: false;
1839
+ readonly internalType: "uint256";
1840
+ }, {
1841
+ readonly name: "swapFeePct";
1842
+ readonly type: "uint256";
1843
+ readonly indexed: false;
1844
+ readonly internalType: "uint256";
1845
+ }];
1846
+ readonly anonymous: false;
1847
+ }, {
1848
+ readonly type: "event";
1849
+ readonly name: "PoolCreated";
1850
+ readonly inputs: readonly [{
1851
+ readonly name: "bTokenAddress";
1852
+ readonly type: "address";
1853
+ readonly indexed: false;
1854
+ readonly internalType: "contract BToken";
1855
+ }, {
1856
+ readonly name: "reserveAddress";
1857
+ readonly type: "address";
1858
+ readonly indexed: false;
1859
+ readonly internalType: "address";
1860
+ }, {
1861
+ readonly name: "creator";
1862
+ readonly type: "address";
1863
+ readonly indexed: false;
1864
+ readonly internalType: "address";
1865
+ }, {
1866
+ readonly name: "feeRecipient";
1867
+ readonly type: "address";
1868
+ readonly indexed: false;
1869
+ readonly internalType: "address";
1870
+ }, {
1871
+ readonly name: "creatorFeePct";
1872
+ readonly type: "uint256";
1873
+ readonly indexed: false;
1874
+ readonly internalType: "uint256";
1875
+ }, {
1876
+ readonly name: "initialActivePrice";
1877
+ readonly type: "uint256";
1878
+ readonly indexed: false;
1879
+ readonly internalType: "uint256";
1880
+ }, {
1881
+ readonly name: "initialBlvPrice";
1882
+ readonly type: "uint256";
1883
+ readonly indexed: false;
1884
+ readonly internalType: "uint256";
1885
+ }, {
1886
+ readonly name: "totalReserves";
1887
+ readonly type: "uint256";
1888
+ readonly indexed: false;
1889
+ readonly internalType: "uint256";
1890
+ }, {
1891
+ readonly name: "totalBTokens";
1892
+ readonly type: "uint256";
1893
+ readonly indexed: false;
1894
+ readonly internalType: "uint256";
1895
+ }, {
1896
+ readonly name: "totalCollateral";
1897
+ readonly type: "uint256";
1898
+ readonly indexed: false;
1899
+ readonly internalType: "uint256";
1900
+ }, {
1901
+ readonly name: "totalDebt";
1902
+ readonly type: "uint256";
1903
+ readonly indexed: false;
1904
+ readonly internalType: "uint256";
1905
+ }, {
1906
+ readonly name: "poolId";
1907
+ readonly type: "bytes32";
1908
+ readonly indexed: false;
1909
+ readonly internalType: "bytes32";
1910
+ }];
1911
+ readonly anonymous: false;
1912
+ }, {
1913
+ readonly type: "error";
1914
+ readonly name: "AlreadyInitialized";
1915
+ readonly inputs: readonly [];
1916
+ }, {
1917
+ readonly type: "error";
1918
+ readonly name: "Component_NotPermitted";
1919
+ readonly inputs: readonly [];
1920
+ }, {
1921
+ readonly type: "error";
1922
+ readonly name: "GuardLib_Paused";
1923
+ readonly inputs: readonly [];
1924
+ }, {
1925
+ readonly type: "error";
1926
+ readonly name: "GuardLib_Reentrant";
1927
+ readonly inputs: readonly [];
1928
+ }, {
1929
+ readonly type: "error";
1930
+ readonly name: "GuardLib_ReserveAccountingMismatch";
1931
+ readonly inputs: readonly [];
1932
+ }, {
1933
+ readonly type: "error";
1934
+ readonly name: "InsolventInitialCreditPosition";
1935
+ readonly inputs: readonly [];
1936
+ }, {
1937
+ readonly type: "error";
1938
+ readonly name: "InvalidActivePrice";
1939
+ readonly inputs: readonly [];
1940
+ }, {
1941
+ readonly type: "error";
1942
+ readonly name: "InvalidBLVPrice";
1943
+ readonly inputs: readonly [];
1944
+ }, {
1945
+ readonly type: "error";
1946
+ readonly name: "InvalidConvexityExp";
1947
+ readonly inputs: readonly [];
1948
+ }, {
1949
+ readonly type: "error";
1950
+ readonly name: "InvalidConvexityExp";
1951
+ readonly inputs: readonly [];
1952
+ }, {
1953
+ readonly type: "error";
1954
+ readonly name: "InvalidCreator";
1955
+ readonly inputs: readonly [];
1956
+ }, {
1957
+ readonly type: "error";
1958
+ readonly name: "InvalidCreatorFee";
1959
+ readonly inputs: readonly [];
1960
+ }, {
1961
+ readonly type: "error";
1962
+ readonly name: "InvalidDecimals";
1963
+ readonly inputs: readonly [];
1964
+ }, {
1965
+ readonly type: "error";
1966
+ readonly name: "InvalidFeeRecipient";
1967
+ readonly inputs: readonly [];
1968
+ }, {
1969
+ readonly type: "error";
1970
+ readonly name: "InvalidInitialCollateralOrDebt";
1971
+ readonly inputs: readonly [];
1972
+ }, {
1973
+ readonly type: "error";
1974
+ readonly name: "InvalidName";
1975
+ readonly inputs: readonly [];
1976
+ }, {
1977
+ readonly type: "error";
1978
+ readonly name: "InvalidParameters";
1979
+ readonly inputs: readonly [];
1980
+ }, {
1981
+ readonly type: "error";
1982
+ readonly name: "InvalidPoolSupply";
1983
+ readonly inputs: readonly [];
1984
+ }, {
1985
+ readonly type: "error";
1986
+ readonly name: "InvalidSalt";
1987
+ readonly inputs: readonly [];
1988
+ }, {
1989
+ readonly type: "error";
1990
+ readonly name: "InvalidSwapFeePct";
1991
+ readonly inputs: readonly [];
1992
+ }, {
1993
+ readonly type: "error";
1994
+ readonly name: "InvalidSymbol";
1995
+ readonly inputs: readonly [];
1996
+ }, {
1997
+ readonly type: "error";
1998
+ readonly name: "InvariantDecreased";
1999
+ readonly inputs: readonly [{
2000
+ readonly name: "prevInvariant";
2001
+ readonly type: "uint256";
2002
+ readonly internalType: "uint256";
2003
+ }, {
2004
+ readonly name: "newInvariant";
2005
+ readonly type: "uint256";
2006
+ readonly internalType: "uint256";
2007
+ }];
2008
+ }, {
2009
+ readonly type: "error";
2010
+ readonly name: "InvariantTooLarge";
2011
+ readonly inputs: readonly [];
2012
+ }, {
2013
+ readonly type: "error";
2014
+ readonly name: "InvariantTooSmall";
2015
+ readonly inputs: readonly [];
2016
+ }, {
2017
+ readonly type: "error";
2018
+ readonly name: "NativeLib_AmountMismatch";
2019
+ readonly inputs: readonly [];
2020
+ }, {
2021
+ readonly type: "error";
2022
+ readonly name: "NativeLib_NotWrapped";
2023
+ readonly inputs: readonly [];
2024
+ }, {
2025
+ readonly type: "error";
2026
+ readonly name: "NotApprovedReserve";
2027
+ readonly inputs: readonly [];
2028
+ }, {
2029
+ readonly type: "error";
2030
+ readonly name: "NotDeployer";
2031
+ readonly inputs: readonly [];
2032
+ }, {
2033
+ readonly type: "error";
2034
+ readonly name: "PoolAlreadyInitialized";
2035
+ readonly inputs: readonly [];
2036
+ }, {
2037
+ readonly type: "error";
2038
+ readonly name: "TotalSupplyTooHigh";
2039
+ readonly inputs: readonly [];
2040
+ }, {
2041
+ readonly type: "error";
2042
+ readonly name: "TotalSupplyTooLow";
2043
+ readonly inputs: readonly [];
2044
+ }, {
2045
+ readonly type: "error";
2046
+ readonly name: "UnauthorizedCreditPositionCreation";
2047
+ readonly inputs: readonly [];
2048
+ }];
2049
+ bLens: readonly [{
2050
+ readonly type: "function";
2051
+ readonly name: "LABEL";
2052
+ readonly inputs: readonly [];
2053
+ readonly outputs: readonly [{
2054
+ readonly name: "";
2055
+ readonly type: "bytes32";
2056
+ readonly internalType: "bytes32";
2057
+ }];
2058
+ readonly stateMutability: "view";
2059
+ }, {
2060
+ readonly type: "function";
2061
+ readonly name: "ROUTES";
2062
+ readonly inputs: readonly [];
2063
+ readonly outputs: readonly [{
2064
+ readonly name: "routes_";
2065
+ readonly type: "bytes4[]";
2066
+ readonly internalType: "bytes4[]";
2067
+ }];
2068
+ readonly stateMutability: "pure";
2069
+ }, {
2070
+ readonly type: "function";
2071
+ readonly name: "VERSION";
2072
+ readonly inputs: readonly [];
2073
+ readonly outputs: readonly [{
2074
+ readonly name: "";
2075
+ readonly type: "uint256";
2076
+ readonly internalType: "uint256";
2077
+ }];
2078
+ readonly stateMutability: "view";
2079
+ }, {
2080
+ readonly type: "function";
2081
+ readonly name: "accumulator";
2082
+ readonly inputs: readonly [{
2083
+ readonly name: "_bToken";
2084
+ readonly type: "address";
2085
+ readonly internalType: "contract BToken";
2086
+ }];
2087
+ readonly outputs: readonly [{
2088
+ readonly name: "";
2089
+ readonly type: "uint256";
2090
+ readonly internalType: "uint256";
2091
+ }];
2092
+ readonly stateMutability: "view";
2093
+ }, {
2094
+ readonly type: "function";
2095
+ readonly name: "activePrice";
2096
+ readonly inputs: readonly [{
2097
+ readonly name: "_bToken";
2098
+ readonly type: "address";
2099
+ readonly internalType: "contract BToken";
2100
+ }];
2101
+ readonly outputs: readonly [{
2102
+ readonly name: "";
2103
+ readonly type: "uint256";
2104
+ readonly internalType: "uint256";
2105
+ }];
2106
+ readonly stateMutability: "view";
2107
+ }, {
2108
+ readonly type: "function";
2109
+ readonly name: "blvPrice";
2110
+ readonly inputs: readonly [{
2111
+ readonly name: "_bToken";
2112
+ readonly type: "address";
2113
+ readonly internalType: "contract BToken";
2114
+ }];
2115
+ readonly outputs: readonly [{
2116
+ readonly name: "";
2117
+ readonly type: "uint256";
2118
+ readonly internalType: "uint256";
2119
+ }];
2120
+ readonly stateMutability: "view";
2121
+ }, {
2122
+ readonly type: "function";
2123
+ readonly name: "claimableYield";
2124
+ readonly inputs: readonly [{
2125
+ readonly name: "_bToken";
2126
+ readonly type: "address";
2127
+ readonly internalType: "contract BToken";
2128
+ }];
2129
+ readonly outputs: readonly [{
2130
+ readonly name: "";
2131
+ readonly type: "uint256";
2132
+ readonly internalType: "uint256";
2133
+ }];
2134
+ readonly stateMutability: "view";
2135
+ }, {
2136
+ readonly type: "function";
2137
+ readonly name: "convexityExp";
2138
+ readonly inputs: readonly [{
2139
+ readonly name: "_bToken";
2140
+ readonly type: "address";
2141
+ readonly internalType: "contract BToken";
2142
+ }];
2143
+ readonly outputs: readonly [{
2144
+ readonly name: "";
2145
+ readonly type: "uint256";
2146
+ readonly internalType: "uint256";
2147
+ }];
2148
+ readonly stateMutability: "view";
2149
+ }, {
2150
+ readonly type: "function";
2151
+ readonly name: "creator";
2152
+ readonly inputs: readonly [{
2153
+ readonly name: "_bToken";
2154
+ readonly type: "address";
2155
+ readonly internalType: "contract BToken";
2156
+ }];
2157
+ readonly outputs: readonly [{
2158
+ readonly name: "";
2159
+ readonly type: "address";
2160
+ readonly internalType: "address";
2161
+ }];
2162
+ readonly stateMutability: "view";
2163
+ }, {
2164
+ readonly type: "function";
2165
+ readonly name: "creatorClaimable";
2166
+ readonly inputs: readonly [{
2167
+ readonly name: "_bToken";
2168
+ readonly type: "address";
2169
+ readonly internalType: "contract BToken";
2170
+ }];
2171
+ readonly outputs: readonly [{
2172
+ readonly name: "";
2173
+ readonly type: "uint256";
2174
+ readonly internalType: "uint256";
2175
+ }];
2176
+ readonly stateMutability: "view";
2177
+ }, {
2178
+ readonly type: "function";
2179
+ readonly name: "creatorFeePct";
2180
+ readonly inputs: readonly [{
2181
+ readonly name: "_bToken";
2182
+ readonly type: "address";
2183
+ readonly internalType: "contract BToken";
2184
+ }];
2185
+ readonly outputs: readonly [{
2186
+ readonly name: "";
2187
+ readonly type: "uint256";
2188
+ readonly internalType: "uint256";
2189
+ }];
2190
+ readonly stateMutability: "view";
2191
+ }, {
2192
+ readonly type: "function";
2193
+ readonly name: "creditAccount";
2194
+ readonly inputs: readonly [{
2195
+ readonly name: "_bToken";
2196
+ readonly type: "address";
2197
+ readonly internalType: "contract BToken";
2198
+ }, {
2199
+ readonly name: "_user";
2200
+ readonly type: "address";
2201
+ readonly internalType: "address";
2202
+ }];
2203
+ readonly outputs: readonly [{
2204
+ readonly name: "";
2205
+ readonly type: "uint256";
2206
+ readonly internalType: "uint256";
2207
+ }, {
2208
+ readonly name: "";
2209
+ readonly type: "uint256";
2210
+ readonly internalType: "uint256";
2211
+ }];
2212
+ readonly stateMutability: "view";
2213
+ }, {
2214
+ readonly type: "function";
2215
+ readonly name: "defaultLiquidityFeePct";
2216
+ readonly inputs: readonly [];
2217
+ readonly outputs: readonly [{
2218
+ readonly name: "";
2219
+ readonly type: "uint256";
2220
+ readonly internalType: "uint256";
2221
+ }];
2222
+ readonly stateMutability: "view";
2223
+ }, {
2224
+ readonly type: "function";
2225
+ readonly name: "defaultProtocolFeePct";
2226
+ readonly inputs: readonly [];
2227
+ readonly outputs: readonly [{
2228
+ readonly name: "";
2229
+ readonly type: "uint256";
2230
+ readonly internalType: "uint256";
2231
+ }];
2232
+ readonly stateMutability: "view";
2233
+ }, {
2234
+ readonly type: "function";
2235
+ readonly name: "deployerProfile";
2236
+ readonly inputs: readonly [{
2237
+ readonly name: "_user";
2238
+ readonly type: "address";
2239
+ readonly internalType: "address";
2240
+ }];
2241
+ readonly outputs: readonly [{
2242
+ readonly name: "";
2243
+ readonly type: "tuple";
2244
+ readonly internalType: "struct State.DeployerProfile";
2245
+ readonly components: readonly [{
2246
+ readonly name: "active";
2247
+ readonly type: "bool";
2248
+ readonly internalType: "bool";
2249
+ }, {
2250
+ readonly name: "approvedCreditDeployer";
2251
+ readonly type: "bool";
2252
+ readonly internalType: "bool";
2253
+ }, {
2254
+ readonly name: "pauser";
2255
+ readonly type: "bool";
2256
+ readonly internalType: "bool";
2257
+ }, {
2258
+ readonly name: "protocolFeePct";
2259
+ readonly type: "uint64";
2260
+ readonly internalType: "uint64";
2261
+ }, {
2262
+ readonly name: "liquidityFeePct";
2263
+ readonly type: "uint64";
2264
+ readonly internalType: "uint64";
2265
+ }, {
2266
+ readonly name: "approvedTokenRegistrar";
2267
+ readonly type: "bool";
2268
+ readonly internalType: "bool";
2269
+ }];
2270
+ }];
2271
+ readonly stateMutability: "view";
2272
+ }, {
2273
+ readonly type: "function";
2274
+ readonly name: "getBookPrice";
2275
+ readonly inputs: readonly [{
2276
+ readonly name: "_bToken";
2277
+ readonly type: "address";
2278
+ readonly internalType: "contract BToken";
2279
+ }];
2280
+ readonly outputs: readonly [{
2281
+ readonly name: "";
2282
+ readonly type: "uint256";
2283
+ readonly internalType: "uint256";
2284
+ }];
2285
+ readonly stateMutability: "view";
2286
+ }, {
2287
+ readonly type: "function";
2288
+ readonly name: "getCirculatingSupply";
2289
+ readonly inputs: readonly [{
2290
+ readonly name: "_bToken";
2291
+ readonly type: "address";
2292
+ readonly internalType: "contract BToken";
2293
+ }];
2294
+ readonly outputs: readonly [{
2295
+ readonly name: "";
2296
+ readonly type: "uint256";
2297
+ readonly internalType: "uint256";
2298
+ }];
2299
+ readonly stateMutability: "view";
2300
+ }, {
2301
+ readonly type: "function";
2302
+ readonly name: "getComponents";
2303
+ readonly inputs: readonly [];
2304
+ readonly outputs: readonly [{
2305
+ readonly name: "components_";
2306
+ readonly type: "address[]";
2307
+ readonly internalType: "contract Component[]";
2308
+ }];
2309
+ readonly stateMutability: "view";
2310
+ }, {
2311
+ readonly type: "function";
2312
+ readonly name: "getMaker";
2313
+ readonly inputs: readonly [{
2314
+ readonly name: "_bToken";
2315
+ readonly type: "address";
2316
+ readonly internalType: "contract BToken";
2317
+ }];
2318
+ readonly outputs: readonly [{
2319
+ readonly name: "";
2320
+ readonly type: "tuple";
2321
+ readonly internalType: "struct State.Maker";
2322
+ readonly components: readonly [{
2323
+ readonly name: "initialized";
2324
+ readonly type: "bool";
2325
+ readonly internalType: "bool";
2326
+ }, {
2327
+ readonly name: "blvPrice";
2328
+ readonly type: "uint128";
2329
+ readonly internalType: "uint128";
2330
+ }, {
2331
+ readonly name: "swapFee";
2332
+ readonly type: "uint128";
2333
+ readonly internalType: "uint128";
2334
+ }, {
2335
+ readonly name: "maxCirc";
2336
+ readonly type: "uint128";
2337
+ readonly internalType: "uint128";
2338
+ }, {
2339
+ readonly name: "maxReserves";
2340
+ readonly type: "uint128";
2341
+ readonly internalType: "uint128";
2342
+ }, {
2343
+ readonly name: "convexityExp";
2344
+ readonly type: "uint128";
2345
+ readonly internalType: "uint128";
2346
+ }, {
2347
+ readonly name: "lastInvariant";
2348
+ readonly type: "uint256";
2349
+ readonly internalType: "uint256";
2350
+ }];
2351
+ }];
2352
+ readonly stateMutability: "view";
2353
+ }, {
2354
+ readonly type: "function";
2355
+ readonly name: "getQuoteState";
2356
+ readonly inputs: readonly [{
2357
+ readonly name: "_bToken";
2358
+ readonly type: "address";
2359
+ readonly internalType: "contract BToken";
2360
+ }];
2361
+ readonly outputs: readonly [{
2362
+ readonly name: "state_";
2363
+ readonly type: "tuple";
2364
+ readonly internalType: "struct BLens.QuoteState";
2365
+ readonly components: readonly [{
2366
+ readonly name: "snapshotCurveParams";
2367
+ readonly type: "tuple";
2368
+ readonly internalType: "struct CurveParams";
2369
+ readonly components: readonly [{
2370
+ readonly name: "BLV";
2371
+ readonly type: "uint256";
2372
+ readonly internalType: "uint256";
2373
+ }, {
2374
+ readonly name: "circ";
2375
+ readonly type: "uint256";
2376
+ readonly internalType: "uint256";
2377
+ }, {
2378
+ readonly name: "supply";
2379
+ readonly type: "uint256";
2380
+ readonly internalType: "uint256";
2381
+ }, {
2382
+ readonly name: "swapFee";
2383
+ readonly type: "uint256";
2384
+ readonly internalType: "uint256";
2385
+ }, {
2386
+ readonly name: "reserves";
2387
+ readonly type: "uint256";
2388
+ readonly internalType: "uint256";
2389
+ }, {
2390
+ readonly name: "totalSupply";
2391
+ readonly type: "uint256";
2392
+ readonly internalType: "uint256";
2393
+ }, {
2394
+ readonly name: "convexityExp";
2395
+ readonly type: "uint256";
2396
+ readonly internalType: "uint256";
2397
+ }, {
2398
+ readonly name: "lastInvariant";
2399
+ readonly type: "uint256";
2400
+ readonly internalType: "uint256";
2401
+ }];
2402
+ }, {
2403
+ readonly name: "quoteBlockBuyDeltaCirc";
2404
+ readonly type: "uint256";
2405
+ readonly internalType: "uint256";
2406
+ }, {
2407
+ readonly name: "quoteBlockSellDeltaCirc";
2408
+ readonly type: "uint256";
2409
+ readonly internalType: "uint256";
2410
+ }, {
2411
+ readonly name: "totalSupply";
2412
+ readonly type: "uint256";
2413
+ readonly internalType: "uint256";
2414
+ }, {
2415
+ readonly name: "totalBTokens";
2416
+ readonly type: "uint256";
2417
+ readonly internalType: "uint256";
2418
+ }, {
2419
+ readonly name: "totalReserves";
2420
+ readonly type: "uint256";
2421
+ readonly internalType: "uint256";
2422
+ }, {
2423
+ readonly name: "reserveDecimals";
2424
+ readonly type: "uint8";
2425
+ readonly internalType: "uint8";
2426
+ }, {
2427
+ readonly name: "liquidityFeePct";
2428
+ readonly type: "uint256";
2429
+ readonly internalType: "uint256";
2430
+ }, {
2431
+ readonly name: "pendingSurplus";
2432
+ readonly type: "uint256";
2433
+ readonly internalType: "uint256";
2434
+ }, {
2435
+ readonly name: "shouldSettlePendingSurplus";
2436
+ readonly type: "bool";
2437
+ readonly internalType: "bool";
2438
+ }, {
2439
+ readonly name: "maxSellDelta";
2440
+ readonly type: "uint256";
2441
+ readonly internalType: "uint256";
2442
+ }, {
2443
+ readonly name: "snapshotActivePrice";
2444
+ readonly type: "uint256";
2445
+ readonly internalType: "uint256";
2446
+ }];
2447
+ }];
2448
+ readonly stateMutability: "view";
2449
+ }, {
2450
+ readonly type: "function";
2451
+ readonly name: "hasHook";
2452
+ readonly inputs: readonly [{
2453
+ readonly name: "_bToken";
2454
+ readonly type: "address";
2455
+ readonly internalType: "contract BToken";
2456
+ }];
2457
+ readonly outputs: readonly [{
2458
+ readonly name: "";
2459
+ readonly type: "bool";
2460
+ readonly internalType: "bool";
2461
+ }];
2462
+ readonly stateMutability: "view";
2463
+ }, {
2464
+ readonly type: "function";
2465
+ readonly name: "isApprovedCreditDeployer";
2466
+ readonly inputs: readonly [{
2467
+ readonly name: "_user";
2468
+ readonly type: "address";
2469
+ readonly internalType: "address";
2470
+ }];
2471
+ readonly outputs: readonly [{
2472
+ readonly name: "";
2473
+ readonly type: "bool";
2474
+ readonly internalType: "bool";
2475
+ }];
2476
+ readonly stateMutability: "view";
2477
+ }, {
2478
+ readonly type: "function";
2479
+ readonly name: "isLocked";
2480
+ readonly inputs: readonly [];
2481
+ readonly outputs: readonly [{
2482
+ readonly name: "";
2483
+ readonly type: "bool";
2484
+ readonly internalType: "bool";
2485
+ }];
2486
+ readonly stateMutability: "view";
2487
+ }, {
2488
+ readonly type: "function";
2489
+ readonly name: "isPoolPaused";
2490
+ readonly inputs: readonly [{
2491
+ readonly name: "_bToken";
2492
+ readonly type: "address";
2493
+ readonly internalType: "contract BToken";
2494
+ }];
2495
+ readonly outputs: readonly [{
2496
+ readonly name: "";
2497
+ readonly type: "bool";
2498
+ readonly internalType: "bool";
2499
+ }];
2500
+ readonly stateMutability: "view";
2501
+ }, {
2502
+ readonly type: "function";
2503
+ readonly name: "isProtocolPaused";
2504
+ readonly inputs: readonly [];
2505
+ readonly outputs: readonly [{
2506
+ readonly name: "";
2507
+ readonly type: "bool";
2508
+ readonly internalType: "bool";
2509
+ }];
2510
+ readonly stateMutability: "view";
2511
+ }, {
2512
+ readonly type: "function";
2513
+ readonly name: "lastInvariant";
2514
+ readonly inputs: readonly [{
2515
+ readonly name: "_bToken";
2516
+ readonly type: "address";
2517
+ readonly internalType: "contract BToken";
2518
+ }];
2519
+ readonly outputs: readonly [{
2520
+ readonly name: "";
2521
+ readonly type: "uint256";
2522
+ readonly internalType: "uint256";
2523
+ }];
2524
+ readonly stateMutability: "view";
2525
+ }, {
2526
+ readonly type: "function";
2527
+ readonly name: "lastUpdatedTimestamp";
2528
+ readonly inputs: readonly [{
2529
+ readonly name: "_bToken";
2530
+ readonly type: "address";
2531
+ readonly internalType: "contract BToken";
2532
+ }];
2533
+ readonly outputs: readonly [{
2534
+ readonly name: "";
2535
+ readonly type: "uint256";
2536
+ readonly internalType: "uint256";
2537
+ }];
2538
+ readonly stateMutability: "view";
2539
+ }, {
2540
+ readonly type: "function";
2541
+ readonly name: "liquidityFeePct";
2542
+ readonly inputs: readonly [{
2543
+ readonly name: "_bToken";
2544
+ readonly type: "address";
2545
+ readonly internalType: "contract BToken";
2546
+ }];
2547
+ readonly outputs: readonly [{
2548
+ readonly name: "";
2549
+ readonly type: "uint256";
2550
+ readonly internalType: "uint256";
2551
+ }];
2552
+ readonly stateMutability: "view";
2553
+ }, {
2554
+ readonly type: "function";
2555
+ readonly name: "originationFee";
2556
+ readonly inputs: readonly [];
2557
+ readonly outputs: readonly [{
2558
+ readonly name: "";
2559
+ readonly type: "uint256";
2560
+ readonly internalType: "uint256";
2561
+ }];
2562
+ readonly stateMutability: "view";
2563
+ }, {
2564
+ readonly type: "function";
2565
+ readonly name: "pendingSurplus";
2566
+ readonly inputs: readonly [{
2567
+ readonly name: "_bToken";
2568
+ readonly type: "address";
2569
+ readonly internalType: "contract BToken";
2570
+ }];
2571
+ readonly outputs: readonly [{
2572
+ readonly name: "";
2573
+ readonly type: "uint256";
2574
+ readonly internalType: "uint256";
2575
+ }];
2576
+ readonly stateMutability: "view";
2577
+ }, {
2578
+ readonly type: "function";
2579
+ readonly name: "pendingYield";
2580
+ readonly inputs: readonly [{
2581
+ readonly name: "_bToken";
2582
+ readonly type: "address";
2583
+ readonly internalType: "contract BToken";
2584
+ }];
2585
+ readonly outputs: readonly [{
2586
+ readonly name: "";
2587
+ readonly type: "uint256";
2588
+ readonly internalType: "uint256";
2589
+ }];
2590
+ readonly stateMutability: "view";
2591
+ }, {
2592
+ readonly type: "function";
2593
+ readonly name: "poolFeeRecipient";
2594
+ readonly inputs: readonly [{
2595
+ readonly name: "_bToken";
2596
+ readonly type: "address";
2597
+ readonly internalType: "contract BToken";
2598
+ }];
2599
+ readonly outputs: readonly [{
2600
+ readonly name: "";
2601
+ readonly type: "address";
2602
+ readonly internalType: "address";
2603
+ }];
2604
+ readonly stateMutability: "view";
2605
+ }, {
2606
+ readonly type: "function";
2607
+ readonly name: "poolFeeShare";
2608
+ readonly inputs: readonly [{
2609
+ readonly name: "_bToken";
2610
+ readonly type: "address";
2611
+ readonly internalType: "contract BToken";
2612
+ }];
2613
+ readonly outputs: readonly [{
2614
+ readonly name: "creator_";
2615
+ readonly type: "uint256";
2616
+ readonly internalType: "uint256";
2617
+ }, {
2618
+ readonly name: "staking_";
2619
+ readonly type: "uint256";
2620
+ readonly internalType: "uint256";
2621
+ }];
2622
+ readonly stateMutability: "view";
2623
+ }, {
2624
+ readonly type: "function";
2625
+ readonly name: "poolIdToBToken";
2626
+ readonly inputs: readonly [{
2627
+ readonly name: "_poolId";
2628
+ readonly type: "bytes32";
2629
+ readonly internalType: "PoolId";
2630
+ }];
2631
+ readonly outputs: readonly [{
2632
+ readonly name: "";
2633
+ readonly type: "address";
2634
+ readonly internalType: "contract BToken";
2635
+ }];
2636
+ readonly stateMutability: "view";
2637
+ }, {
2638
+ readonly type: "function";
2639
+ readonly name: "poolKey";
2640
+ readonly inputs: readonly [{
2641
+ readonly name: "_bToken";
2642
+ readonly type: "address";
2643
+ readonly internalType: "contract BToken";
2644
+ }];
2645
+ readonly outputs: readonly [{
2646
+ readonly name: "";
2647
+ readonly type: "tuple";
2648
+ readonly internalType: "struct PoolKey";
2649
+ readonly components: readonly [{
2650
+ readonly name: "currency0";
2651
+ readonly type: "address";
2652
+ readonly internalType: "Currency";
2653
+ }, {
2654
+ readonly name: "currency1";
2655
+ readonly type: "address";
2656
+ readonly internalType: "Currency";
2657
+ }, {
2658
+ readonly name: "fee";
2659
+ readonly type: "uint24";
2660
+ readonly internalType: "uint24";
2661
+ }, {
2662
+ readonly name: "tickSpacing";
2663
+ readonly type: "int24";
2664
+ readonly internalType: "int24";
2665
+ }, {
2666
+ readonly name: "hooks";
2667
+ readonly type: "address";
2668
+ readonly internalType: "contract IHooks";
2669
+ }];
2670
+ }];
2671
+ readonly stateMutability: "view";
2672
+ }, {
2673
+ readonly type: "function";
2674
+ readonly name: "previewInvariantForPrice";
2675
+ readonly inputs: readonly [{
2676
+ readonly name: "_launchPrice";
2677
+ readonly type: "uint256";
2678
+ readonly internalType: "uint256";
2679
+ }, {
2680
+ readonly name: "_totalSupply";
2681
+ readonly type: "uint256";
2682
+ readonly internalType: "uint256";
2683
+ }, {
2684
+ readonly name: "_bTokenDecimals";
2685
+ readonly type: "uint8";
2686
+ readonly internalType: "uint8";
2687
+ }];
2688
+ readonly outputs: readonly [{
2689
+ readonly name: "initialInvariant_";
2690
+ readonly type: "uint256";
2691
+ readonly internalType: "uint256";
2692
+ }];
2693
+ readonly stateMutability: "pure";
2694
+ }, {
2695
+ readonly type: "function";
2696
+ readonly name: "previewInvariantInitPrice";
2697
+ readonly inputs: readonly [{
2698
+ readonly name: "_initialInvariant";
2699
+ readonly type: "uint256";
2700
+ readonly internalType: "uint256";
2701
+ }, {
2702
+ readonly name: "_totalSupply";
2703
+ readonly type: "uint256";
2704
+ readonly internalType: "uint256";
2705
+ }, {
2706
+ readonly name: "_bTokenDecimals";
2707
+ readonly type: "uint8";
2708
+ readonly internalType: "uint8";
2709
+ }];
2710
+ readonly outputs: readonly [{
2711
+ readonly name: "launchPrice_";
2712
+ readonly type: "uint256";
2713
+ readonly internalType: "uint256";
2714
+ }];
2715
+ readonly stateMutability: "pure";
2716
+ }, {
2717
+ readonly type: "function";
2718
+ readonly name: "protocolClaimable";
2719
+ readonly inputs: readonly [{
2720
+ readonly name: "_bToken";
2721
+ readonly type: "address";
2722
+ readonly internalType: "contract BToken";
2723
+ }];
2724
+ readonly outputs: readonly [{
2725
+ readonly name: "";
2726
+ readonly type: "uint256";
2727
+ readonly internalType: "uint256";
2728
+ }];
2729
+ readonly stateMutability: "view";
2730
+ }, {
2731
+ readonly type: "function";
2732
+ readonly name: "protocolFeePct";
2733
+ readonly inputs: readonly [{
2734
+ readonly name: "_bToken";
2735
+ readonly type: "address";
2736
+ readonly internalType: "contract BToken";
2737
+ }];
2738
+ readonly outputs: readonly [{
2739
+ readonly name: "";
2740
+ readonly type: "uint256";
2741
+ readonly internalType: "uint256";
2742
+ }];
2743
+ readonly stateMutability: "view";
2744
+ }, {
2745
+ readonly type: "function";
2746
+ readonly name: "protocolFeeRecipient";
2747
+ readonly inputs: readonly [];
2748
+ readonly outputs: readonly [{
2749
+ readonly name: "";
2750
+ readonly type: "address";
2751
+ readonly internalType: "address";
2752
+ }];
2753
+ readonly stateMutability: "view";
2754
+ }, {
2755
+ readonly type: "function";
2756
+ readonly name: "quoteLeverage";
2757
+ readonly inputs: readonly [{
2758
+ readonly name: "_bToken";
2759
+ readonly type: "address";
2760
+ readonly internalType: "contract BToken";
2761
+ }, {
2762
+ readonly name: "_collateralIn";
2763
+ readonly type: "uint256";
2764
+ readonly internalType: "uint256";
2765
+ }, {
2766
+ readonly name: "_leverageFactor";
2767
+ readonly type: "uint256";
2768
+ readonly internalType: "uint256";
2769
+ }];
2770
+ readonly outputs: readonly [{
2771
+ readonly name: "targetCollateral_";
2772
+ readonly type: "uint256";
2773
+ readonly internalType: "uint256";
2774
+ }, {
2775
+ readonly name: "maxSwapReservesIn_";
2776
+ readonly type: "uint256";
2777
+ readonly internalType: "uint256";
2778
+ }, {
2779
+ readonly name: "expectedDebt_";
2780
+ readonly type: "uint256";
2781
+ readonly internalType: "uint256";
2782
+ }, {
2783
+ readonly name: "slippage_";
2784
+ readonly type: "uint256";
2785
+ readonly internalType: "uint256";
2786
+ }];
2787
+ readonly stateMutability: "view";
2788
+ }, {
2789
+ readonly type: "function";
2790
+ readonly name: "reserve";
2791
+ readonly inputs: readonly [{
2792
+ readonly name: "_bToken";
2793
+ readonly type: "address";
2794
+ readonly internalType: "contract BToken";
2795
+ }];
2796
+ readonly outputs: readonly [{
2797
+ readonly name: "";
2798
+ readonly type: "address";
2799
+ readonly internalType: "contract ERC20";
2800
+ }];
2801
+ readonly stateMutability: "view";
2802
+ }, {
2803
+ readonly type: "function";
2804
+ readonly name: "reserveHoldings";
2805
+ readonly inputs: readonly [{
2806
+ readonly name: "_reserve";
2807
+ readonly type: "address";
2808
+ readonly internalType: "contract ERC20";
2809
+ }];
2810
+ readonly outputs: readonly [{
2811
+ readonly name: "";
2812
+ readonly type: "uint256";
2813
+ readonly internalType: "uint256";
2814
+ }];
2815
+ readonly stateMutability: "view";
2816
+ }, {
2817
+ readonly type: "function";
2818
+ readonly name: "settledReserves";
2819
+ readonly inputs: readonly [{
2820
+ readonly name: "_bToken";
2821
+ readonly type: "address";
2822
+ readonly internalType: "contract BToken";
2823
+ }];
2824
+ readonly outputs: readonly [{
2825
+ readonly name: "";
2826
+ readonly type: "uint256";
2827
+ readonly internalType: "uint256";
2828
+ }];
2829
+ readonly stateMutability: "view";
2830
+ }, {
2831
+ readonly type: "function";
2832
+ readonly name: "stakedPosition";
2833
+ readonly inputs: readonly [{
2834
+ readonly name: "_bToken";
2835
+ readonly type: "address";
2836
+ readonly internalType: "contract BToken";
2837
+ }, {
2838
+ readonly name: "_user";
2839
+ readonly type: "address";
2840
+ readonly internalType: "address";
2841
+ }];
2842
+ readonly outputs: readonly [{
2843
+ readonly name: "";
2844
+ readonly type: "uint256";
2845
+ readonly internalType: "uint256";
2846
+ }, {
2847
+ readonly name: "";
2848
+ readonly type: "uint256";
2849
+ readonly internalType: "uint256";
2850
+ }, {
2851
+ readonly name: "";
2852
+ readonly type: "uint256";
2853
+ readonly internalType: "uint256";
2854
+ }, {
2855
+ readonly name: "";
2856
+ readonly type: "uint256";
2857
+ readonly internalType: "uint256";
2858
+ }];
2859
+ readonly stateMutability: "view";
2860
+ }, {
2861
+ readonly type: "function";
2862
+ readonly name: "supportsInterface";
2863
+ readonly inputs: readonly [{
2864
+ readonly name: "_interfaceId";
2865
+ readonly type: "bytes4";
2866
+ readonly internalType: "bytes4";
2867
+ }];
2868
+ readonly outputs: readonly [{
2869
+ readonly name: "";
2870
+ readonly type: "bool";
2871
+ readonly internalType: "bool";
2872
+ }];
2873
+ readonly stateMutability: "pure";
2874
+ }, {
2875
+ readonly type: "function";
2876
+ readonly name: "swapFee";
2877
+ readonly inputs: readonly [{
2878
+ readonly name: "_bToken";
2879
+ readonly type: "address";
2880
+ readonly internalType: "contract BToken";
2881
+ }];
2882
+ readonly outputs: readonly [{
2883
+ readonly name: "";
2884
+ readonly type: "uint256";
2885
+ readonly internalType: "uint256";
2886
+ }];
2887
+ readonly stateMutability: "view";
2888
+ }, {
2889
+ readonly type: "function";
2890
+ readonly name: "timeToAdapt";
2891
+ readonly inputs: readonly [];
2892
+ readonly outputs: readonly [{
2893
+ readonly name: "";
2894
+ readonly type: "uint256";
2895
+ readonly internalType: "uint256";
2896
+ }];
2897
+ readonly stateMutability: "view";
2898
+ }, {
2899
+ readonly type: "function";
2900
+ readonly name: "timeToDistribute";
2901
+ readonly inputs: readonly [];
2902
+ readonly outputs: readonly [{
2903
+ readonly name: "";
2904
+ readonly type: "uint256";
2905
+ readonly internalType: "uint256";
2906
+ }];
2907
+ readonly stateMutability: "view";
2908
+ }, {
2909
+ readonly type: "function";
2910
+ readonly name: "tokensPerSecond";
2911
+ readonly inputs: readonly [{
2912
+ readonly name: "_bToken";
2913
+ readonly type: "address";
2914
+ readonly internalType: "contract BToken";
2915
+ }];
2916
+ readonly outputs: readonly [{
2917
+ readonly name: "";
2918
+ readonly type: "uint256";
2919
+ readonly internalType: "uint256";
2920
+ }];
2921
+ readonly stateMutability: "view";
2922
+ }, {
2923
+ readonly type: "function";
2924
+ readonly name: "totalBTokens";
2925
+ readonly inputs: readonly [{
2926
+ readonly name: "_bToken";
2927
+ readonly type: "address";
2928
+ readonly internalType: "contract BToken";
2929
+ }];
2930
+ readonly outputs: readonly [{
2931
+ readonly name: "";
2932
+ readonly type: "uint256";
2933
+ readonly internalType: "uint256";
2934
+ }];
2935
+ readonly stateMutability: "view";
2936
+ }, {
2937
+ readonly type: "function";
2938
+ readonly name: "totalCollateral";
2939
+ readonly inputs: readonly [{
2940
+ readonly name: "_bToken";
2941
+ readonly type: "address";
2942
+ readonly internalType: "contract BToken";
2943
+ }];
2944
+ readonly outputs: readonly [{
2945
+ readonly name: "";
2946
+ readonly type: "uint256";
2947
+ readonly internalType: "uint256";
2948
+ }];
2949
+ readonly stateMutability: "view";
2950
+ }, {
2951
+ readonly type: "function";
2952
+ readonly name: "totalDebt";
2953
+ readonly inputs: readonly [{
2954
+ readonly name: "_bToken";
2955
+ readonly type: "address";
2956
+ readonly internalType: "contract BToken";
2957
+ }];
2958
+ readonly outputs: readonly [{
2959
+ readonly name: "";
2960
+ readonly type: "uint256";
2961
+ readonly internalType: "uint256";
2962
+ }];
2963
+ readonly stateMutability: "view";
2964
+ }, {
2965
+ readonly type: "function";
2966
+ readonly name: "totalFeeShare";
2967
+ readonly inputs: readonly [{
2968
+ readonly name: "_bToken";
2969
+ readonly type: "address";
2970
+ readonly internalType: "contract BToken";
2971
+ }];
2972
+ readonly outputs: readonly [{
2973
+ readonly name: "creator_";
2974
+ readonly type: "uint256";
2975
+ readonly internalType: "uint256";
2976
+ }, {
2977
+ readonly name: "staking_";
2978
+ readonly type: "uint256";
2979
+ readonly internalType: "uint256";
2980
+ }, {
2981
+ readonly name: "protocol_";
2982
+ readonly type: "uint256";
2983
+ readonly internalType: "uint256";
2984
+ }];
2985
+ readonly stateMutability: "view";
2986
+ }, {
2987
+ readonly type: "function";
2988
+ readonly name: "totalReserves";
2989
+ readonly inputs: readonly [{
2990
+ readonly name: "_bToken";
2991
+ readonly type: "address";
2992
+ readonly internalType: "contract BToken";
2993
+ }];
2994
+ readonly outputs: readonly [{
2995
+ readonly name: "";
2996
+ readonly type: "uint256";
2997
+ readonly internalType: "uint256";
2998
+ }];
2999
+ readonly stateMutability: "view";
3000
+ }, {
3001
+ readonly type: "function";
3002
+ readonly name: "totalStaked";
3003
+ readonly inputs: readonly [{
3004
+ readonly name: "_bToken";
3005
+ readonly type: "address";
3006
+ readonly internalType: "contract BToken";
3007
+ }];
3008
+ readonly outputs: readonly [{
3009
+ readonly name: "";
3010
+ readonly type: "uint256";
3011
+ readonly internalType: "uint256";
3012
+ }];
3013
+ readonly stateMutability: "view";
3014
+ }, {
3015
+ readonly type: "function";
3016
+ readonly name: "totalSupply";
3017
+ readonly inputs: readonly [{
3018
+ readonly name: "_bToken";
3019
+ readonly type: "address";
3020
+ readonly internalType: "contract BToken";
3021
+ }];
3022
+ readonly outputs: readonly [{
3023
+ readonly name: "";
3024
+ readonly type: "uint256";
3025
+ readonly internalType: "uint256";
3026
+ }];
3027
+ readonly stateMutability: "view";
3028
+ }, {
3029
+ readonly type: "function";
3030
+ readonly name: "withdrawable";
3031
+ readonly inputs: readonly [{
3032
+ readonly name: "_bToken";
3033
+ readonly type: "address";
3034
+ readonly internalType: "contract BToken";
3035
+ }, {
3036
+ readonly name: "_user";
3037
+ readonly type: "address";
3038
+ readonly internalType: "address";
3039
+ }];
3040
+ readonly outputs: readonly [{
3041
+ readonly name: "";
3042
+ readonly type: "uint256";
3043
+ readonly internalType: "uint256";
3044
+ }];
3045
+ readonly stateMutability: "view";
3046
+ }, {
3047
+ readonly type: "error";
3048
+ readonly name: "BLens_InvalidLeverageFactor";
3049
+ readonly inputs: readonly [];
3050
+ }, {
3051
+ readonly type: "error";
3052
+ readonly name: "BLens_UnrepresentableLaunchPrice";
3053
+ readonly inputs: readonly [];
3054
+ }, {
3055
+ readonly type: "error";
3056
+ readonly name: "Component_NotPermitted";
3057
+ readonly inputs: readonly [];
3058
+ }, {
3059
+ readonly type: "error";
3060
+ readonly name: "InvalidConvexityExp";
3061
+ readonly inputs: readonly [];
3062
+ }, {
3063
+ readonly type: "error";
3064
+ readonly name: "InvariantDecreased";
3065
+ readonly inputs: readonly [{
3066
+ readonly name: "prevInvariant";
3067
+ readonly type: "uint256";
3068
+ readonly internalType: "uint256";
3069
+ }, {
3070
+ readonly name: "newInvariant";
3071
+ readonly type: "uint256";
3072
+ readonly internalType: "uint256";
3073
+ }];
3074
+ }];
3075
+ bStaking: readonly [{
3076
+ readonly type: "function";
3077
+ readonly name: "LABEL";
3078
+ readonly inputs: readonly [];
3079
+ readonly outputs: readonly [{
3080
+ readonly name: "";
3081
+ readonly type: "bytes32";
3082
+ readonly internalType: "bytes32";
3083
+ }];
3084
+ readonly stateMutability: "pure";
3085
+ }, {
3086
+ readonly type: "function";
3087
+ readonly name: "ROUTES";
3088
+ readonly inputs: readonly [];
3089
+ readonly outputs: readonly [{
3090
+ readonly name: "routes_";
3091
+ readonly type: "bytes4[]";
3092
+ readonly internalType: "bytes4[]";
3093
+ }];
3094
+ readonly stateMutability: "pure";
3095
+ }, {
3096
+ readonly type: "function";
3097
+ readonly name: "VERSION";
3098
+ readonly inputs: readonly [];
3099
+ readonly outputs: readonly [{
3100
+ readonly name: "";
3101
+ readonly type: "uint256";
3102
+ readonly internalType: "uint256";
3103
+ }];
3104
+ readonly stateMutability: "pure";
3105
+ }, {
3106
+ readonly type: "function";
3107
+ readonly name: "claim";
3108
+ readonly inputs: readonly [{
3109
+ readonly name: "_bToken";
3110
+ readonly type: "address";
3111
+ readonly internalType: "contract BToken";
3112
+ }, {
3113
+ readonly name: "_user";
3114
+ readonly type: "address";
3115
+ readonly internalType: "address";
3116
+ }, {
3117
+ readonly name: "_asNative";
3118
+ readonly type: "bool";
3119
+ readonly internalType: "bool";
3120
+ }];
3121
+ readonly outputs: readonly [{
3122
+ readonly name: "amount_";
3123
+ readonly type: "uint256";
3124
+ readonly internalType: "uint256";
3125
+ }];
3126
+ readonly stateMutability: "nonpayable";
3127
+ }, {
3128
+ readonly type: "function";
3129
+ readonly name: "deposit";
3130
+ readonly inputs: readonly [{
3131
+ readonly name: "_bToken";
3132
+ readonly type: "address";
3133
+ readonly internalType: "contract BToken";
3134
+ }, {
3135
+ readonly name: "_user";
3136
+ readonly type: "address";
3137
+ readonly internalType: "address";
3138
+ }, {
3139
+ readonly name: "_amount";
3140
+ readonly type: "uint256";
3141
+ readonly internalType: "uint256";
3142
+ }];
3143
+ readonly outputs: readonly [];
3144
+ readonly stateMutability: "nonpayable";
3145
+ }, {
3146
+ readonly type: "function";
3147
+ readonly name: "getAccumulator";
3148
+ readonly inputs: readonly [{
3149
+ readonly name: "_bToken";
3150
+ readonly type: "address";
3151
+ readonly internalType: "contract BToken";
3152
+ }];
3153
+ readonly outputs: readonly [{
3154
+ readonly name: "accumulator_";
3155
+ readonly type: "uint256";
3156
+ readonly internalType: "uint256";
3157
+ }, {
3158
+ readonly name: "newYield_";
3159
+ readonly type: "uint256";
3160
+ readonly internalType: "uint256";
3161
+ }, {
3162
+ readonly name: "tokensPerSecond_";
3163
+ readonly type: "uint256";
3164
+ readonly internalType: "uint256";
3165
+ }];
3166
+ readonly stateMutability: "view";
3167
+ }, {
3168
+ readonly type: "function";
3169
+ readonly name: "getCurrentRate";
3170
+ readonly inputs: readonly [{
3171
+ readonly name: "_bToken";
3172
+ readonly type: "address";
3173
+ readonly internalType: "contract BToken";
3174
+ }];
3175
+ readonly outputs: readonly [{
3176
+ readonly name: "";
3177
+ readonly type: "uint256";
3178
+ readonly internalType: "uint256";
3179
+ }];
3180
+ readonly stateMutability: "view";
3181
+ }, {
3182
+ readonly type: "function";
3183
+ readonly name: "getEarned";
3184
+ readonly inputs: readonly [{
3185
+ readonly name: "_bToken";
3186
+ readonly type: "address";
3187
+ readonly internalType: "contract BToken";
3188
+ }, {
3189
+ readonly name: "_user";
3190
+ readonly type: "address";
3191
+ readonly internalType: "address";
3192
+ }];
3193
+ readonly outputs: readonly [{
3194
+ readonly name: "";
3195
+ readonly type: "uint256";
3196
+ readonly internalType: "uint256";
3197
+ }];
3198
+ readonly stateMutability: "view";
3199
+ }, {
3200
+ readonly type: "function";
3201
+ readonly name: "liquidate";
3202
+ readonly inputs: readonly [{
3203
+ readonly name: "_bToken";
3204
+ readonly type: "address";
3205
+ readonly internalType: "contract BToken";
3206
+ }, {
3207
+ readonly name: "_user";
3208
+ readonly type: "address";
3209
+ readonly internalType: "address";
3210
+ }, {
3211
+ readonly name: "_amount";
3212
+ readonly type: "uint256";
3213
+ readonly internalType: "uint256";
3214
+ }];
3215
+ readonly outputs: readonly [];
3216
+ readonly stateMutability: "nonpayable";
3217
+ }, {
3218
+ readonly type: "function";
3219
+ readonly name: "supportsInterface";
3220
+ readonly inputs: readonly [{
3221
+ readonly name: "_interfaceId";
3222
+ readonly type: "bytes4";
3223
+ readonly internalType: "bytes4";
3224
+ }];
3225
+ readonly outputs: readonly [{
3226
+ readonly name: "";
3227
+ readonly type: "bool";
3228
+ readonly internalType: "bool";
3229
+ }];
3230
+ readonly stateMutability: "pure";
3231
+ }, {
3232
+ readonly type: "function";
3233
+ readonly name: "sync";
3234
+ readonly inputs: readonly [{
3235
+ readonly name: "_bToken";
3236
+ readonly type: "address";
3237
+ readonly internalType: "contract BToken";
3238
+ }];
3239
+ readonly outputs: readonly [];
3240
+ readonly stateMutability: "nonpayable";
3241
+ }, {
3242
+ readonly type: "function";
3243
+ readonly name: "withdraw";
3244
+ readonly inputs: readonly [{
3245
+ readonly name: "_bToken";
3246
+ readonly type: "address";
3247
+ readonly internalType: "contract BToken";
3248
+ }, {
3249
+ readonly name: "_amount";
3250
+ readonly type: "uint256";
3251
+ readonly internalType: "uint256";
3252
+ }];
3253
+ readonly outputs: readonly [];
3254
+ readonly stateMutability: "nonpayable";
3255
+ }, {
3256
+ readonly type: "function";
3257
+ readonly name: "withdrawAndClaim";
3258
+ readonly inputs: readonly [{
3259
+ readonly name: "_bToken";
3260
+ readonly type: "address";
3261
+ readonly internalType: "contract BToken";
3262
+ }, {
3263
+ readonly name: "_amount";
3264
+ readonly type: "uint256";
3265
+ readonly internalType: "uint256";
3266
+ }];
3267
+ readonly outputs: readonly [];
3268
+ readonly stateMutability: "nonpayable";
3269
+ }, {
3270
+ readonly type: "function";
3271
+ readonly name: "withdrawMax";
3272
+ readonly inputs: readonly [{
3273
+ readonly name: "_bToken";
3274
+ readonly type: "address";
3275
+ readonly internalType: "contract BToken";
3276
+ }];
3277
+ readonly outputs: readonly [];
3278
+ readonly stateMutability: "nonpayable";
3279
+ }, {
3280
+ readonly type: "event";
3281
+ readonly name: "Claim";
3282
+ readonly inputs: readonly [{
3283
+ readonly name: "bToken";
3284
+ readonly type: "address";
3285
+ readonly indexed: false;
3286
+ readonly internalType: "contract BToken";
3287
+ }, {
3288
+ readonly name: "user";
3289
+ readonly type: "address";
3290
+ readonly indexed: false;
3291
+ readonly internalType: "address";
3292
+ }, {
3293
+ readonly name: "amount";
3294
+ readonly type: "uint256";
3295
+ readonly indexed: false;
3296
+ readonly internalType: "uint256";
3297
+ }];
3298
+ readonly anonymous: false;
3299
+ }, {
3300
+ readonly type: "event";
3301
+ readonly name: "Deposit";
3302
+ readonly inputs: readonly [{
3303
+ readonly name: "bToken";
3304
+ readonly type: "address";
3305
+ readonly indexed: false;
3306
+ readonly internalType: "contract BToken";
3307
+ }, {
3308
+ readonly name: "user";
3309
+ readonly type: "address";
3310
+ readonly indexed: false;
3311
+ readonly internalType: "address";
3312
+ }, {
3313
+ readonly name: "amount";
3314
+ readonly type: "uint256";
3315
+ readonly indexed: false;
3316
+ readonly internalType: "uint256";
3317
+ }, {
3318
+ readonly name: "post";
3319
+ readonly type: "tuple";
3320
+ readonly indexed: false;
3321
+ readonly internalType: "struct State.StakedAccount";
3322
+ readonly components: readonly [{
3323
+ readonly name: "amount";
3324
+ readonly type: "uint128";
3325
+ readonly internalType: "uint128";
3326
+ }, {
3327
+ readonly name: "locked";
3328
+ readonly type: "uint128";
3329
+ readonly internalType: "uint128";
3330
+ }, {
3331
+ readonly name: "earned";
3332
+ readonly type: "uint128";
3333
+ readonly internalType: "uint128";
3334
+ }, {
3335
+ readonly name: "userAccumulator";
3336
+ readonly type: "uint256";
3337
+ readonly internalType: "uint256";
3338
+ }];
3339
+ }];
3340
+ readonly anonymous: false;
3341
+ }, {
3342
+ readonly type: "event";
3343
+ readonly name: "Liquidate";
3344
+ readonly inputs: readonly [{
3345
+ readonly name: "bToken";
3346
+ readonly type: "address";
3347
+ readonly indexed: false;
3348
+ readonly internalType: "contract BToken";
3349
+ }, {
3350
+ readonly name: "user";
3351
+ readonly type: "address";
3352
+ readonly indexed: false;
3353
+ readonly internalType: "address";
3354
+ }, {
3355
+ readonly name: "amount";
3356
+ readonly type: "uint256";
3357
+ readonly indexed: false;
3358
+ readonly internalType: "uint256";
3359
+ }, {
3360
+ readonly name: "post";
3361
+ readonly type: "tuple";
3362
+ readonly indexed: false;
3363
+ readonly internalType: "struct State.StakedAccount";
3364
+ readonly components: readonly [{
3365
+ readonly name: "amount";
3366
+ readonly type: "uint128";
3367
+ readonly internalType: "uint128";
3368
+ }, {
3369
+ readonly name: "locked";
3370
+ readonly type: "uint128";
3371
+ readonly internalType: "uint128";
3372
+ }, {
3373
+ readonly name: "earned";
3374
+ readonly type: "uint128";
3375
+ readonly internalType: "uint128";
3376
+ }, {
3377
+ readonly name: "userAccumulator";
3378
+ readonly type: "uint256";
3379
+ readonly internalType: "uint256";
3380
+ }];
3381
+ }];
3382
+ readonly anonymous: false;
3383
+ }, {
3384
+ readonly type: "event";
3385
+ readonly name: "Withdraw";
3386
+ readonly inputs: readonly [{
3387
+ readonly name: "bToken";
3388
+ readonly type: "address";
3389
+ readonly indexed: false;
3390
+ readonly internalType: "contract BToken";
3391
+ }, {
3392
+ readonly name: "user";
3393
+ readonly type: "address";
3394
+ readonly indexed: false;
3395
+ readonly internalType: "address";
3396
+ }, {
3397
+ readonly name: "amount";
3398
+ readonly type: "uint256";
3399
+ readonly indexed: false;
3400
+ readonly internalType: "uint256";
3401
+ }, {
3402
+ readonly name: "post";
3403
+ readonly type: "tuple";
3404
+ readonly indexed: false;
3405
+ readonly internalType: "struct State.StakedAccount";
3406
+ readonly components: readonly [{
3407
+ readonly name: "amount";
3408
+ readonly type: "uint128";
3409
+ readonly internalType: "uint128";
3410
+ }, {
3411
+ readonly name: "locked";
3412
+ readonly type: "uint128";
3413
+ readonly internalType: "uint128";
3414
+ }, {
3415
+ readonly name: "earned";
3416
+ readonly type: "uint128";
3417
+ readonly internalType: "uint128";
3418
+ }, {
3419
+ readonly name: "userAccumulator";
3420
+ readonly type: "uint256";
3421
+ readonly internalType: "uint256";
3422
+ }];
3423
+ }];
3424
+ readonly anonymous: false;
3425
+ }, {
3426
+ readonly type: "error";
3427
+ readonly name: "BStaking_BTokenNotInitialized";
3428
+ readonly inputs: readonly [];
3429
+ }, {
3430
+ readonly type: "error";
3431
+ readonly name: "BStaking_StakeIsLocked";
3432
+ readonly inputs: readonly [];
3433
+ }, {
3434
+ readonly type: "error";
3435
+ readonly name: "Component_NotPermitted";
3436
+ readonly inputs: readonly [];
3437
+ }, {
3438
+ readonly type: "error";
3439
+ readonly name: "GuardLib_InsufficientSettledReserves";
3440
+ readonly inputs: readonly [];
3441
+ }, {
3442
+ readonly type: "error";
3443
+ readonly name: "GuardLib_InvalidCirculatingSupply";
3444
+ readonly inputs: readonly [];
3445
+ }, {
3446
+ readonly type: "error";
3447
+ readonly name: "GuardLib_Paused";
3448
+ readonly inputs: readonly [];
3449
+ }, {
3450
+ readonly type: "error";
3451
+ readonly name: "GuardLib_Reentrant";
3452
+ readonly inputs: readonly [];
3453
+ }, {
3454
+ readonly type: "error";
3455
+ readonly name: "GuardLib_ReserveAccountingMismatch";
3456
+ readonly inputs: readonly [];
3457
+ }];
3458
+ bSwap: readonly [{
3459
+ readonly type: "function";
3460
+ readonly name: "LABEL";
3461
+ readonly inputs: readonly [];
3462
+ readonly outputs: readonly [{
3463
+ readonly name: "";
3464
+ readonly type: "bytes32";
3465
+ readonly internalType: "bytes32";
3466
+ }];
3467
+ readonly stateMutability: "pure";
3468
+ }, {
3469
+ readonly type: "function";
3470
+ readonly name: "ROUTES";
3471
+ readonly inputs: readonly [];
3472
+ readonly outputs: readonly [{
3473
+ readonly name: "routes_";
3474
+ readonly type: "bytes4[]";
3475
+ readonly internalType: "bytes4[]";
3476
+ }];
3477
+ readonly stateMutability: "pure";
3478
+ }, {
3479
+ readonly type: "function";
3480
+ readonly name: "VERSION";
3481
+ readonly inputs: readonly [];
3482
+ readonly outputs: readonly [{
3483
+ readonly name: "";
3484
+ readonly type: "uint256";
3485
+ readonly internalType: "uint256";
3486
+ }];
3487
+ readonly stateMutability: "pure";
3488
+ }, {
3489
+ readonly type: "function";
3490
+ readonly name: "buyTokensExactIn";
3491
+ readonly inputs: readonly [{
3492
+ readonly name: "_bToken";
3493
+ readonly type: "address";
3494
+ readonly internalType: "contract BToken";
3495
+ }, {
3496
+ readonly name: "_amountIn";
3497
+ readonly type: "uint256";
3498
+ readonly internalType: "uint256";
3499
+ }, {
3500
+ readonly name: "_limitAmount";
3501
+ readonly type: "uint256";
3502
+ readonly internalType: "uint256";
3503
+ }];
3504
+ readonly outputs: readonly [{
3505
+ readonly name: "amountOut_";
3506
+ readonly type: "uint256";
3507
+ readonly internalType: "uint256";
3508
+ }, {
3509
+ readonly name: "feesReceived_";
3510
+ readonly type: "uint256";
3511
+ readonly internalType: "uint256";
3512
+ }];
3513
+ readonly stateMutability: "nonpayable";
3514
+ }, {
3515
+ readonly type: "function";
3516
+ readonly name: "buyTokensExactOut";
3517
+ readonly inputs: readonly [{
3518
+ readonly name: "_bToken";
3519
+ readonly type: "address";
3520
+ readonly internalType: "contract BToken";
3521
+ }, {
3522
+ readonly name: "_amountOut";
3523
+ readonly type: "uint256";
3524
+ readonly internalType: "uint256";
3525
+ }, {
3526
+ readonly name: "_limitAmount";
3527
+ readonly type: "uint256";
3528
+ readonly internalType: "uint256";
3529
+ }];
3530
+ readonly outputs: readonly [{
3531
+ readonly name: "amountIn_";
3532
+ readonly type: "uint256";
3533
+ readonly internalType: "uint256";
3534
+ }, {
3535
+ readonly name: "feesReceived_";
3536
+ readonly type: "uint256";
3537
+ readonly internalType: "uint256";
3538
+ }];
3539
+ readonly stateMutability: "payable";
3540
+ }, {
3541
+ readonly type: "function";
3542
+ readonly name: "getCurveParams";
3543
+ readonly inputs: readonly [{
3544
+ readonly name: "_bToken";
3545
+ readonly type: "address";
3546
+ readonly internalType: "contract BToken";
3547
+ }];
3548
+ readonly outputs: readonly [{
3549
+ readonly name: "";
3550
+ readonly type: "tuple";
3551
+ readonly internalType: "struct CurveParams";
3552
+ readonly components: readonly [{
3553
+ readonly name: "BLV";
3554
+ readonly type: "uint256";
3555
+ readonly internalType: "uint256";
3556
+ }, {
3557
+ readonly name: "circ";
3558
+ readonly type: "uint256";
3559
+ readonly internalType: "uint256";
3560
+ }, {
3561
+ readonly name: "supply";
3562
+ readonly type: "uint256";
3563
+ readonly internalType: "uint256";
3564
+ }, {
3565
+ readonly name: "swapFee";
3566
+ readonly type: "uint256";
3567
+ readonly internalType: "uint256";
3568
+ }, {
3569
+ readonly name: "reserves";
3570
+ readonly type: "uint256";
3571
+ readonly internalType: "uint256";
3572
+ }, {
3573
+ readonly name: "totalSupply";
3574
+ readonly type: "uint256";
3575
+ readonly internalType: "uint256";
3576
+ }, {
3577
+ readonly name: "convexityExp";
3578
+ readonly type: "uint256";
3579
+ readonly internalType: "uint256";
3580
+ }, {
3581
+ readonly name: "lastInvariant";
3582
+ readonly type: "uint256";
3583
+ readonly internalType: "uint256";
3584
+ }];
3585
+ }];
3586
+ readonly stateMutability: "view";
3587
+ }, {
3588
+ readonly type: "function";
3589
+ readonly name: "quoteBuyExactIn";
3590
+ readonly inputs: readonly [{
3591
+ readonly name: "_bToken";
3592
+ readonly type: "address";
3593
+ readonly internalType: "contract BToken";
3594
+ }, {
3595
+ readonly name: "_reservesIn";
3596
+ readonly type: "uint256";
3597
+ readonly internalType: "uint256";
3598
+ }];
3599
+ readonly outputs: readonly [{
3600
+ readonly name: "tokensOut_";
3601
+ readonly type: "uint256";
3602
+ readonly internalType: "uint256";
3603
+ }, {
3604
+ readonly name: "feesReceived_";
3605
+ readonly type: "uint256";
3606
+ readonly internalType: "uint256";
3607
+ }, {
3608
+ readonly name: "slippage_";
3609
+ readonly type: "uint256";
3610
+ readonly internalType: "uint256";
3611
+ }];
3612
+ readonly stateMutability: "view";
3613
+ }, {
3614
+ readonly type: "function";
3615
+ readonly name: "quoteBuyExactOut";
3616
+ readonly inputs: readonly [{
3617
+ readonly name: "_bToken";
3618
+ readonly type: "address";
3619
+ readonly internalType: "contract BToken";
3620
+ }, {
3621
+ readonly name: "_amountOut";
3622
+ readonly type: "uint256";
3623
+ readonly internalType: "uint256";
3624
+ }];
3625
+ readonly outputs: readonly [{
3626
+ readonly name: "amountIn_";
3627
+ readonly type: "uint256";
3628
+ readonly internalType: "uint256";
3629
+ }, {
3630
+ readonly name: "feesReceived_";
3631
+ readonly type: "uint256";
3632
+ readonly internalType: "uint256";
3633
+ }, {
3634
+ readonly name: "slippage_";
3635
+ readonly type: "uint256";
3636
+ readonly internalType: "uint256";
3637
+ }];
3638
+ readonly stateMutability: "view";
3639
+ }, {
3640
+ readonly type: "function";
3641
+ readonly name: "quoteSellExactIn";
3642
+ readonly inputs: readonly [{
3643
+ readonly name: "_bToken";
3644
+ readonly type: "address";
3645
+ readonly internalType: "contract BToken";
3646
+ }, {
3647
+ readonly name: "_amountIn";
3648
+ readonly type: "uint256";
3649
+ readonly internalType: "uint256";
3650
+ }];
3651
+ readonly outputs: readonly [{
3652
+ readonly name: "amountOut_";
3653
+ readonly type: "uint256";
3654
+ readonly internalType: "uint256";
3655
+ }, {
3656
+ readonly name: "feesReceived_";
3657
+ readonly type: "uint256";
3658
+ readonly internalType: "uint256";
3659
+ }, {
3660
+ readonly name: "slippage_";
3661
+ readonly type: "uint256";
3662
+ readonly internalType: "uint256";
3663
+ }];
3664
+ readonly stateMutability: "view";
3665
+ }, {
3666
+ readonly type: "function";
3667
+ readonly name: "quoteSellExactOut";
3668
+ readonly inputs: readonly [{
3669
+ readonly name: "_bToken";
3670
+ readonly type: "address";
3671
+ readonly internalType: "contract BToken";
3672
+ }, {
3673
+ readonly name: "_reservesOut";
3674
+ readonly type: "uint256";
3675
+ readonly internalType: "uint256";
3676
+ }];
3677
+ readonly outputs: readonly [{
3678
+ readonly name: "tokensIn_";
3679
+ readonly type: "uint256";
3680
+ readonly internalType: "uint256";
3681
+ }, {
3682
+ readonly name: "feesReceived_";
3683
+ readonly type: "uint256";
3684
+ readonly internalType: "uint256";
3685
+ }, {
3686
+ readonly name: "slippage_";
3687
+ readonly type: "uint256";
3688
+ readonly internalType: "uint256";
3689
+ }];
3690
+ readonly stateMutability: "view";
3691
+ }, {
3692
+ readonly type: "function";
3693
+ readonly name: "sellTokensExactIn";
3694
+ readonly inputs: readonly [{
3695
+ readonly name: "_bToken";
3696
+ readonly type: "address";
3697
+ readonly internalType: "contract BToken";
3698
+ }, {
3699
+ readonly name: "_amountIn";
3700
+ readonly type: "uint256";
3701
+ readonly internalType: "uint256";
3702
+ }, {
3703
+ readonly name: "_limitAmount";
3704
+ readonly type: "uint256";
3705
+ readonly internalType: "uint256";
3706
+ }];
3707
+ readonly outputs: readonly [{
3708
+ readonly name: "amountOut_";
3709
+ readonly type: "uint256";
3710
+ readonly internalType: "uint256";
3711
+ }, {
3712
+ readonly name: "feesReceived_";
3713
+ readonly type: "uint256";
3714
+ readonly internalType: "uint256";
3715
+ }];
3716
+ readonly stateMutability: "nonpayable";
3717
+ }, {
3718
+ readonly type: "function";
3719
+ readonly name: "sellTokensExactOut";
3720
+ readonly inputs: readonly [{
3721
+ readonly name: "_bToken";
3722
+ readonly type: "address";
3723
+ readonly internalType: "contract BToken";
3724
+ }, {
3725
+ readonly name: "_amountOut";
3726
+ readonly type: "uint256";
3727
+ readonly internalType: "uint256";
3728
+ }, {
3729
+ readonly name: "_limitAmount";
3730
+ readonly type: "uint256";
3731
+ readonly internalType: "uint256";
3732
+ }];
3733
+ readonly outputs: readonly [{
3734
+ readonly name: "amountIn_";
3735
+ readonly type: "uint256";
3736
+ readonly internalType: "uint256";
3737
+ }, {
3738
+ readonly name: "feesReceived_";
3739
+ readonly type: "uint256";
3740
+ readonly internalType: "uint256";
3741
+ }];
3742
+ readonly stateMutability: "nonpayable";
3743
+ }, {
3744
+ readonly type: "function";
3745
+ readonly name: "supportsInterface";
3746
+ readonly inputs: readonly [{
3747
+ readonly name: "_interfaceId";
3748
+ readonly type: "bytes4";
3749
+ readonly internalType: "bytes4";
3750
+ }];
3751
+ readonly outputs: readonly [{
3752
+ readonly name: "";
3753
+ readonly type: "bool";
3754
+ readonly internalType: "bool";
3755
+ }];
3756
+ readonly stateMutability: "pure";
3757
+ }, {
3758
+ readonly type: "event";
3759
+ readonly name: "Distributed";
3760
+ readonly inputs: readonly [{
3761
+ readonly name: "bToken";
3762
+ readonly type: "address";
3763
+ readonly indexed: false;
3764
+ readonly internalType: "address";
3765
+ }, {
3766
+ readonly name: "reserve";
3767
+ readonly type: "address";
3768
+ readonly indexed: false;
3769
+ readonly internalType: "address";
3770
+ }, {
3771
+ readonly name: "totalAmount";
3772
+ readonly type: "uint256";
3773
+ readonly indexed: false;
3774
+ readonly internalType: "uint256";
3775
+ }, {
3776
+ readonly name: "protocolFee";
3777
+ readonly type: "uint256";
3778
+ readonly indexed: false;
3779
+ readonly internalType: "uint256";
3780
+ }, {
3781
+ readonly name: "creatorFee";
3782
+ readonly type: "uint256";
3783
+ readonly indexed: false;
3784
+ readonly internalType: "uint256";
3785
+ }, {
3786
+ readonly name: "stakingFee";
3787
+ readonly type: "uint256";
3788
+ readonly indexed: false;
3789
+ readonly internalType: "uint256";
3790
+ }];
3791
+ readonly anonymous: false;
3792
+ }, {
3793
+ readonly type: "event";
3794
+ readonly name: "Swap";
3795
+ readonly inputs: readonly [{
3796
+ readonly name: "bToken";
3797
+ readonly type: "address";
3798
+ readonly indexed: false;
3799
+ readonly internalType: "contract BToken";
3800
+ }, {
3801
+ readonly name: "user";
3802
+ readonly type: "address";
3803
+ readonly indexed: false;
3804
+ readonly internalType: "address";
3805
+ }, {
3806
+ readonly name: "activePrice";
3807
+ readonly type: "uint256";
3808
+ readonly indexed: false;
3809
+ readonly internalType: "uint256";
3810
+ }, {
3811
+ readonly name: "blvPrice";
3812
+ readonly type: "uint256";
3813
+ readonly indexed: false;
3814
+ readonly internalType: "uint256";
3815
+ }, {
3816
+ readonly name: "bTokenDelta";
3817
+ readonly type: "int256";
3818
+ readonly indexed: false;
3819
+ readonly internalType: "int256";
3820
+ }, {
3821
+ readonly name: "reserveDelta";
3822
+ readonly type: "int256";
3823
+ readonly indexed: false;
3824
+ readonly internalType: "int256";
3825
+ }, {
3826
+ readonly name: "totalFee";
3827
+ readonly type: "uint256";
3828
+ readonly indexed: false;
3829
+ readonly internalType: "uint256";
3830
+ }, {
3831
+ readonly name: "liquidityFee";
3832
+ readonly type: "uint256";
3833
+ readonly indexed: false;
3834
+ readonly internalType: "uint256";
3835
+ }];
3836
+ readonly anonymous: false;
3837
+ }, {
3838
+ readonly type: "error";
3839
+ readonly name: "BlockPricingLib_InvalidDeltaDirection";
3840
+ readonly inputs: readonly [];
3841
+ }, {
3842
+ readonly type: "error";
3843
+ readonly name: "BlockPricingLib_SellExceedsSameBlockCapacity";
3844
+ readonly inputs: readonly [];
3845
+ }, {
3846
+ readonly type: "error";
3847
+ readonly name: "BlockPricingLib_SellFloorExceedsCurveRelease";
3848
+ readonly inputs: readonly [];
3849
+ }, {
3850
+ readonly type: "error";
3851
+ readonly name: "Component_NotPermitted";
3852
+ readonly inputs: readonly [];
3853
+ }, {
3854
+ readonly type: "error";
3855
+ readonly name: "GuardLib_Insolvent";
3856
+ readonly inputs: readonly [];
3857
+ }, {
3858
+ readonly type: "error";
3859
+ readonly name: "GuardLib_InsufficientSettledReserves";
3860
+ readonly inputs: readonly [];
3861
+ }, {
3862
+ readonly type: "error";
3863
+ readonly name: "GuardLib_Paused";
3864
+ readonly inputs: readonly [];
3865
+ }, {
3866
+ readonly type: "error";
3867
+ readonly name: "GuardLib_Reentrant";
3868
+ readonly inputs: readonly [];
3869
+ }, {
3870
+ readonly type: "error";
3871
+ readonly name: "GuardLib_ReserveAccountingMismatch";
3872
+ readonly inputs: readonly [];
3873
+ }, {
3874
+ readonly type: "error";
3875
+ readonly name: "InvalidConvexityExp";
3876
+ readonly inputs: readonly [];
3877
+ }, {
3878
+ readonly type: "error";
3879
+ readonly name: "InvalidOutput";
3880
+ readonly inputs: readonly [];
3881
+ }, {
3882
+ readonly type: "error";
3883
+ readonly name: "InvalidParameters";
3884
+ readonly inputs: readonly [];
3885
+ }, {
3886
+ readonly type: "error";
3887
+ readonly name: "InvalidSwapDirection";
3888
+ readonly inputs: readonly [];
3889
+ }, {
3890
+ readonly type: "error";
3891
+ readonly name: "InvariantDecreased";
3892
+ readonly inputs: readonly [{
3893
+ readonly name: "prevInvariant";
3894
+ readonly type: "uint256";
3895
+ readonly internalType: "uint256";
3896
+ }, {
3897
+ readonly name: "newInvariant";
3898
+ readonly type: "uint256";
3899
+ readonly internalType: "uint256";
3900
+ }];
3901
+ }, {
3902
+ readonly type: "error";
3903
+ readonly name: "NativeLib_AmountMismatch";
3904
+ readonly inputs: readonly [];
3905
+ }, {
3906
+ readonly type: "error";
3907
+ readonly name: "NativeLib_NotWrapped";
3908
+ readonly inputs: readonly [];
3909
+ }, {
3910
+ readonly type: "error";
3911
+ readonly name: "PriceMustChange";
3912
+ readonly inputs: readonly [];
3913
+ }, {
3914
+ readonly type: "error";
3915
+ readonly name: "SlippageExceeded";
3916
+ readonly inputs: readonly [];
3917
+ }, {
3918
+ readonly type: "error";
3919
+ readonly name: "SolverFailed";
3920
+ readonly inputs: readonly [];
3921
+ }, {
3922
+ readonly type: "error";
3923
+ readonly name: "TradeExceedsLimit";
3924
+ readonly inputs: readonly [];
3925
+ }];
3926
+ feeLib: readonly [{
3927
+ readonly type: "event";
3928
+ readonly name: "Distributed";
3929
+ readonly inputs: readonly [{
3930
+ readonly name: "bToken";
3931
+ readonly type: "address";
3932
+ readonly indexed: false;
3933
+ readonly internalType: "address";
3934
+ }, {
3935
+ readonly name: "reserve";
3936
+ readonly type: "address";
3937
+ readonly indexed: false;
3938
+ readonly internalType: "address";
3939
+ }, {
3940
+ readonly name: "totalAmount";
3941
+ readonly type: "uint256";
3942
+ readonly indexed: false;
3943
+ readonly internalType: "uint256";
3944
+ }, {
3945
+ readonly name: "protocolFee";
3946
+ readonly type: "uint256";
3947
+ readonly indexed: false;
3948
+ readonly internalType: "uint256";
3949
+ }, {
3950
+ readonly name: "creatorFee";
3951
+ readonly type: "uint256";
3952
+ readonly indexed: false;
3953
+ readonly internalType: "uint256";
3954
+ }, {
3955
+ readonly name: "stakingFee";
3956
+ readonly type: "uint256";
3957
+ readonly indexed: false;
3958
+ readonly internalType: "uint256";
3959
+ }];
3960
+ readonly anonymous: false;
3961
+ }];
3962
+ };
305
3963
  declare const supportedChainIds: number[];
306
3964
 
307
- export { type ApprovalOpts, type ApprovalPolicy, type BTokenInfo, type BTokenInfoStatus, type BTokenMakerInfo, BaselineSDK, type CreatePoolFromInvariantParams, type CreatePoolParams, type CreditAccount, type DeleverageResult, type LaunchInput, type LaunchMode, type LeverageResult, type NativeOpts, type PoolKey, type QuoteBuyBToken, type QuoteBuyReserves, type QuoteSellBToken, type QuoteSellReserves, type SDKConfig, SDKError, type SerializedCall, type StakedAccount, type SwapOpts, type TxOpts, serializeCalls, supportedChainIds };
3965
+ export { type ApprovalOpts, type ApprovalPolicy, type BTokenInfo, type BTokenInfoStatus, type BTokenMakerInfo, BaselineSDK, type CallsApi, type CreatePoolFromInvariantParams, type CreatePoolParams, type CreditAccount, type DeleverageResult, type ExtendedCall, type LaunchInput, type LaunchMode, type LeverageResult, type NativeOpts, type PoolKey, type QuoteBuyBToken, type QuoteBuyReserves, type QuoteSellBToken, type QuoteSellReserves, type SDKConfig, SDKError, type SerializedCall, type StakedAccount, type SwapOpts, type TxOpts, abis, index as calls, maxInWithSlippage, minOutWithSlippage, serializeCalls, simulateCalls, supportedChainIds };