@aastar/sdk 0.21.1 → 0.23.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/UserClient-J3JPDIG7.cjs +15 -0
- package/dist/{UserClient-QM2CQVRM.cjs.map → UserClient-J3JPDIG7.cjs.map} +1 -1
- package/dist/UserClient-XTHQ2AP3.js +6 -0
- package/dist/{UserClient-2JL52CNK.js.map → UserClient-XTHQ2AP3.js.map} +1 -1
- package/dist/account.cjs +7 -7
- package/dist/account.js +2 -2
- package/dist/admin.cjs +3 -3
- package/dist/admin.js +2 -2
- package/dist/airaccount.cjs +117 -97
- package/dist/airaccount.d.cts +2 -1
- package/dist/airaccount.d.ts +2 -1
- package/dist/airaccount.js +2 -2
- package/dist/channel.cjs +6 -6
- package/dist/channel.js +2 -2
- package/dist/{chunk-JYHDAOUT.js → chunk-2DDWYKF2.js} +9 -9
- package/dist/{chunk-JYHDAOUT.js.map → chunk-2DDWYKF2.js.map} +1 -1
- package/dist/{chunk-3HZEIFBW.cjs → chunk-2GZMRCQW.cjs} +5 -5
- package/dist/{chunk-3HZEIFBW.cjs.map → chunk-2GZMRCQW.cjs.map} +1 -1
- package/dist/{chunk-UP2S7C7R.js → chunk-2UDF62XV.js} +6 -6
- package/dist/{chunk-UP2S7C7R.js.map → chunk-2UDF62XV.js.map} +1 -1
- package/dist/{chunk-KZERVPUR.js → chunk-2WBSYPUY.js} +3 -3
- package/dist/{chunk-KZERVPUR.js.map → chunk-2WBSYPUY.js.map} +1 -1
- package/dist/{chunk-M5WFKETT.js → chunk-5G5SB6CP.js} +1512 -66
- package/dist/chunk-5G5SB6CP.js.map +1 -0
- package/dist/{chunk-IZN2COBP.cjs → chunk-6I22EW6V.cjs} +11 -11
- package/dist/{chunk-IZN2COBP.cjs.map → chunk-6I22EW6V.cjs.map} +1 -1
- package/dist/{chunk-HT6LGLDM.cjs → chunk-6PJAHZZ2.cjs} +26 -26
- package/dist/{chunk-HT6LGLDM.cjs.map → chunk-6PJAHZZ2.cjs.map} +1 -1
- package/dist/{chunk-PED7PJQZ.cjs → chunk-CGKPULZX.cjs} +16 -16
- package/dist/{chunk-PED7PJQZ.cjs.map → chunk-CGKPULZX.cjs.map} +1 -1
- package/dist/{chunk-MKUILC7J.js → chunk-D23CZFOM.js} +3 -3
- package/dist/{chunk-MKUILC7J.js.map → chunk-D23CZFOM.js.map} +1 -1
- package/dist/{chunk-Z4GZ6DQA.cjs → chunk-E37CPC2U.cjs} +9 -9
- package/dist/{chunk-Z4GZ6DQA.cjs.map → chunk-E37CPC2U.cjs.map} +1 -1
- package/dist/{chunk-EY2AJTGV.js → chunk-EZC7Q3SG.js} +3 -3
- package/dist/{chunk-EY2AJTGV.js.map → chunk-EZC7Q3SG.js.map} +1 -1
- package/dist/{chunk-5NKU5NT5.js → chunk-H5EQBNC6.js} +8 -8
- package/dist/{chunk-5NKU5NT5.js.map → chunk-H5EQBNC6.js.map} +1 -1
- package/dist/{chunk-OVNOSAL3.cjs → chunk-LAZA3JD7.cjs} +182 -6
- package/dist/chunk-LAZA3JD7.cjs.map +1 -0
- package/dist/{chunk-CIEYY3A6.cjs → chunk-MFBTMF5U.cjs} +1541 -64
- package/dist/chunk-MFBTMF5U.cjs.map +1 -0
- package/dist/{chunk-E4CQFW75.js → chunk-PFMCPSS4.js} +3 -3
- package/dist/{chunk-E4CQFW75.js.map → chunk-PFMCPSS4.js.map} +1 -1
- package/dist/{chunk-IJN776TA.cjs → chunk-PKYWLTIJ.cjs} +32 -32
- package/dist/{chunk-IJN776TA.cjs.map → chunk-PKYWLTIJ.cjs.map} +1 -1
- package/dist/{chunk-ENSMYCU6.js → chunk-SXLWFZFX.js} +3 -3
- package/dist/{chunk-ENSMYCU6.js.map → chunk-SXLWFZFX.js.map} +1 -1
- package/dist/{chunk-57XLR2NT.js → chunk-TM2LH4ZE.js} +3 -3
- package/dist/{chunk-57XLR2NT.js.map → chunk-TM2LH4ZE.js.map} +1 -1
- package/dist/{chunk-DQBKE4ND.js → chunk-UMTCWOQV.js} +4 -4
- package/dist/{chunk-DQBKE4ND.js.map → chunk-UMTCWOQV.js.map} +1 -1
- package/dist/{chunk-5JFYTJOE.cjs → chunk-UQMMEDHO.cjs} +4 -4
- package/dist/{chunk-5JFYTJOE.cjs.map → chunk-UQMMEDHO.cjs.map} +1 -1
- package/dist/{chunk-M7HXR7G5.cjs → chunk-UULR2KA6.cjs} +5 -5
- package/dist/{chunk-M7HXR7G5.cjs.map → chunk-UULR2KA6.cjs.map} +1 -1
- package/dist/{chunk-6OWZOTE7.js → chunk-V65JXHM6.js} +178 -7
- package/dist/chunk-V65JXHM6.js.map +1 -0
- package/dist/{chunk-WR4OZUXR.cjs → chunk-W4ENVPZH.cjs} +6 -6
- package/dist/{chunk-WR4OZUXR.cjs.map → chunk-W4ENVPZH.cjs.map} +1 -1
- package/dist/{chunk-Y4EJX7UA.cjs → chunk-XFJSY5LG.cjs} +12 -12
- package/dist/{chunk-Y4EJX7UA.cjs.map → chunk-XFJSY5LG.cjs.map} +1 -1
- package/dist/core.cjs +295 -171
- package/dist/core.d.cts +329 -507
- package/dist/core.d.ts +329 -507
- package/dist/core.js +1 -1
- package/dist/dapp.cjs +5 -5
- package/dist/dapp.js +2 -2
- package/dist/enduser.cjs +6 -6
- package/dist/enduser.js +3 -3
- package/dist/identity.cjs +5 -5
- package/dist/identity.js +2 -2
- package/dist/index.cjs +396 -272
- package/dist/index.d.cts +4 -2
- package/dist/index.d.ts +4 -2
- package/dist/index.js +15 -15
- package/dist/initConfig-D8jgrcDb.d.cts +518 -0
- package/dist/initConfig-D8jgrcDb.d.ts +518 -0
- package/dist/kms.cjs +117 -97
- package/dist/kms.d.cts +183 -3
- package/dist/kms.d.ts +183 -3
- package/dist/kms.js +2 -2
- package/dist/operator.cjs +6 -6
- package/dist/operator.js +2 -2
- package/dist/paymaster.cjs +15 -15
- package/dist/paymaster.js +2 -2
- package/dist/src-2P72LYVT.js +5 -0
- package/dist/src-2P72LYVT.js.map +1 -0
- package/dist/{src-CUHI6G6W.cjs → src-4Q2WFLO2.cjs} +297 -173
- package/dist/src-4Q2WFLO2.cjs.map +1 -0
- package/dist/{src-X5IECEPM.cjs → src-HECKBVR2.cjs} +17 -17
- package/dist/src-HECKBVR2.cjs.map +1 -0
- package/dist/{src-CTYY6FNI.js → src-KLP4Q2Y3.js} +4 -4
- package/dist/src-KLP4Q2Y3.js.map +1 -0
- package/dist/tokens.cjs +3 -3
- package/dist/tokens.js +2 -2
- package/dist/x402.cjs +25 -25
- package/dist/x402.js +2 -2
- package/package.json +1 -1
- package/dist/UserClient-2JL52CNK.js +0 -6
- package/dist/UserClient-QM2CQVRM.cjs +0 -15
- package/dist/chunk-6OWZOTE7.js.map +0 -1
- package/dist/chunk-CIEYY3A6.cjs.map +0 -1
- package/dist/chunk-M5WFKETT.js.map +0 -1
- package/dist/chunk-OVNOSAL3.cjs.map +0 -1
- package/dist/src-CTYY6FNI.js.map +0 -1
- package/dist/src-CUHI6G6W.cjs.map +0 -1
- package/dist/src-X5IECEPM.cjs.map +0 -1
- package/dist/src-XCV6BTSV.js +0 -5
- package/dist/src-XCV6BTSV.js.map +0 -1
package/dist/core.d.ts
CHANGED
|
@@ -2,6 +2,8 @@ import { Address, Chain, Hex, Account, Hash, BlockNumber, BlockTag, PublicClient
|
|
|
2
2
|
import { P as PublicClient } from './doc-types-471vSmPO.js';
|
|
3
3
|
export { W as WalletClient } from './doc-types-471vSmPO.js';
|
|
4
4
|
export { a as BaseClient, B as BusinessResult, C as ClientConfig, T as TransactionOptions } from './BaseClient-BjbYP0cf.js';
|
|
5
|
+
import { I as InitConfig } from './initConfig-D8jgrcDb.js';
|
|
6
|
+
export { A as AirAccountActions, B as BuildInitConfigParams, D as DryRunValidationResult, G as GuardianSpec, O as OperatorConfig, d as PackedUserOperation, P as PendingModuleInstall, R as ResolvedAPNTsToken, a as SlashRecord, S as SuperPaymasterActions, T as TokenConfig, b as airAccountActions, c as buildInitConfig, s as superPaymasterActions } from './initConfig-D8jgrcDb.js';
|
|
5
7
|
export { a as ChannelActions, C as ChannelState, c as channelActions } from './channel-CkRRbzT8.js';
|
|
6
8
|
import * as node_modules_viem__types from 'node_modules/viem/_types';
|
|
7
9
|
|
|
@@ -3959,356 +3961,6 @@ type SBTActions = {
|
|
|
3959
3961
|
};
|
|
3960
3962
|
declare const sbtActions: (address: Address) => (client: PublicClient$1 | WalletClient) => SBTActions;
|
|
3961
3963
|
|
|
3962
|
-
/**
|
|
3963
|
-
* ERC-4337 v0.7 PackedUserOperation tuple, matching the `struct PackedUserOperation`
|
|
3964
|
-
* input of `dryRunValidation` / `validatePaymasterUserOp` in the SuperPaymaster ABI.
|
|
3965
|
-
* Field order is load-bearing: viem encodes the tuple positionally from this shape.
|
|
3966
|
-
*/
|
|
3967
|
-
type PackedUserOperation = {
|
|
3968
|
-
sender: Address;
|
|
3969
|
-
nonce: bigint;
|
|
3970
|
-
initCode: Hex;
|
|
3971
|
-
callData: Hex;
|
|
3972
|
-
accountGasLimits: Hex;
|
|
3973
|
-
preVerificationGas: bigint;
|
|
3974
|
-
gasFees: Hex;
|
|
3975
|
-
paymasterAndData: Hex;
|
|
3976
|
-
signature: Hex;
|
|
3977
|
-
};
|
|
3978
|
-
/**
|
|
3979
|
-
* Result of an off-chain `dryRunValidation` pre-flight check.
|
|
3980
|
-
* `ok` mirrors whether the paymaster would accept the UserOp; `reasonCode` is a
|
|
3981
|
-
* bytes32 machine-readable rejection code (zero when `ok` is true).
|
|
3982
|
-
*/
|
|
3983
|
-
type DryRunValidationResult = {
|
|
3984
|
-
ok: boolean;
|
|
3985
|
-
reasonCode: Hex;
|
|
3986
|
-
};
|
|
3987
|
-
type SlashRecord = {
|
|
3988
|
-
timestamp: bigint;
|
|
3989
|
-
amount: bigint;
|
|
3990
|
-
reputationLoss: bigint;
|
|
3991
|
-
reason: string;
|
|
3992
|
-
level: number;
|
|
3993
|
-
};
|
|
3994
|
-
type OperatorConfig = {
|
|
3995
|
-
aPNTsBalance: bigint;
|
|
3996
|
-
isConfigured: boolean;
|
|
3997
|
-
isPaused: boolean;
|
|
3998
|
-
xPNTsToken: Address;
|
|
3999
|
-
reputation: number;
|
|
4000
|
-
minTxInterval: number;
|
|
4001
|
-
treasury: Address;
|
|
4002
|
-
totalSpent: bigint;
|
|
4003
|
-
totalTxSponsored: bigint;
|
|
4004
|
-
};
|
|
4005
|
-
/**
|
|
4006
|
-
* Runtime-resolved aPNTs token state read live from the SuperPaymaster contract.
|
|
4007
|
-
*
|
|
4008
|
-
* The contract exposes the currently active token via `APNTS_TOKEN()` and an
|
|
4009
|
-
* upcoming (timelocked) token via `pendingAPNTsToken()` / `pendingAPNTsTokenEta()`.
|
|
4010
|
-
* Consumers should prefer `active` and may surface `pending` to warn about an
|
|
4011
|
-
* upcoming migration.
|
|
4012
|
-
*/
|
|
4013
|
-
type ResolvedAPNTsToken = {
|
|
4014
|
-
/** Currently active aPNTs token address, read from `APNTS_TOKEN()`. */
|
|
4015
|
-
active: Address;
|
|
4016
|
-
/** aPNTs token queued for migration; `zeroAddress` when none is queued. */
|
|
4017
|
-
pending: Address;
|
|
4018
|
-
/** Unix-second ETA when the pending change becomes executable; `0n` when none is queued. */
|
|
4019
|
-
pendingEta: bigint;
|
|
4020
|
-
/** True only when `active` came from the explicit `fallback` option after a failed chain read. */
|
|
4021
|
-
fallbackUsed: boolean;
|
|
4022
|
-
};
|
|
4023
|
-
type SuperPaymasterActions = {
|
|
4024
|
-
deposit: (args: {
|
|
4025
|
-
amount: bigint;
|
|
4026
|
-
account?: Account | Address;
|
|
4027
|
-
}) => Promise<Hash>;
|
|
4028
|
-
depositETH: (args: {
|
|
4029
|
-
value: bigint;
|
|
4030
|
-
account?: Account | Address;
|
|
4031
|
-
}) => Promise<Hash>;
|
|
4032
|
-
depositFor: (args: {
|
|
4033
|
-
targetOperator: Address;
|
|
4034
|
-
amount: bigint;
|
|
4035
|
-
account?: Account | Address;
|
|
4036
|
-
}) => Promise<Hash>;
|
|
4037
|
-
withdrawTo: (args: {
|
|
4038
|
-
to: Address;
|
|
4039
|
-
amount: bigint;
|
|
4040
|
-
account?: Account | Address;
|
|
4041
|
-
}) => Promise<Hash>;
|
|
4042
|
-
withdraw: (args: {
|
|
4043
|
-
amount: bigint;
|
|
4044
|
-
account?: Account | Address;
|
|
4045
|
-
}) => Promise<Hash>;
|
|
4046
|
-
addStake: (args: {
|
|
4047
|
-
unstakeDelaySec: number;
|
|
4048
|
-
value: bigint;
|
|
4049
|
-
account?: Account | Address;
|
|
4050
|
-
}) => Promise<Hash>;
|
|
4051
|
-
unlockStake: (args: {
|
|
4052
|
-
account?: Account | Address;
|
|
4053
|
-
}) => Promise<Hash>;
|
|
4054
|
-
withdrawStake: (args: {
|
|
4055
|
-
to: Address;
|
|
4056
|
-
account?: Account | Address;
|
|
4057
|
-
}) => Promise<Hash>;
|
|
4058
|
-
configureOperator: (args: {
|
|
4059
|
-
xPNTsToken: Address;
|
|
4060
|
-
opTreasury: Address;
|
|
4061
|
-
account?: Account | Address;
|
|
4062
|
-
}) => Promise<Hash>;
|
|
4063
|
-
setOperatorPaused: (args: {
|
|
4064
|
-
operator: Address;
|
|
4065
|
-
paused: boolean;
|
|
4066
|
-
account?: Account | Address;
|
|
4067
|
-
}) => Promise<Hash>;
|
|
4068
|
-
setOperatorLimits: (args: {
|
|
4069
|
-
minTxInterval: number;
|
|
4070
|
-
account?: Account | Address;
|
|
4071
|
-
}) => Promise<Hash>;
|
|
4072
|
-
updateReputation: (args: {
|
|
4073
|
-
operator: Address;
|
|
4074
|
-
newScore: bigint;
|
|
4075
|
-
account?: Account | Address;
|
|
4076
|
-
}) => Promise<Hash>;
|
|
4077
|
-
executeSlashWithBLS: (args: {
|
|
4078
|
-
operator: Address;
|
|
4079
|
-
level: number;
|
|
4080
|
-
proof: Hex;
|
|
4081
|
-
account?: Account | Address;
|
|
4082
|
-
}) => Promise<Hash>;
|
|
4083
|
-
slashOperator: (args: {
|
|
4084
|
-
operator: Address;
|
|
4085
|
-
level: number;
|
|
4086
|
-
penaltyAmount: bigint;
|
|
4087
|
-
reason: string;
|
|
4088
|
-
account?: Account | Address;
|
|
4089
|
-
}) => Promise<Hash>;
|
|
4090
|
-
updateBlockedStatus: (args: {
|
|
4091
|
-
operator: Address;
|
|
4092
|
-
users: Address[];
|
|
4093
|
-
statuses: boolean[];
|
|
4094
|
-
account?: Account | Address;
|
|
4095
|
-
}) => Promise<Hash>;
|
|
4096
|
-
updateSBTStatus: (args: {
|
|
4097
|
-
user: Address;
|
|
4098
|
-
status: boolean;
|
|
4099
|
-
account?: Account | Address;
|
|
4100
|
-
}) => Promise<Hash>;
|
|
4101
|
-
/** Read the unrecovered debt recorded for a user after a failed burn/recordDebt. */
|
|
4102
|
-
pendingDebts: (args: {
|
|
4103
|
-
token: Address;
|
|
4104
|
-
user: Address;
|
|
4105
|
-
}) => Promise<bigint>;
|
|
4106
|
-
/** Operator retries recovering up to `amount` of the user's pending debt. */
|
|
4107
|
-
retryPendingDebt: (args: {
|
|
4108
|
-
token: Address;
|
|
4109
|
-
user: Address;
|
|
4110
|
-
amount: bigint;
|
|
4111
|
-
account?: Account | Address;
|
|
4112
|
-
}) => Promise<Hash>;
|
|
4113
|
-
/** Operator force-clears the user's pending-debt entry without recording it. */
|
|
4114
|
-
clearPendingDebt: (args: {
|
|
4115
|
-
token: Address;
|
|
4116
|
-
user: Address;
|
|
4117
|
-
account?: Account | Address;
|
|
4118
|
-
}) => Promise<Hash>;
|
|
4119
|
-
setAPNTSPrice: (args: {
|
|
4120
|
-
newPrice: bigint;
|
|
4121
|
-
account?: Account | Address;
|
|
4122
|
-
}) => Promise<Hash>;
|
|
4123
|
-
updatePrice: (args: {
|
|
4124
|
-
account?: Account | Address;
|
|
4125
|
-
}) => Promise<Hash>;
|
|
4126
|
-
updatePriceDVT: (args: {
|
|
4127
|
-
price: bigint;
|
|
4128
|
-
updatedAt: bigint;
|
|
4129
|
-
proof: Hex;
|
|
4130
|
-
account?: Account | Address;
|
|
4131
|
-
}) => Promise<Hash>;
|
|
4132
|
-
setProtocolFee: (args: {
|
|
4133
|
-
newFeeBPS: bigint;
|
|
4134
|
-
account?: Account | Address;
|
|
4135
|
-
}) => Promise<Hash>;
|
|
4136
|
-
setTreasury: (args: {
|
|
4137
|
-
treasury: Address;
|
|
4138
|
-
account?: Account | Address;
|
|
4139
|
-
}) => Promise<Hash>;
|
|
4140
|
-
setXPNTsFactory: (args: {
|
|
4141
|
-
factory: Address;
|
|
4142
|
-
account?: Account | Address;
|
|
4143
|
-
}) => Promise<Hash>;
|
|
4144
|
-
setAPNTsToken: (args: {
|
|
4145
|
-
token: Address;
|
|
4146
|
-
account?: Account | Address;
|
|
4147
|
-
}) => Promise<Hash>;
|
|
4148
|
-
/** @deprecated The deployed SuperPaymaster ABI has no direct `setBLSAggregator` — the aggregator change is timelocked via {@link queueBLSAggregator} + {@link applyBLSAggregator}. Throws {@link ErrorCode.NOT_IMPLEMENTED}. */
|
|
4149
|
-
setBLSAggregator: (args: {
|
|
4150
|
-
aggregator: Address;
|
|
4151
|
-
account?: Account | Address;
|
|
4152
|
-
}) => Promise<Hash>;
|
|
4153
|
-
withdrawProtocolRevenue: (args: {
|
|
4154
|
-
to: Address;
|
|
4155
|
-
amount: bigint;
|
|
4156
|
-
account?: Account | Address;
|
|
4157
|
-
}) => Promise<Hash>;
|
|
4158
|
-
executeAPNTsTokenChange: (args: {
|
|
4159
|
-
account?: Account | Address;
|
|
4160
|
-
}) => Promise<Hash>;
|
|
4161
|
-
cancelAPNTsTokenChange: (args: {
|
|
4162
|
-
account?: Account | Address;
|
|
4163
|
-
}) => Promise<Hash>;
|
|
4164
|
-
pendingAPNTsToken: () => Promise<Address>;
|
|
4165
|
-
pendingAPNTsTokenEta: () => Promise<bigint>;
|
|
4166
|
-
/**
|
|
4167
|
-
* Resolve the live aPNTs token address from chain instead of relying on a static constant.
|
|
4168
|
-
*
|
|
4169
|
-
* Reads `APNTS_TOKEN()` (active), `pendingAPNTsToken()` and `pendingAPNTsTokenEta()`
|
|
4170
|
-
* in parallel and returns them as a structured result. Prefer `active` for runtime use.
|
|
4171
|
-
*
|
|
4172
|
-
* If `fallback` is supplied and the chain reads fail, the static `fallback` address is
|
|
4173
|
-
* returned with `fallbackUsed: true` (pending fields zeroed). Without a `fallback` the
|
|
4174
|
-
* underlying error is re-thrown rather than silently masked.
|
|
4175
|
-
*/
|
|
4176
|
-
resolveAPNTsToken: (args?: {
|
|
4177
|
-
fallback?: Address;
|
|
4178
|
-
}) => Promise<ResolvedAPNTsToken>;
|
|
4179
|
-
emergencySetPrice: (args: {
|
|
4180
|
-
newPrice: bigint;
|
|
4181
|
-
account?: Account | Address;
|
|
4182
|
-
}) => Promise<Hash>;
|
|
4183
|
-
executeEmergencyPrice: (args: {
|
|
4184
|
-
account?: Account | Address;
|
|
4185
|
-
}) => Promise<Hash>;
|
|
4186
|
-
cancelEmergencyPrice: (args: {
|
|
4187
|
-
account?: Account | Address;
|
|
4188
|
-
}) => Promise<Hash>;
|
|
4189
|
-
emergencyPendingPrice: () => Promise<bigint>;
|
|
4190
|
-
emergencyActivatedAt: () => Promise<bigint>;
|
|
4191
|
-
emergencyQueuedAt: () => Promise<bigint>;
|
|
4192
|
-
EMERGENCY_TIMELOCK: () => Promise<bigint>;
|
|
4193
|
-
queueBLSAggregator: (args: {
|
|
4194
|
-
aggregator: Address;
|
|
4195
|
-
account?: Account | Address;
|
|
4196
|
-
}) => Promise<Hash>;
|
|
4197
|
-
applyBLSAggregator: (args: {
|
|
4198
|
-
account?: Account | Address;
|
|
4199
|
-
}) => Promise<Hash>;
|
|
4200
|
-
onTransferReceived: (args: {
|
|
4201
|
-
operator: Address;
|
|
4202
|
-
from: Address;
|
|
4203
|
-
value: bigint;
|
|
4204
|
-
data: Hex;
|
|
4205
|
-
}) => Promise<Hex>;
|
|
4206
|
-
validatePaymasterUserOp: (args: {
|
|
4207
|
-
userOp: any;
|
|
4208
|
-
userOpHash: Hex;
|
|
4209
|
-
maxCost: bigint;
|
|
4210
|
-
}) => Promise<{
|
|
4211
|
-
context: Hex;
|
|
4212
|
-
validationData: bigint;
|
|
4213
|
-
}>;
|
|
4214
|
-
/**
|
|
4215
|
-
* Off-chain pre-flight validation of a UserOp against this paymaster.
|
|
4216
|
-
* Returns `{ ok, reasonCode }` so callers can detect AA34-style rejections
|
|
4217
|
-
* before submitting the UserOp on-chain. View call; never mutates state.
|
|
4218
|
-
*/
|
|
4219
|
-
dryRunValidation: (args: {
|
|
4220
|
-
userOp: PackedUserOperation;
|
|
4221
|
-
maxCost: bigint;
|
|
4222
|
-
}) => Promise<DryRunValidationResult>;
|
|
4223
|
-
operators: (args: {
|
|
4224
|
-
operator: Address;
|
|
4225
|
-
}) => Promise<OperatorConfig>;
|
|
4226
|
-
getAvailableCredit: (args: {
|
|
4227
|
-
user: Address;
|
|
4228
|
-
token: Address;
|
|
4229
|
-
}) => Promise<bigint>;
|
|
4230
|
-
getDeposit: () => Promise<bigint>;
|
|
4231
|
-
getLatestSlash: (args: {
|
|
4232
|
-
operator: Address;
|
|
4233
|
-
}) => Promise<SlashRecord>;
|
|
4234
|
-
getSlashCount: (args: {
|
|
4235
|
-
operator: Address;
|
|
4236
|
-
}) => Promise<bigint>;
|
|
4237
|
-
getSlashHistory: (args: {
|
|
4238
|
-
operator: Address;
|
|
4239
|
-
}) => Promise<SlashRecord[]>;
|
|
4240
|
-
slashHistory: (args: {
|
|
4241
|
-
operator: Address;
|
|
4242
|
-
index: bigint;
|
|
4243
|
-
}) => Promise<SlashRecord>;
|
|
4244
|
-
userOpState: (args: {
|
|
4245
|
-
user: Address;
|
|
4246
|
-
operator: Address;
|
|
4247
|
-
}) => Promise<{
|
|
4248
|
-
lastTimestamp: number;
|
|
4249
|
-
isBlocked: boolean;
|
|
4250
|
-
}>;
|
|
4251
|
-
cachedPrice: () => Promise<{
|
|
4252
|
-
price: bigint;
|
|
4253
|
-
updatedAt: bigint;
|
|
4254
|
-
roundId: bigint;
|
|
4255
|
-
decimals: number;
|
|
4256
|
-
}>;
|
|
4257
|
-
aPNTsPriceUSD: () => Promise<bigint>;
|
|
4258
|
-
protocolFeeBPS: () => Promise<bigint>;
|
|
4259
|
-
protocolRevenue: () => Promise<bigint>;
|
|
4260
|
-
totalTrackedBalance: () => Promise<bigint>;
|
|
4261
|
-
priceStalenessThreshold: () => Promise<bigint>;
|
|
4262
|
-
sbtHolders: (args: {
|
|
4263
|
-
user: Address;
|
|
4264
|
-
}) => Promise<boolean>;
|
|
4265
|
-
/** True when the Chainlink ETH/USD feed is considered stale by the contract. */
|
|
4266
|
-
isChainlinkStale: () => Promise<boolean>;
|
|
4267
|
-
/** Current pricing mode (uint8 enum on the contract). */
|
|
4268
|
-
priceMode: () => Promise<number>;
|
|
4269
|
-
/** Unix-second timestamp until which the cached price remains valid (uint48). */
|
|
4270
|
-
priceValidUntil: () => Promise<bigint>;
|
|
4271
|
-
/** Address of the BLS aggregator pending the timelock (`zeroAddress` if none queued). */
|
|
4272
|
-
pendingBLSAgg: () => Promise<Address>;
|
|
4273
|
-
/** Unix-second ETA at which the pending BLS aggregator change becomes executable (uint48). */
|
|
4274
|
-
pendingBLSAggEta: () => Promise<bigint>;
|
|
4275
|
-
APNTS_TOKEN: () => Promise<Address>;
|
|
4276
|
-
REGISTRY: () => Promise<Address>;
|
|
4277
|
-
BLS_AGGREGATOR: () => Promise<Address>;
|
|
4278
|
-
ETH_USD_PRICE_FEED: () => Promise<Address>;
|
|
4279
|
-
treasury: () => Promise<Address>;
|
|
4280
|
-
xpntsFactory: () => Promise<Address>;
|
|
4281
|
-
entryPoint: () => Promise<Address>;
|
|
4282
|
-
/** @deprecated Removed in the v5.x contract refactor — not in the deployed SuperPaymaster ABI. Throws {@link ErrorCode.NOT_IMPLEMENTED}. */
|
|
4283
|
-
MAX_PROTOCOL_FEE: () => Promise<bigint>;
|
|
4284
|
-
/** @deprecated Removed from SuperPaymaster in the v5.x refactor (this bound belongs to the standalone Paymaster contract). Throws {@link ErrorCode.NOT_IMPLEMENTED}. */
|
|
4285
|
-
MAX_ETH_USD_PRICE: () => Promise<bigint>;
|
|
4286
|
-
/** @deprecated Removed from SuperPaymaster in the v5.x refactor (this bound belongs to the standalone Paymaster contract). Throws {@link ErrorCode.NOT_IMPLEMENTED}. */
|
|
4287
|
-
MIN_ETH_USD_PRICE: () => Promise<bigint>;
|
|
4288
|
-
/** @deprecated Removed in the v5.x contract refactor — not in the deployed SuperPaymaster ABI. Throws {@link ErrorCode.NOT_IMPLEMENTED}. */
|
|
4289
|
-
PAYMASTER_DATA_OFFSET: () => Promise<bigint>;
|
|
4290
|
-
/** @deprecated Removed in the v5.x contract refactor — not in the deployed SuperPaymaster ABI. Throws {@link ErrorCode.NOT_IMPLEMENTED}. */
|
|
4291
|
-
PRICE_CACHE_DURATION: () => Promise<bigint>;
|
|
4292
|
-
/** @deprecated Removed in the v5.x contract refactor — not in the deployed SuperPaymaster ABI. Throws {@link ErrorCode.NOT_IMPLEMENTED}. */
|
|
4293
|
-
RATE_OFFSET: () => Promise<bigint>;
|
|
4294
|
-
/** @deprecated Removed in the v5.x contract refactor — not in the deployed SuperPaymaster ABI. Throws {@link ErrorCode.NOT_IMPLEMENTED}. */
|
|
4295
|
-
VALIDATION_BUFFER_BPS: () => Promise<bigint>;
|
|
4296
|
-
/** @deprecated Removed in the v5.x contract refactor — not in the deployed SuperPaymaster ABI. Throws {@link ErrorCode.NOT_IMPLEMENTED}. */
|
|
4297
|
-
BPS_DENOMINATOR: () => Promise<bigint>;
|
|
4298
|
-
/** Duration (seconds) of the aPNTs-token-change timelock. */
|
|
4299
|
-
APNTS_TOKEN_TIMELOCK: () => Promise<bigint>;
|
|
4300
|
-
owner: () => Promise<Address>;
|
|
4301
|
-
transferOwnership: (args: {
|
|
4302
|
-
newOwner: Address;
|
|
4303
|
-
account?: Account | Address;
|
|
4304
|
-
}) => Promise<Hash>;
|
|
4305
|
-
renounceOwnership: (args: {
|
|
4306
|
-
account?: Account | Address;
|
|
4307
|
-
}) => Promise<Hash>;
|
|
4308
|
-
version: () => Promise<string>;
|
|
4309
|
-
};
|
|
4310
|
-
declare const superPaymasterActions: (address: Address) => (client: PublicClient$1 | WalletClient) => SuperPaymasterActions;
|
|
4311
|
-
|
|
4312
3964
|
type PaymasterActions = {
|
|
4313
3965
|
depositFor: (args: {
|
|
4314
3966
|
user: Address;
|
|
@@ -5921,136 +5573,6 @@ type GTokenAuthorizationActions = GTokenActions & {
|
|
|
5921
5573
|
};
|
|
5922
5574
|
declare const gTokenAuthorizationActions: (client: PublicClient$1 | WalletClient) => GTokenAuthorizationActions;
|
|
5923
5575
|
|
|
5924
|
-
type TokenConfig = {
|
|
5925
|
-
tier1Limit: bigint;
|
|
5926
|
-
tier2Limit: bigint;
|
|
5927
|
-
dailyLimit: bigint;
|
|
5928
|
-
};
|
|
5929
|
-
type InitConfig = {
|
|
5930
|
-
guardians: readonly [Address, Address, Address];
|
|
5931
|
-
guardianP256X: readonly [Hex, Hex, Hex];
|
|
5932
|
-
guardianP256Y: readonly [Hex, Hex, Hex];
|
|
5933
|
-
dailyLimit: bigint;
|
|
5934
|
-
approvedAlgIds: readonly number[];
|
|
5935
|
-
minDailyLimit: bigint;
|
|
5936
|
-
initialTokens: readonly Address[];
|
|
5937
|
-
initialTokenConfigs: readonly TokenConfig[];
|
|
5938
|
-
};
|
|
5939
|
-
type PendingModuleInstall = {
|
|
5940
|
-
module: Address;
|
|
5941
|
-
moduleTypeId: number;
|
|
5942
|
-
proposedAt: number;
|
|
5943
|
-
executeAfter: number;
|
|
5944
|
-
initDataHash: Hex;
|
|
5945
|
-
};
|
|
5946
|
-
type AirAccountActions = {
|
|
5947
|
-
owner: () => Promise<Address>;
|
|
5948
|
-
guardianCount: () => Promise<number>;
|
|
5949
|
-
guardians: (args: {
|
|
5950
|
-
index: bigint | number;
|
|
5951
|
-
}) => Promise<Address>;
|
|
5952
|
-
accountId: () => Promise<string>;
|
|
5953
|
-
isValidSignature: (args: {
|
|
5954
|
-
hash: Hex;
|
|
5955
|
-
sig: Hex;
|
|
5956
|
-
}) => Promise<Hex>;
|
|
5957
|
-
requiredTier: (args: {
|
|
5958
|
-
txValue: bigint;
|
|
5959
|
-
}) => Promise<number>;
|
|
5960
|
-
supportsModule: (args: {
|
|
5961
|
-
moduleTypeId: bigint;
|
|
5962
|
-
}) => Promise<boolean>;
|
|
5963
|
-
p256KeyX: () => Promise<Hex>;
|
|
5964
|
-
p256KeyY: () => Promise<Hex>;
|
|
5965
|
-
parserRegistry: () => Promise<Address>;
|
|
5966
|
-
moduleManagementNonce: () => Promise<bigint>;
|
|
5967
|
-
moduleInstallTimelock: () => Promise<bigint>;
|
|
5968
|
-
pendingModuleInstall: () => Promise<PendingModuleInstall>;
|
|
5969
|
-
setP256Key: (args: {
|
|
5970
|
-
x: Hex;
|
|
5971
|
-
y: Hex;
|
|
5972
|
-
account?: Account | Address;
|
|
5973
|
-
}) => Promise<Hash>;
|
|
5974
|
-
setTierLimits: (args: {
|
|
5975
|
-
tier1: bigint;
|
|
5976
|
-
tier2: bigint;
|
|
5977
|
-
account?: Account | Address;
|
|
5978
|
-
}) => Promise<Hash>;
|
|
5979
|
-
setValidator: (args: {
|
|
5980
|
-
validator: Address;
|
|
5981
|
-
account?: Account | Address;
|
|
5982
|
-
}) => Promise<Hash>;
|
|
5983
|
-
setParserRegistry: (args: {
|
|
5984
|
-
registry: Address;
|
|
5985
|
-
account?: Account | Address;
|
|
5986
|
-
}) => Promise<Hash>;
|
|
5987
|
-
/**
|
|
5988
|
-
* Execute calls via an installed executor module (ERC-7579 `executeFromExecutor`).
|
|
5989
|
-
* NOTE: this is a state-changing tx, so it resolves to the transaction `Hash` — the
|
|
5990
|
-
* on-chain `bytes[] returnData` is NOT recoverable from a write. If you need the
|
|
5991
|
-
* decoded return data, `simulateContract`/`call` the same function separately.
|
|
5992
|
-
*/
|
|
5993
|
-
executeFromExecutor: (args: {
|
|
5994
|
-
mode: Hex;
|
|
5995
|
-
executionCalldata: Hex;
|
|
5996
|
-
account?: Account | Address;
|
|
5997
|
-
}) => Promise<Hash>;
|
|
5998
|
-
validateUserOp: (args: {
|
|
5999
|
-
userOp: PackedUserOperation;
|
|
6000
|
-
userOpHash: Hex;
|
|
6001
|
-
missingAccountFunds: bigint;
|
|
6002
|
-
account?: Account | Address;
|
|
6003
|
-
}) => Promise<Hash>;
|
|
6004
|
-
initializeAgentAccount: (args: {
|
|
6005
|
-
entryPoint: Address;
|
|
6006
|
-
owner: Address;
|
|
6007
|
-
config: InitConfig;
|
|
6008
|
-
guardAddr: Address;
|
|
6009
|
-
account?: Account | Address;
|
|
6010
|
-
}) => Promise<Hash>;
|
|
6011
|
-
guardAddTokenConfig: (args: {
|
|
6012
|
-
token: Address;
|
|
6013
|
-
config: TokenConfig;
|
|
6014
|
-
account?: Account | Address;
|
|
6015
|
-
}) => Promise<Hash>;
|
|
6016
|
-
guardApproveAlgorithm: (args: {
|
|
6017
|
-
algId: number;
|
|
6018
|
-
account?: Account | Address;
|
|
6019
|
-
}) => Promise<Hash>;
|
|
6020
|
-
guardDecreaseDailyLimit: (args: {
|
|
6021
|
-
newLimit: bigint;
|
|
6022
|
-
account?: Account | Address;
|
|
6023
|
-
}) => Promise<Hash>;
|
|
6024
|
-
guardDecreaseTokenDailyLimit: (args: {
|
|
6025
|
-
token: Address;
|
|
6026
|
-
newLimit: bigint;
|
|
6027
|
-
account?: Account | Address;
|
|
6028
|
-
}) => Promise<Hash>;
|
|
6029
|
-
guardSetStrictMode: (args: {
|
|
6030
|
-
enabled: boolean;
|
|
6031
|
-
account?: Account | Address;
|
|
6032
|
-
}) => Promise<Hash>;
|
|
6033
|
-
proposeModuleInstall: (args: {
|
|
6034
|
-
moduleTypeId: bigint;
|
|
6035
|
-
module: Address;
|
|
6036
|
-
initData: Hex;
|
|
6037
|
-
account?: Account | Address;
|
|
6038
|
-
}) => Promise<Hash>;
|
|
6039
|
-
executeModuleInstall: (args: {
|
|
6040
|
-
moduleInitData: Hex;
|
|
6041
|
-
account?: Account | Address;
|
|
6042
|
-
}) => Promise<Hash>;
|
|
6043
|
-
cancelModuleInstall: (args: {
|
|
6044
|
-
account?: Account | Address;
|
|
6045
|
-
}) => Promise<Hash>;
|
|
6046
|
-
setModuleInstallTimelock: (args: {
|
|
6047
|
-
newTimelock: bigint;
|
|
6048
|
-
guardianSigs: Hex;
|
|
6049
|
-
account?: Account | Address;
|
|
6050
|
-
}) => Promise<Hash>;
|
|
6051
|
-
};
|
|
6052
|
-
declare const airAccountActions: (address: Address) => (client: PublicClient$1 | WalletClient) => AirAccountActions;
|
|
6053
|
-
|
|
6054
5576
|
type AirAccountFactoryActions = {
|
|
6055
5577
|
getAddressWithChainId: (args: {
|
|
6056
5578
|
owner: Address;
|
|
@@ -6131,20 +5653,45 @@ declare const airAccountFactoryActions: (address: Address) => (client: PublicCli
|
|
|
6131
5653
|
* internally, so the on-chain `address` here is the smart-account address, never
|
|
6132
5654
|
* the extension's own address.
|
|
6133
5655
|
*
|
|
6134
|
-
* ## Batch
|
|
5656
|
+
* ## P-256 (passkey) guardian feature — fully wired (Batch 2)
|
|
6135
5657
|
* The full P-256 / WebAuthn guardian feature (passkey-signed recovery, mixed
|
|
6136
|
-
* ECDSA+P-256 guardian consensus) landed in the contracts at v0.20.0
|
|
6137
|
-
*
|
|
6138
|
-
*
|
|
6139
|
-
*
|
|
6140
|
-
*
|
|
6141
|
-
*
|
|
5658
|
+
* ECDSA+P-256 guardian consensus) landed in the contracts at v0.20.0 and is wired
|
|
5659
|
+
* end-to-end here: the two VIEW reads plus the eight state-changing writes.
|
|
5660
|
+
*
|
|
5661
|
+
* The `sig` blobs these writes consume are built by the core crypto module
|
|
5662
|
+
* (`@aastar/core` → `buildP256GuardianChallenge` / `encodeWebAuthnAssertion` /
|
|
5663
|
+
* `signP256GuardianAssertion` in `crypto/p256Guardian.ts`). This action layer is the
|
|
5664
|
+
* thin calldata wrapper; the security-critical encoding lives in that module and is
|
|
5665
|
+
* decode-verified against a live Sepolia tx (see `tests/regression/onchain-evidence/`).
|
|
5666
|
+
*
|
|
5667
|
+
* ## Guardian bootstrap is guardianSig-free (spec §5.1 / §9)
|
|
5668
|
+
* `addP256Guardian(x, y)` is **owner-only** and requires `_guardianCount < RECOVERY_THRESHOLD`
|
|
5669
|
+
* (a single guardian can't form a quorum), so the FIRST P-256 guardian(s) need NO guardian
|
|
5670
|
+
* signature — only the owner. The same holds for init-time setup via `InitConfig.guardianP256X/Y`
|
|
5671
|
+
* (one factory tx, no window). Once `RECOVERY_THRESHOLD` guardians exist, expansion requires
|
|
5672
|
+
* consensus via `addP256GuardianWithMixedSigs` / `addGuardianWithMixedSigs`.
|
|
6142
5673
|
*
|
|
6143
5674
|
* The plain ECDSA recovery lifecycle (`proposeRecovery` / `approveRecovery` /
|
|
6144
|
-
* `executeRecovery` / `cancelRecovery`) is unchanged at the byte level
|
|
6145
|
-
*
|
|
6146
|
-
* `RecoveryService` against the account address — it is NOT re-declared here.
|
|
5675
|
+
* `executeRecovery` / `cancelRecovery`) is unchanged at the byte level and is encoded by
|
|
5676
|
+
* the AirAccount server's `RecoveryService` against the account address — NOT re-declared here.
|
|
6147
5677
|
*/
|
|
5678
|
+
/**
|
|
5679
|
+
* Storage slots of the mixed-sig operation nonces, taken VERBATIM from the contract's shared layout
|
|
5680
|
+
* `AAStarAgentStorageLayout.sol` (forge-inspect-verified, identical for AAStarAirAccountV7 and
|
|
5681
|
+
* AirAccountExtension — the parity that makes the fallback→delegatecall sharing safe). These nonces
|
|
5682
|
+
* are `internal` (no public getter), so the SDK reads them via `eth_getStorageAt`.
|
|
5683
|
+
*
|
|
5684
|
+
* slot 15 — `_guardianRemovalNonce` (AAStarAgentStorageLayout.sol:118)
|
|
5685
|
+
* slot 16 — `_tierLimitNonce` (AAStarAgentStorageLayout.sol:119)
|
|
5686
|
+
* slot 38 — `_recoveryNonce` (AAStarAgentStorageLayout.sol:182; also the public `getRecoveryNonce()`)
|
|
5687
|
+
* slot 39 — `_guardianAdditionNonce` (AAStarAgentStorageLayout.sol:186)
|
|
5688
|
+
*/
|
|
5689
|
+
declare const GUARDIAN_REMOVAL_NONCE_SLOT = 15n;
|
|
5690
|
+
declare const TIER_LIMIT_NONCE_SLOT = 16n;
|
|
5691
|
+
declare const RECOVERY_NONCE_SLOT = 38n;
|
|
5692
|
+
declare const GUARDIAN_ADDITION_NONCE_SLOT = 39n;
|
|
5693
|
+
/** Highest valid guardian slot index (the contract hard-caps the guardian set at 3: slots 0..2). */
|
|
5694
|
+
declare const MAX_GUARDIAN_SLOT = 2;
|
|
6148
5695
|
type AirAccountExtensionActions = {
|
|
6149
5696
|
/** `getRecoveryNonce()` — monotonic nonce that domain-separates P-256 / mixed-sig recovery payloads. */
|
|
6150
5697
|
getRecoveryNonce: () => Promise<bigint>;
|
|
@@ -6155,54 +5702,94 @@ type AirAccountExtensionActions = {
|
|
|
6155
5702
|
x: Hex;
|
|
6156
5703
|
y: Hex;
|
|
6157
5704
|
}>;
|
|
6158
|
-
/**
|
|
5705
|
+
/**
|
|
5706
|
+
* `_guardianAdditionNonce` — the nonce bound into ADD_GUARDIAN / ADD_P256_GUARDIAN challenges.
|
|
5707
|
+
* Read from internal storage slot 39 (no public getter). MUST be re-fetched immediately before
|
|
5708
|
+
* collecting guardian signatures for `add*WithMixedSigs` (any successful add increments it).
|
|
5709
|
+
*/
|
|
5710
|
+
getGuardianAdditionNonce: () => Promise<bigint>;
|
|
5711
|
+
/**
|
|
5712
|
+
* `_guardianRemovalNonce` — the nonce bound into REMOVE_GUARDIAN challenges. Read from internal
|
|
5713
|
+
* storage slot 15 (no public getter). Re-fetch immediately before signing `removeGuardianWithMixedSigs`.
|
|
5714
|
+
*/
|
|
5715
|
+
getGuardianRemovalNonce: () => Promise<bigint>;
|
|
5716
|
+
/**
|
|
5717
|
+
* `_tierLimitNonce` — the nonce bound into MODIFY_TIER_LIMITS challenges. Read from internal
|
|
5718
|
+
* storage slot 16 (no public getter). Re-fetch immediately before signing `modifyTierLimitsWithMixedGuardians`.
|
|
5719
|
+
*/
|
|
5720
|
+
getTierLimitNonce: () => Promise<bigint>;
|
|
5721
|
+
/** `addP256Guardian(x, y)` — owner-only bootstrap of a passkey guardian (no guardianSig while `count < threshold`). */
|
|
6159
5722
|
addP256Guardian: (args: {
|
|
6160
5723
|
x: Hex;
|
|
6161
5724
|
y: Hex;
|
|
6162
|
-
|
|
6163
|
-
|
|
5725
|
+
account?: Account | Address;
|
|
5726
|
+
maxFeePerGas?: bigint;
|
|
5727
|
+
maxPriorityFeePerGas?: bigint;
|
|
5728
|
+
}) => Promise<Hash>;
|
|
5729
|
+
/** `addP256GuardianWithMixedSigs(x, y, signerIdxs, sigs)` — add a passkey guardian once `count >= threshold` (consensus required). */
|
|
6164
5730
|
addP256GuardianWithMixedSigs: (args: {
|
|
6165
5731
|
x: Hex;
|
|
6166
5732
|
y: Hex;
|
|
6167
5733
|
signerIdxs: readonly number[];
|
|
6168
5734
|
sigs: readonly Hex[];
|
|
6169
|
-
|
|
6170
|
-
|
|
5735
|
+
account?: Account | Address;
|
|
5736
|
+
maxFeePerGas?: bigint;
|
|
5737
|
+
maxPriorityFeePerGas?: bigint;
|
|
5738
|
+
}) => Promise<Hash>;
|
|
5739
|
+
/** `addGuardianWithMixedSigs(guardian, signerIdxs, sigs)` — add an ECDSA guardian with mixed-type guardian consensus. */
|
|
6171
5740
|
addGuardianWithMixedSigs: (args: {
|
|
6172
5741
|
guardian: Address;
|
|
6173
5742
|
signerIdxs: readonly number[];
|
|
6174
5743
|
sigs: readonly Hex[];
|
|
6175
|
-
|
|
6176
|
-
|
|
5744
|
+
account?: Account | Address;
|
|
5745
|
+
maxFeePerGas?: bigint;
|
|
5746
|
+
maxPriorityFeePerGas?: bigint;
|
|
5747
|
+
}) => Promise<Hash>;
|
|
5748
|
+
/** `proposeRecoveryWithSig(newOwner, gIdx, sig)` — passkey guardian proposes recovery (any relayer submits). */
|
|
6177
5749
|
proposeRecoveryWithSig: (args: {
|
|
6178
5750
|
newOwner: Address;
|
|
6179
5751
|
gIdx: number;
|
|
6180
5752
|
sig: Hex;
|
|
6181
|
-
|
|
6182
|
-
|
|
5753
|
+
account?: Account | Address;
|
|
5754
|
+
maxFeePerGas?: bigint;
|
|
5755
|
+
maxPriorityFeePerGas?: bigint;
|
|
5756
|
+
}) => Promise<Hash>;
|
|
5757
|
+
/** `approveRecoveryWithSig(gIdx, sig)` — passkey guardian approves the active recovery proposal. */
|
|
6183
5758
|
approveRecoveryWithSig: (args: {
|
|
6184
5759
|
gIdx: number;
|
|
6185
5760
|
sig: Hex;
|
|
6186
|
-
|
|
6187
|
-
|
|
5761
|
+
account?: Account | Address;
|
|
5762
|
+
maxFeePerGas?: bigint;
|
|
5763
|
+
maxPriorityFeePerGas?: bigint;
|
|
5764
|
+
}) => Promise<Hash>;
|
|
5765
|
+
/** `cancelRecoveryWithSig(gIdx, sig)` — passkey guardian votes to cancel the active recovery proposal. */
|
|
6188
5766
|
cancelRecoveryWithSig: (args: {
|
|
6189
5767
|
gIdx: number;
|
|
6190
5768
|
sig: Hex;
|
|
6191
|
-
|
|
6192
|
-
|
|
5769
|
+
account?: Account | Address;
|
|
5770
|
+
maxFeePerGas?: bigint;
|
|
5771
|
+
maxPriorityFeePerGas?: bigint;
|
|
5772
|
+
}) => Promise<Hash>;
|
|
5773
|
+
/** `removeGuardianWithMixedSigs(index, signerIdxs, sigs)` — owner-only removal with mixed-type guardian consensus. */
|
|
6193
5774
|
removeGuardianWithMixedSigs: (args: {
|
|
6194
5775
|
index: number;
|
|
6195
5776
|
signerIdxs: readonly number[];
|
|
6196
5777
|
sigs: readonly Hex[];
|
|
6197
|
-
|
|
6198
|
-
|
|
5778
|
+
account?: Account | Address;
|
|
5779
|
+
maxFeePerGas?: bigint;
|
|
5780
|
+
maxPriorityFeePerGas?: bigint;
|
|
5781
|
+
}) => Promise<Hash>;
|
|
5782
|
+
/** `modifyTierLimitsWithMixedGuardians(tier1, tier2, deadline, signerIdxs, sigs)` — owner-only tier change with mixed consensus. */
|
|
6199
5783
|
modifyTierLimitsWithMixedGuardians: (args: {
|
|
6200
5784
|
tier1: bigint;
|
|
6201
5785
|
tier2: bigint;
|
|
6202
5786
|
deadline: bigint;
|
|
6203
5787
|
signerIdxs: readonly number[];
|
|
6204
5788
|
sigs: readonly Hex[];
|
|
6205
|
-
|
|
5789
|
+
account?: Account | Address;
|
|
5790
|
+
maxFeePerGas?: bigint;
|
|
5791
|
+
maxPriorityFeePerGas?: bigint;
|
|
5792
|
+
}) => Promise<Hash>;
|
|
6206
5793
|
};
|
|
6207
5794
|
declare const airAccountExtensionActions: (address: Address) => (client: PublicClient$1 | WalletClient) => AirAccountExtensionActions;
|
|
6208
5795
|
|
|
@@ -6589,6 +6176,241 @@ interface HashToFieldU0U1 {
|
|
|
6589
6176
|
*/
|
|
6590
6177
|
declare function hashToFieldU0U1(message: Hex): HashToFieldU0U1;
|
|
6591
6178
|
|
|
6179
|
+
/**
|
|
6180
|
+
* P-256 (WebAuthn passkey) guardian wire encoders — airaccount-contract v0.20.0
|
|
6181
|
+
* authoritative, byte-for-byte against the published
|
|
6182
|
+
* `AirAccountExtension._verifyWebAuthnP256Sig` + `_p256GuardianChallenge`
|
|
6183
|
+
* (src/core/AirAccountExtension.sol). See `docs/p256-guardian-spec.md` §2, §6.
|
|
6184
|
+
*
|
|
6185
|
+
* ## What the contract actually verifies (NOT the early "simplified" draft)
|
|
6186
|
+
*
|
|
6187
|
+
* A P-256 guardian signs a FULL WebAuthn assertion — exactly what
|
|
6188
|
+
* `navigator.credentials.get()` returns — over the operation challenge:
|
|
6189
|
+
*
|
|
6190
|
+
* ```
|
|
6191
|
+
* challenge = keccak256(abi.encode(
|
|
6192
|
+
* uint8 GUARDIAN_SIG_VERSION (=4),
|
|
6193
|
+
* uint256 chainId,
|
|
6194
|
+
* address account,
|
|
6195
|
+
* string "P256_GUARDIAN", // domain tag
|
|
6196
|
+
* string opLabel, // "PROPOSE_RECOVERY" / …
|
|
6197
|
+
* bytes opData)) // per-op, see §6
|
|
6198
|
+
* clientDataJSON = '{"type":"webauthn.get","challenge":"' || base64url(challenge) || suffix
|
|
6199
|
+
* payloadHash = sha256(authenticatorData || sha256(clientDataJSON)) // ES256 signs this
|
|
6200
|
+
* sig (on-chain) = abi.encode(bytes authenticatorData, bytes clientDataJSONPrefix,
|
|
6201
|
+
* bytes clientDataJSONSuffix, bytes32 r, bytes32 s)
|
|
6202
|
+
* ```
|
|
6203
|
+
*
|
|
6204
|
+
* The contract rebuilds `base64url(challenge)` on-chain (`_base64UrlEncode32`) and
|
|
6205
|
+
* splices it between the SDK-supplied prefix/suffix, then runs the EIP-7212
|
|
6206
|
+
* precompile against the guardian's stored `(x, y)`. It enforces:
|
|
6207
|
+
* - `clientDataJSONPrefix == '{"type":"webauthn.get","challenge":"'` (operation-type binding),
|
|
6208
|
+
* - `authenticatorData.length >= 37` and the UP flag (`authenticatorData[32] & 0x01`),
|
|
6209
|
+
* - low-S: `uint256(s) <= n/2`.
|
|
6210
|
+
*
|
|
6211
|
+
* It deliberately does NOT bind `origin` / `rpIdHash` / UV (platform-layer RP binding
|
|
6212
|
+
* + challenge domain-separation cover replay). See spec §9.5.
|
|
6213
|
+
*
|
|
6214
|
+
* @module
|
|
6215
|
+
*/
|
|
6216
|
+
/** Guardian signature scheme version embedded in every challenge (contract: `GUARDIAN_SIG_VERSION`). */
|
|
6217
|
+
declare const GUARDIAN_SIG_VERSION: 4;
|
|
6218
|
+
/** Domain tag mixed into every P-256 guardian challenge (separates from the ECDSA-guardian hash). */
|
|
6219
|
+
declare const P256_GUARDIAN_DOMAIN: "P256_GUARDIAN";
|
|
6220
|
+
/**
|
|
6221
|
+
* The EXACT `clientDataJSON` prefix the contract requires (operation-type binding). Any other
|
|
6222
|
+
* prefix is rejected on-chain, so a `webauthn.create` (registration) assertion cannot be replayed
|
|
6223
|
+
* through the `webauthn.get` (recovery) path. The base64url(challenge) MUST immediately follow this.
|
|
6224
|
+
*/
|
|
6225
|
+
declare const WEBAUTHN_GET_CHALLENGE_PREFIX: "{\"type\":\"webauthn.get\",\"challenge\":\"";
|
|
6226
|
+
/** Sentinel address stored in a guardian slot to mark it P-256 (contract: `P256_GUARDIAN_SENTINEL`). */
|
|
6227
|
+
declare const P256_GUARDIAN_SENTINEL: Address;
|
|
6228
|
+
/** secp256r1 (P-256) curve order `n` (fixed curve parameter). */
|
|
6229
|
+
declare const SECP256R1_N = 115792089210356248762697446949407573529996955224135760342422259061068512044369n;
|
|
6230
|
+
/**
|
|
6231
|
+
* secp256r1 curve order / 2 — the low-S ceiling the contract enforces
|
|
6232
|
+
* (`AirAccountExtension.SECP256R1_N_OVER_2`).
|
|
6233
|
+
*/
|
|
6234
|
+
declare const SECP256R1_N_OVER_2: bigint;
|
|
6235
|
+
/**
|
|
6236
|
+
* base64url-encode bytes with no padding — byte-identical to the contract's `_base64UrlEncode32`
|
|
6237
|
+
* for 32-byte input (43 chars) and to `Buffer.from(x).toString('base64url')`. Pure JS so `@aastar/core`
|
|
6238
|
+
* stays isomorphic (no node `Buffer`).
|
|
6239
|
+
*/
|
|
6240
|
+
declare function base64UrlEncode(bytes: Uint8Array): string;
|
|
6241
|
+
/** The set of operation labels the contract recognises (string-matched in the challenge). */
|
|
6242
|
+
type GuardianOpLabel = 'PROPOSE_RECOVERY' | 'APPROVE_RECOVERY' | 'CANCEL_RECOVERY' | 'REMOVE_GUARDIAN' | 'MODIFY_TIER_LIMITS' | 'ADD_P256_GUARDIAN' | 'ADD_GUARDIAN';
|
|
6243
|
+
/** Parameters for {@link buildP256GuardianChallenge}. */
|
|
6244
|
+
interface BuildP256GuardianChallengeParams {
|
|
6245
|
+
/** Signature scheme version. Defaults to {@link GUARDIAN_SIG_VERSION} (4). */
|
|
6246
|
+
version?: number;
|
|
6247
|
+
/** EVM chain id the account lives on (`block.chainid`). */
|
|
6248
|
+
chainId: number | bigint;
|
|
6249
|
+
/** The smart-account address (`address(this)` in the extension). */
|
|
6250
|
+
account: Address;
|
|
6251
|
+
/** Operation label, e.g. `"PROPOSE_RECOVERY"`. */
|
|
6252
|
+
opLabel: GuardianOpLabel | string;
|
|
6253
|
+
/** Operation payload (`abi.encode(...)` per op — use the `opData*` builders below). */
|
|
6254
|
+
opData: Hex;
|
|
6255
|
+
}
|
|
6256
|
+
/**
|
|
6257
|
+
* Build the 32-byte operation challenge the contract derives in `_p256GuardianChallenge`:
|
|
6258
|
+
* `keccak256(abi.encode(uint8 version, uint256 chainId, address account, string "P256_GUARDIAN",
|
|
6259
|
+
* string opLabel, bytes opData))`. This is the value passed to `navigator.credentials.get()`.
|
|
6260
|
+
*/
|
|
6261
|
+
declare function buildP256GuardianChallenge(params: BuildP256GuardianChallengeParams): Hex;
|
|
6262
|
+
/** `opData` for PROPOSE_RECOVERY / APPROVE_RECOVERY / CANCEL_RECOVERY: `abi.encode(uint256 nonce, address newOwner)`. */
|
|
6263
|
+
declare function opDataRecovery(nonce: bigint, newOwner: Address): Hex;
|
|
6264
|
+
/** `opData` for ADD_P256_GUARDIAN: `abi.encode(uint256 nonce, bytes32 x, bytes32 y)`. */
|
|
6265
|
+
declare function opDataAddP256Guardian(nonce: bigint, x: Hex, y: Hex): Hex;
|
|
6266
|
+
/** `opData` for ADD_GUARDIAN (ECDSA): `abi.encode(uint256 nonce, address guardian)`. */
|
|
6267
|
+
declare function opDataAddGuardian(nonce: bigint, guardian: Address): Hex;
|
|
6268
|
+
/**
|
|
6269
|
+
* `opData` for REMOVE_GUARDIAN (spec §6.4):
|
|
6270
|
+
* `abi.encode(uint256 nonce, uint8 index, address guardianToRemove, bytes32 p256X, bytes32 p256Y)`.
|
|
6271
|
+
* For an ECDSA slot pass the guardian address with `p256X=p256Y=0x0…0`; for a P-256 slot pass
|
|
6272
|
+
* {@link P256_GUARDIAN_SENTINEL} with the slot's stored `(x, y)`.
|
|
6273
|
+
*/
|
|
6274
|
+
declare function opDataRemoveGuardian(nonce: bigint, index: number, guardianToRemove: Address, p256X: Hex, p256Y: Hex): Hex;
|
|
6275
|
+
/** `opData` for MODIFY_TIER_LIMITS: `abi.encode(uint256 nonce, uint256 tier1, uint256 tier2, uint256 deadline)`. */
|
|
6276
|
+
declare function opDataModifyTierLimits(nonce: bigint, tier1: bigint, tier2: bigint, deadline: bigint): Hex;
|
|
6277
|
+
interface OpChainCtx {
|
|
6278
|
+
chainId: number | bigint;
|
|
6279
|
+
account: Address;
|
|
6280
|
+
version?: number;
|
|
6281
|
+
}
|
|
6282
|
+
/** Challenge for `proposeRecoveryWithSig(newOwner, gIdx, sig)`. `nonce` = `getRecoveryNonce()`. */
|
|
6283
|
+
declare function buildProposeRecoveryChallenge(p: OpChainCtx & {
|
|
6284
|
+
nonce: bigint;
|
|
6285
|
+
newOwner: Address;
|
|
6286
|
+
}): Hex;
|
|
6287
|
+
/** Challenge for `approveRecoveryWithSig(gIdx, sig)`. `newOwner` = `activeRecovery().newOwner`. */
|
|
6288
|
+
declare function buildApproveRecoveryChallenge(p: OpChainCtx & {
|
|
6289
|
+
nonce: bigint;
|
|
6290
|
+
newOwner: Address;
|
|
6291
|
+
}): Hex;
|
|
6292
|
+
/** Challenge for `cancelRecoveryWithSig(gIdx, sig)`. `newOwner` = `activeRecovery().newOwner`. */
|
|
6293
|
+
declare function buildCancelRecoveryChallenge(p: OpChainCtx & {
|
|
6294
|
+
nonce: bigint;
|
|
6295
|
+
newOwner: Address;
|
|
6296
|
+
}): Hex;
|
|
6297
|
+
/** Challenge for `addP256GuardianWithMixedSigs(x, y, …)`. `nonce` = `_guardianAdditionNonce`. */
|
|
6298
|
+
declare function buildAddP256GuardianChallenge(p: OpChainCtx & {
|
|
6299
|
+
nonce: bigint;
|
|
6300
|
+
x: Hex;
|
|
6301
|
+
y: Hex;
|
|
6302
|
+
}): Hex;
|
|
6303
|
+
/** Challenge for `addGuardianWithMixedSigs(guardian, …)`. `nonce` = `_guardianAdditionNonce`. */
|
|
6304
|
+
declare function buildAddGuardianChallenge(p: OpChainCtx & {
|
|
6305
|
+
nonce: bigint;
|
|
6306
|
+
guardian: Address;
|
|
6307
|
+
}): Hex;
|
|
6308
|
+
/** Challenge for `removeGuardianWithMixedSigs(index, …)`. `nonce` = `_guardianRemovalNonce`. */
|
|
6309
|
+
declare function buildRemoveGuardianChallenge(p: OpChainCtx & {
|
|
6310
|
+
nonce: bigint;
|
|
6311
|
+
index: number;
|
|
6312
|
+
guardianToRemove: Address;
|
|
6313
|
+
p256X: Hex;
|
|
6314
|
+
p256Y: Hex;
|
|
6315
|
+
}): Hex;
|
|
6316
|
+
/** Challenge for `modifyTierLimitsWithMixedGuardians(tier1, tier2, deadline, …)`. `nonce` = `_tierLimitNonce`. */
|
|
6317
|
+
declare function buildModifyTierLimitsChallenge(p: OpChainCtx & {
|
|
6318
|
+
nonce: bigint;
|
|
6319
|
+
tier1: bigint;
|
|
6320
|
+
tier2: bigint;
|
|
6321
|
+
deadline: bigint;
|
|
6322
|
+
}): Hex;
|
|
6323
|
+
/** A signature scalar accepted as a 0x-hex (≤32 bytes), raw bytes, or bigint. */
|
|
6324
|
+
type ScalarLike = Hex | Uint8Array | bigint;
|
|
6325
|
+
/** Parameters for {@link encodeWebAuthnAssertion}. */
|
|
6326
|
+
interface EncodeWebAuthnAssertionParams {
|
|
6327
|
+
/** `authenticatorData` from the assertion: `rpIdHash(32) || flags(1) || signCount(4)` (≥37 bytes, UP set). */
|
|
6328
|
+
authenticatorData: Hex | Uint8Array;
|
|
6329
|
+
/**
|
|
6330
|
+
* The FULL `clientDataJSON` the authenticator signed. MUST start with
|
|
6331
|
+
* {@link WEBAUTHN_GET_CHALLENGE_PREFIX}, immediately followed by the 43-char base64url(challenge).
|
|
6332
|
+
* Split into prefix/suffix here; the contract rebuilds the challenge on-chain.
|
|
6333
|
+
*/
|
|
6334
|
+
clientDataJSON: Hex | Uint8Array | string;
|
|
6335
|
+
/** ES256 signature `r` (32-byte scalar). */
|
|
6336
|
+
r: ScalarLike;
|
|
6337
|
+
/** ES256 signature `s` (32-byte scalar). Auto low-S normalised to satisfy the contract. */
|
|
6338
|
+
s: ScalarLike;
|
|
6339
|
+
}
|
|
6340
|
+
/**
|
|
6341
|
+
* ABI-encode a WebAuthn assertion into the on-chain `sig` the contract consumes:
|
|
6342
|
+
* `abi.encode(bytes authenticatorData, bytes clientDataJSONPrefix, bytes clientDataJSONSuffix,
|
|
6343
|
+
* bytes32 r, bytes32 s)`.
|
|
6344
|
+
*
|
|
6345
|
+
* Validates the assertion against every constraint the contract enforces so a bad blob fails here
|
|
6346
|
+
* (with a clear message) rather than as a generic on-chain revert:
|
|
6347
|
+
* - `authenticatorData.length >= 37` and the UP flag (`byte[32] & 0x01`) is set,
|
|
6348
|
+
* - `clientDataJSON` starts with the exact `webauthn.get` prefix and the 43-char challenge slot
|
|
6349
|
+
* is immediately followed by the closing `"` (so the contract's reconstruction lines up),
|
|
6350
|
+
* - `s` is low-S (`<= n/2`) — auto-normalised to `n - s` if the input was high-S (ECDSA-valid).
|
|
6351
|
+
*/
|
|
6352
|
+
declare function encodeWebAuthnAssertion(params: EncodeWebAuthnAssertionParams): Hex;
|
|
6353
|
+
/** Decoded view of an on-chain P-256 guardian `sig` blob. */
|
|
6354
|
+
interface DecodedWebAuthnAssertion {
|
|
6355
|
+
authenticatorData: Hex;
|
|
6356
|
+
clientDataJSONPrefix: Hex;
|
|
6357
|
+
clientDataJSONSuffix: Hex;
|
|
6358
|
+
r: Hex;
|
|
6359
|
+
s: Hex;
|
|
6360
|
+
}
|
|
6361
|
+
/**
|
|
6362
|
+
* Inverse of {@link encodeWebAuthnAssertion} — decode an on-chain `sig` blob back into its parts.
|
|
6363
|
+
* Useful for evidence/decode-verification and debugging a rejected signature.
|
|
6364
|
+
*/
|
|
6365
|
+
declare function decodeWebAuthnAssertion(sig: Hex): DecodedWebAuthnAssertion;
|
|
6366
|
+
declare function coseToP256XY(cosePublicKey: Hex | Uint8Array): {
|
|
6367
|
+
x: Hex;
|
|
6368
|
+
y: Hex;
|
|
6369
|
+
};
|
|
6370
|
+
/** Parameters for {@link signP256GuardianAssertion}. */
|
|
6371
|
+
interface SignP256GuardianAssertionParams {
|
|
6372
|
+
/** Raw 32-byte P-256 private scalar (hex or bytes). */
|
|
6373
|
+
privateKey: Hex | Uint8Array;
|
|
6374
|
+
/** The 32-byte operation challenge (from a `build*Challenge` helper). */
|
|
6375
|
+
challenge: Hex;
|
|
6376
|
+
/**
|
|
6377
|
+
* RP id whose SHA-256 becomes `rpIdHash`. The contract does NOT verify this (§9.5), so any value
|
|
6378
|
+
* works on-chain; defaults to a stable test RP. Set it to your real rpId for fidelity.
|
|
6379
|
+
*/
|
|
6380
|
+
rpId?: string;
|
|
6381
|
+
/** `origin` embedded in `clientDataJSON` suffix (also not verified on-chain). */
|
|
6382
|
+
origin?: string;
|
|
6383
|
+
/** authenticatorData flags byte. Defaults to `0x05` (UP | UV); the contract only requires UP (bit 0). */
|
|
6384
|
+
flags?: number;
|
|
6385
|
+
/** authenticatorData signCount (4-byte big-endian). */
|
|
6386
|
+
signCount?: number;
|
|
6387
|
+
}
|
|
6388
|
+
/** Result of {@link signP256GuardianAssertion}. */
|
|
6389
|
+
interface SignedP256GuardianAssertion {
|
|
6390
|
+
/** The on-chain `sig` blob, ready for `proposeRecoveryWithSig` / mixed-sig calls. */
|
|
6391
|
+
sig: Hex;
|
|
6392
|
+
/** authenticatorData used (hex). */
|
|
6393
|
+
authenticatorData: Hex;
|
|
6394
|
+
/** Full clientDataJSON signed (hex). */
|
|
6395
|
+
clientDataJSON: Hex;
|
|
6396
|
+
/** Low-S–normalised signature `r` (bytes32 hex). */
|
|
6397
|
+
r: Hex;
|
|
6398
|
+
/** Low-S–normalised signature `s` (bytes32 hex). */
|
|
6399
|
+
s: Hex;
|
|
6400
|
+
}
|
|
6401
|
+
/**
|
|
6402
|
+
* Software P-256 authenticator — produces a FULL WebAuthn assertion over `challenge`, byte-for-byte
|
|
6403
|
+
* in the format `navigator.credentials.get()` returns (mirrors the contract's
|
|
6404
|
+
* `test/webauthn/gen_p256_assertion.mjs`). The only difference vs a hardware passkey is WHERE the
|
|
6405
|
+
* key lives. Use for the on-chain evidence E2E and for relaying software-held guardian keys.
|
|
6406
|
+
*/
|
|
6407
|
+
declare function signP256GuardianAssertion(params: SignP256GuardianAssertionParams): SignedP256GuardianAssertion;
|
|
6408
|
+
/** Derive the uncompressed-SEC1 `(x, y)` of a P-256 private key (for `addP256Guardian`). */
|
|
6409
|
+
declare function p256GuardianPublicKey(privateKey: Hex | Uint8Array): {
|
|
6410
|
+
x: Hex;
|
|
6411
|
+
y: Hex;
|
|
6412
|
+
};
|
|
6413
|
+
|
|
6592
6414
|
/**
|
|
6593
6415
|
* Role constants and utilities for AAstar SDK
|
|
6594
6416
|
* @dev All role hashes and configurations match exactly with Registry.sol v3.0.0
|
|
@@ -7045,4 +6867,4 @@ declare function resolveEnsVerified(name: string, options?: EnsOptions): Promise
|
|
|
7045
6867
|
verified: boolean;
|
|
7046
6868
|
}>;
|
|
7047
6869
|
|
|
7048
|
-
export { AASTAR_COMMUNITY, AAStarAirAccountFactoryV7ABI, AAStarAirAccountFactoryV7Artifact, AAStarAirAccountV7ABI, AAStarAirAccountV7Artifact, AAStarBLSAggregatorABI, AAStarBLSAggregatorArtifact, AAStarBLSAlgorithmABI, AAStarBLSAlgorithmArtifact, AAStarValidatorABI, AAStarValidatorArtifact, AGENT_IDENTITY_REGISTRY_ADDRESS, AGENT_REPUTATION_REGISTRY_ADDRESS, ALL_ADDRESSES, ALL_ROLES, APNTS_ADDRESS, type AccountActions, type AccountBalance, type AccountFactoryActions, type AgentActions, AgentRegistryABI, type AgentRegistryActions, AgentRegistryArtifact, type AgentSponsorshipPolicy, type AggregatorActions,
|
|
6870
|
+
export { AASTAR_COMMUNITY, AAStarAirAccountFactoryV7ABI, AAStarAirAccountFactoryV7Artifact, AAStarAirAccountV7ABI, AAStarAirAccountV7Artifact, AAStarBLSAggregatorABI, AAStarBLSAggregatorArtifact, AAStarBLSAlgorithmABI, AAStarBLSAlgorithmArtifact, AAStarValidatorABI, AAStarValidatorArtifact, AGENT_IDENTITY_REGISTRY_ADDRESS, AGENT_REPUTATION_REGISTRY_ADDRESS, ALL_ADDRESSES, ALL_ROLES, APNTS_ADDRESS, type AccountActions, type AccountBalance, type AccountFactoryActions, type AgentActions, AgentRegistryABI, type AgentRegistryActions, AgentRegistryArtifact, type AgentSponsorshipPolicy, type AggregatorActions, AirAccountDelegateABI, AirAccountDelegateArtifact, AirAccountExtensionABI, type AirAccountExtensionActions, AirAccountExtensionArtifact, type AirAccountFactoryActions, type AssetPolicy, type AssetPolicyInput, AuthorizationState, BLSAggregatorABI, BLSAggregatorArtifact, type BLSAlgorithmActions, type BLSG1Point, BLSHelpers, BLSSigner, BLSValidatorABI, BLSValidatorArtifact, BLS_AGGREGATOR_ADDRESS, BLS_POP_DST, BLS_VALIDATOR_ADDRESS, BPS_DENOMINATOR, BRANDING, BREAD_COMMUNITY, type BalanceValidationParams, type BatchMintResult, type BuildP256GuardianChallengeParams, BundlerClient, type BundlerResponse, CANONICAL_ADDRESSES, CHAIN_MAINNET, CHAIN_SEPOLIA, COMMUNITIES, COMMUNITY_OWNERS, CONTRACTS, CONTRACT_METADATA, CONTRACT_SRC_HASH, CORE_ADDRESSES, CalldataParserRegistryABI, CalldataParserRegistryArtifact, type CanonicalAddresses, type CheckResourcesOptions, type CommunityConfig, type CommunityProfile, type ContractCategory, ContractConfigManager, type ContractNetwork, type ContractScope, type ContractScopeInput, type ContractVersion, DEFAULT_ADMIN_ROLE, DEFAULT_APNTS_PRICE_USD, DEFAULT_CALL_GAS_LIMIT, DEFAULT_GAS_TOKEN_MINT_AMOUNT, DEFAULT_PRE_VERIFICATION_GAS, DEFAULT_TIMEOUT_MS, DEFAULT_TOKEN_NAME, DEFAULT_TOKEN_SYMBOL, DEFAULT_USDT_MINT_AMOUNT, DEFAULT_VERIFICATION_GAS_LIMIT, type DVTAccountSignatureParams, type DVTActions, type DVTTier, DVTValidatorABI, DVTValidatorArtifact, DVT_TIER_T2, DVT_TIER_T3, DVT_VALIDATOR_ADDRESS, type DecodedWebAuthnAssertion, type DeploymentValidationParams, ENTRY_POINT_ADDRESS, type ERC20Actions, type EncodeWebAuthnAssertionParams, type EnsOptions, EntryPointABI, type EntryPointActions, EntryPointArtifact, EntryPointVersion, FAUCET_API_URL, type FaucetConfig, type FaucetPreparationResult, type ForceExitActions, ForceExitModuleABI, ForceExitModuleArtifact, GTOKEN_ADDRESS, GTOKEN_STAKING_ADDRESS, GTokenABI, type GTokenActions, GTokenArtifact, GTokenAuthorizationABI, type GTokenAuthorizationActions, GTokenAuthorizationArtifact, GTokenStakingABI, GTokenStakingArtifact, GUARDIAN_ADDITION_NONCE_SLOT, GUARDIAN_REMOVAL_NONCE_SLOT, GUARDIAN_SIG_VERSION, type GuardianOpLabel, type HashToFieldU0U1, type HeliosTransportConfig, INITIAL_ROLE_STAKES, InitConfig, LINKS, MAX_GUARDIAN_SLOT, MAX_SERVICE_FEE, MICRO_PAYMENT_CHANNEL_ADDRESS, MONITORING_ADDRESSES, MicroPaymentChannelABI, MicroPaymentChannelArtifact, MySBTABI, MySBTArtifact, NETWORKS, NODE_STAKE_AMOUNTS, type NetworkContracts, NodeType, OFFICIAL_ADDRESSES, type OperatorMode, type P256SessionState, P256_GUARDIAN_DOMAIN, P256_GUARDIAN_SENTINEL, PAYMASTER_ADDRESSES, PAYMASTER_FACTORY_ADDRESS, PAYMASTER_V4_ADDRESS, PAYMASTER_V4_IMPL_ADDRESS, PaymasterABI, type PaymasterActions, PaymasterArtifact, PaymasterFactoryABI, type PaymasterFactoryActions, PaymasterFactoryArtifact, type PendingExit, PolicyDecision, PolicyRegistryABI, type PolicyRegistryActions, PolicyRegistryArtifact, PublicClient, RECOVERY_NONCE_SLOT, REGISTRY_ADDRESS, REPUTATION_SYSTEM_ADDRESS, ROLE_ANODE, ROLE_COMMUNITY, ROLE_DVT, ROLE_ENDUSER, ROLE_KMS, ROLE_NAMES, ROLE_PAYMASTER_AOA, ROLE_PAYMASTER_SUPER, ROLE_PERMISSION_LEVELS, RegistryABI, type RegistryActions, RegistryArtifact, type ReputationActions, type ReputationBreakdown, type ReputationRule, ReputationSystemABI, ReputationSystemArtifact, RequirementChecker, type ResourceBoolCheck, type ResourceReport, type ResourceStakeCheck, type RoleConfig, type RoleConfigDetailed, RolePermissionLevel, type RoleRequirement, type RoleValidationParams, type SBTActions, type SBTData, type SBTMembership, SBT_ADDRESS, SECP256R1_N, SECP256R1_N_OVER_2, SEPOLIA_CONTRACTS, SEPOLIA_V2_VERSIONS, SERVICE_FEE_RATE, SUPER_PAYMASTER_ADDRESS, type ScalarLike, SepoliaFaucetAPI, type SessionConfig, SessionKeyValidatorABI, type SessionKeyValidatorActions, SessionKeyValidatorArtifact, type SignP256GuardianAssertionParams, type SignedP256GuardianAssertion, SimpleAccountABI, SimpleAccountArtifact, SimpleAccountFactoryABI, SimpleAccountFactoryArtifact, type SpendCounter, type StakingActions, StateValidator, SuperPaymasterABI, SuperPaymasterArtifact, type SuperPaymasterConfig, type SupportedChainId, type SupportedNetwork, TEST_ACCOUNT_ADDRESSES, TEST_ACCOUNT_POOL_SIZE, TEST_COMMUNITIES, TEST_TOKEN_ADDRESSES, TIER_LIMIT_NONCE_SLOT, TOKEN_ADDRESSES, type TokenActions, type TokenBalanceValidationParams, type UserOperationV07, V2_SUMMARY, type ValidationParams, type ValidationResult, WEBAUTHN_GET_CHALLENGE_PREFIX, type X402Actions, X402FacilitatorABI, X402FacilitatorArtifact, XPNTS_FACTORY_ADDRESS, type XPNTsFactoryActions, type XPNTsTokenActions, accountActions, accountFactoryActions, agentActions, agentRegistryActions, aggregatorActions, airAccountExtensionActions, airAccountFactoryActions, applyConfig, base64UrlEncode, blsAlgorithmActions, buildAddGuardianChallenge, buildAddP256GuardianChallenge, buildApproveRecoveryChallenge, buildCancelRecoveryChallenge, buildModifyTierLimitsChallenge, buildP256GuardianChallenge, buildProposeRecoveryChallenge, buildRemoveGuardianChallenge, coseToP256XY, createAAStarPublicClient, createHeliosTransport, decodeWebAuthnAssertion, describeSupportedChains, dvtActions, encodeDVTAccountSignature, encodeDVTVerifierProof, encodeG2Point, encodeWebAuthnAssertion, entryPointActions, forceExitActions, gTokenActions, gTokenAuthorizationActions, getAddressUrl, getAllCommunityConfigs, getAllV2Contracts, getBlockExplorer, getCanonicalAddresses, getChainId, getCommunities, getCommunity, getCommunityConfig, getContract, getContractNetworks, getContracts, getCoreContracts, getDeploymentDate, getEntryPoint, getNetwork, getPaymasterV4_1, getRoleName, getRpcUrl, getSimpleAccountFactory, getSuperPaymasterV2, getTestAccounts, getTestTokenContracts, getTokenContracts, getTxUrl, getV2ContractByAddress, getV2ContractByName, getV2ContractsByDate, hashToFieldU0U1, isContractNetworkSupported, isRegisteredCommunity, isSupportedChainId, isV2Contract, listSupportedChainIds, lookupAddress, opDataAddGuardian, opDataAddP256Guardian, opDataModifyTierLimits, opDataRecovery, opDataRemoveGuardian, p256GuardianPublicKey, paymasterActions, paymasterFactoryActions, policyRegistryActions, registryActions, reputationActions, resolveEns, resolveEnsVerified, sbtActions, sessionKeyValidatorActions, signP256GuardianAssertion, stakingActions, tokenActions, x402Actions, x402IsNonceUsed, x402NonceKey, xPNTsFactoryABI, xPNTsFactoryActions, xPNTsFactoryArtifact, xPNTsTokenABI, xPNTsTokenActions, xPNTsTokenArtifact };
|