@baseline-markets/sdk 1.0.2 → 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.cts CHANGED
@@ -1,7 +1,6 @@
1
- import { Address, Hex, PublicClient, WalletClient } from 'viem';
2
- export { mercuryAbis as abis } from '@baseline/contracts/abis';
1
+ import { Address, Hex, Call, toHex, PublicClient, WalletClient } from 'viem';
3
2
 
4
- type CreateParams = {
3
+ type CreatePoolParams = {
5
4
  bToken: Address;
6
5
  initialPoolBTokens: bigint;
7
6
  reserve: Address;
@@ -17,6 +16,17 @@ type CreateParams = {
17
16
  initialCollateral: bigint;
18
17
  initialDebt: bigint;
19
18
  };
19
+ type CreatePoolFromInvariantParams = {
20
+ bToken: Address;
21
+ initialPoolBTokens: bigint;
22
+ reserve: Address;
23
+ initialInvariant: bigint;
24
+ creator: Address;
25
+ feeRecipient: Address;
26
+ creatorFeePct: bigint;
27
+ swapFeePct: bigint;
28
+ createHook: boolean;
29
+ };
20
30
  type PoolKey = {
21
31
  currency0: Address;
22
32
  currency1: Address;
@@ -84,12 +94,227 @@ type SDKConfig = {
84
94
  defaultUseNative?: boolean;
85
95
  wrappedNative?: Address;
86
96
  };
97
+ type BTokenInfoStatus = 'not_deployed' | 'contract_only' | 'baseline_uninitialized' | 'initialized';
98
+ type BTokenMakerInfo = {
99
+ initialized: boolean;
100
+ blvPrice: bigint;
101
+ swapFee: bigint;
102
+ maxCirc: bigint;
103
+ maxReserves: bigint;
104
+ convexityExp: bigint;
105
+ lastInvariant: bigint;
106
+ };
107
+ type BTokenInfo = {
108
+ chainId: number;
109
+ relay: Address;
110
+ bToken: Address;
111
+ status?: BTokenInfoStatus;
112
+ bytecode?: boolean;
113
+ name?: string;
114
+ symbol?: string;
115
+ decimals?: number;
116
+ totalSupply?: bigint;
117
+ reserve?: Address;
118
+ reserveDecimals?: number;
119
+ creator?: Address;
120
+ poolFeeRecipient?: Address;
121
+ creatorFeePct?: bigint;
122
+ swapFee?: bigint;
123
+ totalBTokens?: bigint;
124
+ totalReserves?: bigint;
125
+ maker?: BTokenMakerInfo;
126
+ };
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
+ }
87
269
 
88
270
  declare class BaselineSDK {
89
271
  readonly publicClient: PublicClient;
90
272
  readonly walletClient?: WalletClient;
91
273
  readonly config?: SDKConfig;
92
274
  private readonly readFactory;
275
+ readonly calls: {
276
+ launch: (input: LaunchInput, opts?: {
277
+ account?: Address;
278
+ precomputedBToken?: Address;
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
+ };
317
+ };
93
318
  private getAccount;
94
319
  private requireWallet;
95
320
  constructor(publicClient: PublicClient<any, any>, walletClient?: WalletClient<any, any, any>, config?: SDKConfig);
@@ -101,9 +326,20 @@ declare class BaselineSDK {
101
326
  hash: Hex;
102
327
  bToken: Address;
103
328
  }>;
104
- createPool(params: CreateParams, opts?: TxOpts): Promise<{
329
+ createPool(params: CreatePoolParams, opts?: TxOpts): Promise<{
105
330
  hash: Hex;
106
331
  }>;
332
+ createPoolFromInvariant(params: CreatePoolFromInvariantParams, opts?: TxOpts): Promise<{
333
+ hash: Hex;
334
+ }>;
335
+ precomputeBTokenAddress(input: {
336
+ name: string;
337
+ symbol: string;
338
+ totalSupply: bigint;
339
+ salt: Hex;
340
+ deployer: Address;
341
+ }): Promise<Address>;
342
+ private launchCalls;
107
343
  quoteBuyExactIn(bToken: Address, reservesIn: bigint): Promise<{
108
344
  tokensOut: bigint;
109
345
  fee: bigint;
@@ -182,6 +418,7 @@ declare class BaselineSDK {
182
418
  refund: bigint;
183
419
  }>;
184
420
  getStakedAccount(bToken: Address, user: Address): Promise<StakedAccount>;
421
+ getEarned(bToken: Address, user: Address): Promise<bigint>;
185
422
  getCreditAccount(bToken: Address, user: Address): Promise<CreditAccount>;
186
423
  getTokenBalance(token: Address, user: Address): Promise<bigint>;
187
424
  approve(token: Address, spender: Address, amount: bigint, opts?: TxOpts): Promise<Hex>;
@@ -189,6 +426,8 @@ declare class BaselineSDK {
189
426
  ensureApproval(token: Address, spender: Address, required: bigint, opts?: TxOpts & {
190
427
  policy?: 'infinite' | 'exact';
191
428
  }): Promise<void>;
429
+ getBTokenInfo(bToken: Address): Promise<BTokenInfo>;
430
+ getBTokenStatus(bToken: Address, info?: Pick<BTokenInfo, 'reserve' | 'maker'>): Promise<Pick<BTokenInfo, 'status' | 'bytecode'>>;
192
431
  getReserve(bToken: Address): Promise<Address>;
193
432
  activePrice(bToken: Address): Promise<bigint>;
194
433
  quoteLeverage(bToken: Address, collateralIn: bigint, leverageFactor: bigint): Promise<{
@@ -219,6 +458,3508 @@ declare class SDKError extends Error {
219
458
  constructor(message: string, params?: Partial<SDKError>);
220
459
  }
221
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
+ };
222
3963
  declare const supportedChainIds: number[];
223
3964
 
224
- export { type ApprovalOpts, type ApprovalPolicy, BaselineSDK, type CreateParams, type CreditAccount, type DeleverageResult, type LeverageResult, type NativeOpts, type PoolKey, type QuoteBuyBToken, type QuoteBuyReserves, type QuoteSellBToken, type QuoteSellReserves, type SDKConfig, SDKError, type StakedAccount, type SwapOpts, type TxOpts, 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 };