@aastar/paymaster 0.16.7
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/LICENSE +21 -0
- package/dist/core/src/abis/BLSAggregator.json +686 -0
- package/dist/core/src/abis/BLSValidator.json +42 -0
- package/dist/core/src/abis/DVTValidator.json +368 -0
- package/dist/core/src/abis/EntryPoint.json +1382 -0
- package/dist/core/src/abis/GToken.json +513 -0
- package/dist/core/src/abis/GTokenStaking.json +949 -0
- package/dist/core/src/abis/MySBT.json +1518 -0
- package/dist/core/src/abis/Paymaster.json +1143 -0
- package/dist/core/src/abis/PaymasterFactory.json +640 -0
- package/dist/core/src/abis/Registry.json +1942 -0
- package/dist/core/src/abis/ReputationSystem.json +699 -0
- package/dist/core/src/abis/SimpleAccount.json +560 -0
- package/dist/core/src/abis/SimpleAccountFactory.json +111 -0
- package/dist/core/src/abis/SuperPaymaster.json +1781 -0
- package/dist/core/src/abis/index.d.ts +1126 -0
- package/dist/core/src/abis/index.js +91 -0
- package/dist/core/src/abis/xPNTsFactory.json +718 -0
- package/dist/core/src/abis/xPNTsToken.json +1280 -0
- package/dist/core/src/actions/StateValidator.d.ts +68 -0
- package/dist/core/src/actions/StateValidator.js +187 -0
- package/dist/core/src/actions/account.d.ts +55 -0
- package/dist/core/src/actions/account.js +133 -0
- package/dist/core/src/actions/aggregator.d.ts +17 -0
- package/dist/core/src/actions/aggregator.js +31 -0
- package/dist/core/src/actions/dvt.d.ts +30 -0
- package/dist/core/src/actions/dvt.js +41 -0
- package/dist/core/src/actions/entryPoint.d.ts +90 -0
- package/dist/core/src/actions/entryPoint.js +211 -0
- package/dist/core/src/actions/factory.d.ts +215 -0
- package/dist/core/src/actions/factory.js +442 -0
- package/dist/core/src/actions/faucet.d.ts +48 -0
- package/dist/core/src/actions/faucet.js +337 -0
- package/dist/core/src/actions/gtokenExtended.d.ts +39 -0
- package/dist/core/src/actions/gtokenExtended.js +115 -0
- package/dist/core/src/actions/index.d.ts +15 -0
- package/dist/core/src/actions/index.js +17 -0
- package/dist/core/src/actions/paymasterV4.d.ts +170 -0
- package/dist/core/src/actions/paymasterV4.js +334 -0
- package/dist/core/src/actions/registry.d.ts +246 -0
- package/dist/core/src/actions/registry.js +667 -0
- package/dist/core/src/actions/reputation.d.ts +129 -0
- package/dist/core/src/actions/reputation.js +281 -0
- package/dist/core/src/actions/sbt.d.ts +191 -0
- package/dist/core/src/actions/sbt.js +533 -0
- package/dist/core/src/actions/staking.d.ts +132 -0
- package/dist/core/src/actions/staking.js +330 -0
- package/dist/core/src/actions/superPaymaster.d.ts +237 -0
- package/dist/core/src/actions/superPaymaster.js +644 -0
- package/dist/core/src/actions/tokens.d.ts +229 -0
- package/dist/core/src/actions/tokens.js +415 -0
- package/dist/core/src/branding.d.ts +30 -0
- package/dist/core/src/branding.js +30 -0
- package/dist/core/src/clients/BaseClient.d.ts +25 -0
- package/dist/core/src/clients/BaseClient.js +66 -0
- package/dist/core/src/clients/types.d.ts +60 -0
- package/dist/core/src/clients/types.js +1 -0
- package/dist/core/src/clients.d.ts +5 -0
- package/dist/core/src/clients.js +11 -0
- package/dist/core/src/communities.d.ts +52 -0
- package/dist/core/src/communities.js +73 -0
- package/dist/core/src/config/ContractConfigManager.d.ts +20 -0
- package/dist/core/src/config/ContractConfigManager.js +48 -0
- package/dist/core/src/constants.d.ts +88 -0
- package/dist/core/src/constants.js +125 -0
- package/dist/core/src/contract-addresses.d.ts +110 -0
- package/dist/core/src/contract-addresses.js +99 -0
- package/dist/core/src/contracts.d.ts +424 -0
- package/dist/core/src/contracts.js +343 -0
- package/dist/core/src/crypto/blsSigner.d.ts +64 -0
- package/dist/core/src/crypto/blsSigner.js +98 -0
- package/dist/core/src/crypto/index.d.ts +1 -0
- package/dist/core/src/crypto/index.js +1 -0
- package/dist/core/src/index.d.ts +21 -0
- package/dist/core/src/index.js +21 -0
- package/dist/core/src/networks.d.ts +127 -0
- package/dist/core/src/networks.js +118 -0
- package/dist/core/src/requirementChecker.d.ts +38 -0
- package/dist/core/src/requirementChecker.js +139 -0
- package/dist/core/src/roles.d.ts +204 -0
- package/dist/core/src/roles.js +211 -0
- package/dist/core/src/utils/validation.d.ts +24 -0
- package/dist/core/src/utils/validation.js +56 -0
- package/dist/paymaster/src/SuperPaymaster/index.d.ts +44 -0
- package/dist/paymaster/src/SuperPaymaster/index.js +133 -0
- package/dist/paymaster/src/V4/PaymasterClient.d.ts +79 -0
- package/dist/paymaster/src/V4/PaymasterClient.js +315 -0
- package/dist/paymaster/src/V4/PaymasterClient.test.d.ts +1 -0
- package/dist/paymaster/src/V4/PaymasterClient.test.js +80 -0
- package/dist/paymaster/src/V4/PaymasterOperator.d.ts +41 -0
- package/dist/paymaster/src/V4/PaymasterOperator.js +241 -0
- package/dist/paymaster/src/V4/PaymasterOperator.test.d.ts +1 -0
- package/dist/paymaster/src/V4/PaymasterOperator.test.js +66 -0
- package/dist/paymaster/src/V4/PaymasterUtils.d.ts +55 -0
- package/dist/paymaster/src/V4/PaymasterUtils.js +124 -0
- package/dist/paymaster/src/V4/PaymasterUtils.test.d.ts +1 -0
- package/dist/paymaster/src/V4/PaymasterUtils.test.js +43 -0
- package/dist/paymaster/src/V4/SuperPaymasterClient.d.ts +21 -0
- package/dist/paymaster/src/V4/SuperPaymasterClient.js +73 -0
- package/dist/paymaster/src/V4/SuperPaymasterClient.test.d.ts +1 -0
- package/dist/paymaster/src/V4/SuperPaymasterClient.test.js +53 -0
- package/dist/paymaster/src/V4/index.d.ts +4 -0
- package/dist/paymaster/src/V4/index.js +4 -0
- package/dist/paymaster/src/index.d.ts +2 -0
- package/dist/paymaster/src/index.js +4 -0
- package/package.json +26 -0
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Contract Addresses - Single Source of Truth
|
|
3
|
+
* All contract addresses for Sepolia testnet
|
|
4
|
+
*
|
|
5
|
+
* This file serves as the single source of truth for all contract addresses.
|
|
6
|
+
* All other files reference these constants to avoid duplication.
|
|
7
|
+
*/
|
|
8
|
+
import { REGISTRY_ADDRESS, GTOKEN_ADDRESS, GTOKEN_STAKING_ADDRESS, SUPER_PAYMASTER_ADDRESS, PAYMASTER_FACTORY_ADDRESS, PAYMASTER_V4_IMPL_ADDRESS, APNTS_ADDRESS, SBT_ADDRESS, DVT_VALIDATOR_ADDRESS, ENTRY_POINT_ADDRESS, XPNTS_FACTORY_ADDRESS, BLS_AGGREGATOR_ADDRESS, REPUTATION_SYSTEM_ADDRESS } from './constants.js';
|
|
9
|
+
/**
|
|
10
|
+
* Core System Addresses
|
|
11
|
+
*/
|
|
12
|
+
export const CORE_ADDRESSES = {
|
|
13
|
+
registry: REGISTRY_ADDRESS,
|
|
14
|
+
gToken: GTOKEN_ADDRESS,
|
|
15
|
+
gTokenStaking: GTOKEN_STAKING_ADDRESS,
|
|
16
|
+
superPaymaster: SUPER_PAYMASTER_ADDRESS,
|
|
17
|
+
paymasterFactory: PAYMASTER_FACTORY_ADDRESS,
|
|
18
|
+
aPNTs: APNTS_ADDRESS,
|
|
19
|
+
mySBT: SBT_ADDRESS,
|
|
20
|
+
// Fallback to Env if not in config (or use Implementation)
|
|
21
|
+
paymasterV4: (process.env.PAYMASTER_V4_PROXY || PAYMASTER_V4_IMPL_ADDRESS),
|
|
22
|
+
dvtValidator: DVT_VALIDATOR_ADDRESS,
|
|
23
|
+
entryPoint: ENTRY_POINT_ADDRESS,
|
|
24
|
+
xPNTsFactory: XPNTS_FACTORY_ADDRESS,
|
|
25
|
+
reputationSystem: (process.env.REPUTATION_SYSTEM_ADDRESS || REPUTATION_SYSTEM_ADDRESS),
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Token System Addresses
|
|
29
|
+
*/
|
|
30
|
+
export const TOKEN_ADDRESSES = {
|
|
31
|
+
xPNTsFactory: XPNTS_FACTORY_ADDRESS,
|
|
32
|
+
aPNTs: APNTS_ADDRESS,
|
|
33
|
+
gToken: GTOKEN_ADDRESS,
|
|
34
|
+
pimToken: (process.env.PIM_TOKEN_ADDRESS || '0x0000000000000000000000000000000000000000'), // Often custom per deployment
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Test Token Addresses (For Development & Testing)
|
|
38
|
+
*/
|
|
39
|
+
export const TEST_TOKEN_ADDRESSES = {
|
|
40
|
+
mockUSDT: process.env.TEST_MOCK_USDT,
|
|
41
|
+
apnts: APNTS_ADDRESS,
|
|
42
|
+
gToken: GTOKEN_ADDRESS,
|
|
43
|
+
bpnts: GTOKEN_ADDRESS, // bPNTs is often GToken in simple setups
|
|
44
|
+
pimToken: TOKEN_ADDRESSES.pimToken,
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Test Account Addresses (For Development & Testing)
|
|
48
|
+
*/
|
|
49
|
+
export const TEST_ACCOUNT_ADDRESSES = {
|
|
50
|
+
// Official EntryPoint 0.6 Factory for Sepolia
|
|
51
|
+
simpleAccountFactory: (process.env.SIMPLE_ACCOUNT_FACTORY || '0x9406Cc6185a346906296840746125a0E44976454'),
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Paymaster Addresses
|
|
55
|
+
*/
|
|
56
|
+
export const PAYMASTER_ADDRESSES = {
|
|
57
|
+
paymasterV4_1: process.env.PAYMASTER_V4_ADDRESS,
|
|
58
|
+
paymasterV4_1iImplementation: PAYMASTER_V4_IMPL_ADDRESS,
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* Monitoring System Addresses
|
|
62
|
+
*/
|
|
63
|
+
export const MONITORING_ADDRESSES = {
|
|
64
|
+
dvtValidator: DVT_VALIDATOR_ADDRESS,
|
|
65
|
+
blsAggregator: BLS_AGGREGATOR_ADDRESS,
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Official Contract Addresses
|
|
69
|
+
*/
|
|
70
|
+
export const OFFICIAL_ADDRESSES = {
|
|
71
|
+
entryPoint: (ENTRY_POINT_ADDRESS || '0x0000000071727De22E5E9d8BAf0edAc6f37da032'),
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* Community Owner Addresses
|
|
75
|
+
*/
|
|
76
|
+
export const COMMUNITY_OWNERS = {
|
|
77
|
+
aastarOwner: '0x411BD567E46C0781248dbB6a9211891C032885e5', // Deployer 1
|
|
78
|
+
breadCommunityOwner: '0xe24b6f321B0140716a2b671ed0D983bb64E7DaFA', // OWNER2
|
|
79
|
+
};
|
|
80
|
+
/**
|
|
81
|
+
* Test Community Addresses (Registered in Registry v2.2.0 on 2025-11-08)
|
|
82
|
+
*/
|
|
83
|
+
export const TEST_COMMUNITIES = {
|
|
84
|
+
aastar: process.env.TEST_COMMUNITY_AASTAR,
|
|
85
|
+
bread: process.env.TEST_COMMUNITY_BREAD,
|
|
86
|
+
mycelium: process.env.TEST_COMMUNITY_MYCELIUM,
|
|
87
|
+
};
|
|
88
|
+
/**
|
|
89
|
+
* All Addresses Combined (for reference)
|
|
90
|
+
*/
|
|
91
|
+
export const ALL_ADDRESSES = {
|
|
92
|
+
...CORE_ADDRESSES,
|
|
93
|
+
...TOKEN_ADDRESSES,
|
|
94
|
+
...TEST_TOKEN_ADDRESSES,
|
|
95
|
+
...TEST_ACCOUNT_ADDRESSES,
|
|
96
|
+
...PAYMASTER_ADDRESSES,
|
|
97
|
+
...MONITORING_ADDRESSES,
|
|
98
|
+
...OFFICIAL_ADDRESSES,
|
|
99
|
+
};
|
|
@@ -0,0 +1,424 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AAstar Smart Contract Addresses
|
|
3
|
+
*
|
|
4
|
+
* IMPORTANT: Contract addresses are defined in contract-addresses.ts
|
|
5
|
+
* This file imports and uses those addresses to maintain a single source of truth.
|
|
6
|
+
*
|
|
7
|
+
* For detailed version information (VERSION, VERSION_CODE, features),
|
|
8
|
+
* see contract-versions.ts
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Contract category types
|
|
12
|
+
*/
|
|
13
|
+
export type ContractCategory = 'core' | 'tokens' | 'testTokens' | 'testAccounts' | 'paymaster' | 'monitoring' | 'official' | 'communities';
|
|
14
|
+
/**
|
|
15
|
+
* Sepolia Testnet Contracts
|
|
16
|
+
*/
|
|
17
|
+
export declare const SEPOLIA_CONTRACTS: {
|
|
18
|
+
readonly core: {
|
|
19
|
+
readonly registry: `0x${string}`;
|
|
20
|
+
readonly gToken: `0x${string}`;
|
|
21
|
+
readonly gTokenStaking: `0x${string}`;
|
|
22
|
+
readonly superPaymaster: `0x${string}`;
|
|
23
|
+
readonly paymasterFactory: `0x${string}`;
|
|
24
|
+
readonly aPNTs: `0x${string}`;
|
|
25
|
+
readonly mySBT: `0x${string}`;
|
|
26
|
+
readonly paymasterV4: import("viem").Address;
|
|
27
|
+
readonly dvtValidator: `0x${string}`;
|
|
28
|
+
readonly entryPoint: `0x${string}`;
|
|
29
|
+
readonly xPNTsFactory: `0x${string}`;
|
|
30
|
+
readonly reputationSystem: import("viem").Address;
|
|
31
|
+
};
|
|
32
|
+
readonly tokens: {
|
|
33
|
+
readonly xPNTsFactory: `0x${string}`;
|
|
34
|
+
readonly aPNTs: `0x${string}`;
|
|
35
|
+
readonly gToken: `0x${string}`;
|
|
36
|
+
readonly pimToken: import("viem").Address;
|
|
37
|
+
};
|
|
38
|
+
readonly testTokens: {
|
|
39
|
+
readonly mockUSDT: import("viem").Address;
|
|
40
|
+
readonly apnts: `0x${string}`;
|
|
41
|
+
readonly gToken: `0x${string}`;
|
|
42
|
+
readonly bpnts: `0x${string}`;
|
|
43
|
+
readonly pimToken: `0x${string}`;
|
|
44
|
+
};
|
|
45
|
+
readonly testAccounts: {
|
|
46
|
+
readonly simpleAccountFactory: import("viem").Address;
|
|
47
|
+
};
|
|
48
|
+
readonly paymaster: {
|
|
49
|
+
readonly paymasterV4_1: import("viem").Address;
|
|
50
|
+
readonly paymasterV4_1iImplementation: `0x${string}`;
|
|
51
|
+
};
|
|
52
|
+
readonly monitoring: {
|
|
53
|
+
readonly dvtValidator: `0x${string}`;
|
|
54
|
+
readonly blsAggregator: `0x${string}`;
|
|
55
|
+
};
|
|
56
|
+
readonly official: {
|
|
57
|
+
readonly entryPoint: import("viem").Address;
|
|
58
|
+
};
|
|
59
|
+
readonly communities: {
|
|
60
|
+
/** AAStar Community - Test community for development (registered: 2025-11-01) */
|
|
61
|
+
readonly aastar: {
|
|
62
|
+
readonly owner: "0x411BD567E46C0781248dbB6a9211891C032885e5";
|
|
63
|
+
readonly gasToken: `0x${string}`;
|
|
64
|
+
readonly ensName: "aastar.eth";
|
|
65
|
+
readonly name: "AAStar";
|
|
66
|
+
readonly stake: "50";
|
|
67
|
+
};
|
|
68
|
+
/** BreadCommunity - Test community for development (registered: 2025-11-03) */
|
|
69
|
+
readonly breadCommunity: {
|
|
70
|
+
readonly owner: "0xe24b6f321B0140716a2b671ed0D983bb64E7DaFA";
|
|
71
|
+
readonly gasToken: `0x${string}`;
|
|
72
|
+
readonly ensName: "bread.eth";
|
|
73
|
+
readonly name: "BreadCommunity";
|
|
74
|
+
readonly stake: "50";
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
/**
|
|
79
|
+
* All supported networks
|
|
80
|
+
*/
|
|
81
|
+
export declare const CONTRACTS: {
|
|
82
|
+
readonly sepolia: {
|
|
83
|
+
readonly core: {
|
|
84
|
+
readonly registry: `0x${string}`;
|
|
85
|
+
readonly gToken: `0x${string}`;
|
|
86
|
+
readonly gTokenStaking: `0x${string}`;
|
|
87
|
+
readonly superPaymaster: `0x${string}`;
|
|
88
|
+
readonly paymasterFactory: `0x${string}`;
|
|
89
|
+
readonly aPNTs: `0x${string}`;
|
|
90
|
+
readonly mySBT: `0x${string}`;
|
|
91
|
+
readonly paymasterV4: import("viem").Address;
|
|
92
|
+
readonly dvtValidator: `0x${string}`;
|
|
93
|
+
readonly entryPoint: `0x${string}`;
|
|
94
|
+
readonly xPNTsFactory: `0x${string}`;
|
|
95
|
+
readonly reputationSystem: import("viem").Address;
|
|
96
|
+
};
|
|
97
|
+
readonly tokens: {
|
|
98
|
+
readonly xPNTsFactory: `0x${string}`;
|
|
99
|
+
readonly aPNTs: `0x${string}`;
|
|
100
|
+
readonly gToken: `0x${string}`;
|
|
101
|
+
readonly pimToken: import("viem").Address;
|
|
102
|
+
};
|
|
103
|
+
readonly testTokens: {
|
|
104
|
+
readonly mockUSDT: import("viem").Address;
|
|
105
|
+
readonly apnts: `0x${string}`;
|
|
106
|
+
readonly gToken: `0x${string}`;
|
|
107
|
+
readonly bpnts: `0x${string}`;
|
|
108
|
+
readonly pimToken: `0x${string}`;
|
|
109
|
+
};
|
|
110
|
+
readonly testAccounts: {
|
|
111
|
+
readonly simpleAccountFactory: import("viem").Address;
|
|
112
|
+
};
|
|
113
|
+
readonly paymaster: {
|
|
114
|
+
readonly paymasterV4_1: import("viem").Address;
|
|
115
|
+
readonly paymasterV4_1iImplementation: `0x${string}`;
|
|
116
|
+
};
|
|
117
|
+
readonly monitoring: {
|
|
118
|
+
readonly dvtValidator: `0x${string}`;
|
|
119
|
+
readonly blsAggregator: `0x${string}`;
|
|
120
|
+
};
|
|
121
|
+
readonly official: {
|
|
122
|
+
readonly entryPoint: import("viem").Address;
|
|
123
|
+
};
|
|
124
|
+
readonly communities: {
|
|
125
|
+
/** AAStar Community - Test community for development (registered: 2025-11-01) */
|
|
126
|
+
readonly aastar: {
|
|
127
|
+
readonly owner: "0x411BD567E46C0781248dbB6a9211891C032885e5";
|
|
128
|
+
readonly gasToken: `0x${string}`;
|
|
129
|
+
readonly ensName: "aastar.eth";
|
|
130
|
+
readonly name: "AAStar";
|
|
131
|
+
readonly stake: "50";
|
|
132
|
+
};
|
|
133
|
+
/** BreadCommunity - Test community for development (registered: 2025-11-03) */
|
|
134
|
+
readonly breadCommunity: {
|
|
135
|
+
readonly owner: "0xe24b6f321B0140716a2b671ed0D983bb64E7DaFA";
|
|
136
|
+
readonly gasToken: `0x${string}`;
|
|
137
|
+
readonly ensName: "bread.eth";
|
|
138
|
+
readonly name: "BreadCommunity";
|
|
139
|
+
readonly stake: "50";
|
|
140
|
+
};
|
|
141
|
+
};
|
|
142
|
+
};
|
|
143
|
+
};
|
|
144
|
+
/**
|
|
145
|
+
* Supported network types for contracts
|
|
146
|
+
*/
|
|
147
|
+
export type ContractNetwork = keyof typeof CONTRACTS;
|
|
148
|
+
/**
|
|
149
|
+
* Contract addresses for a specific network
|
|
150
|
+
*/
|
|
151
|
+
export type NetworkContracts = typeof SEPOLIA_CONTRACTS;
|
|
152
|
+
/**
|
|
153
|
+
* Get all contracts for a specific network
|
|
154
|
+
*
|
|
155
|
+
* @param network - Network name (e.g., 'sepolia')
|
|
156
|
+
* @returns All contract addresses for the network
|
|
157
|
+
*
|
|
158
|
+
* @example
|
|
159
|
+
* ```ts
|
|
160
|
+
* const contracts = getContracts('sepolia');
|
|
161
|
+
* console.log(contracts.core.superPaymaster);
|
|
162
|
+
* ```
|
|
163
|
+
*/
|
|
164
|
+
export declare function getContracts(network: ContractNetwork): NetworkContracts;
|
|
165
|
+
/**
|
|
166
|
+
* Get a specific contract address
|
|
167
|
+
*
|
|
168
|
+
* @param network - Network name
|
|
169
|
+
* @param category - Contract category
|
|
170
|
+
* @param name - Contract name
|
|
171
|
+
* @returns Contract address
|
|
172
|
+
*
|
|
173
|
+
* @example
|
|
174
|
+
* ```ts
|
|
175
|
+
* const address = getContract('sepolia', 'core', 'superPaymaster');
|
|
176
|
+
* ```
|
|
177
|
+
*/
|
|
178
|
+
export declare function getContract(network: ContractNetwork, category: ContractCategory, name: string): string;
|
|
179
|
+
/**
|
|
180
|
+
* Get core system contracts
|
|
181
|
+
*
|
|
182
|
+
* @param network - Network name
|
|
183
|
+
* @returns Core contract addresses
|
|
184
|
+
*
|
|
185
|
+
* @example
|
|
186
|
+
* ```ts
|
|
187
|
+
* const core = getCoreContracts('sepolia');
|
|
188
|
+
* console.log(core.superPaymaster);
|
|
189
|
+
* console.log(core.registry);
|
|
190
|
+
* ```
|
|
191
|
+
*/
|
|
192
|
+
export declare function getCoreContracts(network: ContractNetwork): {
|
|
193
|
+
readonly registry: `0x${string}`;
|
|
194
|
+
readonly gToken: `0x${string}`;
|
|
195
|
+
readonly gTokenStaking: `0x${string}`;
|
|
196
|
+
readonly superPaymaster: `0x${string}`;
|
|
197
|
+
readonly paymasterFactory: `0x${string}`;
|
|
198
|
+
readonly aPNTs: `0x${string}`;
|
|
199
|
+
readonly mySBT: `0x${string}`;
|
|
200
|
+
readonly paymasterV4: import("viem").Address;
|
|
201
|
+
readonly dvtValidator: `0x${string}`;
|
|
202
|
+
readonly entryPoint: `0x${string}`;
|
|
203
|
+
readonly xPNTsFactory: `0x${string}`;
|
|
204
|
+
readonly reputationSystem: import("viem").Address;
|
|
205
|
+
};
|
|
206
|
+
/**
|
|
207
|
+
* Get token system contracts
|
|
208
|
+
*
|
|
209
|
+
* @param network - Network name
|
|
210
|
+
* @returns Token contract addresses
|
|
211
|
+
*
|
|
212
|
+
* @example
|
|
213
|
+
* ```ts
|
|
214
|
+
* const tokens = getTokenContracts('sepolia');
|
|
215
|
+
* console.log(tokens.xPNTsFactory);
|
|
216
|
+
* console.log(tokens.mySBT);
|
|
217
|
+
* ```
|
|
218
|
+
*/
|
|
219
|
+
export declare function getTokenContracts(network: ContractNetwork): {
|
|
220
|
+
readonly xPNTsFactory: `0x${string}`;
|
|
221
|
+
readonly aPNTs: `0x${string}`;
|
|
222
|
+
readonly gToken: `0x${string}`;
|
|
223
|
+
readonly pimToken: import("viem").Address;
|
|
224
|
+
};
|
|
225
|
+
/**
|
|
226
|
+
* Get test token contracts (for development & testing)
|
|
227
|
+
*
|
|
228
|
+
* @param network - Network name
|
|
229
|
+
* @returns Test token contract addresses
|
|
230
|
+
*
|
|
231
|
+
* @example
|
|
232
|
+
* ```ts
|
|
233
|
+
* const testTokens = getTestTokenContracts('sepolia');
|
|
234
|
+
* console.log(testTokens.mockUSDT);
|
|
235
|
+
* ```
|
|
236
|
+
*/
|
|
237
|
+
export declare function getTestTokenContracts(network: ContractNetwork): {
|
|
238
|
+
readonly mockUSDT: import("viem").Address;
|
|
239
|
+
readonly apnts: `0x${string}`;
|
|
240
|
+
readonly gToken: `0x${string}`;
|
|
241
|
+
readonly bpnts: `0x${string}`;
|
|
242
|
+
readonly pimToken: `0x${string}`;
|
|
243
|
+
};
|
|
244
|
+
/**
|
|
245
|
+
* Get PaymasterV4_1 address (AOA mode)
|
|
246
|
+
*
|
|
247
|
+
* @param network - Network name
|
|
248
|
+
* @returns PaymasterV4_1 address
|
|
249
|
+
*
|
|
250
|
+
* @example
|
|
251
|
+
* ```ts
|
|
252
|
+
* const paymaster = getPaymasterV4_1('sepolia');
|
|
253
|
+
* ```
|
|
254
|
+
*/
|
|
255
|
+
export declare function getPaymasterV4_1(network: ContractNetwork): string;
|
|
256
|
+
/**
|
|
257
|
+
* Get test account contracts (SimpleAccountFactory, etc.)
|
|
258
|
+
*
|
|
259
|
+
* @param network - Network name
|
|
260
|
+
* @returns Test account contract addresses
|
|
261
|
+
*
|
|
262
|
+
* @example
|
|
263
|
+
* ```ts
|
|
264
|
+
* const testAccounts = getTestAccounts('sepolia');
|
|
265
|
+
* console.log(testAccounts.simpleAccountFactory);
|
|
266
|
+
* ```
|
|
267
|
+
*/
|
|
268
|
+
export declare function getTestAccounts(network: ContractNetwork): {
|
|
269
|
+
readonly simpleAccountFactory: import("viem").Address;
|
|
270
|
+
};
|
|
271
|
+
/**
|
|
272
|
+
* Get SimpleAccountFactory address
|
|
273
|
+
*
|
|
274
|
+
* @param network - Network name
|
|
275
|
+
* @returns SimpleAccountFactory address
|
|
276
|
+
*
|
|
277
|
+
* @example
|
|
278
|
+
* ```ts
|
|
279
|
+
* const factory = getSimpleAccountFactory('sepolia');
|
|
280
|
+
* ```
|
|
281
|
+
*/
|
|
282
|
+
export declare function getSimpleAccountFactory(network: ContractNetwork): string;
|
|
283
|
+
/**
|
|
284
|
+
* Get SuperPaymaster V2 address (AOA+ mode)
|
|
285
|
+
*
|
|
286
|
+
* @param network - Network name
|
|
287
|
+
* @returns SuperPaymaster V2 address
|
|
288
|
+
*
|
|
289
|
+
* @example
|
|
290
|
+
* ```ts
|
|
291
|
+
* const superPaymaster = getSuperPaymasterV2('sepolia');
|
|
292
|
+
* ```
|
|
293
|
+
*/
|
|
294
|
+
export declare function getSuperPaymasterV2(network: ContractNetwork): string;
|
|
295
|
+
/**
|
|
296
|
+
* Get EntryPoint v0.7 address
|
|
297
|
+
*
|
|
298
|
+
* @param network - Network name
|
|
299
|
+
* @returns EntryPoint address
|
|
300
|
+
*
|
|
301
|
+
* @example
|
|
302
|
+
* ```ts
|
|
303
|
+
* const entryPoint = getEntryPoint('sepolia');
|
|
304
|
+
* ```
|
|
305
|
+
*/
|
|
306
|
+
export declare function getEntryPoint(network: ContractNetwork): string;
|
|
307
|
+
/**
|
|
308
|
+
* Check if a network is supported for contracts
|
|
309
|
+
*
|
|
310
|
+
* @param network - Network name to check
|
|
311
|
+
* @returns True if network is supported
|
|
312
|
+
*
|
|
313
|
+
* @example
|
|
314
|
+
* ```ts
|
|
315
|
+
* if (isContractNetworkSupported('sepolia')) {
|
|
316
|
+
* const contracts = getContracts('sepolia');
|
|
317
|
+
* }
|
|
318
|
+
* ```
|
|
319
|
+
*/
|
|
320
|
+
export declare function isContractNetworkSupported(network: string): network is ContractNetwork;
|
|
321
|
+
/**
|
|
322
|
+
* Get all supported contract network names
|
|
323
|
+
*
|
|
324
|
+
* @returns Array of supported network names
|
|
325
|
+
*
|
|
326
|
+
* @example
|
|
327
|
+
* ```ts
|
|
328
|
+
* const networks = getContractNetworks();
|
|
329
|
+
* // ['sepolia']
|
|
330
|
+
* ```
|
|
331
|
+
*/
|
|
332
|
+
export declare function getContractNetworks(): ContractNetwork[];
|
|
333
|
+
/**
|
|
334
|
+
* Contract deployment metadata
|
|
335
|
+
*/
|
|
336
|
+
export declare const CONTRACT_METADATA: {
|
|
337
|
+
readonly sepolia: {
|
|
338
|
+
readonly lastUpdated: "2025-11-02";
|
|
339
|
+
readonly networkId: 11155111;
|
|
340
|
+
readonly deploymentDates: {
|
|
341
|
+
readonly gToken: "2025-11-01";
|
|
342
|
+
readonly superPaymaster: "2025-11-01";
|
|
343
|
+
readonly registry: "2025-11-02";
|
|
344
|
+
readonly gTokenStaking: "2025-11-01";
|
|
345
|
+
readonly xPNTsFactory: "2025-11-01";
|
|
346
|
+
readonly mySBT: "2025-11-01";
|
|
347
|
+
readonly paymasterV4_1: "2025-10-15";
|
|
348
|
+
readonly aPNTs: "2025-10-30";
|
|
349
|
+
readonly paymasterFactory: "2025-11-01";
|
|
350
|
+
readonly dvtValidator: "2025-11-01";
|
|
351
|
+
readonly blsAggregator: "2025-11-01";
|
|
352
|
+
};
|
|
353
|
+
};
|
|
354
|
+
};
|
|
355
|
+
/**
|
|
356
|
+
* Get contract deployment date
|
|
357
|
+
*
|
|
358
|
+
* @param network - Network name
|
|
359
|
+
* @param contractName - Contract name
|
|
360
|
+
* @returns Deployment date string (YYYY-MM-DD)
|
|
361
|
+
*
|
|
362
|
+
* @example
|
|
363
|
+
* ```ts
|
|
364
|
+
* const date = getDeploymentDate('sepolia', 'superPaymaster');
|
|
365
|
+
* // '2025-10-25'
|
|
366
|
+
* ```
|
|
367
|
+
*/
|
|
368
|
+
export declare function getDeploymentDate(network: ContractNetwork, contractName: string): string | undefined;
|
|
369
|
+
/**
|
|
370
|
+
* Get registered communities
|
|
371
|
+
*
|
|
372
|
+
* @param network - Network name
|
|
373
|
+
* @returns Communities object
|
|
374
|
+
*
|
|
375
|
+
* @example
|
|
376
|
+
* ```ts
|
|
377
|
+
* const communities = getCommunities('sepolia');
|
|
378
|
+
* console.log(communities.aastar.owner);
|
|
379
|
+
* ```
|
|
380
|
+
*/
|
|
381
|
+
export declare function getCommunities(network: ContractNetwork): {
|
|
382
|
+
/** AAStar Community - Test community for development (registered: 2025-11-01) */
|
|
383
|
+
readonly aastar: {
|
|
384
|
+
readonly owner: "0x411BD567E46C0781248dbB6a9211891C032885e5";
|
|
385
|
+
readonly gasToken: `0x${string}`;
|
|
386
|
+
readonly ensName: "aastar.eth";
|
|
387
|
+
readonly name: "AAStar";
|
|
388
|
+
readonly stake: "50";
|
|
389
|
+
};
|
|
390
|
+
/** BreadCommunity - Test community for development (registered: 2025-11-03) */
|
|
391
|
+
readonly breadCommunity: {
|
|
392
|
+
readonly owner: "0xe24b6f321B0140716a2b671ed0D983bb64E7DaFA";
|
|
393
|
+
readonly gasToken: `0x${string}`;
|
|
394
|
+
readonly ensName: "bread.eth";
|
|
395
|
+
readonly name: "BreadCommunity";
|
|
396
|
+
readonly stake: "50";
|
|
397
|
+
};
|
|
398
|
+
};
|
|
399
|
+
/**
|
|
400
|
+
* Get a specific community
|
|
401
|
+
*
|
|
402
|
+
* @param network - Network name
|
|
403
|
+
* @param communityName - Community name (aastar, builderDao)
|
|
404
|
+
* @returns Community information
|
|
405
|
+
*
|
|
406
|
+
* @example
|
|
407
|
+
* ```ts
|
|
408
|
+
* const aastar = getCommunity('sepolia', 'aastar');
|
|
409
|
+
* console.log(aastar.gasToken); // aPNTs address
|
|
410
|
+
* ```
|
|
411
|
+
*/
|
|
412
|
+
export declare function getCommunity(network: ContractNetwork, communityName: 'aastar' | 'breadCommunity'): {
|
|
413
|
+
readonly owner: "0x411BD567E46C0781248dbB6a9211891C032885e5";
|
|
414
|
+
readonly gasToken: `0x${string}`;
|
|
415
|
+
readonly ensName: "aastar.eth";
|
|
416
|
+
readonly name: "AAStar";
|
|
417
|
+
readonly stake: "50";
|
|
418
|
+
} | {
|
|
419
|
+
readonly owner: "0xe24b6f321B0140716a2b671ed0D983bb64E7DaFA";
|
|
420
|
+
readonly gasToken: `0x${string}`;
|
|
421
|
+
readonly ensName: "bread.eth";
|
|
422
|
+
readonly name: "BreadCommunity";
|
|
423
|
+
readonly stake: "50";
|
|
424
|
+
};
|