diff --git a/.circleci/config.yml b/.circleci/config.yml index e1c37c0..c47fb91 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -14,6 +14,8 @@ jobs: auth: username: $DOCKERHUB_USER password: $DOCKERHUB_PASSWORD + environment: + NODE_OPTIONS: "--max-old-space-size=4096" steps: - checkout - run: @@ -42,6 +44,8 @@ jobs: auth: username: $DOCKERHUB_USER password: $DOCKERHUB_PASSWORD + environment: + NODE_OPTIONS: "--max-old-space-size=4096" steps: - checkout - when: diff --git a/CHANGELOG.md b/CHANGELOG.md index 8e58cba..b90a7b7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,10 @@ ### Breaking Changes - Fix for `deleteSessionKey` API request failure +## [2.0.3] - 2024-08-23 +### Breaking Changes +- Migrate from ethers to viem library + ## [2.0.2] - 2024-08-21 ### New - Updated XDC Mainnet factory address diff --git a/examples/05-add-guardians.ts b/examples/basics/add-guardians.ts similarity index 65% rename from examples/05-add-guardians.ts rename to examples/basics/add-guardians.ts index 80d28e1..e66b43d 100644 --- a/examples/05-add-guardians.ts +++ b/examples/basics/add-guardians.ts @@ -1,21 +1,19 @@ -import { ethers } from 'ethers'; -import { EtherspotBundler, ModularSdk } from '../src'; -import { printOp } from '../src/sdk/common/OperationUtils'; +import { printOp } from '../../src/sdk/common/OperationUtils'; import * as dotenv from 'dotenv'; -import { sleep } from '../src/sdk/common'; +import { sleep } from '../../src/sdk/common'; +import { encodeFunctionData, parseAbi } from 'viem'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); +// tsx examples/basics/add-guardians.ts async function main() { const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; // initializating sdk... - const modularSdk = new ModularSdk( - { privateKey: process.env.WALLET_PRIVATE_KEY }, - { chainId: Number(process.env.CHAIN_ID), bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) }, - ); - - console.log('address: ', modularSdk.state.EOAAddress); + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); // get address of EtherspotWallet const address: string = await modularSdk.getCounterFactualAddress(); @@ -29,12 +27,25 @@ async function main() { console.log('\x1b[33m%s\x1b[0m', `EtherspotWallet address: ${address}`); - const addGuardianInterface = new ethers.utils.Interface(['function addGuardian(address _newGuardian)']); - - const addGuardianData1 = addGuardianInterface.encodeFunctionData('addGuardian', [guardianAddresses[0]]); - const addGuardianData2 = addGuardianInterface.encodeFunctionData('addGuardian', [guardianAddresses[1]]); - const addGuardianData3 = addGuardianInterface.encodeFunctionData('addGuardian', [guardianAddresses[2]]); + const addGuardianInterface = ['function addGuardian(address _newGuardian)']; + const addGuardianData1 = + encodeFunctionData({ + functionName: 'addGuardian', + abi: parseAbi(addGuardianInterface), + args: [guardianAddresses[0]], + }); + const addGuardianData2 = + encodeFunctionData({ + functionName: 'addGuardian', + abi: parseAbi(addGuardianInterface), + args: [guardianAddresses[1]], + }); + const addGuardianData3 = encodeFunctionData({ + functionName: 'addGuardian', + abi: parseAbi(addGuardianInterface), + args: [guardianAddresses[2]], + }); // clear the transaction batch await modularSdk.clearUserOpsFromBatch(); diff --git a/examples/07-callGasLimit.ts b/examples/basics/callGasLimit.ts similarity index 77% rename from examples/07-callGasLimit.ts rename to examples/basics/callGasLimit.ts index d1de968..3bb0a20 100644 --- a/examples/07-callGasLimit.ts +++ b/examples/basics/callGasLimit.ts @@ -1,8 +1,8 @@ -import { ethers } from 'ethers'; -import { EtherspotBundler, ModularSdk } from '../src'; -import { printOp } from '../src/sdk/common/OperationUtils'; +import { printOp } from '../../src/sdk/common/OperationUtils'; import * as dotenv from 'dotenv'; -import { sleep } from '../src/sdk/common'; +import { sleep } from '../../src/sdk/common'; +import { parseEther } from 'viem'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); @@ -12,12 +12,9 @@ const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxM async function main() { // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, { - chainId: Number(process.env.CHAIN_ID), - bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) - }) - - console.log('address: ', modularSdk.state.EOAAddress) + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); // get address of EtherspotWallet... const address: string = await modularSdk.getCounterFactualAddress(); @@ -27,7 +24,7 @@ async function main() { await modularSdk.clearUserOpsFromBatch(); // add transactions to the batch - const transactionBatch = await modularSdk.addUserOpsToBatch({ to: recipient, value: ethers.utils.parseEther(value) }); + const transactionBatch = await modularSdk.addUserOpsToBatch({ to: recipient, value: parseEther(value) }); console.log('transactions: ', transactionBatch); // get balance of the account address diff --git a/examples/09-concurrent-userops.ts b/examples/basics/concurrent-userops.ts similarity index 76% rename from examples/09-concurrent-userops.ts rename to examples/basics/concurrent-userops.ts index 22cd89a..d0f8ef3 100644 --- a/examples/09-concurrent-userops.ts +++ b/examples/basics/concurrent-userops.ts @@ -1,8 +1,10 @@ -import { BigNumber, ethers, providers } from 'ethers'; -import { EtherspotBundler, ModularSdk } from '../src'; -import { printOp } from '../src/sdk/common/OperationUtils'; +import { printOp } from '../../src/sdk/common/OperationUtils'; import * as dotenv from 'dotenv'; -import { sleep } from '../src/sdk/common'; +import { sleep } from '../../src/sdk/common'; +import { getPublicClient } from '../../src/sdk/common/utils/viem-utils'; +import { Hex, http, parseEther, PublicClient } from 'viem'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; +import { BigNumber } from '../../src/sdk/types/bignumber'; dotenv.config(); @@ -11,20 +13,26 @@ const value = '0.000001'; // transfer value const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; async function main() { - const provider = new providers.JsonRpcProvider(process.env.RPC_PROVIDER_URL); - // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, { - chainId: Number(process.env.CHAIN_ID), - bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) - }) + // initializating sdk for index 0... + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); - console.log('address: ', modularSdk.state.EOAAddress) + const publicClient = getPublicClient({ + chainId: Number(process.env.CHAIN_ID), + transport: http(bundlerApiKey) + }) as PublicClient; // get address of EtherspotWallet... const address: string = await modularSdk.getCounterFactualAddress(); console.log('\x1b[33m%s\x1b[0m', `EtherspotWallet address: ${address}`); - if ((await provider.getCode(address)).length <= 2) { + // get code + const code = await publicClient.getCode({ + address: address as Hex + }); + + if (code.length <= 2) { console.log("Account must be created first"); return; } @@ -33,7 +41,7 @@ async function main() { await modularSdk.clearUserOpsFromBatch(); // add transactions to the batch - const transactionBatch = await modularSdk.addUserOpsToBatch({to: recipient, value: ethers.utils.parseEther(value)}); + const transactionBatch = await modularSdk.addUserOpsToBatch({to: recipient, value: parseEther(value)}); console.log('transactions: ', transactionBatch); // get balance of the account address diff --git a/examples/01-get-address.ts b/examples/basics/get-address.ts similarity index 56% rename from examples/01-get-address.ts rename to examples/basics/get-address.ts index 9ebc635..7d11aa7 100644 --- a/examples/01-get-address.ts +++ b/examples/basics/get-address.ts @@ -1,15 +1,17 @@ -import { ethers } from 'ethers'; -import { EtherspotBundler, ModularSdk } from '../src'; import * as dotenv from 'dotenv'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); -// npx ts-node examples/01-get-address.ts +// tsx examples/basics/get-address.ts async function main() { const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; const customBundlerUrl = ''; + // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, { chainId: Number(process.env.CHAIN_ID), bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey, customBundlerUrl) }) // Testnets dont need apiKey on bundlerProvider + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); // get EtherspotWallet address... const address: string = await modularSdk.getCounterFactualAddress(); diff --git a/examples/10-bundlerApiKey.ts b/examples/basics/get-counterfactual-address.ts similarity index 60% rename from examples/10-bundlerApiKey.ts rename to examples/basics/get-counterfactual-address.ts index be6735c..3fa28ea 100644 --- a/examples/10-bundlerApiKey.ts +++ b/examples/basics/get-counterfactual-address.ts @@ -1,16 +1,15 @@ -import { EtherspotBundler, ModularSdk } from '../src'; import * as dotenv from 'dotenv'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); - +// tsx examples/basics/get-counterfactual-address.ts async function main() { const etherspotBundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; - // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, { - chainId: Number(process.env.CHAIN_ID), - bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), etherspotBundlerApiKey) - }) + // initializating sdk for index 0... + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), etherspotBundlerApiKey); // get EtherspotWallet address... const address: string = await modularSdk.getCounterFactualAddress(); diff --git a/examples/basics/get-gas-fees.ts b/examples/basics/get-gas-fees.ts new file mode 100644 index 0000000..b06b620 --- /dev/null +++ b/examples/basics/get-gas-fees.ts @@ -0,0 +1,23 @@ +import * as dotenv from 'dotenv'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; + +dotenv.config(); + +// tsx examples/basics/get-gas-fees.ts +async function main() { + const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; + const customBundlerUrl = ''; + + // initializating sdk... + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); + + // get EtherspotWallet address... + const gasFees: any = await modularSdk.getGasFee(); + console.log(`gasFees is: ${JSON.stringify(gasFees)}`); +} + +main() + .catch(console.error) + .finally(() => process.exit()); diff --git a/examples/08-get-multiple-accounts.ts b/examples/basics/get-multiple-accounts.ts similarity index 60% rename from examples/08-get-multiple-accounts.ts rename to examples/basics/get-multiple-accounts.ts index 8609a62..df6e20c 100644 --- a/examples/08-get-multiple-accounts.ts +++ b/examples/basics/get-multiple-accounts.ts @@ -1,26 +1,28 @@ -import { EtherspotBundler, ModularSdk } from '../src'; import * as dotenv from 'dotenv'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; +// tsx examples/basics/get-multiple-accounts.ts async function main() { // initializating sdk for index 0... - const modularSdk = new ModularSdk( - { privateKey: process.env.WALLET_PRIVATE_KEY }, - { chainId: Number(process.env.CHAIN_ID), bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) }, - ); + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); // get EtherspotWallet address for index 0... const address: string = await modularSdk.getCounterFactualAddress(); console.log('\x1b[33m%s\x1b[0m', `EtherspotWallet address for index 0: ${address}`); // initializating sdk for index 1... - const modularSdk1 = new ModularSdk( - { privateKey: process.env.WALLET_PRIVATE_KEY }, - { chainId: Number(process.env.CHAIN_ID), index: 1, bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) }, - ); + const modularSdk1 = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY, + Number(process.env.CHAIN_ID), + bundlerApiKey, + 1 + );// Testnets dont need apiKey on bundlerProvider // get EtherspotWallet address for index 1... const address1: string = await modularSdk1.getCounterFactualAddress(); diff --git a/examples/basics/get-nonce.ts b/examples/basics/get-nonce.ts new file mode 100644 index 0000000..e33dd9c --- /dev/null +++ b/examples/basics/get-nonce.ts @@ -0,0 +1,23 @@ +import * as dotenv from 'dotenv'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; + +dotenv.config(); + +// tsx examples/basics/get-nonce.ts +async function main() { + const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; + const customBundlerUrl = ''; + + // initializating sdk... + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); + + // get EtherspotWallet nonce... + const nonce = await modularSdk.getNonce(); + console.log(`nonce is: ${nonce}`); +} + +main() + .catch(console.error) + .finally(() => process.exit()); diff --git a/examples/03-transfer-erc20.ts b/examples/basics/transfer-erc20.ts similarity index 56% rename from examples/03-transfer-erc20.ts rename to examples/basics/transfer-erc20.ts index 8f44622..a643ae2 100644 --- a/examples/03-transfer-erc20.ts +++ b/examples/basics/transfer-erc20.ts @@ -1,39 +1,54 @@ -import { ethers } from 'ethers'; -import { EtherspotBundler, ModularSdk } from '../src'; -import { printOp } from '../src/sdk/common/OperationUtils'; -import { ERC20_ABI } from '../src/sdk/helpers/abi/ERC20_ABI'; +import { EtherspotBundler, ModularSdk } from '../../src'; +import { printOp } from '../../src/sdk/common/OperationUtils'; +import { ERC20_ABI } from '../../src/sdk/helpers/abi/ERC20_ABI'; import * as dotenv from 'dotenv'; -import { sleep } from '../src/sdk/common'; +import { sleep } from '../../src/sdk/common'; +import { getPublicClient, getViemAccount } from '../../src/sdk/common/utils/viem-utils'; +import { encodeFunctionData, Hex, http, parseAbi, parseUnits } from 'viem'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; +import { erc20Abi } from '../../src/sdk/common/abis'; dotenv.config(); // add/change these values const recipient = '0x80a1874E1046B1cc5deFdf4D3153838B72fF94Ac'; // recipient wallet address -const value = '1'; // transfer value +const value = '0.1'; // transfer value const tokenAddress = process.env.TOKEN_ADDRESS as string; // token address const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; -// npx ts-node examples/03-transfer-erc20.ts +// tsx examples/basics/transfer-erc20.ts async function main() { // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, { chainId: Number(process.env.CHAIN_ID), bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) }) - - console.log('address: ', modularSdk.state.EOAAddress) + const bundlerProvider = new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey); + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); // get address of EtherspotWallet... const address: string = await modularSdk.getCounterFactualAddress(); console.log('\x1b[33m%s\x1b[0m', `EtherspotWallet address: ${address}`); - const provider = new ethers.providers.JsonRpcProvider('https://polygon-amoy.drpc.org') - // get erc20 Contract Interface - const erc20Instance = new ethers.Contract(tokenAddress, ERC20_ABI, provider); + const publicClient = getPublicClient({ + chainId: Number(process.env.CHAIN_ID), + transport: http(bundlerProvider.url) + }); // get decimals from erc20 contract - const decimals = await erc20Instance.functions.decimals(); - + + const decimals = await publicClient.readContract({ + address: tokenAddress as Hex, + abi: parseAbi(erc20Abi), + functionName: 'decimals', + args: [] + }) + // get transferFrom encoded data - const transactionData = erc20Instance.interface.encodeFunctionData('transfer', [recipient, ethers.utils.parseUnits(value, decimals)]) - + const transactionData = encodeFunctionData({ + functionName: 'transfer', + abi: parseAbi(ERC20_ABI), + args: [recipient, parseUnits(value, decimals as number)] + }); + // clear the transaction batch await modularSdk.clearUserOpsFromBatch(); diff --git a/examples/02-transfer-funds.ts b/examples/basics/transfer-funds.ts similarity index 72% rename from examples/02-transfer-funds.ts rename to examples/basics/transfer-funds.ts index 6de4edf..8dc0298 100644 --- a/examples/02-transfer-funds.ts +++ b/examples/basics/transfer-funds.ts @@ -1,8 +1,8 @@ -import { ethers } from 'ethers'; -import { EtherspotBundler, ModularSdk } from '../src'; -import { printOp } from '../src/sdk/common/OperationUtils'; +import { printOp } from '../../src/sdk/common/OperationUtils'; import * as dotenv from 'dotenv'; -import { sleep } from '../src/sdk/common'; +import { sleep } from '../../src/sdk/common'; +import { parseEther } from 'viem'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); @@ -10,12 +10,13 @@ const recipient = '0x80a1874E1046B1cc5deFdf4D3153838B72fF94Ac'; // recipient wal const value = '0.0000001'; // transfer value const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; -// npx ts-node examples/02-transfer-funds.ts +// tsx examples/basics/transfer-funds.ts async function main() { // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, { chainId: Number(process.env.CHAIN_ID), bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) }) + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); - console.log('address: ', modularSdk.state.EOAAddress) // get address of EtherspotWallet... const address: string = await modularSdk.getCounterFactualAddress(); @@ -25,7 +26,7 @@ async function main() { await modularSdk.clearUserOpsFromBatch(); // add transactions to the batch - const transactionBatch = await modularSdk.addUserOpsToBatch({ to: recipient, value: ethers.utils.parseEther(value) }); + const transactionBatch = await modularSdk.addUserOpsToBatch({ to: recipient, value: parseEther(value) }); console.log('transactions: ', transactionBatch); // get balance of the account address @@ -44,7 +45,7 @@ async function main() { // get transaction hash... console.log('Waiting for transaction...'); let userOpsReceipt = null; - const timeout = Date.now() + 60000; // 1 minute timeout + const timeout = Date.now() + 1200000; // 1 minute timeout while ((userOpsReceipt == null) && (Date.now() < timeout)) { await sleep(2); userOpsReceipt = await modularSdk.getUserOpReceipt(uoHash); diff --git a/examples/04-transfer-nft.ts b/examples/basics/transfer-nft.ts similarity index 65% rename from examples/04-transfer-nft.ts rename to examples/basics/transfer-nft.ts index 6905bfb..deb680d 100644 --- a/examples/04-transfer-nft.ts +++ b/examples/basics/transfer-nft.ts @@ -1,8 +1,8 @@ -import { ethers } from 'ethers'; -import { EtherspotBundler, ModularSdk } from '../src'; -import { printOp } from '../src/sdk/common/OperationUtils'; +import { printOp } from '../../src/sdk/common/OperationUtils'; import * as dotenv from 'dotenv'; -import { sleep } from '../src/sdk/common'; +import { sleep } from '../../src/sdk/common'; +import { encodeFunctionData, parseAbi } from 'viem'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); @@ -12,28 +12,33 @@ const tokenAddress = '0xe55C5793a52AF819fBf3e87a23B36708E6FDd2Cc'; const tokenId = 4; const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; -// npx ts-node examples/04-transfer-nft.ts +// tsx examples/basics/transfer-nft.ts async function main() { // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, { chainId: Number(process.env.CHAIN_ID), bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) }) - - console.log('address: ', modularSdk.state.EOAAddress) + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); // get address of EtherspotWallet... const address: string = await modularSdk.getCounterFactualAddress(); console.log('\x1b[33m%s\x1b[0m', `EtherspotWallet address: ${address}`); - const erc721Interface = new ethers.utils.Interface([ + const erc721Interface = [ 'function safeTransferFrom(address _from, address _to, uint256 _tokenId)' - ]) + ]; - const erc721Data = erc721Interface.encodeFunctionData('safeTransferFrom', [address, recipient, tokenId]); + const erc721Data = encodeFunctionData( + { + functionName: 'safeTransferFrom', + abi: parseAbi(erc721Interface), + args: [address, recipient, tokenId] + }); // clear the transaction batch await modularSdk.clearUserOpsFromBatch(); // add transactions to the batch - const userOpsBatch = await modularSdk.addUserOpsToBatch({to: tokenAddress, data: erc721Data}); + const userOpsBatch = await modularSdk.addUserOpsToBatch({ to: tokenAddress, data: erc721Data }); console.log('transactions: ', userOpsBatch); // sign transactions added to the batch @@ -48,7 +53,7 @@ async function main() { console.log('Waiting for transaction...'); let userOpsReceipt = null; const timeout = Date.now() + 60000; // 1 minute timeout - while((userOpsReceipt == null) && (Date.now() < timeout)) { + while ((userOpsReceipt == null) && (Date.now() < timeout)) { await sleep(2); userOpsReceipt = await modularSdk.getUserOpReceipt(uoHash); } diff --git a/examples/helpers/sdk-helper.ts b/examples/helpers/sdk-helper.ts new file mode 100644 index 0000000..d81e434 --- /dev/null +++ b/examples/helpers/sdk-helper.ts @@ -0,0 +1,39 @@ +import { getPublicClient, getViemAccount } from "../../src/sdk/common"; +import { EtherspotBundler, ModularSdk } from "../../src"; +import { Hex, http, parseAbi } from "viem"; +import { erc20Abi } from "../../src/sdk/common/abis"; + +export const generateModularSDKInstance = (privateKey: string, chainId: number, bundlerApiKey: string, index: number = 0) => { + const modularSdk = new ModularSdk( + { privateKey: privateKey }, + { + chainId: chainId, + bundlerProvider: new EtherspotBundler(chainId, bundlerApiKey), + index: index + }) + + return modularSdk; +} + +export const getTokenMetaData = async (rpcProviderUrl: string, tokenAddress: string) => { + const publicClient = getPublicClient({ + chainId: Number(process.env.CHAIN_ID), + transport: http(rpcProviderUrl) + }); + + const symbol : string = await publicClient.readContract({ + address: tokenAddress as Hex, + abi: parseAbi(erc20Abi), + functionName: 'symbol', + args: [] + }) as string; + + const decimal : number = await publicClient.readContract({ + address: tokenAddress as Hex, + abi: parseAbi(erc20Abi), + functionName: 'decimals', + args: [] + }) as number; + + return { symbol , decimal }; +} \ No newline at end of file diff --git a/examples/12-generate-module-uninstall-deinitdata.ts b/examples/modules/generate-module-uninstall-deinitdata.ts similarity index 67% rename from examples/12-generate-module-uninstall-deinitdata.ts rename to examples/modules/generate-module-uninstall-deinitdata.ts index 4a9e9fc..3781dd2 100644 --- a/examples/12-generate-module-uninstall-deinitdata.ts +++ b/examples/modules/generate-module-uninstall-deinitdata.ts @@ -1,18 +1,17 @@ -import { ethers } from 'ethers'; -import { EtherspotBundler, ModularSdk } from '../src'; import * as dotenv from 'dotenv'; -import { MODULE_TYPE, sleep } from '../src/sdk/common'; +import { MODULE_TYPE } from '../../src/sdk/common'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); -// npx ts-node examples/12-generate-module-uninstall-deinitdata.ts +// npx ts-node examples/modules/generate-module-uninstall-deinitdata.ts async function main() { const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; - // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, { chainId: Number(process.env.CHAIN_ID), bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) }) - - console.log('address: ', modularSdk.state.EOAAddress); + // initializating sdk for index 0... + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); // get address of EtherspotWallet const address: string = await modularSdk.getCounterFactualAddress(); diff --git a/examples/12-get-previous-address.ts b/examples/modules/get-previous-address.ts similarity index 54% rename from examples/12-get-previous-address.ts rename to examples/modules/get-previous-address.ts index 7524d19..d4e2203 100644 --- a/examples/12-get-previous-address.ts +++ b/examples/modules/get-previous-address.ts @@ -1,25 +1,26 @@ -import { ethers } from 'ethers'; -import { EtherspotBundler, ModularSdk } from '../src'; +import { EtherspotBundler, ModularSdk } from '../../src'; import * as dotenv from 'dotenv'; -import { MODULE_TYPE, sleep } from '../src/sdk/common'; +import { MODULE_TYPE } from '../../src/sdk/common'; +import { getViemAccount } from '../../src/sdk/common/utils/viem-utils'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); -// npx ts-node examples/11-get-previous-address.ts +// tsx examples/modules/get-previous-address.ts async function main() { const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, { chainId: Number(process.env.CHAIN_ID), bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) }) - - console.log('address: ', modularSdk.state.EOAAddress); + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); // get address of EtherspotWallet const address: string = await modularSdk.getCounterFactualAddress(); console.log('\x1b[33m%s\x1b[0m', `EtherspotWallet address: ${address}`); - const previousAddress = await modularSdk.getPreviousAddress(MODULE_TYPE.VALIDATOR, '0x8c4496Ba340aFe5ac4148cfEA9ccbBCD54093143'); + const previousAddress = await modularSdk.getPreviousAddress(MODULE_TYPE.VALIDATOR, '0xFE14F6d4e407850b24D160B9ACfBb042D32BE492'); console.log(`previousAddress: ${previousAddress}`); } diff --git a/examples/11-install-module.ts b/examples/modules/install-module.ts similarity index 67% rename from examples/11-install-module.ts rename to examples/modules/install-module.ts index 044a2c6..6f4973e 100644 --- a/examples/11-install-module.ts +++ b/examples/modules/install-module.ts @@ -1,26 +1,24 @@ -import { EtherspotBundler, ModularSdk } from '../src'; import * as dotenv from 'dotenv'; -import { MODULE_TYPE, sleep } from '../src/sdk/common'; +import { MODULE_TYPE, sleep } from '../../src/sdk/common'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); -// npx ts-node examples/11-install-module.ts +// tsx examples/modules/install-module.ts async function main() { const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, - { chainId: Number(process.env.CHAIN_ID), - bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) }) - - console.log('address: ', modularSdk.state.EOAAddress); + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); // get address of EtherspotWallet const address: string = await modularSdk.getCounterFactualAddress(); console.log('\x1b[33m%s\x1b[0m', `EtherspotWallet address: ${address}`); - const uoHash = await modularSdk.installModule(MODULE_TYPE.VALIDATOR, '0x22A55192a663591586241D42E603221eac49ed09'); + const uoHash = await modularSdk.installModule(MODULE_TYPE.VALIDATOR, '0xF4CDE8B11500ca9Ea108c5838DD26Ff1a4257a0c'); console.log(`UserOpHash: ${uoHash}`); // get transaction hash... diff --git a/examples/11-is-module-installed.ts b/examples/modules/is-module-installed.ts similarity index 55% rename from examples/11-is-module-installed.ts rename to examples/modules/is-module-installed.ts index 2677662..6031f45 100644 --- a/examples/11-is-module-installed.ts +++ b/examples/modules/is-module-installed.ts @@ -1,28 +1,28 @@ -import { EtherspotBundler, ModularSdk } from '../src'; import * as dotenv from 'dotenv'; -import { MODULE_TYPE } from '../src/sdk/common'; +import { MODULE_TYPE } from '../../src/sdk/common'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); -// npx ts-node examples/11-is-module-installed.ts +// tsx examples/modules/is-module-installed.ts async function main() { const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; console.log(`inside is-module-installed script:`); - // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, - { chainId: Number(process.env.CHAIN_ID), - bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) }) - - console.log('address: ', modularSdk.state.EOAAddress); + // initializating sdk for index 0... + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY, + Number(process.env.CHAIN_ID), + bundlerApiKey + );// Testnets dont need apiKey on bundlerProvider // get address of EtherspotWallet const address: string = await modularSdk.getCounterFactualAddress(); console.log('\x1b[33m%s\x1b[0m', `EtherspotWallet address: ${address}`); - const isModuleInstalled = await modularSdk.isModuleInstalled(MODULE_TYPE.VALIDATOR, '0x1417aDC5308a32265E0fA0690ea1408FFA62F37c'); + const isModuleInstalled = await modularSdk.isModuleInstalled(MODULE_TYPE.VALIDATOR, '0xFE14F6d4e407850b24D160B9ACfBb042D32BE492'); console.log(`isModuleInstalled: ${isModuleInstalled}`); } diff --git a/examples/13-list-modules.ts b/examples/modules/list-modules.ts similarity index 57% rename from examples/13-list-modules.ts rename to examples/modules/list-modules.ts index de4d880..fcc6592 100644 --- a/examples/13-list-modules.ts +++ b/examples/modules/list-modules.ts @@ -1,18 +1,18 @@ -import { ethers } from 'ethers'; -import { EtherspotBundler, ModularSdk } from '../src'; +import { EtherspotBundler, ModularSdk } from '../../src'; import * as dotenv from 'dotenv'; -import { MODULE_TYPE, sleep } from '../src/sdk/common'; +import { getViemAccount } from '../../src/sdk/common/utils'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); -// npx ts-node examples/13-list-modules.ts +// tsx examples/modules/list-modules.ts async function main() { const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, { chainId: Number(process.env.CHAIN_ID), bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) }) - - console.log('address: ', modularSdk.state.EOAAddress); + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); // get address of EtherspotWallet const address: string = await modularSdk.getCounterFactualAddress(); diff --git a/examples/modules/list-paginated-modules.ts b/examples/modules/list-paginated-modules.ts new file mode 100644 index 0000000..eb829b3 --- /dev/null +++ b/examples/modules/list-paginated-modules.ts @@ -0,0 +1,36 @@ +import { NETWORK_NAME_TO_CHAIN_ID, NetworkNames } from '../../src'; +import * as dotenv from 'dotenv'; +import { Networks } from '../../src/sdk/network/constants'; +import { getPublicClient, getViemAddress } from '../../src/sdk/common/utils/viem-utils'; +import { getModulesPaginated } from '../../src/sdk/common/getInstalledModules'; +import { http, PublicClient } from 'viem'; + +dotenv.config(); + +// tsx examples/modules/list-paginated-modules.ts +async function main() { + const chainId: number = NETWORK_NAME_TO_CHAIN_ID[NetworkNames.Sepolia]; + const rpcProviderUrl = Networks[chainId].bundler; + const walletAddress = "0x8E367D39368fc545E64c4a8C30Af7dF05edDf789"; + + console.log(`rpcProviderUrl: ${rpcProviderUrl}`); + + const viemPublicClient = getPublicClient({ + chainId: chainId, + transport: http( + rpcProviderUrl + ) + }) as PublicClient; + + const addresses = await getModulesPaginated({ + client: viemPublicClient as PublicClient, + functionName: 'getValidatorPaginated', + walletAddress: getViemAddress(walletAddress), + }); + + console.log(`addresses are: ${addresses}`); +} + +main() + .catch(console.error) + .finally(() => process.exit()); diff --git a/examples/12-uninstall-module.ts b/examples/modules/uninstall-module.ts similarity index 66% rename from examples/12-uninstall-module.ts rename to examples/modules/uninstall-module.ts index ee3955f..57be29b 100644 --- a/examples/12-uninstall-module.ts +++ b/examples/modules/uninstall-module.ts @@ -1,18 +1,17 @@ -import { ethers } from 'ethers'; -import { EtherspotBundler, ModularSdk } from '../src'; import * as dotenv from 'dotenv'; -import { MODULE_TYPE, sleep } from '../src/sdk/common'; +import { MODULE_TYPE, sleep } from '../../src/sdk/common'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); -// npx ts-node examples/12-uninstall-module.ts +// tsx examples/modules/uninstall-module.ts async function main() { const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, { chainId: Number(process.env.CHAIN_ID), bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) }) - - console.log('address: ', modularSdk.state.EOAAddress); + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); // get address of EtherspotWallet const address: string = await modularSdk.getCounterFactualAddress(); @@ -26,12 +25,18 @@ async function main() { const deInitDataDefault = '0x00'; //generate deinit data... - const deInitData = await modularSdk.generateModuleDeInitData(MODULE_TYPE.VALIDATOR, '0x8c4496Ba340aFe5ac4148cfEA9ccbBCD54093143', deInitDataDefault); + const deInitData = await modularSdk.generateModuleDeInitData( + MODULE_TYPE.VALIDATOR, + '0xF4CDE8B11500ca9Ea108c5838DD26Ff1a4257a0c', + deInitDataDefault); console.log(`deinitData: ${deInitData}`); - // default : 0x8c4496Ba340aFe5ac4148cfEA9ccbBCD54093143 - const uoHash = await modularSdk.uninstallModule(MODULE_TYPE.VALIDATOR, '0x8c4496Ba340aFe5ac4148cfEA9ccbBCD54093143', deInitData); + // default : 0xD6dc0A5Ca1EC90D1283A6d13642e8186059fF63B + // 0x22A55192a663591586241D42E603221eac49ed09 + // 0xF4CDE8B11500ca9Ea108c5838DD26Ff1a4257a0c + const uoHash = await modularSdk.uninstallModule(MODULE_TYPE.VALIDATOR, + '0xF4CDE8B11500ca9Ea108c5838DD26Ff1a4257a0c', deInitData); console.log(`UserOpHash: ${uoHash}`); // get transaction hash... diff --git a/examples/06-paymaster.ts b/examples/paymaster/paymaster.ts similarity index 78% rename from examples/06-paymaster.ts rename to examples/paymaster/paymaster.ts index 69a2bba..9e64a7d 100644 --- a/examples/06-paymaster.ts +++ b/examples/paymaster/paymaster.ts @@ -1,24 +1,24 @@ -import { ethers } from 'ethers'; -import { EtherspotBundler, ModularSdk } from '../src'; -import { printOp } from '../src/sdk/common/OperationUtils'; +import { printOp } from '../../src/sdk/common/OperationUtils'; import * as dotenv from 'dotenv'; -import { sleep } from '../src/sdk/common'; +import { sleep } from '../../src/sdk/common'; +import { parseEther } from 'viem'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); const recipient = '0x80a1874E1046B1cc5deFdf4D3153838B72fF94Ac'; // recipient wallet address -const value = '0.01'; // transfer value +const value = '0.0000001'; // transfer value const apiKey = 'arka_public_key'; // Only testnets are available, if you need further assistance in setting up a paymaster service for your dapp, please reach out to us on discord or https://etherspot.fyi/arka/intro const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; +// tsx examples/paymaster/paymaster.ts async function main() { // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, { - chainId: Number(process.env.CHAIN_ID), - bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) - }) - - console.log('address: ', modularSdk.state.EOAAddress) + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY, + Number(process.env.CHAIN_ID), + bundlerApiKey + );// Testnets dont need apiKey on bundlerProvider // get address of EtherspotWallet... const address: string = await modularSdk.getCounterFactualAddress(); @@ -28,7 +28,7 @@ async function main() { await modularSdk.clearUserOpsFromBatch(); // add transactions to the batch - const transactionBatch = await modularSdk.addUserOpsToBatch({ to: recipient, value: ethers.utils.parseEther(value) }); + const transactionBatch = await modularSdk.addUserOpsToBatch({ to: recipient, value: parseEther(value) }); console.log('transactions: ', transactionBatch); // get balance of the account address diff --git a/examples/scripts/commands/NFTTransfer.ts b/examples/scripts/commands/NFTTransfer.ts index 51b01ca..bf7822b 100644 --- a/examples/scripts/commands/NFTTransfer.ts +++ b/examples/scripts/commands/NFTTransfer.ts @@ -1,29 +1,33 @@ -import { ethers } from "ethers"; // @ts-ignore import config from "../../config.json"; -import { ModularSdk } from "../../../src"; import { printOp } from "../../../src/sdk/common/OperationUtils"; import { sleep } from "../../../src/sdk/common"; +import { generateModularSDKInstance } from "../../helpers/sdk-helper"; +import { encodeFunctionData, getAddress, parseAbi } from "viem"; +import { erc721Abi } from "../../../src/sdk/common/abis"; export default async function main( tknid: number, t: string, tkn: string, ) { - const modularSdk = new ModularSdk({ privateKey: config.signingKey }, { chainId: config.chainId, rpcProviderUrl: config.rpcProviderUrl }) - + const modularSdk = generateModularSDKInstance( + config.signingKey, + config.chainId, + config.rpcProviderUrl + ); const address = await modularSdk.getCounterFactualAddress(); const tokenId = tknid; - const tokenAddress = ethers.utils.getAddress(tkn); - const to = ethers.utils.getAddress(t); + const tokenAddress = getAddress(tkn); + const to = getAddress(t); console.log(`Transferring NFT ${tknid} ...`); - const erc721Interface = new ethers.utils.Interface([ - 'function safeTransferFrom(address _from, address _to, uint256 _tokenId)' - ]) - - const erc721Data = erc721Interface.encodeFunctionData('safeTransferFrom', [address, to, tokenId]); + const erc721Data = encodeFunctionData({ + abi: parseAbi(erc721Abi), + functionName: 'safeTransferFrom', + args: [address, to, tokenId] + }); // clear the transaction batch await modularSdk.clearUserOpsFromBatch(); diff --git a/examples/scripts/commands/address.ts b/examples/scripts/commands/address.ts index d4061e7..ffbb373 100644 --- a/examples/scripts/commands/address.ts +++ b/examples/scripts/commands/address.ts @@ -1,10 +1,15 @@ // @ts-ignore import config from "../../config.json"; -import { ModularSdk } from "../../../src"; +import { generateModularSDKInstance } from "../../helpers/sdk-helper"; export default async function main() { - const modularSdk = new ModularSdk({ privateKey: config.signingKey }, { chainId: 80001 }) + const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; + // initializating sdk... + const modularSdk = generateModularSDKInstance( + config.signingKey, + 80001, + bundlerApiKey + );// Testnets dont need apiKey on bundlerProvider const address = await modularSdk.getCounterFactualAddress(); - console.log(`Etherspot address: ${address}`); } diff --git a/examples/scripts/commands/batchErc20Transfer.ts b/examples/scripts/commands/batchErc20Transfer.ts index d71723c..1744f9c 100644 --- a/examples/scripts/commands/batchErc20Transfer.ts +++ b/examples/scripts/commands/batchErc20Transfer.ts @@ -1,10 +1,10 @@ -import { ethers } from "ethers"; -import { ERC20_ABI } from '../../../src/sdk/helpers/abi/ERC20_ABI'; // @ts-ignore import config from "../../config.json"; -import { ModularSdk } from '../../../src'; import { printOp } from "../../../src/sdk/common/OperationUtils"; import { sleep } from "../../../src/sdk/common"; +import { generateModularSDKInstance } from "../../helpers/sdk-helper"; +import { encodeFunctionData, getAddress, Hex, parseAbi, parseUnits, PublicClient } from "viem"; +import { erc20Abi } from "../../../src/sdk/common/abis"; // This example requires several layers of calls: // EntryPoint @@ -17,40 +17,59 @@ export default async function main( t: Array, amt: string, ) { - const modularSdk = new ModularSdk({ privateKey: config.signingKey }, { chainId: config.chainId }) + const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; + // initializating sdk... + const modularSdk = generateModularSDKInstance( + config.signingKey, + config.chainId, + bundlerApiKey + ); const address = await modularSdk.getCounterFactualAddress(); console.log(`Etherspot address: ${address}`) - const provider = new ethers.providers.JsonRpcProvider(config.rpcProviderUrl); - const token = ethers.utils.getAddress(tkn); - const erc20 = new ethers.Contract(token, ERC20_ABI, provider); - const [symbol, decimals] = await Promise.all([ - erc20.symbol(), - erc20.decimals(), - ]); - const amount = ethers.utils.parseUnits(amt, decimals); + const token = getAddress(tkn); + + const publicClient: PublicClient = modularSdk.getPublicClient(); + + const symbol = await publicClient.readContract({ + address: token as Hex, + abi: parseAbi(erc20Abi), + functionName: 'symbol', + args: [] + }) + + const decimals = await publicClient.readContract({ + address: token as Hex, + abi: parseAbi(erc20Abi), + functionName: 'decimals', + args: [] + }) + + const amount = parseUnits(amt, decimals as number); + // clear the transaction batch await modularSdk.clearUserOpsFromBatch(); let dest: Array = []; let data: Array = []; t.map((addr) => addr.trim()).forEach((addr) => { - dest = [...dest, erc20.address]; + dest = [...dest, token]; data = [ ...data, - erc20.interface.encodeFunctionData("transfer", [ - ethers.utils.getAddress(addr), - amount, - ]), + encodeFunctionData({ + functionName: 'transfer', + abi: parseAbi(erc20Abi), + args: [getAddress(addr), amount], + }) ]; }); console.log( `Batch transferring ${amt} ${symbol} to ${dest.length} recipients...` ); - for (let i=0;i Math.floor(new Date().getTime() / 1000); - - main() .catch(console.error) .finally(() => process.exit()); + + const getEpochTimeInSeconds = () => Math.floor(new Date().getTime() / 1000); diff --git a/examples/sessionkeys/get-associated-session-keys.ts b/examples/sessionkeys/get-associated-session-keys.ts new file mode 100644 index 0000000..be4c175 --- /dev/null +++ b/examples/sessionkeys/get-associated-session-keys.ts @@ -0,0 +1,35 @@ +import { EtherspotBundler, ModularSdk, SessionKeyValidator } from '../../src'; +import * as dotenv from 'dotenv'; +import { getViemAccount, sleep } from '../../src/sdk/common'; +import { KeyStore } from '../../src/sdk/SessionKeyValidator'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; + +dotenv.config(); +const secondsInAMonth = 30 * 24 * 60 * 60; // 2592000 seconds + +// tsx examples/sessionkeys/get-associated-session-keys.ts +async function main() { + const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; + + // initializating sdk... + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); + + + // get address of EtherspotWallet + const address: string = await modularSdk.getCounterFactualAddress(); + + console.log('\x1b[33m%s\x1b[0m', `EtherspotWallet address: ${address}`); + + // get instance of SessionKeyValidator + const sessionKeyModule = await SessionKeyValidator.create(modularSdk); + const sessionKeys = await sessionKeyModule.getAssociatedSessionKeys(); + console.log('\x1b[33m%s\x1b[0m', `AssociatedSessionKeys: `, sessionKeys); +} + +main() + .catch(console.error) + .finally(() => process.exit()); + + const getEpochTimeInSeconds = () => Math.floor(new Date().getTime() / 1000); diff --git a/examples/14-rotate-sessionkey-module.ts b/examples/sessionkeys/rotate-sessionkey-module.ts similarity index 59% rename from examples/14-rotate-sessionkey-module.ts rename to examples/sessionkeys/rotate-sessionkey-module.ts index ae18252..3d0c9f5 100644 --- a/examples/14-rotate-sessionkey-module.ts +++ b/examples/sessionkeys/rotate-sessionkey-module.ts @@ -1,40 +1,34 @@ -import { EtherspotBundler, ModularSdk, SessionKeyValidator } from '../src'; +import { EtherspotBundler, ModularSdk, SessionKeyValidator } from '../../src'; import * as dotenv from 'dotenv'; -import { sleep } from '../src/sdk/common'; -import { KeyStore } from '../src/sdk/SessionKeyValidator'; +import { getViemAccount, sleep } from '../../src/sdk/common'; +import { KeyStore } from '../../src/sdk/SessionKeyValidator'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); +// tsx examples/sessionkeys/rotate-sessionkey-module.ts async function main() { const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, - { - chainId: Number(process.env.CHAIN_ID), - bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) - }) - - console.log('address: ', modularSdk.state.EOAAddress); + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); // get address of EtherspotWallet const address: string = await modularSdk.getCounterFactualAddress(); console.log('\x1b[33m%s\x1b[0m', `EtherspotWallet address: ${address}`); - const token = process.env.TOKEN_ADDRESS; - const functionSelector = process.env.FUNCTION_SELECTOR; - const spendingLimit = '100000'; + const token = process.env.TOKEN_ADDRESS as string; // token address + const functionSelector = process.env.FUNCTION_SELECTOR as string; + const spendingLimit = '1000000000000000000000'; const validAfter = new Date().getTime(); const validUntil = new Date().getTime() + 24 * 60 * 60 * 1000; - const oldSessionKey = '0xA9c5a669204EB6d96244c822D45c3441065D1148'; // session key which you want to rotate + const oldSessionKey = '0xa2d5Fd2DE86221EEFB616325ff976EF85E7a64aB'; // get instance of SessionKeyValidator - - const sessionKeyModule = await SessionKeyValidator.create( - modularSdk, - new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) - ) + const sessionKeyModule = await SessionKeyValidator.create(modularSdk); const response = await sessionKeyModule.rotateSessionKey( token, @@ -47,7 +41,7 @@ async function main() { ); console.log('\x1b[33m%s\x1b[0m', `UserOpHash: `, response.userOpHash); - console.log('\x1b[33m%s\x1b[0m', `New SessionKey: `, response.sessionKey); + console.log('\x1b[33m%s\x1b[0m', `SessionKey: `, response.sessionKey); // get transaction hash... console.log('Waiting for transaction...'); @@ -61,9 +55,6 @@ async function main() { const sessionKeys = await sessionKeyModule.getAssociatedSessionKeys(); console.log('\x1b[33m%s\x1b[0m', `AssociatedSessionKeys: `, sessionKeys); - - const sessionData = await sessionKeyModule.sessionData(response.sessionKey); - console.log('\x1b[33m%s\x1b[0m', `SessionData: `, sessionData); } main() diff --git a/examples/03-transfer-erc20-session-key.ts b/examples/sessionkeys/transfer-erc20-session-key.ts similarity index 71% rename from examples/03-transfer-erc20-session-key.ts rename to examples/sessionkeys/transfer-erc20-session-key.ts index 01b36b4..a1ec2f8 100644 --- a/examples/03-transfer-erc20-session-key.ts +++ b/examples/sessionkeys/transfer-erc20-session-key.ts @@ -1,45 +1,43 @@ import { BigNumber, ethers } from 'ethers'; -import { EtherspotBundler, ModularSdk, SessionKeyValidator } from '../src'; -import { printOp } from '../src/sdk/common/OperationUtils'; -import { ERC20_ABI } from '../src/sdk/helpers/abi/ERC20_ABI'; import * as dotenv from 'dotenv'; -import { sleep } from '../src/sdk/common'; +import { printOp } from 'src/sdk/common/OperationUtils'; +import { getViemAccount, sleep } from 'src/sdk/common'; +import { ERC20_ABI } from '../../src/sdk/helpers/abi/ERC20_ABI'; +import { ModularSdk, EtherspotBundler, SessionKeyValidator } from 'src'; +import { encodeFunctionData, parseAbi, parseUnits } from 'viem'; +import { generateModularSDKInstance } from '../helpers/sdk-helper'; dotenv.config(); // add/change these values const recipient = '0xdE79F0eF8A1268DAd0Df02a8e527819A3Cd99d40'; // recipient wallet address -const value = '1'; // transfer value +const value = '0.000001'; // transfer value const tokenAddress = process.env.TOKEN_ADDRESS as string; // token address const decimals = 18; const bundlerApiKey = 'eyJvcmciOiI2NTIzZjY5MzUwOTBmNzAwMDFiYjJkZWIiLCJpZCI6IjMxMDZiOGY2NTRhZTRhZTM4MGVjYjJiN2Q2NDMzMjM4IiwiaCI6Im11cm11cjEyOCJ9'; const erc20SessionKeyValidator = '0x22A55192a663591586241D42E603221eac49ed09'; -// npx ts-node examples/03-transfer-erc20-session-key.ts +// tsx examples/sessionkeys/transfer-erc20-session-key.ts async function main() { - // initializating sdk... - const modularSdk = new ModularSdk({ privateKey: process.env.WALLET_PRIVATE_KEY }, - { chainId: Number(process.env.CHAIN_ID), - bundlerProvider: new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) }) - - const sessionKeyModule = await SessionKeyValidator.create( - modularSdk, - new EtherspotBundler(Number(process.env.CHAIN_ID), bundlerApiKey) - ) + // initializating sdk... + const modularSdk = generateModularSDKInstance( + process.env.WALLET_PRIVATE_KEY as string, + Number(process.env.CHAIN_ID), bundlerApiKey); + // get instance of SessionKeyValidator + const sessionKeyModule = await SessionKeyValidator.create(modularSdk); console.log(`sessionKey SDK initialized`); // get address of EtherspotWallet... const address: string = await modularSdk.getCounterFactualAddress(); console.log('\x1b[33m%s\x1b[0m', `EtherspotWallet address: ${address}`); - - const provider = new ethers.providers.JsonRpcProvider(process.env.BUNDLER_URL) - // get erc20 Contract Interface - const erc20Instance = new ethers.Contract(tokenAddress, ERC20_ABI, provider); - - // get transferFrom encoded data - const transactionData = erc20Instance.interface.encodeFunctionData('transfer', - [recipient, ethers.utils.parseUnits(value, decimals)]) + + // get transferFrom encoded data + const transactionData = encodeFunctionData({ + functionName: 'transfer', + abi: parseAbi(ERC20_ABI), + args: [recipient, parseUnits(value, decimals as number)] + }); // clear the transaction batch await modularSdk.clearUserOpsFromBatch(); diff --git a/examples/viem-test.ts b/examples/viem-test.ts deleted file mode 100644 index 0131ea8..0000000 --- a/examples/viem-test.ts +++ /dev/null @@ -1,14 +0,0 @@ -import * as dotenv from 'dotenv'; -import { getWalletClient } from '../src/sdk/common/viem-utils'; -dotenv.config(); - -// npx ts-node examples/viem-test.ts -async function main() { - const walletClient = getWalletClient({ rpcUrl: 'https://testnet-rpc.etherspot.io/v1/11155111', privateKey: process.env.WALLET_PRIVATE_KEY as string }); - const getAddressesReturnType = await walletClient.getAddresses(); - console.log(`getAddressesReturnType: ${JSON.stringify(getAddressesReturnType)}`); -} - -main() - .catch(console.error) - .finally(() => process.exit()); diff --git a/package-lock.json b/package-lock.json index e7c2211..e33497f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,7 +17,7 @@ "class-validator": "0.14.1", "commander": "10.0.1", "cross-fetch": "3.1.8", - "ethers": "5.7.2", + "crypto": "^1.0.1", "prettier": "2.8.8", "reflect-metadata": "0.1.14", "rxjs": "6.6.7", @@ -34,10 +34,18 @@ "eslint-plugin-prettier": "4.2.1", "npm": "9.6.4", "ts-node": "10.9.1", + "tsup": "^8.2.4", "typedoc": "^0.17.8", - "typescript": "5.5.3" + "typescript": "5.5.3", + "viem": "2.16.3" } }, + "node_modules/@adraffy/ens-normalize": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.10.0.tgz", + "integrity": "sha512-nA9XHtlAkYfJxY7bce8DcN7eKxWWCWkU+1GR9d+U6MbNpfwQp8TI7vqOsBsMcHoT4mBu2kypKoSKnghEzOOq5Q==", + "dev": true + }, "node_modules/@cspotcode/source-map-support": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", @@ -50,6 +58,390 @@ "node": ">=12" } }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz", + "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz", + "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz", + "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz", + "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz", + "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz", + "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz", + "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz", + "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz", + "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz", + "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz", + "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz", + "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz", + "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz", + "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz", + "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz", + "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz", + "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz", + "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz", + "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz", + "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz", + "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz", + "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz", + "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz", + "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@eslint/eslintrc": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", @@ -799,6 +1191,74 @@ "deprecated": "Use @eslint/object-schema instead", "dev": true }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, "node_modules/@jridgewell/resolve-uri": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", @@ -808,10 +1268,19 @@ "node": ">=6.0.0" } }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", "dev": true }, "node_modules/@jridgewell/trace-mapping": { @@ -845,6 +1314,30 @@ "ethers": "^5.7.2" } }, + "node_modules/@noble/curves": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.2.0.tgz", + "integrity": "sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==", + "dev": true, + "dependencies": { + "@noble/hashes": "1.3.2" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@noble/hashes": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.2.tgz", + "integrity": "sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==", + "dev": true, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -1163,8 +1656,262 @@ "node": ">= 10.0.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.21.0.tgz", + "integrity": "sha512-WTWD8PfoSAJ+qL87lE7votj3syLavxunWhzCnx3XFxFiI/BA/r3X7MUM8dVrH8rb2r4AiO8jJsr3ZjdaftmnfA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.21.0.tgz", + "integrity": "sha512-a1sR2zSK1B4eYkiZu17ZUZhmUQcKjk2/j9Me2IDjk1GHW7LB5Z35LEzj9iJch6gtUfsnvZs1ZNyDW2oZSThrkA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.21.0.tgz", + "integrity": "sha512-zOnKWLgDld/svhKO5PD9ozmL6roy5OQ5T4ThvdYZLpiOhEGY+dp2NwUmxK0Ld91LrbjrvtNAE0ERBwjqhZTRAA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.21.0.tgz", + "integrity": "sha512-7doS8br0xAkg48SKE2QNtMSFPFUlRdw9+votl27MvT46vo44ATBmdZdGysOevNELmZlfd+NEa0UYOA8f01WSrg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.21.0.tgz", + "integrity": "sha512-pWJsfQjNWNGsoCq53KjMtwdJDmh/6NubwQcz52aEwLEuvx08bzcy6tOUuawAOncPnxz/3siRtd8hiQ32G1y8VA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.21.0.tgz", + "integrity": "sha512-efRIANsz3UHZrnZXuEvxS9LoCOWMGD1rweciD6uJQIx2myN3a8Im1FafZBzh7zk1RJ6oKcR16dU3UPldaKd83w==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.21.0.tgz", + "integrity": "sha512-ZrPhydkTVhyeGTW94WJ8pnl1uroqVHM3j3hjdquwAcWnmivjAwOYjTEAuEDeJvGX7xv3Z9GAvrBkEzCgHq9U1w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.21.0.tgz", + "integrity": "sha512-cfaupqd+UEFeURmqNP2eEvXqgbSox/LHOyN9/d2pSdV8xTrjdg3NgOFJCtc1vQ/jEke1qD0IejbBfxleBPHnPw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.21.0.tgz", + "integrity": "sha512-ZKPan1/RvAhrUylwBXC9t7B2hXdpb/ufeu22pG2psV7RN8roOfGurEghw1ySmX/CmDDHNTDDjY3lo9hRlgtaHg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.21.0.tgz", + "integrity": "sha512-H1eRaCwd5E8eS8leiS+o/NqMdljkcb1d6r2h4fKSsCXQilLKArq6WS7XBLDu80Yz+nMqHVFDquwcVrQmGr28rg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.21.0.tgz", + "integrity": "sha512-zJ4hA+3b5tu8u7L58CCSI0A9N1vkfwPhWd/puGXwtZlsB5bTkwDNW/+JCU84+3QYmKpLi+XvHdmrlwUwDA6kqw==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.21.0.tgz", + "integrity": "sha512-e2hrvElFIh6kW/UNBQK/kzqMNY5mO+67YtEh9OA65RM5IJXYTWiXjX6fjIiPaqOkBthYF1EqgiZ6OXKcQsM0hg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.21.0.tgz", + "integrity": "sha512-1vvmgDdUSebVGXWX2lIcgRebqfQSff0hMEkLJyakQ9JQUbLDkEaMsPTLOmyccyC6IJ/l3FZuJbmrBw/u0A0uCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.21.0.tgz", + "integrity": "sha512-s5oFkZ/hFcrlAyBTONFY1TWndfyre1wOMwU+6KCpm/iatybvrRgmZVM+vCFwxmC5ZhdlgfE0N4XorsDpi7/4XQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.21.0.tgz", + "integrity": "sha512-G9+TEqRnAA6nbpqyUqgTiopmnfgnMkR3kMukFBDsiyy23LZvUCpiUwjTRx6ezYCjJODXrh52rBR9oXvm+Fp5wg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.0.tgz", + "integrity": "sha512-2jsCDZwtQvRhejHLfZ1JY6w6kEuEtfF9nzYsZxzSlNVKDX+DpsDJ+Rbjkm74nvg2rdx0gwBS+IMdvwJuq3S9pQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@scure/base": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.7.tgz", + "integrity": "sha512-PPNYBslrLNNUQ/Yad37MHYsNQtK67EhWb6WtSvNLLPo7SdVZgkUjD6Dg+5On7zNwmskf8OX7I7Nx5oN+MIWE0g==", + "dev": true, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@scure/bip32": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.3.2.tgz", + "integrity": "sha512-N1ZhksgwD3OBlwTv3R6KFEcPojl/W4ElJOeCZdi+vuI5QmTFwLq3OFf2zd2ROpKvxFdgZ6hUpb0dx9bVNEwYCA==", + "dev": true, + "dependencies": { + "@noble/curves": "~1.2.0", + "@noble/hashes": "~1.3.2", + "@scure/base": "~1.1.2" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@scure/bip39": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.2.1.tgz", + "integrity": "sha512-Z3/Fsz1yr904dduJD0NpiyRHhRYHdcnyh73FZWiV+/qhWi83wNJ3NWolYqCEN+ZWsUz2TWwajJggcRE9r1zUYg==", + "dev": true, + "dependencies": { + "@noble/hashes": "~1.3.0", + "@scure/base": "~1.1.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, "node_modules/@stablelib/aead": { @@ -1346,6 +2093,12 @@ "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", "dev": true }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true + }, "node_modules/@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", @@ -1371,9 +2124,9 @@ "dev": true }, "node_modules/@types/validator": { - "version": "13.11.10", - "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.11.10.tgz", - "integrity": "sha512-e2PNXoXLr6Z+dbfx5zSh9TRlXJrELycxiaXznp4S5+D2M3b9bqJEitNHA5923jhnB2zzFiZHa2f0SI1HoIahpg==" + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.12.0.tgz", + "integrity": "sha512-nH45Lk7oPIJ1RVOF6JgFI6Dy0QpHEzq4QecZhvguxYPDwT8c93prCMqAtiIttm39voZ+DDR+qkNnMpJmMBRqag==" }, "node_modules/@typescript-eslint/eslint-plugin": { "version": "5.45.0", @@ -1736,9 +2489,9 @@ } }, "node_modules/@walletconnect/relay-api": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/@walletconnect/relay-api/-/relay-api-1.0.10.tgz", - "integrity": "sha512-tqrdd4zU9VBNqUaXXQASaexklv6A54yEyQQEXYOCr+Jz8Ket0dmPBDyg19LVSNUN2cipAghQc45/KVmfFJ0cYw==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@walletconnect/relay-api/-/relay-api-1.0.11.tgz", + "integrity": "sha512-tLPErkze/HmC9aCmdZOhtVmYZq1wKfWTJtygQHoWtgg722Jd4homo54Cs4ak2RUFUZIGO2RsOpIcWipaua5D5Q==", "dependencies": { "@walletconnect/jsonrpc-types": "^1.0.2" } @@ -1895,10 +2648,31 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, + "node_modules/abitype": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/abitype/-/abitype-1.0.4.tgz", + "integrity": "sha512-UivtYZOGJGE8rsrM/N5vdRkUpqEZVmuTumfTuolm7m/6O09wprd958rx8kUBwVAAAhQDveGAgD0GJdBuR8s6tw==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/wevm" + }, + "peerDependencies": { + "typescript": ">=5.0.4", + "zod": "^3 >=3.22.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + }, + "zod": { + "optional": true + } + } + }, "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", + "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", "bin": { "acorn": "bin/acorn" }, @@ -1916,10 +2690,13 @@ } }, "node_modules/acorn-walk": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", - "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", + "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", "dev": true, + "dependencies": { + "acorn": "^8.11.0" + }, "engines": { "node": ">=0.4.0" } @@ -1969,6 +2746,12 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, "node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", @@ -2113,6 +2896,30 @@ "ieee754": "^1.2.1" } }, + "node_modules/bundle-require": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-5.0.0.tgz", + "integrity": "sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w==", + "dev": true, + "dependencies": { + "load-tsconfig": "^0.2.3" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "peerDependencies": { + "esbuild": ">=0.18" + } + }, + "node_modules/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -2211,6 +3018,130 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/clipboardy/node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/clipboardy/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "engines": { + "node": ">=16.17.0" + } + }, + "node_modules/clipboardy/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/npm-run-path": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", + "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/clipboardy/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -2257,9 +3188,9 @@ } }, "node_modules/cookie-es": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-1.1.0.tgz", - "integrity": "sha512-L2rLOcK0wzWSfSDA33YR+PUHDG10a8px7rUHKWbGLP4YfbsMed2KFUw5fczvDPbT98DDe3LEzviswl810apTEw==" + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-1.2.2.tgz", + "integrity": "sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==" }, "node_modules/create-require": { "version": "1.1.1", @@ -2301,10 +3232,16 @@ } } }, + "node_modules/crypto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/crypto/-/crypto-1.0.1.tgz", + "integrity": "sha512-VxBKmeNcqQdiUQUW2Tzq0t377b54N2bMtXO/qiLa+6eRRmmC4qT3D4OnTGoT/U6O9aklQ/jTwbOtRMTTY8G0Ig==", + "deprecated": "This package is no longer supported. It's now a built-in Node module. If you've depended on crypto, you should switch to the one that's built-in." + }, "node_modules/debug": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", - "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", + "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", "dev": true, "dependencies": { "ms": "2.1.2" @@ -2411,6 +3348,12 @@ "stream-shift": "^1.0.2" } }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, "node_modules/elliptic": { "version": "6.5.4", "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", @@ -2430,6 +3373,12 @@ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, "node_modules/end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -2438,6 +3387,45 @@ "once": "^1.4.0" } }, + "node_modules/esbuild": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz", + "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.23.1", + "@esbuild/android-arm": "0.23.1", + "@esbuild/android-arm64": "0.23.1", + "@esbuild/android-x64": "0.23.1", + "@esbuild/darwin-arm64": "0.23.1", + "@esbuild/darwin-x64": "0.23.1", + "@esbuild/freebsd-arm64": "0.23.1", + "@esbuild/freebsd-x64": "0.23.1", + "@esbuild/linux-arm": "0.23.1", + "@esbuild/linux-arm64": "0.23.1", + "@esbuild/linux-ia32": "0.23.1", + "@esbuild/linux-loong64": "0.23.1", + "@esbuild/linux-mips64el": "0.23.1", + "@esbuild/linux-ppc64": "0.23.1", + "@esbuild/linux-riscv64": "0.23.1", + "@esbuild/linux-s390x": "0.23.1", + "@esbuild/linux-x64": "0.23.1", + "@esbuild/netbsd-x64": "0.23.1", + "@esbuild/openbsd-arm64": "0.23.1", + "@esbuild/openbsd-x64": "0.23.1", + "@esbuild/sunos-x64": "0.23.1", + "@esbuild/win32-arm64": "0.23.1", + "@esbuild/win32-ia32": "0.23.1", + "@esbuild/win32-x64": "0.23.1" + } + }, "node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -2634,9 +3622,9 @@ } }, "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, "dependencies": { "estraverse": "^5.1.0" @@ -2757,22 +3745,23 @@ } }, "node_modules/execa": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", - "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, "dependencies": { "cross-spawn": "^7.0.3", - "get-stream": "^8.0.1", - "human-signals": "^5.0.0", - "is-stream": "^3.0.0", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^4.1.0", - "strip-final-newline": "^3.0.0" + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, "engines": { - "node": ">=16.17" + "node": ">=10" }, "funding": { "url": "https://github.com/sindresorhus/execa?sponsor=1" @@ -2919,6 +3908,34 @@ "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", "dev": true }, + "node_modules/foreground-child": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -2967,11 +3984,12 @@ "integrity": "sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==" }, "node_modules/get-stream": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", - "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, "engines": { - "node": ">=16" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -3058,18 +4076,18 @@ "dev": true }, "node_modules/h3": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/h3/-/h3-1.11.1.tgz", - "integrity": "sha512-AbaH6IDnZN6nmbnJOH72y3c5Wwh9P97soSVdGSBbcDACRdkC0FEWf25pzx4f/NuOCK6quHmW18yF2Wx+G4Zi1A==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/h3/-/h3-1.12.0.tgz", + "integrity": "sha512-Zi/CcNeWBXDrFNlV0hUBJQR9F7a96RjMeAZweW/ZWkR9fuXrMcvKnSA63f/zZ9l0GgQOZDVHGvXivNN9PWOwhA==", "dependencies": { - "cookie-es": "^1.0.0", - "crossws": "^0.2.2", + "cookie-es": "^1.1.0", + "crossws": "^0.2.4", "defu": "^6.1.4", "destr": "^2.0.3", - "iron-webcrypto": "^1.0.0", + "iron-webcrypto": "^1.1.1", "ohash": "^1.1.3", - "radix3": "^1.1.0", - "ufo": "^1.4.0", + "radix3": "^1.1.2", + "ufo": "^1.5.3", "uncrypto": "^0.1.3", "unenv": "^1.9.0" } @@ -3095,6 +4113,15 @@ "uglify-js": "^3.1.4" } }, + "node_modules/handlebars/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -3154,11 +4181,12 @@ } }, "node_modules/human-signals": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", - "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, "engines": { - "node": ">=16.17.0" + "node": ">=10.17.0" } }, "node_modules/idb-keyval": { @@ -3186,9 +4214,9 @@ ] }, "node_modules/ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, "engines": { "node": ">= 4" @@ -3264,12 +4292,15 @@ } }, "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.0.tgz", + "integrity": "sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==", "dev": true, "dependencies": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3297,6 +4328,15 @@ "node": ">=0.10.0" } }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -3343,11 +4383,12 @@ } }, "node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -3386,14 +4427,53 @@ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, + "node_modules/isows": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/isows/-/isows-1.0.4.tgz", + "integrity": "sha512-hEzjY+x9u9hPmBom9IIAqdJCwNLax+xrPb51vEPpERoFlIxgmZcHzsT5jKG06nvInKOBGvReAVz80Umed5CczQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/wagmi-dev" + } + ], + "peerDependencies": { + "ws": "*" + } + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, "node_modules/jiti": { - "version": "1.21.0", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", - "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", + "version": "1.21.6", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", + "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", "bin": { "jiti": "bin/jiti.js" } }, + "node_modules/joycon": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/joycon/-/joycon-3.1.1.tgz", + "integrity": "sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/js-sdsl": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.2.tgz", @@ -3476,9 +4556,27 @@ } }, "node_modules/libphonenumber-js": { - "version": "1.11.2", - "resolved": "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.11.2.tgz", - "integrity": "sha512-V9mGLlaXN1WETzqQvSu6qf6XVAr3nFuJvWsHcuzCCCo6xUKawwSxOPTpan5CGOSKTn5w/bQuCZcLPJkyysgC3w==" + "version": "1.11.7", + "resolved": "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.11.7.tgz", + "integrity": "sha512-x2xON4/Qg2bRIS11KIN9yCNYUjhtiEjNyptjX0mX+pyKHecxuJVLIpfX1lq9ZD6CrC/rB+y4GBi18c6CEcUR+A==" + }, + "node_modules/lilconfig": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz", + "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true }, "node_modules/listhen": { "version": "1.7.2", @@ -3509,6 +4607,15 @@ "listhen": "bin/listhen.mjs" } }, + "node_modules/load-tsconfig": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/load-tsconfig/-/load-tsconfig-0.2.5.tgz", + "integrity": "sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, "node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -3541,13 +4648,16 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "node_modules/lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", + "dev": true + }, "node_modules/lru-cache": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", - "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", - "engines": { - "node": "14 || >=16.14" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/lunr": { "version": "2.3.9", @@ -3585,11 +4695,11 @@ } }, "node_modules/mcl-wasm/node_modules/@types/node": { - "version": "20.14.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.1.tgz", - "integrity": "sha512-T2MzSGEu+ysB/FkWfqmhV3PLyQlowdptmmgD20C6QxsS8Fmv5SjpZ1ayXaEC0S21/h5UJ9iA6W/5vSNU5l00OA==", + "version": "20.16.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.1.tgz", + "integrity": "sha512-zJDo7wEadFtSyNz5QITDfRcrhqDvQI1xQNQ0VoizPjM/dVAODqqIUWbJPkvsxmTI0MYRGRikcdjMPhOssnPejQ==", "dependencies": { - "undici-types": "~5.26.4" + "undici-types": "~6.19.2" } }, "node_modules/merge-stream": { @@ -3630,14 +4740,12 @@ } }, "node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, "node_modules/minimalistic-assert": { @@ -3671,14 +4779,23 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, "node_modules/mlly": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.0.tgz", - "integrity": "sha512-U9SDaXGEREBYQgfejV97coK0UL1r+qnF2SyO9A3qcI8MzKnsIFKHNVEkrDyNncQTKQQumsasmeq84eNMdBfsNQ==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.1.tgz", + "integrity": "sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==", "dependencies": { "acorn": "^8.11.3", "pathe": "^1.1.2", - "pkg-types": "^1.1.0", + "pkg-types": "^1.1.1", "ufo": "^1.5.3" } }, @@ -3701,6 +4818,17 @@ "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -3720,12 +4848,9 @@ "dev": true }, "node_modules/node-addon-api": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.0.tgz", - "integrity": "sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g==", - "engines": { - "node": "^16 || ^18 || >= 20" - } + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==" }, "node_modules/node-fetch": { "version": "2.7.0", @@ -3917,28 +5042,15 @@ } }, "node_modules/npm-run-path": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", - "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, "dependencies": { - "path-key": "^4.0.0" + "path-key": "^3.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/npm-run-path/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, "node_modules/npm/node_modules/@colors/colors": { @@ -7029,6 +8141,15 @@ "inBundle": true, "license": "ISC" }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/ofetch": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/ofetch/-/ofetch-1.3.4.tgz", @@ -7058,14 +8179,15 @@ } }, "node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, "dependencies": { - "mimic-fn": "^4.0.0" + "mimic-fn": "^2.1.0" }, "engines": { - "node": ">=12" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -7118,6 +8240,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/package-json-from-dist": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", + "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", + "dev": true + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -7162,6 +8290,22 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", @@ -7176,6 +8320,12 @@ "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" }, + "node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "dev": true + }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", @@ -7222,16 +8372,67 @@ "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-4.0.0.tgz", "integrity": "sha512-cK0pekc1Kjy5w9V2/n+8MkZwusa6EyyxfeQCB799CQRhRt/CqYKiWs5adeu8Shve2ZNffvfC/7J64A2PJo1W/Q==" }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, "node_modules/pkg-types": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.1.tgz", - "integrity": "sha512-ko14TjmDuQJ14zsotODv7dBlwxKhUKQEhuhmbqo1uCi9BB0Z2alo/wAXg6q1dTR5TyuqYyWhjtfe/Tsh+X28jQ==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.3.tgz", + "integrity": "sha512-+JrgthZG6m3ckicaOB74TwQ+tBWsFl3qVQg7mN8ulwSOElJ7gBhKzj2VkCPnZ4NlF6kEquYU+RIYNVAvzd54UA==", "dependencies": { "confbox": "^0.1.7", - "mlly": "^1.7.0", + "mlly": "^1.7.1", "pathe": "^1.1.2" } }, + "node_modules/postcss-load-config": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-6.0.1.tgz", + "integrity": "sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "lilconfig": "^3.1.1" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "jiti": ">=1.21.0", + "postcss": ">=8.0.9", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + }, + "postcss": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -7450,6 +8651,41 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rollup": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.21.0.tgz", + "integrity": "sha512-vo+S/lfA2lMS7rZ2Qoubi6I5hwZwzXeUIctILZLbHI+laNtvhhOIon2S1JksA5UEDQ7l3vberd0fxK44lTYjbQ==", + "dev": true, + "dependencies": { + "@types/estree": "1.0.5" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.21.0", + "@rollup/rollup-android-arm64": "4.21.0", + "@rollup/rollup-darwin-arm64": "4.21.0", + "@rollup/rollup-darwin-x64": "4.21.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.21.0", + "@rollup/rollup-linux-arm-musleabihf": "4.21.0", + "@rollup/rollup-linux-arm64-gnu": "4.21.0", + "@rollup/rollup-linux-arm64-musl": "4.21.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.21.0", + "@rollup/rollup-linux-riscv64-gnu": "4.21.0", + "@rollup/rollup-linux-s390x-gnu": "4.21.0", + "@rollup/rollup-linux-x64-gnu": "4.21.0", + "@rollup/rollup-linux-x64-musl": "4.21.0", + "@rollup/rollup-win32-arm64-msvc": "4.21.0", + "@rollup/rollup-win32-ia32-msvc": "4.21.0", + "@rollup/rollup-win32-x64-msvc": "4.21.0", + "fsevents": "~2.3.2" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -7522,9 +8758,9 @@ "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" }, "node_modules/semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, "bin": { "semver": "bin/semver.js" @@ -7570,15 +8806,10 @@ } }, "node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true }, "node_modules/slash": { "version": "3.0.0", @@ -7598,12 +8829,41 @@ } }, "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "version": "0.8.0-beta.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", + "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", "dev": true, + "dependencies": { + "whatwg-url": "^7.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 8" + } + }, + "node_modules/source-map/node_modules/tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/source-map/node_modules/webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "node_modules/source-map/node_modules/whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dev": true, + "dependencies": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" } }, "node_modules/split-on-first": { @@ -7619,33 +8879,98 @@ "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", "engines": { - "node": ">= 10.x" + "node": ">= 10.x" + } + }, + "node_modules/std-env": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", + "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==" + }, + "node_modules/stream-shift": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz", + "integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==" + }, + "node_modules/strict-uri-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", + "integrity": "sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "node_modules/std-env": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", - "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==" - }, - "node_modules/stream-shift": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz", - "integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==" + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true }, - "node_modules/strict-uri-encode": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", - "integrity": "sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==", + "node_modules/string-width/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, "engines": { - "node": ">=4" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, "dependencies": { - "safe-buffer": "~5.2.0" + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, "node_modules/strip-ansi": { @@ -7660,15 +8985,26 @@ "node": ">=8" } }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, "node_modules/strip-json-comments": { @@ -7683,6 +9019,81 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/sucrase/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/sucrase/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/sucrase/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sucrase/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -7724,6 +9135,27 @@ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, "node_modules/thread-stream": { "version": "0.15.2", "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-0.15.2.tgz", @@ -7748,6 +9180,21 @@ "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true + }, "node_modules/ts-node": { "version": "10.9.1", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", @@ -7796,6 +9243,66 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" }, + "node_modules/tsup": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.2.4.tgz", + "integrity": "sha512-akpCPePnBnC/CXgRrcy72ZSntgIEUa1jN0oJbbvpALWKNOz1B7aM+UVDWGRGIO/T/PZugAESWDJUAb5FD48o8Q==", + "dev": true, + "dependencies": { + "bundle-require": "^5.0.0", + "cac": "^6.7.14", + "chokidar": "^3.6.0", + "consola": "^3.2.3", + "debug": "^4.3.5", + "esbuild": "^0.23.0", + "execa": "^5.1.1", + "globby": "^11.1.0", + "joycon": "^3.1.1", + "picocolors": "^1.0.1", + "postcss-load-config": "^6.0.1", + "resolve-from": "^5.0.0", + "rollup": "^4.19.0", + "source-map": "0.8.0-beta.0", + "sucrase": "^3.35.0", + "tree-kill": "^1.2.2" + }, + "bin": { + "tsup": "dist/cli-default.js", + "tsup-node": "dist/cli-node.js" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@microsoft/api-extractor": "^7.36.0", + "@swc/core": "^1", + "postcss": "^8.4.12", + "typescript": ">=4.5.0" + }, + "peerDependenciesMeta": { + "@microsoft/api-extractor": { + "optional": true + }, + "@swc/core": { + "optional": true + }, + "postcss": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, + "node_modules/tsup/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/tsutils": { "version": "3.21.0", "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", @@ -7894,14 +9401,14 @@ } }, "node_modules/ufo": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.3.tgz", - "integrity": "sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==" + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.4.tgz", + "integrity": "sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==" }, "node_modules/uglify-js": { - "version": "3.17.4", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", - "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", + "version": "3.19.2", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.2.tgz", + "integrity": "sha512-S8KA6DDI47nQXJSi2ctQ629YzwOVs+bQML6DAtvy0wgNdpi+0ySpQK0g2pxBq2xfF2z3YCscu7NNA8nXT9PlIQ==", "dev": true, "optional": true, "bin": { @@ -7925,20 +9432,20 @@ "integrity": "sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==" }, "node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==" }, "node_modules/unenv": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/unenv/-/unenv-1.9.0.tgz", - "integrity": "sha512-QKnFNznRxmbOF1hDgzpqrlIf6NC5sbZ2OJ+5Wl3OX8uM+LUJXbj4TXvLJCtwbPTmbMHCLIz6JLKNinNsMShK9g==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/unenv/-/unenv-1.10.0.tgz", + "integrity": "sha512-wY5bskBQFL9n3Eca5XnhH6KbUo/tfvkwm9OpcdCvLaeA7piBNbavbOKJySEwQ1V0RH6HvNlSAFRTpvTqgKRQXQ==", "dependencies": { "consola": "^3.2.3", - "defu": "^6.1.3", + "defu": "^6.1.4", "mime": "^3.0.0", - "node-fetch-native": "^1.6.1", - "pathe": "^1.1.1" + "node-fetch-native": "^1.6.4", + "pathe": "^1.1.2" } }, "node_modules/universalify": { @@ -8069,6 +9576,57 @@ "node": ">= 0.10" } }, + "node_modules/viem": { + "version": "2.16.3", + "resolved": "https://registry.npmjs.org/viem/-/viem-2.16.3.tgz", + "integrity": "sha512-6ExbIpi77C1HzGSjx6W+fn39Cz1ULlVV74XHxi1kYpOAqY7/iAoynK5X2aQp2LvxstTqS1GIKEdpCAZ8dKi2Ag==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/wevm" + } + ], + "dependencies": { + "@adraffy/ens-normalize": "1.10.0", + "@noble/curves": "1.2.0", + "@noble/hashes": "1.3.2", + "@scure/bip32": "1.3.2", + "@scure/bip39": "1.2.1", + "abitype": "1.0.4", + "isows": "1.0.4", + "ws": "8.17.1" + }, + "peerDependencies": { + "typescript": ">=5.0.4" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/viem/node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", @@ -8112,15 +9670,109 @@ "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", "dev": true }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "engines": { "node": ">=8.3.0" }, diff --git a/package.json b/package.json index ca631a8..1a15229 100644 --- a/package.json +++ b/package.json @@ -17,34 +17,35 @@ ], "license": "MIT", "homepage": "https://etherspot.io", - "main": "./dist/node.js", + "main": "./dist/cjs/index.js", "browser": { "./dist/browser.js": "./dist/browser.js", "child_process": false }, - "types": "./dist/index.d.ts", + "types": "./dist/cjs/index.d.ts", "scripts": { "start": "exit 1", - "01-get-address": "./node_modules/.bin/ts-node ./examples/01-get-address", - "02-transfer-funds": "./node_modules/.bin/ts-node ./examples/02-transfer-funds", - "03-transfer-erc20": "./node_modules/.bin/ts-node ./examples/03-transfer-erc20", - "03-transfer-erc20-session-key": "./node_modules/.bin/ts-node ./examples/03-transfer-erc20-session-key", - "04-transfer-nft": "./node_modules/.bin/ts-node ./examples/04-transfer-nft", - "05-add-guardians": "./node_modules/.bin/ts-node ./examples/05-add-guardians", - "06-paymaster": "./node_modules/.bin/ts-node ./examples/06-paymaster", - "07-callGasLimit": "./node_modules/.bin/ts-node ./examples/07-callGasLimit", - "08-get-multiple-accounts": "./node_modules/.bin/ts-node ./examples/08-get-multiple-accounts", - "09-concurrent-userops": "./node_modules/.bin/ts-node ./examples/09-concurrent-userops", - "11-install-module": "./node_modules/.bin/ts-node ./examples/11-install-module", - "12-uninstall-module": "./node_modules/.bin/ts-node ./examples/12-uninstall-module", - "13-enable-sessionkey-module": "./node_modules/.bin/ts-node ./examples/13-enable-sessionkey-module", - "14-rotate-sessionkey-module": "./node_modules/.bin/ts-node ./examples/14-rotate-sessionkey-module", - "15-disable-sessionkey-module": "./node_modules/.bin/ts-node ./examples/15-disable-sessionkey-module", + "get-address": "tsx ./examples/basics/get-address", + "transfer-funds": "tsx ./examples/basics/transfer-funds", + "transfer-erc20": "tsx ./examples/basics/transfer-erc20", + "transfer-nft": "tsx ./examples/basics/transfer-nft", + "add-guardians": "tsx ./examples/basics/add-guardians", + "paymaster": "tsx ./examples/paymaster/paymaster", + "callGasLimit": "tsx ./examples/basics/callGasLimit", + "get-multiple-accounts": "tsx ./examples/basics/get-multiple-accounts", + "concurrent-userops": "tsx ./examples/basics/concurrent-userops", + "install-module": "tsx ./examples/modules/install-module", + "uninstall-module": "tsx ./examples/modules/uninstall-module", + "enable-sessionkey-module": "tsx ./examples/sessionkeys/enable-sessionkey-module", + "rotate-sessionkey-module": "tsx ./examples/sessionkeys/rotate-sessionkey-module", + "disable-sessionkey-module": "tsx ./examples/sessionkeys/disable-sessionkey-module", "format": "prettier --write \"{src,test,examples}/**/*.ts\"", "lint": "eslint \"{src,test,examples}/**/*.ts\"", "lint-fix": "npm run lint -- --fix", "prebuild": "rimraf ./dist", - "build": "npm run compile", + "build:cjs": "tsup src --format cjs --out-dir dist/cjs", + "build:esm": "tsup src --format esm --out-dir dist/esm", + "build": "npm run build:cjs && npm run build:esm", "compile": "tsc -p ./tsconfig.build.json", "compile-watch": "npm run compile -- --watch", "init": "ts-node examples/scripts/init.ts", @@ -70,7 +71,7 @@ "class-validator": "0.14.1", "commander": "10.0.1", "cross-fetch": "3.1.8", - "ethers": "5.7.2", + "crypto": "^1.0.1", "prettier": "2.8.8", "reflect-metadata": "0.1.14", "rxjs": "6.6.7", @@ -87,7 +88,9 @@ "eslint-plugin-prettier": "4.2.1", "npm": "9.6.4", "ts-node": "10.9.1", + "tsup": "^8.2.4", "typedoc": "^0.17.8", - "typescript": "5.5.3" + "typescript": "5.5.3", + "viem": "2.16.3" } } diff --git a/src/sdk/SessionKeyValidator/SessionKeyValidator.ts b/src/sdk/SessionKeyValidator/SessionKeyValidator.ts index aead42a..6d4bd20 100644 --- a/src/sdk/SessionKeyValidator/SessionKeyValidator.ts +++ b/src/sdk/SessionKeyValidator/SessionKeyValidator.ts @@ -1,27 +1,27 @@ -import { Contract, ethers, providers } from "ethers"; import { ModularSdk } from "../sdk"; import { KeyStore, PERMISSIONS_URL } from "./constants"; -import { SessionKeyResponse, GenerateSessionKeyResponse, GetSessionKeyResponse, DeleteSessionKeyResponse, SessionData } from "./interfaces"; -import { BundlerProvider } from "../bundler"; +import { SessionKeyResponse, GenerateSessionKeyResponse, GetNonceResponse, GetSessionKeyResponse, DeleteSessionKeyResponse, SessionData } from "./interfaces"; import { DEFAULT_ERC20_SESSION_KEY_VALIDATOR_ADDRESS, Networks } from "../network/constants"; -import { MODULE_TYPE, UserOperation, deepHexlify } from "../common"; -import { resolveProperties } from "ethers/lib/utils"; -import * as ERC20SessionKeyValidatorABI from "../abi/ERC20SessionKeyValidator.json"; -import { ERC20_ABI } from "../helpers/abi/ERC20_ABI"; +import { encodeFunctionData, Hex, parseAbi, PublicClient } from "viem"; +import { erc20Abi, sessionKeyValidatorAbi } from "../common/abis"; +import { MODULE_TYPE, deepHexlify, resolveProperties, UserOperation } from "../common"; + export class SessionKeyValidator { private modularSdk: ModularSdk; - private provider: providers.JsonRpcProvider; + private providerURL: string; private erc20SessionKeyValidator?: string; private chainId?: number; + private publicClient: PublicClient; - private constructor(modularSdk: ModularSdk, provider: BundlerProvider) { + private constructor(modularSdk: ModularSdk) { this.modularSdk = modularSdk; - this.provider = new providers.JsonRpcProvider(provider.url); + this.publicClient = modularSdk.getPublicClient(); + this.providerURL = modularSdk.getProviderUrl(); } - static async create(modularSdk: ModularSdk, provider: BundlerProvider) { - const sessionKeyValidator = new SessionKeyValidator(modularSdk, provider); + static async create(modularSdk: ModularSdk) { + const sessionKeyValidator = new SessionKeyValidator(modularSdk); await sessionKeyValidator.initialize(modularSdk); return sessionKeyValidator; } @@ -43,39 +43,41 @@ export class SessionKeyValidator { keyStore?: KeyStore, ): Promise { try { - const account = await this.modularSdk.getCounterFactualAddress(); - const apiKeyMatch = this.provider.connection.url.match(/api-key=([^&]+)/); + const etherspotWalletAddress = await this.modularSdk.getCounterFactualAddress(); + const chainId = await this.getChainId(); + const erc20SessionKeyValidatorAddress = await this.getERC20SessionKeyValidator(); + const apiKeyMatch = this.providerURL.match(/api-key=([^&]+)/); const apiKey = apiKeyMatch ? apiKeyMatch[1] : null; - if(this.erc20SessionKeyValidator == null) { + if (erc20SessionKeyValidatorAddress == null) { throw new Error('ERC20SessionKeyValidator contract address is required'); } - if(account == null) { - throw new Error('Account is required'); + if (etherspotWalletAddress == null) { + throw new Error('etherspotWalletAddress is required'); } - if(apiKey == null) { + if (apiKey == null) { throw new Error('API Key is required'); } - if(!token || token == null || token == '') { + if (!token || token == null || token == '') { throw new Error('Token is required'); - } + } - if(!functionSelector || functionSelector == null || functionSelector == '') { + if (!functionSelector || functionSelector == null || functionSelector == '') { throw new Error('Function Selector is required'); } - const isValidTokenIndicator = await this.isValidToken(token); + const isAValidTokenIndicator = await this.isAValidToken(token); - if (!isValidTokenIndicator) { - throw new Error(`Token: ${token} is does not exist or is invalid`); + if (!isAValidTokenIndicator) { + throw new Error(`Token: ${token} does not exist or is invalid`); } const data = await this.generateSessionKeyData( - account, - this.chainId, + etherspotWalletAddress, + chainId, token, functionSelector, spendingLimit, @@ -86,35 +88,27 @@ export class SessionKeyValidator { keyStore ? keyStore : null, ) - // Convert the imported ABI object to an array if necessary - //const parsedABI = Array.isArray(ERC20SessionKeyValidatorABI) ? ERC20SessionKeyValidatorABI : Object.values(ERC20SessionKeyValidatorABI); - - //console.log(`abis is: ${JSON.stringify(parsedABI)}`); - - if (!Array.isArray(ERC20SessionKeyValidatorABI.abi)) { - throw new Error("ABI should be an array of JSON objects"); - } - - const erc20SessionKeyValidatorContract = new Contract(this.erc20SessionKeyValidator, ERC20SessionKeyValidatorABI.abi, this.provider); - const enableSessionKeyData = erc20SessionKeyValidatorContract.interface.encodeFunctionData('enableSessionKey', [data.enableSessionKeyData]); + const enableSessionKeyData = encodeFunctionData({ + functionName: 'enableSessionKey', + abi: parseAbi(sessionKeyValidatorAbi), + args: [data.enableSessionKeyData], + }); this.modularSdk.clearUserOpsFromBatch(); - await this.modularSdk.addUserOpsToBatch({ to: this.erc20SessionKeyValidator, data: enableSessionKeyData }); + await this.modularSdk.addUserOpsToBatch({ to: erc20SessionKeyValidatorAddress, data: enableSessionKeyData }); try { const op = await this.modularSdk.estimate(); - - const uoHash = await this.modularSdk.send(op); - - if (!uoHash) await this.deleteSessionKey(account, this.chainId, apiKey, data.sessionKey); + const uoHash = await this.modularSdk.send(op) + if (!uoHash) await this.deleteSessionKey(etherspotWalletAddress, chainId, apiKey, data.sessionKey); return { userOpHash: uoHash, sessionKey: data.sessionKey, } } catch (error) { - await this.deleteSessionKey(account, this.chainId, apiKey, data.sessionKey); + await this.deleteSessionKey(etherspotWalletAddress, chainId, apiKey, data.sessionKey); throw error; } } catch (error) { @@ -122,6 +116,7 @@ export class SessionKeyValidator { } } + async rotateSessionKey( token: string, functionSelector: string, @@ -133,18 +128,20 @@ export class SessionKeyValidator { ): Promise { try { const account = await this.modularSdk.getCounterFactualAddress(); - const apiKeyMatch = this.provider.connection.url.match(/api-key=([^&]+)/); + const chainId = await this.getChainId(); + const erc20SessionKeyValidatorAddress = await this.getERC20SessionKeyValidator(); + const apiKeyMatch = this.providerURL.match(/api-key=([^&]+)/); const apiKey = apiKeyMatch ? apiKeyMatch[1] : null; - const isValidTokenIndicator = await this.isValidToken(token); + const isAValidTokenIndicator = await this.isAValidToken(token); - if (!isValidTokenIndicator) { + if (!isAValidTokenIndicator) { throw new Error(`Token: ${token} is does not exist or is invalid`); } const data = await this.generateSessionKeyData( account, - this.chainId, + chainId, token, functionSelector, spendingLimit, @@ -156,15 +153,15 @@ export class SessionKeyValidator { oldSessionKey, ) - const erc20SessionKeyValidatorContract = new Contract(this.erc20SessionKeyValidator, ERC20SessionKeyValidatorABI.abi, this.provider); - - const rotateSessionKeyData = erc20SessionKeyValidatorContract.interface.encodeFunctionData('rotateSessionKey', - [data.oldSessionKey, data.enableSessionKeyData] - ); + const rotateSessionKeyData = encodeFunctionData({ + functionName: 'rotateSessionKey', + abi: parseAbi(sessionKeyValidatorAbi), + args: [data.oldSessionKey, data.enableSessionKeyData], + }); this.modularSdk.clearUserOpsFromBatch(); - await this.modularSdk.addUserOpsToBatch({ to: this.erc20SessionKeyValidator, data: rotateSessionKeyData }); + await this.modularSdk.addUserOpsToBatch({ to: erc20SessionKeyValidatorAddress, data: rotateSessionKeyData }); try { const op = await this.modularSdk.estimate(); @@ -172,10 +169,10 @@ export class SessionKeyValidator { const uoHash = await this.modularSdk.send(op); if (uoHash) { - await this.deleteSessionKey(account, this.chainId, apiKey, data.oldSessionKey); + await this.deleteSessionKey(account, chainId, apiKey, data.oldSessionKey); } else { - await this.deleteSessionKey(account, this.chainId, apiKey, data.sessionKey); + await this.deleteSessionKey(account, chainId, apiKey, data.sessionKey); } return { @@ -183,7 +180,7 @@ export class SessionKeyValidator { sessionKey: data.sessionKey, } } catch (error) { - await this.deleteSessionKey(account, this.chainId, apiKey, data.sessionKey); + await this.deleteSessionKey(account, chainId, apiKey, data.sessionKey); throw error; } } catch (error) { @@ -194,32 +191,34 @@ export class SessionKeyValidator { async disableSessionKey(sessionKey: string): Promise { try { const account = await this.modularSdk.getCounterFactualAddress(); - const apiKeyMatch = this.provider.connection.url.match(/api-key=([^&]+)/); + const erc20SessionKeyValidator = await this.getERC20SessionKeyValidator(); + const chainId = await this.getChainId(); + const apiKeyMatch = this.providerURL.match(/api-key=([^&]+)/); const apiKey = apiKeyMatch ? apiKeyMatch[1] : null; const getSessionKeyData = await this.getSessionKey( account, - this.chainId, + chainId, apiKey, sessionKey, ) - const erc20SessionKeyValidatorContract = new Contract(this.erc20SessionKeyValidator, ERC20SessionKeyValidatorABI.abi, this.provider); - - const disableSessionKeyData = erc20SessionKeyValidatorContract.interface.encodeFunctionData('disableSessionKey', - [getSessionKeyData.sessionKey] - ); + const disableSessionKeyData = encodeFunctionData({ + functionName: 'disableSessionKey', + abi: parseAbi(sessionKeyValidatorAbi), + args: [getSessionKeyData.sessionKey], + }); this.modularSdk.clearUserOpsFromBatch(); - await this.modularSdk.addUserOpsToBatch({ to: this.erc20SessionKeyValidator, data: disableSessionKeyData }); + await this.modularSdk.addUserOpsToBatch({ to: erc20SessionKeyValidator, data: disableSessionKeyData }); const op = await this.modularSdk.estimate(); const uoHash = await this.modularSdk.send(op); if (uoHash) { - await this.deleteSessionKey(account, this.chainId, apiKey, sessionKey); + await this.deleteSessionKey(account, chainId, apiKey, sessionKey); } return { @@ -231,18 +230,18 @@ export class SessionKeyValidator { } } - async signUserOpWithSessionKey(sessionKey: string, userOp: UserOperation): Promise { + async getNonce(sessionKey: string): Promise { try { const account = await this.modularSdk.getCounterFactualAddress(); - const apiKeyMatch = this.provider.connection.url.match(/api-key=([^&]+)/); + const chainId = await this.getChainId(); + const apiKeyMatch = this.providerURL.match(/api-key=([^&]+)/); const apiKey = apiKeyMatch ? apiKeyMatch[1] : null; - const data: UserOperation = await this.getSignUserOp( + const data = await this.getNonceData( account, - this.chainId, + chainId, apiKey, - sessionKey, - userOp, + sessionKey ) return data; @@ -254,19 +253,37 @@ export class SessionKeyValidator { async getAssociatedSessionKeys(): Promise { const account = await this.modularSdk.getCounterFactualAddress(); - const erc20SessionKeyValidatorContract = new Contract(this.erc20SessionKeyValidator, ERC20SessionKeyValidatorABI.abi, this.provider); + const erc20SessionKeyValidator = await this.getERC20SessionKeyValidator(); + + const response = await this.publicClient.simulateContract({ + account: account as Hex, + address: erc20SessionKeyValidator as Hex, + abi: parseAbi(sessionKeyValidatorAbi), + functionName: 'getAssociatedSessionKeys', + args: [] + }); - return await erc20SessionKeyValidatorContract.callStatic.getAssociatedSessionKeys({ from: account }); + return response.result as string[]; } async sessionData(sessionKey: string): Promise { const account = await this.modularSdk.getCounterFactualAddress(); - const erc20SessionKeyValidatorContract = new Contract(this.erc20SessionKeyValidator, ERC20SessionKeyValidatorABI.abi, this.provider); + const erc20SessionKeyValidatorAddress = await this.getERC20SessionKeyValidator(); - const data = await erc20SessionKeyValidatorContract.callStatic.sessionData(sessionKey, account); + const data = await this.publicClient.simulateContract({ + account: account as Hex, + address: erc20SessionKeyValidatorAddress as Hex, + abi: parseAbi(sessionKeyValidatorAbi), + functionName: 'sessionData', + args: [sessionKey, account] + }); - const { token, funcSelector, spendingLimit, validAfter, validUntil, live } = data; + if(!data.result || data.result == null) { + throw new Error('Session data not found'); + } + + const { token, funcSelector, spendingLimit, validAfter, validUntil, live } = data.result; return { token, @@ -283,15 +300,15 @@ export class SessionKeyValidator { return this.erc20SessionKeyValidator; } - await this.getChainId(); - this.erc20SessionKeyValidator = Networks[this.chainId]?.contracts?.erc20SessionKeyValidator || DEFAULT_ERC20_SESSION_KEY_VALIDATOR_ADDRESS; + const chainId = await this.getChainId(); + this.erc20SessionKeyValidator = Networks[chainId]?.contracts?.erc20SessionKeyValidator || DEFAULT_ERC20_SESSION_KEY_VALIDATOR_ADDRESS; return this.erc20SessionKeyValidator; } private async getChainId(): Promise { if (!this.chainId) { - this.chainId = (await this.provider.getNetwork()).chainId; + this.chainId = this.publicClient.chain.id; } return this.chainId; } @@ -311,36 +328,36 @@ export class SessionKeyValidator { ): Promise { let response = null; try { - if(!apiKey || apiKey == null) { + if (!apiKey || apiKey == null) { throw new Error('API Key is required'); } - const url = `${PERMISSIONS_URL}/account/generateSessionKeyData?apiKey=${apiKey}`; + let url = `${PERMISSIONS_URL}/account/generateSessionKeyData?apiKey=${apiKey}`; - if(account == null) { + if (account == null) { throw new Error('Account is required'); } - + const now = Math.floor(Date.now() / 1000); - if(validAfter < now + 29) { + if (validAfter < now + 29) { throw new Error('validAfter must be greater than current time by at least 30 seconds'); } - if(validUntil == 0 || validUntil < validAfter || validUntil < now) { + if (validUntil == 0 || validUntil < validAfter || validUntil < now) { throw new Error('validUntil must be greater than validAfter and current time'); } - if(!token || token == null || token == '') { + if (!token || token == null || token == '') { throw new Error('Token is required'); - } + } - if(!functionSelector || functionSelector == null || functionSelector == '') { + if (!functionSelector || functionSelector == null || functionSelector == '') { throw new Error('Function Selector is required'); } - if(!spendingLimit || spendingLimit == null || spendingLimit == '') { + if (!spendingLimit || spendingLimit == null || spendingLimit == '') { throw new Error('Spending Limit is required'); } @@ -425,6 +442,7 @@ export class SessionKeyValidator { method: 'DELETE', headers: { 'Accept': 'application/json', + 'Content-Type': 'application/json', }, }); @@ -474,13 +492,79 @@ export class SessionKeyValidator { } } - async isValidToken(token: string): Promise { + private async getNonceData( + account: string, + chainId: number, + apiKey: string, + sessionKey: string, + ): Promise { + let response = null; - const erc20 = new Contract(token, ERC20_ABI, this.provider); - const decimals = await erc20.decimals(); - if (!decimals || decimals as number == 0) { + try { + let url = `${PERMISSIONS_URL}/account/getNonce?account=${account}&chainId=${chainId}&sessionKey=${sessionKey}`; + if (apiKey) url += `&apiKey=${apiKey}`; + + response = await fetch(url, { + method: 'GET', + headers: { + 'Accept': 'application/json', + 'Content-Type': 'application/json', + }, + }); + + if (response.status === 200) { + const responseJson: GetNonceResponse = await response.json(); + return responseJson + } else { + const responseJson = await response.json(); + throw new Error(responseJson.message) + } + } catch (err) { + throw new Error(err.message) + } + } + + async signUserOpWithSessionKey(sessionKey: string, userOp: UserOperation): Promise { + try { + const account = await this.modularSdk.getCounterFactualAddress(); + const chainId = await this.getChainId(); + const apiKeyMatch = this.providerURL.match(/api-key=([^&]+)/); + const apiKey = apiKeyMatch ? apiKeyMatch[1] : null; + + const data: UserOperation = await this.getSignUserOp( + account, + chainId, + apiKey, + sessionKey, + userOp, + ) + + return data; + } catch (error) { + throw error; + } + } + + async isAValidToken(token: string): Promise { + + let decimals = null; + + try { + decimals = await this.publicClient.readContract({ + address: token as Hex, + abi: parseAbi(erc20Abi), + functionName: 'decimals', + args: [] + }); + } catch (error) { + console.error(`Token: ${token} is does not exist or is invalid`); return false; } + + if (!decimals || decimals == null || decimals as number == 0) { + return false; + } + return true; } } diff --git a/src/sdk/SessionKeyValidator/interfaces.ts b/src/sdk/SessionKeyValidator/interfaces.ts index 547b525..5bbafde 100644 --- a/src/sdk/SessionKeyValidator/interfaces.ts +++ b/src/sdk/SessionKeyValidator/interfaces.ts @@ -1,4 +1,4 @@ -import { BigNumber } from "ethers"; +import { BigNumber } from "../types/bignumber"; export interface GenerateSessionKeyResponse { sessionKey: string; diff --git a/src/sdk/abi/ERC20SessionKeyValidator.json b/src/sdk/abi/ERC20SessionKeyValidator.json deleted file mode 100644 index b2bef74..0000000 --- a/src/sdk/abi/ERC20SessionKeyValidator.json +++ /dev/null @@ -1,696 +0,0 @@ -{ - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "smartAccount", - "type": "address" - } - ], - "name": "AlreadyInitialized", - "type": "error" - }, - { - "inputs": [], - "name": "ERC20SKV_InvalidFunctionSelector", - "type": "error" - }, - { - "inputs": [], - "name": "ERC20SKV_InvalidSessionKey", - "type": "error" - }, - { - "inputs": [], - "name": "ERC20SKV_InvalidSpendingLimit", - "type": "error" - }, - { - "inputs": [], - "name": "ERC20SKV_InvalidToken", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "uint48", - "name": "validAfter", - "type": "uint48" - } - ], - "name": "ERC20SKV_InvalidValidAfter", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "uint48", - "name": "validUntil", - "type": "uint48" - } - ], - "name": "ERC20SKV_InvalidValidUntil", - "type": "error" - }, - { - "inputs": [], - "name": "ERC20SKV_ModuleAlreadyInstalled", - "type": "error" - }, - { - "inputs": [], - "name": "ERC20SKV_ModuleNotInstalled", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sessionKey", - "type": "address" - } - ], - "name": "ERC20SKV_SessionKeyAlreadyExists", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "session", - "type": "address" - } - ], - "name": "ERC20SKV_SessionKeyDoesNotExist", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sessionKey", - "type": "address" - } - ], - "name": "ERC20SKV_SessionPaused", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "target", - "type": "address" - } - ], - "name": "InvalidTargetAddress", - "type": "error" - }, - { - "inputs": [], - "name": "NotImplemented", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "smartAccount", - "type": "address" - } - ], - "name": "NotInitialized", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "wallet", - "type": "address" - } - ], - "name": "ERC20SKV_ModuleInstalled", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "wallet", - "type": "address" - } - ], - "name": "ERC20SKV_ModuleUninstalled", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "sessionKey", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "wallet", - "type": "address" - } - ], - "name": "ERC20SKV_SessionKeyDisabled", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "sessionKey", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "wallet", - "type": "address" - } - ], - "name": "ERC20SKV_SessionKeyEnabled", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "sessionKey", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "wallet", - "type": "address" - } - ], - "name": "ERC20SKV_SessionKeyPaused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "sessionKey", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "wallet", - "type": "address" - } - ], - "name": "ERC20SKV_SessionKeyUnpaused", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_session", - "type": "address" - } - ], - "name": "disableSessionKey", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "_sessionData", - "type": "bytes" - } - ], - "name": "enableSessionKey", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getAssociatedSessionKeys", - "outputs": [ - { - "internalType": "address[]", - "name": "", - "type": "address[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_sessionKey", - "type": "address" - } - ], - "name": "getSessionKeyData", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "token", - "type": "address" - }, - { - "internalType": "bytes4", - "name": "funcSelector", - "type": "bytes4" - }, - { - "internalType": "uint256", - "name": "spendingLimit", - "type": "uint256" - }, - { - "internalType": "uint48", - "name": "validAfter", - "type": "uint48" - }, - { - "internalType": "uint48", - "name": "validUntil", - "type": "uint48" - }, - { - "internalType": "bool", - "name": "live", - "type": "bool" - } - ], - "internalType": "struct IERC20SessionKeyValidator.SessionData", - "name": "", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "initialized", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "smartAccount", - "type": "address" - } - ], - "name": "isInitialized", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "moduleTypeId", - "type": "uint256" - } - ], - "name": "isModuleType", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_sessionKey", - "type": "address" - } - ], - "name": "isSessionKeyLive", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "hash", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "isValidSignatureWithSender", - "outputs": [ - { - "internalType": "bytes4", - "name": "", - "type": "bytes4" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "onInstall", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "onUninstall", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_oldSessionKey", - "type": "address" - }, - { - "internalType": "bytes", - "name": "_newSessionData", - "type": "bytes" - } - ], - "name": "rotateSessionKey", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sessionKey", - "type": "address" - }, - { - "internalType": "address", - "name": "wallet", - "type": "address" - } - ], - "name": "sessionData", - "outputs": [ - { - "internalType": "address", - "name": "token", - "type": "address" - }, - { - "internalType": "bytes4", - "name": "funcSelector", - "type": "bytes4" - }, - { - "internalType": "uint256", - "name": "spendingLimit", - "type": "uint256" - }, - { - "internalType": "uint48", - "name": "validAfter", - "type": "uint48" - }, - { - "internalType": "uint48", - "name": "validUntil", - "type": "uint48" - }, - { - "internalType": "bool", - "name": "live", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_sessionKey", - "type": "address" - } - ], - "name": "toggleSessionKeyPause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_sessionKey", - "type": "address" - }, - { - "components": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "nonce", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "initCode", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "callData", - "type": "bytes" - }, - { - "internalType": "bytes32", - "name": "accountGasLimits", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "preVerificationGas", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "gasFees", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "paymasterAndData", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "signature", - "type": "bytes" - } - ], - "internalType": "struct PackedUserOperation", - "name": "userOp", - "type": "tuple" - } - ], - "name": "validateSessionKeyParams", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "nonce", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "initCode", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "callData", - "type": "bytes" - }, - { - "internalType": "bytes32", - "name": "accountGasLimits", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "preVerificationGas", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "gasFees", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "paymasterAndData", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "signature", - "type": "bytes" - } - ], - "internalType": "struct PackedUserOperation", - "name": "userOp", - "type": "tuple" - }, - { - "internalType": "bytes32", - "name": "userOpHash", - "type": "bytes32" - } - ], - "name": "validateUserOp", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "wallet", - "type": "address" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "name": "walletSessionKeys", - "outputs": [ - { - "internalType": "address", - "name": "assocSessionKeys", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - } - ] -} \ No newline at end of file diff --git a/src/sdk/base/BaseAccountAPI.ts b/src/sdk/base/BaseAccountAPI.ts index e704a73..e8ea551 100644 --- a/src/sdk/base/BaseAccountAPI.ts +++ b/src/sdk/base/BaseAccountAPI.ts @@ -1,25 +1,25 @@ -import { ethers, BigNumber, BigNumberish, TypedDataField } from 'ethers'; -import { BehaviorSubject } from 'rxjs'; -import { Provider } from '@ethersproject/providers'; -import { IEntryPoint, EntryPoint__factory } from '../contracts'; -import { UserOperationStruct } from '../contracts/account-abstraction/contracts/core/BaseAccount'; import { TransactionDetailsForUserOp } from './TransactionDetailsForUserOp'; -import { resolveProperties } from 'ethers/lib/utils'; import { PaymasterAPI } from './PaymasterAPI'; import { ErrorSubject, Exception, getUserOpHash, NotPromise, packUserOp, UserOperation } from '../common'; import { calcPreVerificationGas, GasOverheads } from './calcPreVerificationGas'; -import { Factory, isWalletProvider, Network, NetworkNames, NetworkService, SdkOptions, SignMessageDto, State, StateService, validateDto, WalletProviderLike, WalletService } from '..'; +import { Factory, Network, NetworkNames, NetworkService, SdkOptions, SignMessageDto, validateDto } from '..'; import { Context } from '../context'; import { PaymasterResponse } from './VerifyingPaymasterAPI'; +import { Account, Hex, parseAbi, parseAbiItem, PublicClient, TypedDataParameter, WalletClient } from 'viem'; +import { entryPointAbi } from '../common/abis'; +import { resolveProperties, Result } from '../common/utils'; +import { BaseAccountUserOperationStruct, FeeData, TypedDataField } from '../types/user-operation-types'; +import { BigNumber, BigNumberish } from '../types/bignumber'; export interface BaseApiParams { - provider: Provider; entryPointAddress: string; accountAddress?: string; overheads?: Partial; - walletProvider: WalletProviderLike; factoryAddress?: string; optionsLike?: SdkOptions; + walletClient?: WalletClient; + publicClient?: PublicClient; + account?: Account; } export interface UserOpResult { @@ -48,16 +48,15 @@ export abstract class BaseAccountAPI { context: Context; - // entryPoint connected to "zero" address. allowed to make static calls (e.g. to getSenderAddress) - protected readonly entryPointView: IEntryPoint; - - provider: Provider; overheads?: Partial; entryPointAddress: string; accountAddress?: string; paymasterAPI?: PaymasterAPI; factoryUsed: Factory; factoryAddress?: string; + account: Account; + walletClient: WalletClient; + publicClient: PublicClient; /** * base constructor. @@ -67,13 +66,8 @@ export abstract class BaseAccountAPI { const optionsLike = params.optionsLike; - if (!isWalletProvider(params.walletProvider)) { - throw new Exception('Invalid wallet provider'); - } - const { chainId, // - stateStorage, rpcProviderUrl, factoryWallet, bundlerProvider, @@ -81,37 +75,20 @@ export abstract class BaseAccountAPI { this.services = { networkService: new NetworkService(chainId), - walletService: new WalletService(params.walletProvider, { - provider: rpcProviderUrl, - }, bundlerProvider.url, chainId), - stateService: new StateService({ - storage: stateStorage, - }), }; this.context = new Context(this.services); this.factoryUsed = factoryWallet; - + // super(); - this.provider = params.provider; this.overheads = params.overheads; this.entryPointAddress = params.entryPointAddress; + this.account = params.account; this.accountAddress = params.accountAddress; this.factoryAddress = params.factoryAddress; - - // factory "connect" define the contract address. the contract "connect" defines the "from" address. - this.entryPointView = EntryPoint__factory.connect(params.entryPointAddress, params.provider).connect( - ethers.constants.AddressZero, - ); - } - - get state(): StateService { - return this.services.stateService; - } - - get state$(): BehaviorSubject { - return this.services.stateService.state$; + this.walletClient = params.walletClient; + this.publicClient = params.publicClient; } get error$(): ErrorSubject { @@ -127,7 +104,7 @@ export abstract class BaseAccountAPI { /** * destroys */ - destroy(): void { + destroy(): void { this.context.destroy(); } @@ -145,7 +122,11 @@ export abstract class BaseAccountAPI { network: false, }); - return this.services.walletService.signMessage(message); + return this.walletClient.signMessage( + { + account: this.account, + message: message as Hex + }); } async setPaymasterApi(paymaster: PaymasterAPI | null) { @@ -167,17 +148,6 @@ export abstract class BaseAccountAPI { wallet: true, ...options, }; - - const { walletService } = this.services; - - if (options.network && !walletService.chainId) { - throw new Exception('Unknown network'); - } - - if (options.wallet && !walletService.EOAAddress) { - throw new Exception('Require wallet'); - } - } getNetworkChainId(networkName: NetworkNames = null): number { @@ -221,7 +191,7 @@ export abstract class BaseAccountAPI { async init(): Promise { // check EntryPoint is deployed at given address - if ((await this.provider.getCode(this.entryPointAddress)) === '0x') { + if ((await this.publicClient.getCode({ address: this.entryPointAddress as Hex })) === '0x') { throw new Error(`entryPoint not deployed at ${this.entryPointAddress}`); } @@ -264,7 +234,8 @@ export abstract class BaseAccountAPI { // already deployed. no need to check anymore. return this.isPhantom; } - const senderAddressCode = await this.provider.getCode(this.getAccountAddress()); + const accountAddress = await this.getAccountAddress(); + const senderAddressCode = await this.publicClient.getCode({ address: accountAddress as Hex }) if (senderAddressCode.length > 2) { this.isPhantom = false; } @@ -279,7 +250,15 @@ export abstract class BaseAccountAPI { // use entryPoint to query account address (factory can provide a helper method to do the same, but // this method attempts to be generic try { - await this.entryPointView.callStatic.getSenderAddress(initCode); + //await this.entryPointView.callStatic.getSenderAddress(initCode); + await this.publicClient.simulateContract({ + address: this.entryPointAddress as Hex, + abi: parseAbi(entryPointAbi), + functionName: 'getSenderAddress', + args: [initCode] + }); + + } catch (e: any) { return e.errorArgs.sender; } @@ -309,7 +288,7 @@ export abstract class BaseAccountAPI { * should cover cost of putting calldata on-chain, and some overhead. * actual overhead depends on the expected bundle size */ - async getPreVerificationGas(userOp: Partial): Promise { + async getPreVerificationGas(userOp: Partial): Promise { const p = await resolveProperties(userOp); return calcPreVerificationGas(p, this.overheads); } @@ -317,7 +296,7 @@ export abstract class BaseAccountAPI { /** * ABI-encode a user operation. used for calldata cost estimation */ - packUserOp(userOp: NotPromise): string { + packUserOp(userOp: NotPromise): string { return packUserOp(userOp, false); } @@ -361,8 +340,7 @@ export abstract class BaseAccountAPI { */ async getUserOpHash(userOp: UserOperation): Promise { const op = await resolveProperties(userOp); - const provider = this.services.walletService.getWalletProvider(); - const chainId = await provider.getNetwork().then((net) => net.chainId); + const chainId = await this.publicClient.getChainId(); return getUserOpHash(op, this.entryPointAddress, chainId); } @@ -385,8 +363,33 @@ export abstract class BaseAccountAPI { if (initCode == null || initCode === '0x') return 0; const deployerAddress = initCode.substring(0, 42); const deployerCallData = '0x' + initCode.substring(42); - const provider = this.services.walletService.getWalletProvider(); - return await provider.estimateGas({ to: deployerAddress, data: deployerCallData }); + const estimatedGas = await this.publicClient.estimateGas({ + account: this.account, + to: deployerAddress, + data: deployerCallData, + }); + + return estimatedGas ? estimatedGas : 0; + } + + async getViemFeeData(): Promise { + const block = await this.publicClient.getBlock(); + const gasPrice = await this.publicClient.getGasPrice(); + const gasPriceInDecimals = BigNumber.from(gasPrice); + + let lastBaseFeePerGas = null, maxFeePerGas = null, maxPriorityFeePerGas = null; + + if (block && block.baseFeePerGas) { + // We may want to compute this more accurately in the future, + // using the formula "check if the base fee is correct". + // See: https://eips.ethereum.org/EIPS/eip-1559 + lastBaseFeePerGas = block.baseFeePerGas; + const baseFeePerGasAsBigNumber = BigNumber.from(block.baseFeePerGas); + maxPriorityFeePerGas = BigNumber.from("1500000000"); + maxFeePerGas = baseFeePerGasAsBigNumber.mul(2).add(maxPriorityFeePerGas); + } + + return { lastBaseFeePerGas, maxFeePerGas, maxPriorityFeePerGas, gasPrice: gasPriceInDecimals }; } /** @@ -404,15 +407,14 @@ export abstract class BaseAccountAPI { let { maxFeePerGas, maxPriorityFeePerGas } = info; if (maxFeePerGas == null || maxPriorityFeePerGas == null) { - const provider = this.services.walletService.getWalletProvider(); let feeData: any = {}; try { - feeData = await provider.getFeeData(); + feeData = await this.getViemFeeData(); } catch (err) { console.warn( "getGas: eth_maxPriorityFeePerGas failed, falling back to legacy gas price." ); - const gas = await provider.getGasPrice(); + const gas = await this.publicClient.getGasPrice(); feeData = { maxFeePerGas: gas, maxPriorityFeePerGas: gas }; } @@ -429,7 +431,7 @@ export abstract class BaseAccountAPI { sender: await this.getAccountAddress(), nonce: await this.getNonce(key), factory: this.factoryAddress, - factoryData : '0x' + factoryData.substring(42), + factoryData: '0x' + factoryData.substring(42), callData, callGasLimit, verificationGasLimit, @@ -440,7 +442,7 @@ export abstract class BaseAccountAPI { partialUserOp = { sender: await this.getAccountAddress(), nonce: await this.getNonce(key), - factoryData : '0x' + factoryData.substring(42), + factoryData: '0x' + factoryData.substring(42), callData, callGasLimit, verificationGasLimit, @@ -488,7 +490,6 @@ export abstract class BaseAccountAPI { userOp.paymasterPostOpGasLimit = paymasterData.result.paymasterPostOpGasLimit; } const userOpHash = await this.getUserOpHash(userOp); - const signature = await this.signUserOpHash(userOpHash); return { ...userOp, @@ -514,16 +515,50 @@ export abstract class BaseAccountAPI { async getUserOpReceipt(userOpHash: string, timeout = 30000, interval = 5000): Promise { const endtime = Date.now() + timeout; while (Date.now() < endtime) { - const events = await this.entryPointView.queryFilter(this.entryPointView.filters.UserOperationEvent(userOpHash)); - if (events.length > 0) { - return events[0].transactionHash; + const filter = await this.publicClient.createEventFilter({ + address: this.entryPointAddress as Hex, + args: { + userOpHash: userOpHash as Hex, + }, + event: parseAbiItem('event UserOperationEvent(bytes32 indexed userOpHash,address indexed sender,address indexed paymaster,uint256 nonce,bool success,uint256 actualGasCost,uint256 actualGasUsed)'), + }) + + const logs = await this.publicClient.getFilterLogs({ filter }) + + if (logs && logs.length > 0) { + return logs[0].transactionHash; } + await new Promise((resolve) => setTimeout(resolve, interval)); } + return null; } - async signTypedData(types: TypedDataField[], message: any) { - return this.services.walletService.signTypedData(types, message, this.accountAddress); + // TODO fix signTypedData + async signTypedData(domain: any, types: TypedDataParameter[], message: any) { + + // Step 1: Initialize an empty object for the transformed types + const typesObject: { [key: string]: TypedDataParameter[] } = {}; + + // Step 2: Iterate over the types array to transform it into the required format + types.forEach((type) => { + if (!typesObject[type.type]) { + // Step 3a: If the type does not exist, create it with the current item as the first element + typesObject[type.type] = [type]; + } else { + // Step 3b: If the type exists, append the current item to its array + typesObject[type.type].push(type); + } + }); + + return await this.walletClient.signTypedData({ + domain, + types: typesObject, + primaryType: 'UserOperation', + account: this.account, + message + }); + //return this.services.walletService.signTypedData(types, message, this.accountAddress); } } diff --git a/src/sdk/base/Bootstrap.ts b/src/sdk/base/Bootstrap.ts index 06841ca..1638534 100644 --- a/src/sdk/base/Bootstrap.ts +++ b/src/sdk/base/Bootstrap.ts @@ -1,499 +1,38 @@ -import { ethers } from "ethers"; +import { encodeFunctionData, parseAbi } from "viem"; +import { modulesAbi } from "../common/abis"; export interface BootstrapConfig { module: string; data: string; } -export const BOOTSTRAP_ABI = [ - { - "inputs": [ - - ], - "name": "AccountAccessUnauthorized", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "CannotRemoveLastValidator", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "FallbackInvalidCallType", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "currentHook", - "type": "address" - } - ], - "name": "HookAlreadyInstalled", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "HookPostCheckFailed", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "caller", - "type": "address" - } - ], - "name": "InvalidFallbackCaller", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "module", - "type": "address" - } - ], - "name": "InvalidModule", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "entry", - "type": "address" - } - ], - "name": "LinkedList_EntryAlreadyInList", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "entry", - "type": "address" - } - ], - "name": "LinkedList_InvalidEntry", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "LinkedList_InvalidPage", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "bytes4", - "name": "selector", - "type": "bytes4" - } - ], - "name": "NoFallbackHandler", - "type": "error" - }, - { - "stateMutability": "payable", - "type": "fallback" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "module", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "internalType": "struct BootstrapConfig[]", - "name": "$valdiators", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "address", - "name": "module", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "internalType": "struct BootstrapConfig[]", - "name": "$executors", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "address", - "name": "module", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "internalType": "struct BootstrapConfig", - "name": "_hook", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "address", - "name": "module", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "internalType": "struct BootstrapConfig[]", - "name": "_fallbacks", - "type": "tuple[]" - } - ], - "name": "_getInitMSACalldata", - "outputs": [ - { - "internalType": "bytes", - "name": "init", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - - ], - "name": "entryPoint", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes4", - "name": "functionSig", - "type": "bytes4" - } - ], - "name": "getActiveFallbackHandler", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "handler", - "type": "address" - }, - { - "internalType": "CallType", - "name": "calltype", - "type": "bytes1" - }, - { - "internalType": "address[]", - "name": "allowedCallers", - "type": "address[]" - } - ], - "internalType": "struct ModuleManager.FallbackHandler", - "name": "", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - - ], - "name": "getActiveHook", - "outputs": [ - { - "internalType": "address", - "name": "hook", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "cursor", - "type": "address" - }, - { - "internalType": "uint256", - "name": "size", - "type": "uint256" - } - ], - "name": "getExecutorsPaginated", - "outputs": [ - { - "internalType": "address[]", - "name": "array", - "type": "address[]" - }, - { - "internalType": "address", - "name": "next", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "cursor", - "type": "address" - }, - { - "internalType": "uint256", - "name": "size", - "type": "uint256" - } - ], - "name": "getValidatorPaginated", - "outputs": [ - { - "internalType": "address[]", - "name": "array", - "type": "address[]" - }, - { - "internalType": "address", - "name": "next", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "module", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "internalType": "struct BootstrapConfig[]", - "name": "$valdiators", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "address", - "name": "module", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "internalType": "struct BootstrapConfig[]", - "name": "$executors", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "address", - "name": "module", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "internalType": "struct BootstrapConfig", - "name": "_hook", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "address", - "name": "module", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "internalType": "struct BootstrapConfig[]", - "name": "_fallbacks", - "type": "tuple[]" - } - ], - "name": "initMSA", - "outputs": [ - - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "contract IModule", - "name": "validator", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "singleInitMSA", - "outputs": [ - - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "stateMutability": "payable", - "type": "receive" - } -]; - -const abi = [ - { - inputs: [ - { - internalType: "uint256", - name: "typeID", - type: "uint256", - }, - ], - name: "isModuleType", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onInstall", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onUninstall", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - export function _makeBootstrapConfig(module: string, data: string): BootstrapConfig { const config: BootstrapConfig = { module: "", data: "" }; - const iface = new ethers.utils.Interface(abi); - config.module = module; - config.data = iface.encodeFunctionData( - 'onInstall', - [data] - ); + const encodedFunctionData = encodeFunctionData({ + functionName: 'onInstall', + abi: parseAbi(modulesAbi), + args: [data], + }); + + config.data = encodedFunctionData; + return config; } export function makeBootstrapConfig(module: string, data: string): BootstrapConfig[] { const config: BootstrapConfig[] = []; - const iface = new ethers.utils.Interface(abi); - const data1 = iface.encodeFunctionData( - 'onInstall', - [data] - ); + const encodedFunctionData = encodeFunctionData({ + functionName: 'onInstall', + abi: parseAbi(modulesAbi), + args: [data], + }); const newConfig: BootstrapConfig = { module: module, - data: data1 + data: encodedFunctionData }; config.push(newConfig); return config; diff --git a/src/sdk/base/DeterministicDeployer.ts b/src/sdk/base/DeterministicDeployer.ts index 6e23db9..f3eda50 100644 --- a/src/sdk/base/DeterministicDeployer.ts +++ b/src/sdk/base/DeterministicDeployer.ts @@ -1,9 +1,13 @@ -import { BigNumber, BigNumberish } from 'ethers' -import { hexConcat, hexlify, hexZeroPad, keccak256 } from 'ethers/lib/utils' -import { TransactionRequest } from '@ethersproject/abstract-provider' -import { JsonRpcProvider } from '@ethersproject/providers' +import { Account, concat, Hex, keccak256, pad, PublicClient, toHex, WalletClient } from 'viem' +import { BigNumber, BigNumberish } from '../types/bignumber' -/** +export type TransactionRequest = { + to: Hex, + data: Hex, + gasLimit?: number +} + +/**x * wrapper class for Arachnid's deterministic deployer * (deterministic deployer used by 'hardhat-deployer'. generates the same addresses as "hardhat-deploy") */ @@ -13,7 +17,7 @@ export class DeterministicDeployer { * @param ctrCode constructor code to pass to CREATE2 * @param salt optional salt. defaults to zero */ - static async getAddress (ctrCode: string, salt: BigNumberish = 0): Promise { + static async getAddress(ctrCode: string, salt: BigNumberish = 0): Promise { return await DeterministicDeployer.instance.getDeterministicDeployAddress(ctrCode, salt) } @@ -23,7 +27,7 @@ export class DeterministicDeployer { * @param salt optional salt. defaults to zero * @return the deployed address */ - static async deploy (ctrCode: string, salt: BigNumberish = 0): Promise { + static async deploy(ctrCode: string, salt: BigNumberish = 0): Promise { return await DeterministicDeployer.instance.deterministicDeploy(ctrCode, salt) } @@ -34,79 +38,103 @@ export class DeterministicDeployer { deploymentGasPrice = 100e9 deploymentGasLimit = 100000 - constructor (readonly provider: JsonRpcProvider) { + constructor(readonly walletClient: WalletClient, readonly account: Account, readonly publicClient: PublicClient) { } - async isContractDeployed (address: string): Promise { - return await this.provider.getCode(address).then(code => code.length > 2) + async isContractDeployed(address: Hex): Promise { + return await this.publicClient.getCode({ address: address }).then(code => code.length > 2); } - async isDeployerDeployed (): Promise { - return await this.isContractDeployed(this.proxyAddress) + async isDeployerDeployed(): Promise { + return await this.isContractDeployed(this.proxyAddress as Hex) } - async deployDeployer (): Promise { - if (await this.isContractDeployed(this.proxyAddress)) { + async deployDeployer(): Promise { + if (await this.isContractDeployed(this.proxyAddress as Hex)) { return } - const bal = await this.provider.getBalance(this.deploymentSignerAddress) + const bal: bigint = await this.publicClient.getBalance({ address: this.deploymentSignerAddress as Hex }); + const balBig = BigNumber.from(bal); const neededBalance = BigNumber.from(this.deploymentGasLimit).mul(this.deploymentGasPrice) - const signer = this.provider.getSigner() - if (bal.lt(neededBalance)) { - await signer.sendTransaction({ - to: this.deploymentSignerAddress, + + if (balBig.lt(neededBalance)) { + + if (!this.account) { + throw new Error('no account to send from'); + } + + const tx = await this.walletClient.sendTransaction({ + account: this.account, + chain: this.publicClient.chain, + to: this.deploymentSignerAddress as Hex, value: neededBalance, - gasLimit: this.deploymentGasLimit - }) + gasLimit: this.deploymentGasLimit, + kzg: undefined + }); } - await this.provider.send('eth_sendRawTransaction', [this.deploymentTransaction]) - if (!await this.isContractDeployed(this.proxyAddress)) { + + await this.walletClient.sendRawTransaction( + { serializedTransaction: this.deploymentTransaction as Hex } + ); + + if (!await this.isContractDeployed(this.proxyAddress as Hex)) { throw new Error('raw TX didn\'t deploy deployer!') } } - async getDeployTransaction (ctrCode: string, salt: BigNumberish = 0): Promise { + async getDeployTransaction(ctrCode: string, salt: BigNumberish = 0): Promise { await this.deployDeployer() - const saltEncoded = hexZeroPad(hexlify(salt), 32) + const saltEncoded = pad(toHex(salt as Hex), { size: 32 }) return { - to: this.proxyAddress, - data: hexConcat([ - saltEncoded, - ctrCode]) + to: this.proxyAddress as Hex, + data: concat([ + saltEncoded as Hex, + ctrCode as Hex]) } } - async getDeterministicDeployAddress (ctrCode: string, salt: BigNumberish = 0): Promise { + async getDeterministicDeployAddress(ctrCode: string, salt: BigNumberish = 0): Promise { // this method works only before the contract is already deployed: // return await this.provider.call(await this.getDeployTransaction(ctrCode, salt)) - const saltEncoded = hexZeroPad(hexlify(salt), 32) + const saltEncoded = pad(toHex(salt as Hex), { size: 32 }) - return '0x' + keccak256(hexConcat([ + return '0x' + keccak256(concat([ '0xff', - this.proxyAddress, - saltEncoded, - keccak256(ctrCode) + this.proxyAddress as Hex, + saltEncoded as Hex, + keccak256(ctrCode as Hex) as Hex ])).slice(-40) } - async deterministicDeploy (ctrCode: string, salt: BigNumberish = 0): Promise { + async deterministicDeploy(ctrCode: string, salt: BigNumberish = 0): Promise { const addr = await this.getDeterministicDeployAddress(ctrCode, salt) - if (!await this.isContractDeployed(addr)) { - await this.provider.getSigner().sendTransaction( - await this.getDeployTransaction(ctrCode, salt)) + if (!await this.isContractDeployed(addr as Hex)) { + + const transactionRequest = await this.getDeployTransaction(ctrCode, salt); + + //await this.provider.getSigner().sendTransaction(transactionRequest) + + await this.walletClient.sendTransaction({ + account: this.account, + chain: this.publicClient.chain, + to: transactionRequest.to as Hex, + data: transactionRequest.data as Hex, + kzg: undefined + }); + } return addr } private static _instance?: DeterministicDeployer - static init (provider: JsonRpcProvider): void { - this._instance = new DeterministicDeployer(provider) + static init(walletClient: WalletClient, account: Account, publicClient: PublicClient): void { + this._instance = new DeterministicDeployer(walletClient, account, publicClient) } - static get instance (): DeterministicDeployer { + static get instance(): DeterministicDeployer { if (this._instance == null) { - throw new Error('must call "DeterministicDeployer.init(ethers.provider)" first') + throw new Error('must call "DeterministicDeployer.init(walletClient, account, publicClient)"') } return this._instance } diff --git a/src/sdk/base/ERC4337EthersProvider.ts b/src/sdk/base/ERC4337EthersProvider.ts deleted file mode 100644 index 3385063..0000000 --- a/src/sdk/base/ERC4337EthersProvider.ts +++ /dev/null @@ -1,128 +0,0 @@ -import { BaseProvider, TransactionReceipt, TransactionResponse } from '@ethersproject/providers'; -import { BigNumber, Signer } from 'ethers'; -import { Network } from '@ethersproject/networks'; -import { hexValue, resolveProperties } from 'ethers/lib/utils'; -import { ClientConfig } from './ClientConfig'; -import { ERC4337EthersSigner } from './ERC4337EthersSigner'; -import { UserOperationEventListener } from './UserOperationEventListener'; -import { HttpRpcClient } from './HttpRpcClient'; -import type { IEntryPoint } from '../contracts'; -import { UserOperation, getUserOpHash } from '../common'; -import { BaseAccountAPI } from './BaseAccountAPI'; - -export class ERC4337EthersProvider extends BaseProvider { - initializedBlockNumber!: number; - - readonly signer: ERC4337EthersSigner; - - constructor( - readonly chainId: number, - readonly config: ClientConfig, - readonly originalSigner: Signer, - readonly originalProvider: BaseProvider, - readonly httpRpcClient: HttpRpcClient, - readonly entryPoint: IEntryPoint, - readonly smartAccountAPI: BaseAccountAPI, - ) { - super({ - name: 'ERC-4337 Custom Network', - chainId, - }); - this.signer = new ERC4337EthersSigner(config, originalSigner, this, httpRpcClient, smartAccountAPI); - } - - /** - * finish intializing the provider. - * MUST be called after construction, before using the provider. - */ - async init(): Promise { - // await this.httpRpcClient.validateChainId() - this.initializedBlockNumber = await this.originalProvider.getBlockNumber(); - await this.smartAccountAPI.init(); - // await this.signer.init() - return this; - } - - getSigner(): ERC4337EthersSigner { - return this.signer; - } - - async perform(method: string, params: any): Promise { - if (method === 'sendTransaction' || method === 'getTransactionReceipt') { - // TODO: do we need 'perform' method to be available at all? - // there is nobody out there to use it for ERC-4337 methods yet, we have nothing to override in fact. - throw new Error('Should not get here. Investigate.'); - } - return await this.originalProvider.perform(method, params); - } - - async getTransaction(transactionHash: string | Promise): Promise { - // TODO - return await super.getTransaction(transactionHash); - } - - async getTransactionReceipt(transactionHash: string | Promise): Promise { - const userOpHash = await transactionHash; - const sender = await this.getSenderAccountAddress(); - return await new Promise((resolve, reject) => { - new UserOperationEventListener(resolve, reject, this.entryPoint, sender, userOpHash).start(); - }); - } - - async getSenderAccountAddress(): Promise { - return await this.smartAccountAPI.getAccountAddress(); - } - - async waitForTransaction( - transactionHash: string, - confirmations?: number, - timeout?: number, - ): Promise { - const sender = await this.getSenderAccountAddress(); - - return await new Promise((resolve, reject) => { - const listener = new UserOperationEventListener( - resolve, - reject, - this.entryPoint, - sender, - transactionHash, - undefined, - timeout, - ); - listener.start(); - }); - } - - // fabricate a response in a format usable by ethers users... - async constructUserOpTransactionResponse(userOp1: UserOperation): Promise { - const userOp = await resolveProperties(userOp1); - const userOpHash = getUserOpHash(userOp, this.config.entryPointAddress, this.chainId); - const waitPromise = new Promise((resolve, reject) => { - new UserOperationEventListener(resolve, reject, this.entryPoint, userOp.sender, userOpHash, userOp.nonce).start(); - }); - return { - hash: userOpHash, - confirmations: 0, - from: userOp.sender, - nonce: BigNumber.from(userOp.nonce).toNumber(), - gasLimit: BigNumber.from(userOp.callGasLimit), // ?? - value: BigNumber.from(0), - data: hexValue(userOp.callData), // should extract the actual called method from this "execFromEntryPoint()" call - chainId: this.chainId, - // eslint-disable-next-line @typescript-eslint/no-unused-vars - wait: async (confirmations?: number): Promise => { - const transactionReceipt = await waitPromise; - if (userOp.factory != null && userOp.factory.length > 0) { - // checking if the wallet has been deployed by the transaction; it must be if we are here - await this.smartAccountAPI.checkAccountPhantom(); - } - return transactionReceipt; - }, - }; - } - - async detectNetwork(): Promise { - return (this.originalProvider as any).detectNetwork(); - } -} diff --git a/src/sdk/base/ERC4337EthersSigner.ts b/src/sdk/base/ERC4337EthersSigner.ts deleted file mode 100644 index 4289222..0000000 --- a/src/sdk/base/ERC4337EthersSigner.ts +++ /dev/null @@ -1,105 +0,0 @@ -import { Deferrable, defineReadOnly } from '@ethersproject/properties'; -import { Provider, TransactionRequest, TransactionResponse } from '@ethersproject/providers'; -import { Signer } from '@ethersproject/abstract-signer'; -import { Bytes } from 'ethers'; -import { ERC4337EthersProvider } from './ERC4337EthersProvider'; -import { ClientConfig } from './ClientConfig'; -import { HttpRpcClient } from './HttpRpcClient'; -import { BaseAccountAPI } from './BaseAccountAPI'; -import { UserOperation } from '../common'; - -export class ERC4337EthersSigner extends Signer { - // TODO: we have 'erc4337provider', remove shared dependencies or avoid two-way reference - constructor( - readonly config: ClientConfig, - readonly originalSigner: Signer, - readonly erc4337provider: ERC4337EthersProvider, - readonly httpRpcClient: HttpRpcClient, - readonly smartAccountAPI: BaseAccountAPI, - ) { - super(); - defineReadOnly(this, 'provider', erc4337provider); - } - - address?: string; - - // This one is called by Contract. It signs the request and passes in to Provider to be sent. - async sendTransaction(transaction: Deferrable): Promise { - const tx: TransactionRequest = await this.populateTransaction(transaction); - await this.verifyAllNecessaryFields(tx); - const userOperation = await this.smartAccountAPI.createSignedUserOp({ - target: tx.to ?? '', - data: tx.data?.toString() ?? '', - value: tx.value, - gasLimit: tx.gasLimit, - }); - const transactionResponse = await this.erc4337provider.constructUserOpTransactionResponse(userOperation); - try { - await this.httpRpcClient.sendUserOpToBundler(userOperation); - } catch (error: any) { - // console.error('sendUserOpToBundler failed', error) - throw this.unwrapError(error); - } - // TODO: handle errors - transaction that is "rejected" by bundler is _not likely_ to ever resolve its "wait()" - return transactionResponse; - } - - unwrapError(errorIn: any): Error { - if (errorIn.body != null) { - const errorBody = JSON.parse(errorIn.body); - let paymasterInfo = ''; - let failedOpMessage: string | undefined = errorBody?.error?.message; - if (failedOpMessage?.includes('FailedOp') === true) { - // TODO: better error extraction methods will be needed - const matched = failedOpMessage.match(/FailedOp\((.*)\)/); - if (matched != null) { - const split = matched[1].split(','); - paymasterInfo = `(paymaster address: ${split[1]})`; - failedOpMessage = split[2]; - } - } - const error = new Error( - `The bundler has failed to include UserOperation in a batch: ${failedOpMessage} ${paymasterInfo})`, - ); - error.stack = errorIn.stack; - return error; - } - return errorIn; - } - - async verifyAllNecessaryFields(transactionRequest: TransactionRequest): Promise { - if (transactionRequest.to == null) { - throw new Error('Missing call target'); - } - if (transactionRequest.data == null && transactionRequest.value == null) { - // TBD: banning no-op UserOps seems to make sense on provider level - throw new Error('Missing call data or value'); - } - } - - // eslint-disable-next-line @typescript-eslint/no-unused-vars - connect(provider: Provider): Signer { - throw new Error('changing providers is not supported'); - } - - async getAddress(): Promise { - if (this.address == null) { - this.address = await this.erc4337provider.getSenderAccountAddress(); - } - return this.address; - } - - async signMessage(message: Bytes | string): Promise { - return await this.originalSigner.signMessage(message); - } - - // eslint-disable-next-line @typescript-eslint/no-unused-vars - async signTransaction(transaction: Deferrable): Promise { - throw new Error('not implemented'); - } - - async signUserOperation(userOperation: UserOperation): Promise { - const message = await this.smartAccountAPI.getUserOpHash(userOperation); - return await this.originalSigner.signMessage(message); - } -} diff --git a/src/sdk/base/EtherspotWalletAPI.ts b/src/sdk/base/EtherspotWalletAPI.ts index 944cdb8..c75724c 100644 --- a/src/sdk/base/EtherspotWalletAPI.ts +++ b/src/sdk/base/EtherspotWalletAPI.ts @@ -1,14 +1,17 @@ -import { BigNumber, BigNumberish, Contract, constants, ethers } from 'ethers'; -import { arrayify, hexConcat } from 'ethers/lib/utils'; import { BaseApiParams, BaseAccountAPI } from './BaseAccountAPI'; -import { EtherspotWallet7579Factory__factory, EtherspotWallet7579__factory } from '../contracts/factories/src/ERC7579/wallet'; -import { ModularEtherspotWallet, EtherspotWallet7579Factory } from '../contracts/src/ERC7579/wallet'; -import { BOOTSTRAP_ABI, BootstrapConfig, _makeBootstrapConfig, makeBootstrapConfig } from './Bootstrap'; +import { BootstrapConfig, _makeBootstrapConfig, makeBootstrapConfig } from './Bootstrap'; import { DEFAULT_BOOTSTRAP_ADDRESS, DEFAULT_MULTIPLE_OWNER_ECDSA_VALIDATOR_ADDRESS, Networks, DEFAULT_QUERY_PAGE_SIZE } from '../network/constants'; import { CALL_TYPE, EXEC_TYPE, MODULE_TYPE, getExecuteMode } from '../common'; +import { encodeFunctionData, parseAbi, encodeAbiParameters, parseAbiParameters, type WalletClient, type PublicClient, toBytes, concat, getAddress, pad, toHex, isBytes, Account, Hex, isAddress } from 'viem'; +import { accountAbi, bootstrapAbi, entryPointAbi, factoryAbi } from '../common/abis'; +import { getInstalledModules } from '../common/getInstalledModules'; +import { getViemAddress } from '../common/utils/viem-utils'; +import { BigNumber, BigNumberish } from '../types/bignumber'; + +// Creating a constant for the sentinel address using viem +const SENTINEL_ADDRESS = getAddress("0x0000000000000000000000000000000000000001"); +const ADDRESS_ZERO = getAddress("0x0000000000000000000000000000000000000000"); -// Creating a constant for the sentinel address using ethers.js -const SENTINEL_ADDRESS = ethers.utils.getAddress("0x0000000000000000000000000000000000000001"); /** * constructor params, added no top of base params: * @param owner the signer object for the account owner @@ -41,82 +44,79 @@ export type FallbackInfo = { * - execute method is "execFromEntryPoint()" */ export class EtherspotWalletAPI extends BaseAccountAPI { - factoryAddress?: string; index: number; - accountAddress?: string; predefinedAccountAddress?: string; bootstrapAddress?: string; multipleOwnerECDSAValidatorAddress?: string; - - /** - * our account contract. - * should support the "execFromEntryPoint" and "nonce" methods - */ - accountContract?: ModularEtherspotWallet; - - factory?: EtherspotWallet7579Factory; + eoaAddress: Hex; constructor(params: EtherspotWalletApiParams) { super(params); - this.factoryAddress = params.factoryAddress; this.index = params.index ?? 0; this.predefinedAccountAddress = params.predefinedAccountAddress ?? null; this.bootstrapAddress = Networks[params.optionsLike.chainId]?.contracts?.bootstrap ?? DEFAULT_BOOTSTRAP_ADDRESS; this.multipleOwnerECDSAValidatorAddress = Networks[params.optionsLike.chainId]?.contracts?.multipleOwnerECDSAValidator ?? DEFAULT_MULTIPLE_OWNER_ECDSA_VALIDATOR_ADDRESS; - //this.publicClient = getPublicClient({ rpcUrl: Networks[params.optionsLike.chainId] }); + this.eoaAddress = this.account.address; + } + + getEOAAddress(): Hex { + return this.account.address } - async isModuleInstalled(moduleTypeId: MODULE_TYPE, module: string): Promise { - const accountContract = EtherspotWallet7579__factory.connect(await this.getAccountAddress(), this.provider); - return await accountContract.isModuleInstalled(moduleTypeId, module, '0x'); + async isModuleInstalled(moduleTypeId: MODULE_TYPE, module: string, initData = '0x'): Promise { + const accountAddress = await this.getAccountAddress(); + if (!accountAddress) throw new Error('Account address not found'); + const response = await this.publicClient.readContract({ + address: accountAddress as Hex, + abi: parseAbi(accountAbi), + functionName: 'isModuleInstalled', + args: [moduleTypeId, module, initData] + }); + return response as boolean; } async installModule(moduleTypeId: MODULE_TYPE, module: string, initData = '0x'): Promise { const accountAddress = await this.getAccountAddress(); - const accountContract = EtherspotWallet7579__factory.connect(await this.getAccountAddress(), this.provider); - if (await accountContract.isModuleInstalled(moduleTypeId, module, initData)) { - throw new Error('the module is already installed') - } + if (!accountAddress) throw new Error('Account address not found'); - return accountContract.interface.encodeFunctionData('installModule', [moduleTypeId, module, initData]); + if (await this.isModuleInstalled(moduleTypeId, module, initData)) { + throw new Error('the module is already installed'); + } + return encodeFunctionData({ + functionName: 'installModule', + abi: parseAbi(accountAbi), + args: [moduleTypeId, module, initData], + }); } async uninstallModule(moduleTypeId: MODULE_TYPE, module: string, deinitData: string): Promise { - const accountContract = EtherspotWallet7579__factory.connect(await this.getAccountAddress(), this.provider); - if (!(await accountContract.isModuleInstalled(moduleTypeId, module, deinitData))) { - throw new Error('the module is not installed in the wallet') + const isModuleInstalled = await this.isModuleInstalled(moduleTypeId, module, deinitData); + if (!isModuleInstalled) { + throw new Error('he module is not installed in the wallet'); + } + + // if this is uninstall on validator or executor, we need to check if there is more than 1 module + // we cant delete all modules when moduletypeid is validator or executor + if (moduleTypeId === MODULE_TYPE.EXECUTOR || moduleTypeId === MODULE_TYPE.VALIDATOR) { + const installedModules = moduleTypeId === MODULE_TYPE.EXECUTOR ? await this.getAllExecutors() : await this.getAllValidators(); + if (installedModules.length === 1) { + throw new Error('Cannot uninstall the only module'); + } } - return accountContract.interface.encodeFunctionData('uninstallModule', [moduleTypeId, module, deinitData]); + return encodeFunctionData({ + functionName: 'uninstallModule', + abi: parseAbi(accountAbi), + args: [moduleTypeId, module, deinitData], + }); } - // Function to get all executors async getAllExecutors(pageSize: number = DEFAULT_QUERY_PAGE_SIZE): Promise { - let lastAddress = SENTINEL_ADDRESS; // Assuming this is your SENTINEL value - let totalExecutors: string[] = []; - - // Pagination loop - let tempExecutors: string[]; - const accountContract = EtherspotWallet7579__factory.connect(await this.getAccountAddress(), this.provider); - - do { - // Fetch a page of executors - [tempExecutors, lastAddress] = await accountContract.getExecutorsPaginated(lastAddress, pageSize); - - // Append executors to the total list - totalExecutors = [...totalExecutors, ...tempExecutors]; - - // Break if it's the last page - if (tempExecutors.length < pageSize || lastAddress === SENTINEL_ADDRESS || lastAddress === ethers.constants.AddressZero) { - break; - } - } while (true); - - return totalExecutors; + return await getInstalledModules({ client: this.publicClient, moduleAddress: getViemAddress(this.accountAddress), moduleTypes: ['executor'], pageSize: pageSize }); } async getPreviousAddress(targetAddress: string, moduleTypeId: MODULE_TYPE): Promise { - + if (moduleTypeId !== MODULE_TYPE.EXECUTOR && moduleTypeId !== MODULE_TYPE.VALIDATOR) { throw new Error("Unsupported module type"); } @@ -148,43 +148,28 @@ export class EtherspotWalletAPI extends BaseAccountAPI { const previousAddress = await this.getPreviousAddress(module, moduleTypeId); // Prepare the deinit data - const deInitDataGenerated = ethers.utils.defaultAbiCoder.encode( - ["address", "bytes"], - [previousAddress, deinitDataBase] - ); + const deInitDataGenerated = encodeAbiParameters( + parseAbiParameters('address, bytes'), + [previousAddress as Hex, deinitDataBase as Hex] + ) return deInitDataGenerated; } // function to get validators async getAllValidators(pageSize: number = DEFAULT_QUERY_PAGE_SIZE): Promise { - let lastAddress = SENTINEL_ADDRESS; - let totalValidators: string[] = []; - - // Pagination loop - let tempValidators: string[]; - const accountContract = EtherspotWallet7579__factory.connect(await this.getAccountAddress(), this.provider); - - do { - // Fetch a page of validators - [tempValidators, lastAddress] = await accountContract.getValidatorPaginated(lastAddress, pageSize); - - // Append validators to the total list - totalValidators = [...totalValidators, ...tempValidators]; - - // Break if it's the last page - if (tempValidators.length < pageSize || lastAddress === SENTINEL_ADDRESS || lastAddress === ethers.constants.AddressZero) { - break; - } - } while (true); - - return totalValidators; + return await getInstalledModules({ client: this.publicClient, moduleAddress: getViemAddress(this.accountAddress), moduleTypes: ['validator'], pageSize: pageSize }); } // function to get active hook async getActiveHook(): Promise { - const accountContract = EtherspotWallet7579__factory.connect(await this.getAccountAddress(), this.provider); - return accountContract.getActiveHook(); + const activeHook = await this.publicClient.readContract({ + address: this.accountAddress as Hex, + abi: parseAbi(accountAbi), + functionName: 'getActiveHook', + }); + + return activeHook as Hex; } async getFallbacks(): Promise { @@ -210,38 +195,37 @@ export class EtherspotWalletAPI extends BaseAccountAPI { async checkAccountAddress(address: string): Promise { - const accountContract = EtherspotWallet7579__factory.connect(address, this.provider); - if (!(await accountContract.isOwner(this.services.walletService.EOAAddress))) { + const eoaAddress = await this.getEOAAddress(); + const isOwner = await this.publicClient.readContract({ + address: address as Hex, + abi: parseAbi(accountAbi), + functionName: 'isOwner', + args: [eoaAddress] + }) as boolean; + if (!isOwner) { throw new Error('the specified accountAddress does not belong to the given EOA provider') - } - else { + } else { this.accountAddress = address; } } - async _getAccountContract(): Promise { - if (this.accountContract == null) { - this.accountContract = EtherspotWallet7579__factory.connect(await this.getAccountAddress(), this.provider); - } - return this.accountContract; - } - async getInitCodeData(): Promise { - const iface = new ethers.utils.Interface(BOOTSTRAP_ABI); const validators: BootstrapConfig[] = makeBootstrapConfig(this.multipleOwnerECDSAValidatorAddress, '0x'); - const executors: BootstrapConfig[] = makeBootstrapConfig(constants.AddressZero, '0x'); - const hook: BootstrapConfig = _makeBootstrapConfig(constants.AddressZero, '0x'); - const fallbacks: BootstrapConfig[] = makeBootstrapConfig(constants.AddressZero, '0x'); - - const initMSAData = iface.encodeFunctionData( - "initMSA", - [validators, executors, hook, fallbacks] - ); + const executors: BootstrapConfig[] = makeBootstrapConfig(ADDRESS_ZERO, '0x'); + const hook: BootstrapConfig = _makeBootstrapConfig(ADDRESS_ZERO, '0x'); + const fallbacks: BootstrapConfig[] = makeBootstrapConfig(ADDRESS_ZERO, '0x'); + + const initMSAData = encodeFunctionData({ + functionName: 'initMSA', + abi: parseAbi(bootstrapAbi), + args: [validators, executors, hook, fallbacks], + }); + const eoaAddress = await this.getEOAAddress(); - const initCode = ethers.utils.defaultAbiCoder.encode( - ["address", "address", "bytes"], - [this.services.walletService.EOAAddress, this.bootstrapAddress, initMSAData] - ); + const initCode = encodeAbiParameters( + parseAbiParameters('address, address, bytes'), + [eoaAddress, this.bootstrapAddress as Hex, initMSAData] + ) return initCode; } @@ -251,21 +235,25 @@ export class EtherspotWalletAPI extends BaseAccountAPI { * this value holds the "factory" address, followed by this account's information */ async getAccountInitCode(): Promise { - if (this.factoryAddress != null && this.factoryAddress !== '') { - this.factory = EtherspotWallet7579Factory__factory.connect(this.factoryAddress, this.provider); - } else { + if (this.factoryAddress == null || this.factoryAddress == '') { throw new Error('no factory to get initCode'); } const initCode = await this.getInitCodeData(); - const salt = ethers.utils.hexZeroPad(ethers.utils.hexValue(this.index), 32); + const salt = pad(toHex(this.index), { size: 32 }); - return hexConcat([ - this.factoryAddress, - this.factory.interface.encodeFunctionData('createAccount', [ + const functionData = encodeFunctionData({ + functionName: 'createAccount', + abi: parseAbi(factoryAbi), + args: [ salt, initCode, - ]), + ], + }) + + return concat([ + this.factoryAddress as Hex, + functionData, ]); } @@ -274,36 +262,57 @@ export class EtherspotWalletAPI extends BaseAccountAPI { await this.checkAccountAddress(this.predefinedAccountAddress); } - const salt = ethers.utils.hexZeroPad(ethers.utils.hexValue(this.index), 32); + const salt = pad(toHex(this.index), { size: 32 }); const initCode = await this.getInitCodeData(); if (!this.accountAddress) { - this.factory = EtherspotWallet7579Factory__factory.connect(this.factoryAddress, this.provider); - this.accountAddress = await this.factory.getAddress( - salt, - initCode, - ); + this.accountAddress = (await this.publicClient.readContract({ + address: this.factoryAddress as Hex, + abi: parseAbi(factoryAbi), + functionName: 'getAddress', + args: [salt, initCode] + })) as Hex; } return this.accountAddress; } async getNonce(key: BigNumber = BigNumber.from(0)): Promise { const accountAddress = await this.getAccountAddress(); - const nonceAddressPrefix = key.eq(0) ? this.multipleOwnerECDSAValidatorAddress : key.toHexString(); - // validate if the nonceAddressPrefix is a valid Address based on its size and also valid sequence of characters in it - if (!ethers.utils.isAddress(nonceAddressPrefix)) { - throw new Error(`Invalid Validator Address: ${nonceAddressPrefix}`); - } + const nonceKey = key.eq(0) ? this.multipleOwnerECDSAValidatorAddress : key.toHexString(); + + console.log(`nonceKey: ${nonceKey}`); - const isValidatorInstalled : boolean = await this.isModuleInstalled(MODULE_TYPE.VALIDATOR, nonceAddressPrefix); + let isAddressIndicator = false; - if(!isValidatorInstalled) { - throw new Error(`Validator: ${nonceAddressPrefix} is not installed in the wallet`); + try { + isAddressIndicator = isAddress(getAddress(nonceKey), { strict: true }); + console.log(`isAddressIndicator: ${isAddressIndicator}`); + if (!isAddressIndicator) { + throw new Error(`Invalid Validator Address: ${nonceKey}`); + } + else { + const isModuleInstalled = await this.isModuleInstalled(MODULE_TYPE.VALIDATOR, nonceKey); + if(!isModuleInstalled) { + throw new Error(`Validator: ${nonceKey} is not installed in the wallet`); + } + } + + } catch (e) { + console.error(`Error caught : ${e}`); + throw new Error(`Invalid Validator Address: ${nonceKey}`); } - const dummyKey = ethers.utils.getAddress(nonceAddressPrefix) + "00000000"; - return await this.entryPointView.getNonce(accountAddress, BigInt(dummyKey)); + + const dummyKey = getAddress(nonceKey) + "00000000" + + const nonceResponse = await this.publicClient.readContract({ + address: this.entryPointAddress as Hex, + abi: parseAbi(entryPointAbi), + functionName: 'getNonce', + args: [accountAddress, BigInt(dummyKey)] + }); + return nonceResponse as BigNumber; } /** @@ -313,32 +322,60 @@ export class EtherspotWalletAPI extends BaseAccountAPI { * @param data */ async encodeExecute(target: string, value: BigNumberish, data: string): Promise { - const accountContract = await this._getAccountContract(); const executeMode = getExecuteMode({ callType: CALL_TYPE.SINGLE, execType: EXEC_TYPE.DEFAULT }); - const calldata = hexConcat([ - target, - ethers.utils.hexZeroPad(ethers.utils.hexValue(value), 32), - data + // Assuming toHex is a function that accepts string | number | bigint | boolean | Uint8Array + // Convert BigNumberish to a string if it's a BigNumber + // Convert BigNumberish or Bytes to a compatible type + let valueToProcess: string | number | bigint | boolean | Uint8Array; + + if (BigNumber.isBigNumber(value)) { + valueToProcess = value.toString(); // Convert BigNumber to string + } else if (isBytes(value)) { + valueToProcess = new Uint8Array(value); // Convert Bytes to Uint8Array + } else { + // Here, TypeScript is unsure about the type of `value` + // You need to ensure `value` is of a type compatible with `valueToProcess` + // If `value` can only be string, number, bigint, boolean, or Uint8Array, this assignment is safe + // If `value` can be of other types (like Bytes), you need an explicit conversion or handling here + // For example, if there's a chance `value` is still `Bytes`, you could handle it like so: + if (typeof value === 'object' && value !== null && 'length' in value) { + // Assuming this condition is sufficient to identify Bytes-like objects + // Convert it to Uint8Array + valueToProcess = new Uint8Array(Object.values(value)); + } else { + valueToProcess = value as string | number | bigint | boolean | Uint8Array; + } + } + + const calldata = concat([ + target as Hex, + pad(toHex(valueToProcess), { size: 32 }) as Hex, + data as Hex ]); - return accountContract.interface.encodeFunctionData('execute', [executeMode, calldata]); + return encodeFunctionData({ + functionName: 'execute', + abi: parseAbi(accountAbi), + args: [executeMode, calldata], + }); } async signUserOpHash(userOpHash: string): Promise { - const signature = await this.services.walletService.signMessage(arrayify(userOpHash)); - return signature; - } + const userOpHashHex = userOpHash as Hex; + const signature = await this.walletClient.signMessage( + { + message: { raw: userOpHashHex }, + account: this.account, + }); - get epView() { - return this.entryPointView; + return signature; } async encodeBatch(targets: string[], values: BigNumberish[], datas: string[]): Promise { - const accountContract = await this._getAccountContract(); const executeMode = getExecuteMode({ callType: CALL_TYPE.BATCH, @@ -346,16 +383,32 @@ export class EtherspotWalletAPI extends BaseAccountAPI { }); const result = targets.map((target, index) => ({ - target: target, + target: target as Hex, value: values[index], - callData: datas[index] + callData: datas[index] as Hex })); - const calldata = ethers.utils.defaultAbiCoder.encode( - ["tuple(address target,uint256 value,bytes callData)[]"], - [result] - ); + const convertedResult = result.map(item => ({ + ...item, + // Convert `value` from BigNumberish to bigint + value: typeof item.value === 'bigint' ? item.value : BigInt(item.value.toString()), + })); - return accountContract.interface.encodeFunctionData('execute', [executeMode, calldata]); + //TODO-Test-LibraryFix identify the syntax for viem to pass array of tuple + // const calldata = ethers.utils.defaultAbiCoder.encode( + // ["tuple(address target,uint256 value,bytes callData)[]"], + // [result] + // ); + + const calldata = encodeAbiParameters( + parseAbiParameters('(address target,uint256 value,bytes callData)[]'), + [convertedResult] + ) + + return encodeFunctionData({ + functionName: 'execute', + abi: parseAbi(accountAbi), + args: [executeMode, calldata], + }); } } diff --git a/src/sdk/base/EtherspotWalletFactory.ts b/src/sdk/base/EtherspotWalletFactory.ts index 66b7728..c7cfa03 100644 --- a/src/sdk/base/EtherspotWalletFactory.ts +++ b/src/sdk/base/EtherspotWalletFactory.ts @@ -1,4 +1,4 @@ -import { Contract } from 'ethers'; +import { encodeFunctionData, parseAbi } from 'viem'; export class EtherspotWalletFactoryAPI { static createAccount( @@ -7,15 +7,14 @@ export class EtherspotWalletFactoryAPI { owner: string, salt: number, ): string { - const walletFactory = new Contract(factoryAddress, [ - 'function createAccount(IEntryPoint _entryPoint, address, _registry, address owner, uint256 salt) returns(address)', - ]); - - const encodedData = walletFactory.interface.encodeFunctionData('createAccount', [ - registry, - owner, - salt, - ]); + const abi = ['function createAccount(address, _registry, address owner, uint256 salt) returns(address)']; + const encodedData = encodeFunctionData({ + functionName: 'createAccount', + abi: parseAbi(abi), + args: [registry, + owner, + salt,], + }); return encodedData; } } diff --git a/src/sdk/base/HttpRpcClient.ts b/src/sdk/base/HttpRpcClient.ts index 3a6b9d0..8ea3e01 100644 --- a/src/sdk/base/HttpRpcClient.ts +++ b/src/sdk/base/HttpRpcClient.ts @@ -1,27 +1,27 @@ -import { JsonRpcProvider } from '@ethersproject/providers'; -import { ethers } from 'ethers'; -import { resolveProperties } from 'ethers/lib/utils'; -import { UserOperationStruct } from '../contracts/account-abstraction/contracts/core/BaseAccount'; import Debug from 'debug'; import { UserOperation, deepHexlify } from '../common/ERC4337Utils'; import { Gas } from '../common'; import { ErrorHandler } from '../errorHandler/errorHandler.service'; - +import { resolveProperties } from '../common/utils'; +import { + Hex, + RpcRequestError, + WalletClient, + type PublicClient, +} from "viem" +import { BaseAccountUserOperationStruct } from '../types/user-operation-types'; const debug = Debug('aa.rpc'); export class HttpRpcClient { - private readonly userOpJsonRpcProvider: JsonRpcProvider; - + private readonly publicClient: PublicClient; + private readonly walletClient: WalletClient; initializing: Promise; - constructor(readonly bundlerUrl: string, readonly entryPointAddress: string, readonly chainId: number) { + constructor(readonly bundlerUrl: string, readonly entryPointAddress: string, readonly chainId: number, walletClient: WalletClient, publicClient: PublicClient) { try { - this.userOpJsonRpcProvider = new ethers.providers.JsonRpcProvider({ - url: this.bundlerUrl - }, { - name: 'Connected bundler network', - chainId, - }); + this.publicClient = publicClient; + this.walletClient = walletClient; + this.initializing = this.validateChainId(); } catch (err) { if (err.message.includes('failed response')) @@ -35,8 +35,11 @@ export class HttpRpcClient { async validateChainId(): Promise { try { // validate chainId is in sync with expected chainid - const chain = await this.userOpJsonRpcProvider.send('eth_chainId', []); - const bundlerChain = parseInt(chain); + const chain = await this.publicClient.request({ + method: 'eth_chainId', + params: [] + }); + const bundlerChain = parseInt(chain as Hex, 16); if (bundlerChain !== this.chainId) { throw new Error( `bundler ${this.bundlerUrl} is on chainId ${bundlerChain}, but provider is on chainId ${this.chainId}`, @@ -51,20 +54,36 @@ export class HttpRpcClient { } } - async getVerificationGasInfo(tx: UserOperationStruct): Promise { + async getVerificationGasInfo(tx: BaseAccountUserOperationStruct): Promise { const hexifiedUserOp = deepHexlify(await resolveProperties(tx)); try { - const response = await this.userOpJsonRpcProvider.send('eth_estimateUserOperationGas', [hexifiedUserOp, this.entryPointAddress]); + const response = await this.walletClient.request({ + method: 'eth_estimateUserOperationGas', + params: [hexifiedUserOp, this.entryPointAddress] + }); return response; } catch (err) { - const body = JSON.parse(err.body); - if (body?.error?.code) { - throw new ErrorHandler(body.error.message, body.error.code) - } - throw new Error(err.message); + this.handleRPCError(err); + } + } + + handleRPCError(err: any) { + const body: RpcRequestError = this.parseViemRPCRequestError(err); + if (body && body?.details && body?.code) { + throw new ErrorHandler(body.details, body.code); + } else { + throw new Error(JSON.stringify(err)); } } + parseViemRPCRequestError(error: any): RpcRequestError { + if (error instanceof RpcRequestError) { + return JSON.parse(JSON.stringify(error)); + } + + // TODO handle BaseError and ContractFunctionExecutionError + } + /** * send a UserOperation to the bundler * @param userOp1 @@ -74,51 +93,59 @@ export class HttpRpcClient { try { await this.initializing; const hexifiedUserOp = deepHexlify(await resolveProperties(userOp1)); - const jsonRequestData: [UserOperationStruct, string] = [hexifiedUserOp, this.entryPointAddress]; + const jsonRequestData: [BaseAccountUserOperationStruct, string] = [hexifiedUserOp, this.entryPointAddress]; await this.printUserOperation('eth_sendUserOperation', jsonRequestData); - return await this.userOpJsonRpcProvider.send('eth_sendUserOperation', [hexifiedUserOp, this.entryPointAddress]); + //return await this.userOpJsonRpcProvider.send('eth_sendUserOperation', [hexifiedUserOp, this.entryPointAddress]); + return await this.walletClient.request({ + method: 'eth_sendUserOperation', + params: [hexifiedUserOp, this.entryPointAddress] + }); } catch (err) { - const body = JSON.parse(err.body); - if (body?.error?.code) { - throw new ErrorHandler(body.error.message, body.error.code) - } - throw new Error(err); + console.log(`error inside sendUserOpToBundler: ${JSON.stringify(err)}`); + this.handleRPCError(err); } } - async sendAggregatedOpsToBundler(userOps1: UserOperationStruct[]): Promise { + async sendAggregatedOpsToBundler(userOps1: BaseAccountUserOperationStruct[]): Promise { try { const hexifiedUserOps = await Promise.all(userOps1.map(async (userOp1) => await resolveProperties(userOp1))); - return await this.userOpJsonRpcProvider.send('eth_sendAggregatedUserOperation', [ - hexifiedUserOps, - this.entryPointAddress, - ]); + // return await this.userOpJsonRpcProvider.send('eth_sendAggregatedUserOperation', [ + // hexifiedUserOps, + // this.entryPointAddress, + // ]); + return await this.walletClient.request({ + method: 'eth_sendAggregatedUserOperation', + params: [hexifiedUserOps, this.entryPointAddress] + }); } catch (err) { - const body = JSON.parse(err.body); - if (body?.error?.code) { - throw new ErrorHandler(body.error.message, body.error.code) - } - throw new Error(err); + this.handleRPCError(err); } } async getSkandhaGasPrice(): Promise { try { - const { maxFeePerGas, maxPriorityFeePerGas } = await this.userOpJsonRpcProvider.send('skandha_getGasPrice', []); + const skandhaGasPriceResponse: any = await this.publicClient.request({ + method: 'skandha_getGasPrice', + params: [] + }); + const { maxFeePerGas, maxPriorityFeePerGas } = skandhaGasPriceResponse; return { maxFeePerGas, maxPriorityFeePerGas }; } catch (err) { console.warn( "getGas: skandha_getGasPrice failed, falling back to legacy gas price." ); - const gas = await this.userOpJsonRpcProvider.getGasPrice(); + const gas = await this.publicClient.getGasPrice(); return { maxFeePerGas: gas, maxPriorityFeePerGas: gas }; } } async getBundlerVersion(): Promise { try { - const version = await this.userOpJsonRpcProvider.send('web3_clientVersion', []); - return version; + const version = await this.publicClient.request({ + method: 'web3_clientVersion', + params: [] + }); + return version as string; } catch (err) { return null; } @@ -126,8 +153,11 @@ export class HttpRpcClient { async getUserOpsReceipt(uoHash: string): Promise { try { - const response = await this.userOpJsonRpcProvider.send('eth_getUserOperationReceipt', [uoHash]); - return response; + const userOpsReceipt = await this.publicClient.request({ + method: 'eth_getUserOperationReceipt', + params: [uoHash] + }); + return userOpsReceipt; } catch (err) { return null; } @@ -135,7 +165,7 @@ export class HttpRpcClient { private async printUserOperation( method: string, - [userOp1, entryPointAddress]: [UserOperationStruct, string], + [userOp1, entryPointAddress]: [BaseAccountUserOperationStruct, string], ): Promise { const userOp = await resolveProperties(userOp1); debug( diff --git a/src/sdk/base/PaymasterAPI.ts b/src/sdk/base/PaymasterAPI.ts index 78b5efc..655ab70 100644 --- a/src/sdk/base/PaymasterAPI.ts +++ b/src/sdk/base/PaymasterAPI.ts @@ -1,4 +1,4 @@ -import { UserOperationStruct } from '../contracts/account-abstraction/contracts/core/BaseAccount'; +import { UserOperationStruct } from '../types/user-operation-types'; import { PaymasterResponse } from './VerifyingPaymasterAPI'; /** diff --git a/src/sdk/base/TransactionDetailsForUserOp.ts b/src/sdk/base/TransactionDetailsForUserOp.ts index f6f2483..445b3c0 100644 --- a/src/sdk/base/TransactionDetailsForUserOp.ts +++ b/src/sdk/base/TransactionDetailsForUserOp.ts @@ -1,4 +1,4 @@ -import { BigNumberish } from 'ethers'; +import { BigNumberish } from "../types/bignumber"; /** * basic struct to create a UserOperation from diff --git a/src/sdk/base/UserOperationEventListener.ts b/src/sdk/base/UserOperationEventListener.ts deleted file mode 100644 index 975285a..0000000 --- a/src/sdk/base/UserOperationEventListener.ts +++ /dev/null @@ -1,99 +0,0 @@ -import { BigNumberish, Event } from 'ethers' -import { TransactionReceipt } from '@ethersproject/providers' -import { IEntryPoint } from '../contracts' -import { defaultAbiCoder } from 'ethers/lib/utils' -import Debug from 'debug' - -const debug = Debug('aa.listener') - -const DEFAULT_TRANSACTION_TIMEOUT = 10000 - -/** - * This class encapsulates Ethers.js listener function and necessary UserOperation details to - * discover a TransactionReceipt for the operation. - */ -export class UserOperationEventListener { - resolved = false - boundLisener: (this: any, ...param: any) => void - - constructor ( - readonly resolve: (t: TransactionReceipt) => void, - readonly reject: (reason?: any) => void, - readonly entryPoint: IEntryPoint, - readonly sender: string, - readonly userOpHash: string, - readonly nonce?: BigNumberish, - readonly timeout?: number - ) { - // eslint-disable-next-line @typescript-eslint/no-misused-promises - this.boundLisener = this.listenerCallback.bind(this) - setTimeout(() => { - this.stop() - this.reject(new Error('Timed out')) - }, this.timeout ?? DEFAULT_TRANSACTION_TIMEOUT) - } - - start (): void { - // eslint-disable-next-line @typescript-eslint/no-misused-promises - const filter = this.entryPoint.filters.UserOperationEvent(this.userOpHash) - // listener takes time... first query directly: - // eslint-disable-next-line @typescript-eslint/no-misused-promises - setTimeout(async () => { - const res = await this.entryPoint.queryFilter(filter, 'latest') - if (res.length > 0) { - void this.listenerCallback(res[0]) - } else { - this.entryPoint.once(filter, this.boundLisener) - } - }, 100) - } - - stop (): void { - // eslint-disable-next-line @typescript-eslint/no-misused-promises - this.entryPoint.off('UserOperationEvent', this.boundLisener) - } - - // eslint-disable-next-line @typescript-eslint/no-unused-vars - async listenerCallback (this: any, ...param: any): Promise { - // eslint-disable-next-line prefer-rest-params - const event = arguments[arguments.length - 1] as Event - if (event.args == null) { - console.error('got event without args', event) - return - } - // TODO: can this happen? we register to event by userOpHash.. - if (event.args.userOpHash !== this.userOpHash) { - console.log(`== event with wrong userOpHash: sender/nonce: event.${event.args.sender as string}@${event.args.nonce.toString() as string}!= userOp.${this.sender as string}@${parseInt(this.nonce?.toString())}`) - return - } - - const transactionReceipt = await event.getTransactionReceipt() - transactionReceipt.transactionHash = this.userOpHash - debug('got event with status=', event.args.success, 'gasUsed=', transactionReceipt.gasUsed) - - // before returning the receipt, update the status from the event. - // eslint-disable-next-line @typescript-eslint/strict-boolean-expressions - if (!event.args.success) { - await this.extractFailureReason(transactionReceipt) - } - this.stop() - this.resolve(transactionReceipt) - this.resolved = true - } - - async extractFailureReason (receipt: TransactionReceipt): Promise { - debug('mark tx as failed') - receipt.status = 0 - const revertReasonEvents = await this.entryPoint.queryFilter(this.entryPoint.filters.UserOperationRevertReason(this.userOpHash, this.sender), receipt.blockHash) - if (revertReasonEvents[0] != null) { - let message = revertReasonEvents[0].args.revertReason - if (message.startsWith('0x08c379a0')) { - // Error(string) - message = defaultAbiCoder.decode(['string'], '0x' + message.substring(10)).toString() - } - debug(`rejecting with reason: ${message}`) - this.reject(new Error(`UserOp failed with reason: ${message}`) - ) - } - } -} diff --git a/src/sdk/base/VerifyingPaymasterAPI.ts b/src/sdk/base/VerifyingPaymasterAPI.ts index 830a31e..5dc116c 100644 --- a/src/sdk/base/VerifyingPaymasterAPI.ts +++ b/src/sdk/base/VerifyingPaymasterAPI.ts @@ -1,9 +1,10 @@ -import { BigNumber, ethers } from 'ethers'; import fetch from 'cross-fetch'; import { calcPreVerificationGas } from './calcPreVerificationGas'; import { PaymasterAPI } from './PaymasterAPI'; import { toJSON } from '../common/OperationUtils'; import { UserOperation } from '../common'; +import { resolveProperties } from '../common/utils'; +import { BigNumber } from '../types/bignumber'; const DUMMY_SIGNATURE = '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'; @@ -36,7 +37,7 @@ export class VerifyingPaymasterAPI extends PaymasterAPI { // Hack: userOp includes empty paymasterData which calcPreVerificationGas requires. try { // userOp.preVerificationGas contains a promise that will resolve to an error. - await ethers.utils.resolveProperties(userOp); + await resolveProperties(userOp); // eslint-disable-next-line no-empty } catch (_) { } let pmOp: Partial; @@ -66,7 +67,7 @@ export class VerifyingPaymasterAPI extends PaymasterAPI { signature: DUMMY_SIGNATURE, } } - const op = await ethers.utils.resolveProperties(pmOp); + const op = await resolveProperties(pmOp); op.preVerificationGas = calcPreVerificationGas(op); // Ask the paymaster to sign the transaction and return a valid paymasterData value. diff --git a/src/sdk/base/calcPreVerificationGas.ts b/src/sdk/base/calcPreVerificationGas.ts index a32f95f..ac67ad8 100644 --- a/src/sdk/base/calcPreVerificationGas.ts +++ b/src/sdk/base/calcPreVerificationGas.ts @@ -1,8 +1,8 @@ -import { UserOperationStruct } from '../contracts/account-abstraction/contracts/core/BaseAccount'; import { NotPromise, packUserOp } from '../common'; -import { arrayify, hexlify } from 'ethers/lib/utils'; import { Buffer } from 'buffer'; +import { toBytes, toHex } from 'viem'; +import { BaseAccountUserOperationStruct } from '../types/user-operation-types'; export interface GasOverheads { /** @@ -61,18 +61,18 @@ export const DefaultGasOverheads: GasOverheads = { * @param overheads gas overheads to use, to override the default values */ export function calcPreVerificationGas( - userOp: Partial, + userOp: Partial, overheads?: Partial, ): number { const ov = { ...DefaultGasOverheads, ...(overheads ?? {}) }; - const p: NotPromise = { + const p: NotPromise = { // dummy values, in case the UserOp is incomplete. preVerificationGas: 21000, // dummy value, just for calldata cost - signature: hexlify(Buffer.alloc(ov.sigSize, 1)), // dummy signature + signature: toHex(Buffer.alloc(ov.sigSize, 1)), // dummy signature ...userOp, } as any; - const packed = arrayify(packUserOp(p, false)); + const packed = toBytes(packUserOp(p, false)); const callDataCost = packed.map((x) => (x === 0 ? ov.zeroByte : ov.nonZeroByte)).reduce((sum, x) => sum + x); const ret = Math.round(callDataCost + ov.fixed / ov.bundleSize + ov.perUserOp + ov.perUserOpWord * packed.length); return ret; diff --git a/src/sdk/base/index.ts b/src/sdk/base/index.ts index 2a0e773..32cbcaf 100644 --- a/src/sdk/base/index.ts +++ b/src/sdk/base/index.ts @@ -1,8 +1,6 @@ export { EtherspotWalletAPI } from './EtherspotWalletAPI'; export { PaymasterAPI } from './PaymasterAPI'; -export { ERC4337EthersSigner } from './ERC4337EthersSigner'; -export { ERC4337EthersProvider } from './ERC4337EthersProvider'; -export { ClientConfig } from './ClientConfig'; +export type { ClientConfig } from './ClientConfig'; export { HttpRpcClient } from './HttpRpcClient'; export { DeterministicDeployer } from './DeterministicDeployer'; export { VerifyingPaymasterAPI } from './VerifyingPaymasterAPI'; diff --git a/src/sdk/common/ERC4337Utils.ts b/src/sdk/common/ERC4337Utils.ts index 2e4dbb6..daee545 100644 --- a/src/sdk/common/ERC4337Utils.ts +++ b/src/sdk/common/ERC4337Utils.ts @@ -1,7 +1,9 @@ -import { BytesLike, defaultAbiCoder, hexConcat, hexZeroPad, hexlify, keccak256 } from 'ethers/lib/utils'; -import { UserOperationStruct } from '../contracts/account-abstraction/contracts/core/BaseAccount'; -import { BigNumber, BigNumberish, ethers } from 'ethers'; import { Buffer } from 'buffer'; +import { concat, decodeAbiParameters, encodeAbiParameters, Hex, keccak256, pad, parseAbiParameters, toHex } from 'viem'; +import { hexlifyValue } from './utils/hexlify'; +import { BaseAccountUserOperationStruct } from '../types/user-operation-types'; +import { BigNumber, BigNumberish } from '../types/bignumber'; +import { BytesLike } from './types'; export interface UserOperation { sender: string @@ -21,32 +23,20 @@ export interface UserOperation { signature: BytesLike } -export const AddressZero = ethers.constants.AddressZero; - -// eslint-disable-next-line @typescript-eslint/no-unused-vars -function encode(typevalues: Array<{ type: string; val: any }>, forSignature: boolean): string { - const types = typevalues.map((typevalue) => - typevalue.type === 'bytes' && forSignature ? 'bytes32' : typevalue.type, - ); - const values = typevalues.map((typevalue) => - typevalue.type === 'bytes' && forSignature ? keccak256(typevalue.val) : typevalue.val, - ); - return defaultAbiCoder.encode(types, values); -} - // reverse "Deferrable" or "PromiseOrValue" fields export type NotPromise = { [P in keyof T]: Exclude> } +// TODO - test this on sepolia /** * pack the userOperation * @param op * @param forSignature "true" if the hash is needed to calculate the getUserOpHash() * "false" to pack entire UserOp, for calculating the calldata cost of putting it on-chain. */ -export function packUserOp(op1: UserOperation | NotPromise, forSignature = true): string { - let op: NotPromise; +export function packUserOp(op1: UserOperation | NotPromise, forSignature = true): string { + let op: NotPromise; if ('callGasLimit' in op1) { op = packUserOpData(op1) } else { @@ -54,34 +44,55 @@ export function packUserOp(op1: UserOperation | NotPromise, } if (forSignature) { - return defaultAbiCoder.encode( - ['address', 'uint256', 'bytes32', 'bytes32', 'bytes32', 'uint256', 'bytes32', 'bytes32'], - [op.sender, op.nonce, keccak256(op.initCode), keccak256(op.callData), - op.accountGasLimits, op.preVerificationGas, op.gasFees, - keccak256(op.paymasterAndData)]) + + const packedUserOp = encodeAbiParameters( + parseAbiParameters('address, uint256, bytes32, bytes32, bytes32, uint256, bytes32, bytes32'), + [op.sender as Hex, + BigInt(op.nonce as Hex), + keccak256(op.initCode as Hex), + keccak256(op.callData as Hex), + op.accountGasLimits.toString() as Hex, + BigInt(op.preVerificationGas as Hex), + op.gasFees.toString() as Hex, + keccak256(op.paymasterAndData as Hex)] + ); + + return packedUserOp; } else { // for the purpose of calculating gas cost encode also signature (and no keccak of bytes) - return defaultAbiCoder.encode( - ['address', 'uint256', 'bytes', 'bytes', 'bytes32', 'uint256', 'bytes32', 'bytes', 'bytes'], - [op.sender, op.nonce, op.initCode, op.callData, - op.accountGasLimits, op.preVerificationGas, op.gasFees, - op.paymasterAndData, op.signature]) + const packedUserOp = encodeAbiParameters( + parseAbiParameters('address, uint256, bytes, bytes, bytes32, uint256, bytes32, bytes, bytes'), + [op.sender as Hex, + BigInt(op.nonce as Hex), + op.initCode as Hex, + op.callData as Hex, + op.accountGasLimits.toString() as Hex, + BigInt(op.preVerificationGas as Hex), + op.gasFees.toString() as Hex, + op.paymasterAndData as Hex, + op.signature as Hex] + ); + + return packedUserOp; } } export function packUint(high128: BigNumberish, low128: BigNumberish): string { - return hexZeroPad(BigNumber.from(high128).shl(128).add(low128).toHexString(), 32) + return pad(BigNumber.from(high128).shl(128).add(low128).toHexString() as Hex, { size: 32 }) } +// TODO - test this on sepolia export function packPaymasterData(paymaster: string, paymasterVerificationGasLimit: BigNumberish, postOpGasLimit: BigNumberish, paymasterData?: BytesLike): BytesLike { - return ethers.utils.hexConcat([ - paymaster, - packUint(paymasterVerificationGasLimit, postOpGasLimit), - paymasterData ?? '0x' + const paymasterAndData = paymasterData ? paymasterData : '0x'; + return concat([ + paymaster as Hex, + packUint(paymasterVerificationGasLimit, postOpGasLimit) as Hex, + paymasterAndData as Hex ]) } -export function packUserOpData(op: any): NotPromise { +// TODO - test this on sepolia +export function packUserOpData(op: any): NotPromise { let paymasterAndData: BytesLike if (op.paymaster == null) { paymasterAndData = '0x' @@ -95,7 +106,7 @@ export function packUserOpData(op: any): NotPromise { return { sender: op.sender, nonce: BigNumber.from(op.nonce).toHexString(), - initCode: op.factory == null ? '0x' : hexConcat([op.factory, op.factoryData ?? '']), + initCode: op.factory == null ? '0x' : concat([op.factory, op.factoryData ?? '']), callData: op.callData, accountGasLimits: packUint(op.verificationGasLimit, op.callGasLimit), preVerificationGas: BigNumber.from(op.preVerificationGas).toHexString(), @@ -115,9 +126,10 @@ export function packUserOpData(op: any): NotPromise { * @param chainId */ export function getUserOpHash(op: UserOperation, entryPoint: string, chainId: number): string { - const userOpHash = keccak256(packUserOp(op, true)); - const enc = defaultAbiCoder.encode(['bytes32', 'address', 'uint256'], [userOpHash, entryPoint, chainId]); - return keccak256(enc); + const userOpHash = keccak256(packUserOp(op, true) as Hex); + //const enc = defaultAbiCoder.encode(['bytes32', 'address', 'uint256'], [userOpHash, entryPoint, chainId]); + const enc = encodeAbiParameters(parseAbiParameters('bytes32, address, uint256'), [userOpHash, entryPoint as Hex, BigInt(chainId)]); + return keccak256(enc as Hex); } const ErrorSig = keccak256(Buffer.from('Error(string)')).slice(0, 10); // 0x08c379a0 @@ -131,16 +143,17 @@ interface DecodedError { /** * decode bytes thrown by revert as Error(message) or FailedOp(opIndex,paymaster,message) */ +// TODO-Test decodeErrorReason export function decodeErrorReason(error: string): DecodedError | undefined { if (error.startsWith(ErrorSig)) { - const [message] = defaultAbiCoder.decode(['string'], '0x' + error.substring(10)); + const [message] = decodeAbiParameters(parseAbiParameters('string'), '0x' + error.substring(10) as Hex); return { message }; } else if (error.startsWith(FailedOpSig)) { - const [opIndex, message] = defaultAbiCoder.decode(['uint256', 'string'], '0x' + error.substring(10)); + const [opIndexBigInt, message] = decodeAbiParameters(parseAbiParameters('uint256, string'), '0x' + error.substring(10) as Hex); const formattedMessage = `FailedOp: ${message as string}`; return { message: formattedMessage, - opIndex, + opIndex: Number(opIndexBigInt), }; } } @@ -167,7 +180,7 @@ export function rethrowError(e: any): any { if (decoded.opIndex != null) { // helper for chai: convert our FailedOp error into "Error(msg)" - const errorWithMsg = hexConcat([ErrorSig, defaultAbiCoder.encode(['string'], [decoded.message])]); + const errorWithMsg = concat([ErrorSig as Hex, encodeAbiParameters(parseAbiParameters('string'), [decoded.message]) as Hex]); // modify in-place the error object: parent.data = errorWithMsg; } @@ -186,7 +199,8 @@ export function deepHexlify(obj: any): any { if (obj == null || typeof obj === 'string' || typeof obj === 'boolean') { return obj; } else if (obj._isBigNumber != null || typeof obj !== 'object') { - return hexlify(obj).replace(/^0x0/, '0x'); + const hexlified = hexlifyValue(obj).replace(/^0x0/, '0x'); + return hexlified; } if (Array.isArray(obj)) { return obj.map((member) => deepHexlify(member)); diff --git a/src/sdk/common/OperationUtils.ts b/src/sdk/common/OperationUtils.ts index a63ccae..3d66364 100644 --- a/src/sdk/common/OperationUtils.ts +++ b/src/sdk/common/OperationUtils.ts @@ -1,13 +1,14 @@ -import { ethers } from 'ethers'; -import { UserOperationStruct } from '../contracts/account-abstraction/contracts/core/BaseAccount'; +import { resolveProperties } from './utils'; +import { BaseAccountUserOperationStruct } from '../types/user-operation-types'; +import { toHex } from 'viem'; -export function toJSON(op: Partial): Promise { - return ethers.utils.resolveProperties(op).then((userOp) => +export function toJSON(op: Partial): Promise { + return resolveProperties(op).then((userOp) => Object.keys(userOp) .map((key) => { let val = (userOp as any)[key]; if (typeof val !== 'string' || !val.startsWith('0x')) { - val = ethers.utils.hexValue(val); + val = toHex(val); } return [key, val]; }) @@ -20,6 +21,6 @@ export function toJSON(op: Partial): Promise { ), ); } -export async function printOp(op: Partial): Promise { +export async function printOp(op: Partial): Promise { return toJSON(op).then((userOp) => JSON.stringify(userOp, null, 2)); } diff --git a/src/sdk/common/abi/AccountResolver.ts b/src/sdk/common/abi/AccountResolver.ts new file mode 100644 index 0000000..2dfd453 --- /dev/null +++ b/src/sdk/common/abi/AccountResolver.ts @@ -0,0 +1,118 @@ +export const AccountResolverAbi = [ + { + inputs: [ + { internalType: "address", name: "_v1Factory", type: "address" }, + { internalType: "address", name: "_v2Factory", type: "address" }, + { internalType: "address", name: "_ecdsaModule", type: "address" } + ], + stateMutability: "nonpayable", + type: "constructor" + }, + { + inputs: [], + name: "ecdsaOwnershipModule", + outputs: [{ internalType: "address", name: "", type: "address" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "_eoa", type: "address" }, + { internalType: "uint8", name: "_maxIndex", type: "uint8" } + ], + name: "resolveAddresses", + outputs: [ + { + components: [ + { internalType: "address", name: "accountAddress", type: "address" }, + { internalType: "address", name: "factoryAddress", type: "address" }, + { + internalType: "address", + name: "currentImplementation", + type: "address" + }, + { internalType: "string", name: "currentVersion", type: "string" }, + { internalType: "string", name: "factoryVersion", type: "string" }, + { internalType: "uint256", name: "deploymentIndex", type: "uint256" } + ], + internalType: "struct IAddressResolver.SmartAccountResult[]", + name: "", + type: "tuple[]" + } + ], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "_eoa", type: "address" }, + { internalType: "uint8", name: "_maxIndex", type: "uint8" }, + { internalType: "address", name: "_moduleAddress", type: "address" }, + { internalType: "bytes", name: "_moduleSetupData", type: "bytes" } + ], + name: "resolveAddressesFlexibleForV2", + outputs: [ + { + components: [ + { internalType: "address", name: "accountAddress", type: "address" }, + { internalType: "address", name: "factoryAddress", type: "address" }, + { + internalType: "address", + name: "currentImplementation", + type: "address" + }, + { internalType: "string", name: "currentVersion", type: "string" }, + { internalType: "string", name: "factoryVersion", type: "string" }, + { internalType: "uint256", name: "deploymentIndex", type: "uint256" } + ], + internalType: "struct IAddressResolver.SmartAccountResult[]", + name: "", + type: "tuple[]" + } + ], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "_eoa", type: "address" }, + { internalType: "uint8", name: "_maxIndex", type: "uint8" } + ], + name: "resolveAddressesV1", + outputs: [ + { + components: [ + { internalType: "address", name: "accountAddress", type: "address" }, + { internalType: "address", name: "factoryAddress", type: "address" }, + { + internalType: "address", + name: "currentImplementation", + type: "address" + }, + { internalType: "string", name: "currentVersion", type: "string" }, + { internalType: "string", name: "factoryVersion", type: "string" }, + { internalType: "uint256", name: "deploymentIndex", type: "uint256" } + ], + internalType: "struct IAddressResolver.SmartAccountResult[]", + name: "", + type: "tuple[]" + } + ], + stateMutability: "view", + type: "function" + }, + { + inputs: [], + name: "smartAccountFactoryV1", + outputs: [{ internalType: "address", name: "", type: "address" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [], + name: "smartAccountFactoryV2", + outputs: [{ internalType: "address", name: "", type: "address" }], + stateMutability: "view", + type: "function" + } +] as const diff --git a/src/sdk/common/abi/ECDSAModule.ts b/src/sdk/common/abi/ECDSAModule.ts new file mode 100644 index 0000000..228aa3f --- /dev/null +++ b/src/sdk/common/abi/ECDSAModule.ts @@ -0,0 +1,152 @@ +export const ECDSAModuleAbi = [ + { + inputs: [ + { internalType: "address", name: "smartAccount", type: "address" } + ], + name: "AlreadyInitedForSmartAccount", + type: "error" + }, + { + inputs: [ + { internalType: "address", name: "smartAccount", type: "address" } + ], + name: "NoOwnerRegisteredForSmartAccount", + type: "error" + }, + { + inputs: [{ internalType: "address", name: "account", type: "address" }], + name: "NotEOA", + type: "error" + }, + { inputs: [], name: "WrongSignatureLength", type: "error" }, + { inputs: [], name: "ZeroAddressNotAllowedAsOwner", type: "error" }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "smartAccount", + type: "address" + }, + { + indexed: true, + internalType: "address", + name: "oldOwner", + type: "address" + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address" + } + ], + name: "OwnershipTransferred", + type: "event" + }, + { + inputs: [], + name: "NAME", + outputs: [{ internalType: "string", name: "", type: "string" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [], + name: "VERSION", + outputs: [{ internalType: "string", name: "", type: "string" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "smartAccount", type: "address" } + ], + name: "getOwner", + outputs: [{ internalType: "address", name: "", type: "address" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [{ internalType: "address", name: "eoaOwner", type: "address" }], + name: "initForSmartAccount", + outputs: [{ internalType: "address", name: "", type: "address" }], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { internalType: "bytes32", name: "dataHash", type: "bytes32" }, + { internalType: "bytes", name: "moduleSignature", type: "bytes" } + ], + name: "isValidSignature", + outputs: [{ internalType: "bytes4", name: "", type: "bytes4" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { internalType: "bytes32", name: "dataHash", type: "bytes32" }, + { internalType: "bytes", name: "moduleSignature", type: "bytes" }, + { internalType: "address", name: "smartAccount", type: "address" } + ], + name: "isValidSignatureForAddress", + outputs: [{ internalType: "bytes4", name: "", type: "bytes4" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [{ internalType: "address", name: "owner", type: "address" }], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { + components: [ + { internalType: "address", name: "sender", type: "address" }, + { internalType: "uint256", name: "nonce", type: "uint256" }, + { internalType: "bytes", name: "initCode", type: "bytes" }, + { internalType: "bytes", name: "callData", type: "bytes" }, + { internalType: "uint256", name: "callGasLimit", type: "uint256" }, + { + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "preVerificationGas", + type: "uint256" + }, + { internalType: "uint256", name: "maxFeePerGas", type: "uint256" }, + { + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256" + }, + { internalType: "bytes", name: "paymasterAndData", type: "bytes" }, + { internalType: "bytes", name: "signature", type: "bytes" } + ], + internalType: "struct UserOperation", + name: "userOp", + type: "tuple" + }, + { internalType: "bytes32", name: "userOpHash", type: "bytes32" } + ], + name: "validateUserOp", + outputs: [{ internalType: "uint256", name: "", type: "uint256" }], + stateMutability: "view", + type: "function" + } +] diff --git a/src/sdk/common/abi/EntryPointAbi.ts b/src/sdk/common/abi/EntryPointAbi.ts new file mode 100644 index 0000000..695b3e7 --- /dev/null +++ b/src/sdk/common/abi/EntryPointAbi.ts @@ -0,0 +1,1309 @@ +export const EntryPointAbi = [ + { + inputs: [ + { + internalType: "uint256", + name: "preOpGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "paid", + type: "uint256" + }, + { + internalType: "uint48", + name: "validAfter", + type: "uint48" + }, + { + internalType: "uint48", + name: "validUntil", + type: "uint48" + }, + { + internalType: "bool", + name: "targetSuccess", + type: "bool" + }, + { + internalType: "bytes", + name: "targetResult", + type: "bytes" + } + ], + name: "ExecutionResult", + type: "error" + }, + { + inputs: [ + { + internalType: "uint256", + name: "opIndex", + type: "uint256" + }, + { + internalType: "string", + name: "reason", + type: "string" + } + ], + name: "FailedOp", + type: "error" + }, + { + inputs: [ + { + internalType: "address", + name: "sender", + type: "address" + } + ], + name: "SenderAddressResult", + type: "error" + }, + { + inputs: [ + { + internalType: "address", + name: "aggregator", + type: "address" + } + ], + name: "SignatureValidationFailed", + type: "error" + }, + { + inputs: [ + { + components: [ + { + internalType: "uint256", + name: "preOpGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "prefund", + type: "uint256" + }, + { + internalType: "bool", + name: "sigFailed", + type: "bool" + }, + { + internalType: "uint48", + name: "validAfter", + type: "uint48" + }, + { + internalType: "uint48", + name: "validUntil", + type: "uint48" + }, + { + internalType: "bytes", + name: "paymasterContext", + type: "bytes" + } + ], + internalType: "struct IEntryPoint.ReturnInfo", + name: "returnInfo", + type: "tuple" + }, + { + components: [ + { + internalType: "uint256", + name: "stake", + type: "uint256" + }, + { + internalType: "uint256", + name: "unstakeDelaySec", + type: "uint256" + } + ], + internalType: "struct IStakeManager.StakeInfo", + name: "senderInfo", + type: "tuple" + }, + { + components: [ + { + internalType: "uint256", + name: "stake", + type: "uint256" + }, + { + internalType: "uint256", + name: "unstakeDelaySec", + type: "uint256" + } + ], + internalType: "struct IStakeManager.StakeInfo", + name: "factoryInfo", + type: "tuple" + }, + { + components: [ + { + internalType: "uint256", + name: "stake", + type: "uint256" + }, + { + internalType: "uint256", + name: "unstakeDelaySec", + type: "uint256" + } + ], + internalType: "struct IStakeManager.StakeInfo", + name: "paymasterInfo", + type: "tuple" + } + ], + name: "ValidationResult", + type: "error" + }, + { + inputs: [ + { + components: [ + { + internalType: "uint256", + name: "preOpGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "prefund", + type: "uint256" + }, + { + internalType: "bool", + name: "sigFailed", + type: "bool" + }, + { + internalType: "uint48", + name: "validAfter", + type: "uint48" + }, + { + internalType: "uint48", + name: "validUntil", + type: "uint48" + }, + { + internalType: "bytes", + name: "paymasterContext", + type: "bytes" + } + ], + internalType: "struct IEntryPoint.ReturnInfo", + name: "returnInfo", + type: "tuple" + }, + { + components: [ + { + internalType: "uint256", + name: "stake", + type: "uint256" + }, + { + internalType: "uint256", + name: "unstakeDelaySec", + type: "uint256" + } + ], + internalType: "struct IStakeManager.StakeInfo", + name: "senderInfo", + type: "tuple" + }, + { + components: [ + { + internalType: "uint256", + name: "stake", + type: "uint256" + }, + { + internalType: "uint256", + name: "unstakeDelaySec", + type: "uint256" + } + ], + internalType: "struct IStakeManager.StakeInfo", + name: "factoryInfo", + type: "tuple" + }, + { + components: [ + { + internalType: "uint256", + name: "stake", + type: "uint256" + }, + { + internalType: "uint256", + name: "unstakeDelaySec", + type: "uint256" + } + ], + internalType: "struct IStakeManager.StakeInfo", + name: "paymasterInfo", + type: "tuple" + }, + { + components: [ + { + internalType: "address", + name: "aggregator", + type: "address" + }, + { + components: [ + { + internalType: "uint256", + name: "stake", + type: "uint256" + }, + { + internalType: "uint256", + name: "unstakeDelaySec", + type: "uint256" + } + ], + internalType: "struct IStakeManager.StakeInfo", + name: "stakeInfo", + type: "tuple" + } + ], + internalType: "struct IEntryPoint.AggregatorStakeInfo", + name: "aggregatorInfo", + type: "tuple" + } + ], + name: "ValidationResultWithAggregation", + type: "error" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "userOpHash", + type: "bytes32" + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address" + }, + { + indexed: false, + internalType: "address", + name: "factory", + type: "address" + }, + { + indexed: false, + internalType: "address", + name: "paymaster", + type: "address" + } + ], + name: "AccountDeployed", + type: "event" + }, + { + anonymous: false, + inputs: [], + name: "BeforeExecution", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address" + }, + { + indexed: false, + internalType: "uint256", + name: "totalDeposit", + type: "uint256" + } + ], + name: "Deposited", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "aggregator", + type: "address" + } + ], + name: "SignatureAggregatorChanged", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address" + }, + { + indexed: false, + internalType: "uint256", + name: "totalStaked", + type: "uint256" + }, + { + indexed: false, + internalType: "uint256", + name: "unstakeDelaySec", + type: "uint256" + } + ], + name: "StakeLocked", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address" + }, + { + indexed: false, + internalType: "uint256", + name: "withdrawTime", + type: "uint256" + } + ], + name: "StakeUnlocked", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address" + }, + { + indexed: false, + internalType: "address", + name: "withdrawAddress", + type: "address" + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256" + } + ], + name: "StakeWithdrawn", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "userOpHash", + type: "bytes32" + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address" + }, + { + indexed: true, + internalType: "address", + name: "paymaster", + type: "address" + }, + { + indexed: false, + internalType: "uint256", + name: "nonce", + type: "uint256" + }, + { + indexed: false, + internalType: "bool", + name: "success", + type: "bool" + }, + { + indexed: false, + internalType: "uint256", + name: "actualGasCost", + type: "uint256" + }, + { + indexed: false, + internalType: "uint256", + name: "actualGasUsed", + type: "uint256" + } + ], + name: "UserOperationEvent", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "userOpHash", + type: "bytes32" + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address" + }, + { + indexed: false, + internalType: "uint256", + name: "nonce", + type: "uint256" + }, + { + indexed: false, + internalType: "bytes", + name: "revertReason", + type: "bytes" + } + ], + name: "UserOperationRevertReason", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address" + }, + { + indexed: false, + internalType: "address", + name: "withdrawAddress", + type: "address" + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256" + } + ], + name: "Withdrawn", + type: "event" + }, + { + inputs: [], + name: "SIG_VALIDATION_FAILED", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256" + } + ], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { + internalType: "bytes", + name: "initCode", + type: "bytes" + }, + { + internalType: "address", + name: "sender", + type: "address" + }, + { + internalType: "bytes", + name: "paymasterAndData", + type: "bytes" + } + ], + name: "_validateSenderAndPaymaster", + outputs: [], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { + internalType: "uint32", + name: "unstakeDelaySec", + type: "uint32" + } + ], + name: "addStake", + outputs: [], + stateMutability: "payable", + type: "function" + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address" + } + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256" + } + ], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address" + } + ], + name: "depositTo", + outputs: [], + stateMutability: "payable", + type: "function" + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address" + } + ], + name: "deposits", + outputs: [ + { + internalType: "uint112", + name: "deposit", + type: "uint112" + }, + { + internalType: "bool", + name: "staked", + type: "bool" + }, + { + internalType: "uint112", + name: "stake", + type: "uint112" + }, + { + internalType: "uint32", + name: "unstakeDelaySec", + type: "uint32" + }, + { + internalType: "uint48", + name: "withdrawTime", + type: "uint48" + } + ], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address" + } + ], + name: "getDepositInfo", + outputs: [ + { + components: [ + { + internalType: "uint112", + name: "deposit", + type: "uint112" + }, + { + internalType: "bool", + name: "staked", + type: "bool" + }, + { + internalType: "uint112", + name: "stake", + type: "uint112" + }, + { + internalType: "uint32", + name: "unstakeDelaySec", + type: "uint32" + }, + { + internalType: "uint48", + name: "withdrawTime", + type: "uint48" + } + ], + internalType: "struct IStakeManager.DepositInfo", + name: "info", + type: "tuple" + } + ], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { + internalType: "address", + name: "sender", + type: "address" + }, + { + internalType: "uint192", + name: "key", + type: "uint192" + } + ], + name: "getNonce", + outputs: [ + { + internalType: "uint256", + name: "nonce", + type: "uint256" + } + ], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { + internalType: "bytes", + name: "initCode", + type: "bytes" + } + ], + name: "getSenderAddress", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "sender", + type: "address" + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256" + }, + { + internalType: "bytes", + name: "initCode", + type: "bytes" + }, + { + internalType: "bytes", + name: "callData", + type: "bytes" + }, + { + internalType: "uint256", + name: "callGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "preVerificationGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256" + }, + { + internalType: "bytes", + name: "paymasterAndData", + type: "bytes" + }, + { + internalType: "bytes", + name: "signature", + type: "bytes" + } + ], + internalType: "struct UserOperation", + name: "userOp", + type: "tuple" + } + ], + name: "getUserOpHash", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32" + } + ], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { + components: [ + { + components: [ + { + internalType: "address", + name: "sender", + type: "address" + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256" + }, + { + internalType: "bytes", + name: "initCode", + type: "bytes" + }, + { + internalType: "bytes", + name: "callData", + type: "bytes" + }, + { + internalType: "uint256", + name: "callGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "preVerificationGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256" + }, + { + internalType: "bytes", + name: "paymasterAndData", + type: "bytes" + }, + { + internalType: "bytes", + name: "signature", + type: "bytes" + } + ], + internalType: "struct UserOperation[]", + name: "userOps", + type: "tuple[]" + }, + { + internalType: "contract IAggregator", + name: "aggregator", + type: "address" + }, + { + internalType: "bytes", + name: "signature", + type: "bytes" + } + ], + internalType: "struct IEntryPoint.UserOpsPerAggregator[]", + name: "opsPerAggregator", + type: "tuple[]" + }, + { + internalType: "address payable", + name: "beneficiary", + type: "address" + } + ], + name: "handleAggregatedOps", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "sender", + type: "address" + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256" + }, + { + internalType: "bytes", + name: "initCode", + type: "bytes" + }, + { + internalType: "bytes", + name: "callData", + type: "bytes" + }, + { + internalType: "uint256", + name: "callGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "preVerificationGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256" + }, + { + internalType: "bytes", + name: "paymasterAndData", + type: "bytes" + }, + { + internalType: "bytes", + name: "signature", + type: "bytes" + } + ], + internalType: "struct UserOperation[]", + name: "ops", + type: "tuple[]" + }, + { + internalType: "address payable", + name: "beneficiary", + type: "address" + } + ], + name: "handleOps", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { + internalType: "uint192", + name: "key", + type: "uint192" + } + ], + name: "incrementNonce", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { + internalType: "bytes", + name: "callData", + type: "bytes" + }, + { + components: [ + { + components: [ + { + internalType: "address", + name: "sender", + type: "address" + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256" + }, + { + internalType: "uint256", + name: "callGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "preVerificationGas", + type: "uint256" + }, + { + internalType: "address", + name: "paymaster", + type: "address" + }, + { + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256" + } + ], + internalType: "struct EntryPoint.MemoryUserOp", + name: "mUserOp", + type: "tuple" + }, + { + internalType: "bytes32", + name: "userOpHash", + type: "bytes32" + }, + { + internalType: "uint256", + name: "prefund", + type: "uint256" + }, + { + internalType: "uint256", + name: "contextOffset", + type: "uint256" + }, + { + internalType: "uint256", + name: "preOpGas", + type: "uint256" + } + ], + internalType: "struct EntryPoint.UserOpInfo", + name: "opInfo", + type: "tuple" + }, + { + internalType: "bytes", + name: "context", + type: "bytes" + } + ], + name: "innerHandleOp", + outputs: [ + { + internalType: "uint256", + name: "actualGasCost", + type: "uint256" + } + ], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address" + }, + { + internalType: "uint192", + name: "", + type: "uint192" + } + ], + name: "nonceSequenceNumber", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256" + } + ], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "sender", + type: "address" + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256" + }, + { + internalType: "bytes", + name: "initCode", + type: "bytes" + }, + { + internalType: "bytes", + name: "callData", + type: "bytes" + }, + { + internalType: "uint256", + name: "callGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "preVerificationGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256" + }, + { + internalType: "bytes", + name: "paymasterAndData", + type: "bytes" + }, + { + internalType: "bytes", + name: "signature", + type: "bytes" + } + ], + internalType: "struct UserOperation", + name: "op", + type: "tuple" + }, + { + internalType: "address", + name: "target", + type: "address" + }, + { + internalType: "bytes", + name: "targetCallData", + type: "bytes" + } + ], + name: "simulateHandleOp", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "sender", + type: "address" + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256" + }, + { + internalType: "bytes", + name: "initCode", + type: "bytes" + }, + { + internalType: "bytes", + name: "callData", + type: "bytes" + }, + { + internalType: "uint256", + name: "callGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "preVerificationGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256" + }, + { + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256" + }, + { + internalType: "bytes", + name: "paymasterAndData", + type: "bytes" + }, + { + internalType: "bytes", + name: "signature", + type: "bytes" + } + ], + internalType: "struct UserOperation", + name: "userOp", + type: "tuple" + } + ], + name: "simulateValidation", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [], + name: "unlockStake", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { + internalType: "address payable", + name: "withdrawAddress", + type: "address" + } + ], + name: "withdrawStake", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { + internalType: "address payable", + name: "withdrawAddress", + type: "address" + }, + { + internalType: "uint256", + name: "withdrawAmount", + type: "uint256" + } + ], + name: "withdrawTo", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + stateMutability: "payable", + type: "receive" + } +] as const diff --git a/src/sdk/common/abi/Factory.ts b/src/sdk/common/abi/Factory.ts new file mode 100644 index 0000000..c7d148b --- /dev/null +++ b/src/sdk/common/abi/Factory.ts @@ -0,0 +1,141 @@ +export const BiconomyFactoryAbi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address" + }, + { + indexed: true, + internalType: "address", + name: "initialAuthModule", + type: "address" + }, + { + indexed: true, + internalType: "uint256", + name: "index", + type: "uint256" + } + ], + name: "AccountCreation", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address" + }, + { + indexed: true, + internalType: "address", + name: "initialAuthModule", + type: "address" + } + ], + name: "AccountCreationWithoutIndex", + type: "event" + }, + { + inputs: [], + name: "accountCreationCode", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes" + } + ], + stateMutability: "pure", + type: "function" + }, + { + inputs: [ + { + internalType: "address", + name: "moduleSetupContract", + type: "address" + }, + { + internalType: "bytes", + name: "moduleSetupData", + type: "bytes" + } + ], + name: "deployAccount", + outputs: [ + { + internalType: "address", + name: "proxy", + type: "address" + } + ], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { + internalType: "address", + name: "moduleSetupContract", + type: "address" + }, + { + internalType: "bytes", + name: "moduleSetupData", + type: "bytes" + }, + { + internalType: "uint256", + name: "index", + type: "uint256" + } + ], + name: "deployCounterFactualAccount", + outputs: [ + { + internalType: "address", + name: "proxy", + type: "address" + } + ], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { + internalType: "address", + name: "moduleSetupContract", + type: "address" + }, + { + internalType: "bytes", + name: "moduleSetupData", + type: "bytes" + }, + { + internalType: "uint256", + name: "index", + type: "uint256" + } + ], + name: "getAddressForCounterFactualAccount", + outputs: [ + { + internalType: "address", + name: "_account", + type: "address" + } + ], + stateMutability: "view", + type: "function" + } +] as const diff --git a/src/sdk/common/abi/SmartAccount.ts b/src/sdk/common/abi/SmartAccount.ts new file mode 100644 index 0000000..5412671 --- /dev/null +++ b/src/sdk/common/abi/SmartAccount.ts @@ -0,0 +1,636 @@ +export const BiconomyAccountAbi = [ + { + inputs: [ + { + internalType: "contract IEntryPoint", + name: "anEntryPoint", + type: "address" + } + ], + stateMutability: "nonpayable", + type: "constructor" + }, + { inputs: [], name: "AlreadyInitialized", type: "error" }, + { inputs: [], name: "BaseImplementationCannotBeZero", type: "error" }, + { + inputs: [{ internalType: "address", name: "caller", type: "address" }], + name: "CallerIsNotAnEntryPoint", + type: "error" + }, + { + inputs: [{ internalType: "address", name: "caller", type: "address" }], + name: "CallerIsNotEntryPoint", + type: "error" + }, + { + inputs: [{ internalType: "address", name: "caller", type: "address" }], + name: "CallerIsNotEntryPointOrOwner", + type: "error" + }, + { + inputs: [{ internalType: "address", name: "caller", type: "address" }], + name: "CallerIsNotEntryPointOrSelf", + type: "error" + }, + { + inputs: [{ internalType: "address", name: "caller", type: "address" }], + name: "CallerIsNotOwner", + type: "error" + }, + { + inputs: [{ internalType: "address", name: "caller", type: "address" }], + name: "CallerIsNotSelf", + type: "error" + }, + { inputs: [], name: "DelegateCallsOnly", type: "error" }, + { inputs: [], name: "EntryPointCannotBeZero", type: "error" }, + { inputs: [], name: "HandlerCannotBeZero", type: "error" }, + { + inputs: [ + { + internalType: "address", + name: "implementationAddress", + type: "address" + } + ], + name: "InvalidImplementation", + type: "error" + }, + { + inputs: [{ internalType: "address", name: "caller", type: "address" }], + name: "MixedAuthFail", + type: "error" + }, + { + inputs: [{ internalType: "address", name: "module", type: "address" }], + name: "ModuleAlreadyEnabled", + type: "error" + }, + { + inputs: [ + { internalType: "address", name: "expectedModule", type: "address" }, + { internalType: "address", name: "returnedModule", type: "address" }, + { internalType: "address", name: "prevModule", type: "address" } + ], + name: "ModuleAndPrevModuleMismatch", + type: "error" + }, + { + inputs: [{ internalType: "address", name: "module", type: "address" }], + name: "ModuleCannotBeZeroOrSentinel", + type: "error" + }, + { + inputs: [{ internalType: "address", name: "module", type: "address" }], + name: "ModuleNotEnabled", + type: "error" + }, + { inputs: [], name: "ModulesAlreadyInitialized", type: "error" }, + { inputs: [], name: "ModulesSetupExecutionFailed", type: "error" }, + { inputs: [], name: "OwnerCanNotBeSelf", type: "error" }, + { inputs: [], name: "OwnerCannotBeZero", type: "error" }, + { inputs: [], name: "OwnerProvidedIsSame", type: "error" }, + { inputs: [], name: "TransferToZeroAddressAttempt", type: "error" }, + { + inputs: [ + { internalType: "uint256", name: "destLength", type: "uint256" }, + { internalType: "uint256", name: "valueLength", type: "uint256" }, + { internalType: "uint256", name: "funcLength", type: "uint256" }, + { internalType: "uint256", name: "operationLength", type: "uint256" } + ], + name: "WrongBatchProvided", + type: "error" + }, + { + inputs: [ + { internalType: "bytes", name: "contractSignature", type: "bytes" } + ], + name: "WrongContractSignature", + type: "error" + }, + { + inputs: [ + { internalType: "uint256", name: "uintS", type: "uint256" }, + { + internalType: "uint256", + name: "contractSignatureLength", + type: "uint256" + }, + { internalType: "uint256", name: "signatureLength", type: "uint256" } + ], + name: "WrongContractSignatureFormat", + type: "error" + }, + { + inputs: [ + { + internalType: "address", + name: "moduleAddressProvided", + type: "address" + } + ], + name: "WrongValidationModule", + type: "error" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousHandler", + type: "address" + }, + { + indexed: true, + internalType: "address", + name: "handler", + type: "address" + } + ], + name: "ChangedFallbackHandler", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "module", + type: "address" + } + ], + name: "DisabledModule", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "module", + type: "address" + } + ], + name: "EnabledModule", + type: "event" + }, + { + anonymous: false, + inputs: [ + { indexed: true, internalType: "address", name: "to", type: "address" }, + { + indexed: true, + internalType: "uint256", + name: "value", + type: "uint256" + }, + { indexed: true, internalType: "bytes", name: "data", type: "bytes" }, + { + indexed: false, + internalType: "enum Enum.Operation", + name: "operation", + type: "uint8" + }, + { + indexed: false, + internalType: "uint256", + name: "txGas", + type: "uint256" + } + ], + name: "ExecutionFailure", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "module", + type: "address" + } + ], + name: "ExecutionFromModuleFailure", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "module", + type: "address" + } + ], + name: "ExecutionFromModuleSuccess", + type: "event" + }, + { + anonymous: false, + inputs: [ + { indexed: true, internalType: "address", name: "to", type: "address" }, + { + indexed: true, + internalType: "uint256", + name: "value", + type: "uint256" + }, + { indexed: true, internalType: "bytes", name: "data", type: "bytes" }, + { + indexed: false, + internalType: "enum Enum.Operation", + name: "operation", + type: "uint8" + }, + { + indexed: false, + internalType: "uint256", + name: "txGas", + type: "uint256" + } + ], + name: "ExecutionSuccess", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "oldImplementation", + type: "address" + }, + { + indexed: true, + internalType: "address", + name: "newImplementation", + type: "address" + } + ], + name: "ImplementationUpdated", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "module", + type: "address" + }, + { indexed: false, internalType: "address", name: "to", type: "address" }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256" + }, + { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, + { + indexed: false, + internalType: "enum Enum.Operation", + name: "operation", + type: "uint8" + } + ], + name: "ModuleTransaction", + type: "event" + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "sender", + type: "address" + }, + { indexed: true, internalType: "uint256", name: "value", type: "uint256" } + ], + name: "SmartAccountReceivedNativeToken", + type: "event" + }, + { stateMutability: "nonpayable", type: "fallback" }, + { + inputs: [], + name: "VERSION", + outputs: [{ internalType: "string", name: "", type: "string" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [], + name: "addDeposit", + outputs: [], + stateMutability: "payable", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "prevModule", type: "address" }, + { internalType: "address", name: "module", type: "address" } + ], + name: "disableModule", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [{ internalType: "address", name: "module", type: "address" }], + name: "enableModule", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [], + name: "entryPoint", + outputs: [ + { internalType: "contract IEntryPoint", name: "", type: "address" } + ], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { internalType: "address[]", name: "to", type: "address[]" }, + { internalType: "uint256[]", name: "value", type: "uint256[]" }, + { internalType: "bytes[]", name: "data", type: "bytes[]" }, + { + internalType: "enum Enum.Operation[]", + name: "operations", + type: "uint8[]" + } + ], + name: "execBatchTransactionFromModule", + outputs: [{ internalType: "bool", name: "success", type: "bool" }], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "to", type: "address" }, + { internalType: "uint256", name: "value", type: "uint256" }, + { internalType: "bytes", name: "data", type: "bytes" }, + { internalType: "enum Enum.Operation", name: "operation", type: "uint8" }, + { internalType: "uint256", name: "txGas", type: "uint256" } + ], + name: "execTransactionFromModule", + outputs: [{ internalType: "bool", name: "success", type: "bool" }], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "to", type: "address" }, + { internalType: "uint256", name: "value", type: "uint256" }, + { internalType: "bytes", name: "data", type: "bytes" }, + { internalType: "enum Enum.Operation", name: "operation", type: "uint8" } + ], + name: "execTransactionFromModule", + outputs: [{ internalType: "bool", name: "", type: "bool" }], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "to", type: "address" }, + { internalType: "uint256", name: "value", type: "uint256" }, + { internalType: "bytes", name: "data", type: "bytes" }, + { internalType: "enum Enum.Operation", name: "operation", type: "uint8" } + ], + name: "execTransactionFromModuleReturnData", + outputs: [ + { internalType: "bool", name: "success", type: "bool" }, + { internalType: "bytes", name: "returnData", type: "bytes" } + ], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "dest", type: "address" }, + { internalType: "uint256", name: "value", type: "uint256" }, + { internalType: "bytes", name: "func", type: "bytes" } + ], + name: "execute", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { internalType: "address[]", name: "dest", type: "address[]" }, + { internalType: "uint256[]", name: "value", type: "uint256[]" }, + { internalType: "bytes[]", name: "func", type: "bytes[]" } + ], + name: "executeBatch", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { internalType: "address[]", name: "dest", type: "address[]" }, + { internalType: "uint256[]", name: "value", type: "uint256[]" }, + { internalType: "bytes[]", name: "func", type: "bytes[]" } + ], + name: "executeBatch_y6U", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "dest", type: "address" }, + { internalType: "uint256", name: "value", type: "uint256" }, + { internalType: "bytes", name: "func", type: "bytes" } + ], + name: "execute_ncC", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [], + name: "getDeposit", + outputs: [{ internalType: "uint256", name: "", type: "uint256" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [], + name: "getFallbackHandler", + outputs: [{ internalType: "address", name: "_handler", type: "address" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [], + name: "getImplementation", + outputs: [ + { internalType: "address", name: "_implementation", type: "address" } + ], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "start", type: "address" }, + { internalType: "uint256", name: "pageSize", type: "uint256" } + ], + name: "getModulesPaginated", + outputs: [ + { internalType: "address[]", name: "array", type: "address[]" }, + { internalType: "address", name: "next", type: "address" } + ], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "handler", type: "address" }, + { internalType: "address", name: "moduleSetupContract", type: "address" }, + { internalType: "bytes", name: "moduleSetupData", type: "bytes" } + ], + name: "init", + outputs: [{ internalType: "address", name: "", type: "address" }], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [{ internalType: "address", name: "module", type: "address" }], + name: "isModuleEnabled", + outputs: [{ internalType: "bool", name: "", type: "bool" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { internalType: "bytes32", name: "dataHash", type: "bytes32" }, + { internalType: "bytes", name: "signature", type: "bytes" } + ], + name: "isValidSignature", + outputs: [{ internalType: "bytes4", name: "", type: "bytes4" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [{ internalType: "uint192", name: "_key", type: "uint192" }], + name: "nonce", + outputs: [{ internalType: "uint256", name: "", type: "uint256" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [{ internalType: "uint256", name: "", type: "uint256" }], + name: "noncesDeprecated", + outputs: [{ internalType: "uint256", name: "", type: "uint256" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [], + name: "ownerDeprecated", + outputs: [{ internalType: "address", name: "", type: "address" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [{ internalType: "address", name: "handler", type: "address" }], + name: "setFallbackHandler", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "setupContract", type: "address" }, + { internalType: "bytes", name: "setupData", type: "bytes" } + ], + name: "setupAndEnableModule", + outputs: [{ internalType: "address", name: "", type: "address" }], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [{ internalType: "bytes4", name: "_interfaceId", type: "bytes4" }], + name: "supportsInterface", + outputs: [{ internalType: "bool", name: "", type: "bool" }], + stateMutability: "view", + type: "function" + }, + { + inputs: [ + { internalType: "address", name: "_implementation", type: "address" } + ], + name: "updateImplementation", + outputs: [], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { + components: [ + { internalType: "address", name: "sender", type: "address" }, + { internalType: "uint256", name: "nonce", type: "uint256" }, + { internalType: "bytes", name: "initCode", type: "bytes" }, + { internalType: "bytes", name: "callData", type: "bytes" }, + { internalType: "uint256", name: "callGasLimit", type: "uint256" }, + { + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256" + }, + { + internalType: "uint256", + name: "preVerificationGas", + type: "uint256" + }, + { internalType: "uint256", name: "maxFeePerGas", type: "uint256" }, + { + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256" + }, + { internalType: "bytes", name: "paymasterAndData", type: "bytes" }, + { internalType: "bytes", name: "signature", type: "bytes" } + ], + internalType: "struct UserOperation", + name: "userOp", + type: "tuple" + }, + { internalType: "bytes32", name: "userOpHash", type: "bytes32" }, + { internalType: "uint256", name: "missingAccountFunds", type: "uint256" } + ], + name: "validateUserOp", + outputs: [ + { internalType: "uint256", name: "validationData", type: "uint256" } + ], + stateMutability: "nonpayable", + type: "function" + }, + { + inputs: [ + { + internalType: "address payable", + name: "withdrawAddress", + type: "address" + }, + { internalType: "uint256", name: "amount", type: "uint256" } + ], + name: "withdrawDepositTo", + outputs: [], + stateMutability: "payable", + type: "function" + }, + { stateMutability: "payable", type: "receive" } +] as const diff --git a/src/sdk/common/abis.ts b/src/sdk/common/abis.ts new file mode 100644 index 0000000..9ebfffd --- /dev/null +++ b/src/sdk/common/abis.ts @@ -0,0 +1,69 @@ + +export const erc20Abi = [ + 'function approve(address spender, uint256 value) returns (bool)', + 'function decimals() view returns (uint8)', + 'function name() view returns (string)', + 'function symbol() view returns (string)', + 'function totalSupply() returns (uint256)', + 'function balanceOf(address account) returns (uint256)', + 'function allowance(address owner, address spender) returns (uint256)', + 'function transfer(address to, uint256 value) returns (bool)', + 'function transferFrom(address from, address to, uint256 value) returns (bool)' +]; + +export const erc721Abi = [ + 'function balanceOf(address owner) view returns (uint256)', + 'function ownerOf(uint256 tokenId) view returns (address)', + 'function approve(address to, uint256 tokenId)', + 'function getApproved(uint256 tokenId) view returns (address)', + 'function setApprovalForAll(address operator, bool approved)', + 'function isApprovedForAll(address owner, address operator) view returns (bool)', + 'function transferFrom(address from, address to, uint256 tokenId)', + 'function safeTransferFrom(address from, address to, uint256 tokenId)', + 'function safeTransferFrom(address from, address to, uint256 tokenId, bytes memory data)' +]; + + +export const factoryAbi = [ + 'function createAccount(bytes32 salt,bytes calldata initCode) returns (address)', + 'function getAddress(bytes32 salt,bytes calldata initcode) view returns (address)' + ] + + export const bootstrapAbi = [ + 'function singleInitMSA(address validator, bytes calldata data)', + 'function initMSA(BootstrapConfig[] calldata $valdiators,BootstrapConfig[] calldata $executors,BootstrapConfig calldata _hook,BootstrapConfig[] calldata _fallbacks)', + 'struct BootstrapConfig {address module;bytes data;}', + ] + + export const modulesAbi = [ + 'function onInstall(bytes data)' + ]; + + export const entryPointAbi = [ + 'function getSenderAddress(bytes initCode) view returns (address)', + 'function balanceOf(address account) view returns (uint256)', + 'function getNonce(address sender, uint192 key) view returns (uint256)', + 'function getDepositInfo(address account) view returns (uint256,bool,uint112,uint32,uint48)', + 'event UserOperationEvent(bytes32 indexed userOpHash,address indexed sender,address indexed paymaster,uint256 nonce,bool success,uint256 actualGasCost,uint256 actualGasUsed)' + ]; + + + export const accountAbi = [ + 'function execute(bytes32 mode,bytes executionCalldata)', + 'function getActiveHook() external view returns (address hook)', + 'function getValidatorPaginated(address cursor,uint256 size) returns (address[] memory, address)', + 'function getExecutorsPaginated(address cursor,uint256 size) returns (address[] memory, address)', + 'function installModule(uint256 moduleTypeId,address module,bytes calldata initData)', + 'function uninstallModule(uint256 moduleTypeId,address module,bytes calldata deInitData)', + 'function isModuleInstalled(uint256 moduleTypeId,address module,bytes calldata additionalContext) returns (bool)', + 'function isOwner(address _address) returns (bool)' + ]; + + export const sessionKeyValidatorAbi = [ + 'function enableSessionKey(bytes calldata _sessionData)', + 'function disableSessionKey(address _session)', + 'function rotateSessionKey(address _oldSessionKey,bytes calldata _newSessionData)', + 'function getAssociatedSessionKeys() returns (address[] memory keys)', + 'function sessionData(address _sessionKey, address _account) returns (address token,bytes4 funcSelector,uint256 spendingLimit,uint48 validAfter,uint48 validUntil,bool live)' + ]; + diff --git a/src/sdk/common/constants.ts b/src/sdk/common/constants.ts index 8330886..bfe5721 100644 --- a/src/sdk/common/constants.ts +++ b/src/sdk/common/constants.ts @@ -1,3 +1,5 @@ +import { Address } from 'viem' + /** * @ignore */ @@ -11,6 +13,8 @@ export const bufferPercent = 13; // Buffer in percent export const onRampApiKey = 'pk_prod_01H66WYDRFM95JBTJ4VMGY1FAX'; +export const AddressZero = "0x0000000000000000000000000000000000000000"; + export enum CALL_TYPE { SINGLE = "0x00", BATCH = "0x01", @@ -29,3 +33,6 @@ export enum MODULE_TYPE { FALLBACK = '0x03', HOOK = '0x04', } + +export const VIEM_SENTINEL_ADDRESS: Address = + '0x0000000000000000000000000000000000000001' \ No newline at end of file diff --git a/src/sdk/common/getGasFee.ts b/src/sdk/common/getGasFee.ts index 8ff6796..218ed1d 100644 --- a/src/sdk/common/getGasFee.ts +++ b/src/sdk/common/getGasFee.ts @@ -1,18 +1,33 @@ -import { BigNumber, BigNumberish, ethers } from 'ethers'; +import { BigNumber, BigNumberish } from '../types/bignumber'; import { bufferPercent } from './constants'; +import { PublicClient } from 'viem'; export interface Gas { maxFeePerGas: BigNumberish; maxPriorityFeePerGas: BigNumberish; } -export async function getGasFee(provider: ethers.providers.JsonRpcProvider): Promise { +export async function getGasFee(publicClient: PublicClient): Promise { try { - const [fee, block] = await provider.send('eth_maxPriorityFeePerGas', []); + //const [fee, block] = await provider.send('eth_maxPriorityFeePerGas', []); + + const gasFeeResponse : any = await publicClient.request( + { + method: 'eth_maxPriorityFeePerGas', + params: [], + } + ); + + if(!gasFeeResponse) { + throw new Error('failed to get priorityFeePerGas'); + } + + const [fee, block] = gasFeeResponse; + if (BigNumber.from(0).eq(fee)) { throw new Error('failed to get priorityFeePerGas'); } - const tip = ethers.BigNumber.from(fee); + const tip = BigNumber.from(fee); const buffer = tip.div(100).mul(bufferPercent); const maxPriorityFeePerGas = tip.add(buffer); const maxFeePerGas = @@ -23,7 +38,7 @@ export async function getGasFee(provider: ethers.providers.JsonRpcProvider): Pro console.warn( "getGas: eth_maxPriorityFeePerGas failed, falling back to legacy gas price." ); - const gas = await provider.getGasPrice(); + const gas = await publicClient.getGasPrice(); return { maxFeePerGas: gas, maxPriorityFeePerGas: gas }; } } diff --git a/src/sdk/common/getInitData.ts b/src/sdk/common/getInitData.ts new file mode 100644 index 0000000..9a35a88 --- /dev/null +++ b/src/sdk/common/getInitData.ts @@ -0,0 +1,55 @@ +import { + Hex, + decodeAbiParameters, + decodeFunctionData, + parseAbi, + slice, + } from 'viem' + import { InitialModules, Module } from './types' +import { bootstrapAbi, factoryAbi } from './abis' + + export const getInitData = ({ + initCode, + }: { + initCode: Hex + }): InitialModules => { + const { args: initCodeArgs } = decodeFunctionData({ + abi: parseAbi(factoryAbi), + data: slice(initCode, 20), + }) + + if (initCodeArgs?.length !== 2) { + throw new Error('Invalid init code') + } + + const initCallData = decodeAbiParameters( + [ + { name: 'bootstrap', type: 'address' }, + { name: 'initCallData', type: 'bytes' }, + ], + initCodeArgs[1] as Hex, + ) + + const { args: initCallDataArgs } = decodeFunctionData({ + abi: parseAbi(bootstrapAbi), + data: initCallData[1], + }) + + if (initCallDataArgs?.length !== 4) { + throw new Error('Invalid init code') + } + + return { + validators: initCallDataArgs[0] as Module[], + executors: initCallDataArgs[1] as Module[], + hooks: [initCallDataArgs[2]] as Module[], + fallbacks: initCallDataArgs[3] as Module[], + } + } + + export const getInitDataViaViem = () => { + + + + + } \ No newline at end of file diff --git a/src/sdk/common/getInstalledModules.ts b/src/sdk/common/getInstalledModules.ts new file mode 100644 index 0000000..8f6d250 --- /dev/null +++ b/src/sdk/common/getInstalledModules.ts @@ -0,0 +1,79 @@ +import { Address, PublicClient, parseAbi, zeroAddress } from 'viem' +import { ModuleType } from './types' +import { VIEM_SENTINEL_ADDRESS } from './constants' +import { isContract } from './utils/viem-utils' +import { accountAbi } from './abis' +import { DEFAULT_QUERY_PAGE_SIZE } from '../network/constants' + +export const getInstalledModules = async ({ + client, + moduleAddress, + moduleTypes = ['validator', 'executor', 'hook', 'fallback'], + pageSize = DEFAULT_QUERY_PAGE_SIZE +}: { + client: PublicClient + moduleAddress: Address + moduleTypes?: ModuleType[] + pageSize: number +}): Promise => { + const modules: Address[] = [] + if (await isContract({ client, address: moduleAddress })) { + for (const moduleType of moduleTypes) { + switch (moduleType) { + case 'validator': + const validators = await getModulesPaginated({ + client, + functionName: 'getValidatorPaginated', + walletAddress: moduleAddress, + pageSize: pageSize + }) + validators && modules.push(...validators) + break + case 'executor': + const executors = await getModulesPaginated({ + client, + functionName: 'getExecutorsPaginated', + walletAddress: moduleAddress, + pageSize: pageSize + }) + executors && modules.push(...executors) + break + case 'hook': + const activeHook = (await client.readContract({ + address: moduleAddress, + abi: parseAbi(accountAbi), + functionName: 'getActiveHook', + })) as Address + modules.push(activeHook) + break + case 'fallback': + // todo: implement on account or use events + } + } + } else { + throw new Error('Account has no init code and is not deployed') + } + const onlyModules = modules.filter((module) => module !== zeroAddress) + const uniqueModules = Array.from(new Set(onlyModules)) + return uniqueModules +} + +export const getModulesPaginated = async ({ + client, + functionName, + walletAddress, + pageSize = DEFAULT_QUERY_PAGE_SIZE +}: { + client: PublicClient + functionName: string + walletAddress: Address + pageSize?: number +}) => { + const data = (await client.readContract({ + address: walletAddress, + abi: parseAbi(accountAbi), + functionName: functionName, + args: [VIEM_SENTINEL_ADDRESS, pageSize], + })) as [Address[], Address] + return data[0] +} \ No newline at end of file diff --git a/src/sdk/common/interfaces.ts b/src/sdk/common/interfaces.ts index 6b82a2b..6f430b1 100644 --- a/src/sdk/common/interfaces.ts +++ b/src/sdk/common/interfaces.ts @@ -1,4 +1,4 @@ -import { BigNumberish } from "ethers"; +import { BigNumberish } from "../types/bignumber"; export interface BatchUserOpsRequest { to: string[]; diff --git a/src/sdk/common/transformers/transform-big-number.ts b/src/sdk/common/transformers/transform-big-number.ts index 8045bc4..53364a8 100644 --- a/src/sdk/common/transformers/transform-big-number.ts +++ b/src/sdk/common/transformers/transform-big-number.ts @@ -1,7 +1,6 @@ -import { BigNumber } from 'ethers'; import { Transform, TransformationType } from 'class-transformer'; import { isBigNumber } from '../utils'; - +import { BigNumber } from '../../types/bignumber'; /** * @ignore */ diff --git a/src/sdk/common/types.ts b/src/sdk/common/types.ts new file mode 100644 index 0000000..f18afb8 --- /dev/null +++ b/src/sdk/common/types.ts @@ -0,0 +1,46 @@ +import { Address, Hex, Account } from 'viem' + +export type AccountType = 'erc7579-implementation' + +// export type Account = { +// address: Address +// initCode?: Hex +// type: AccountType +// deployedOnChains: Number[] +// } + +export type InitialModules = { + validators: Module[] + executors: Module[] + hooks: Module[] + fallbacks: Module[] +} + +export type ModuleType = 'validator' | 'executor' | 'fallback' | 'hook' + +export type Module = { + module: Address + data?: Hex + additionalContext?: Hex + type: ModuleType +} + +type ModuleTypeIds = { + [index in ModuleType]: number +} + +export const moduleTypeIds: ModuleTypeIds = { + validator: 1, + executor: 2, + fallback: 3, + hook: 4, +} + +export interface TypedDataField { + name: string; + type: string; +}; + +export type Bytes = ArrayLike; + +export type BytesLike = Uint8Array | Hex | Bytes | String diff --git a/src/sdk/common/utils/bignumber-utils.ts b/src/sdk/common/utils/bignumber-utils.ts new file mode 100644 index 0000000..0286e33 --- /dev/null +++ b/src/sdk/common/utils/bignumber-utils.ts @@ -0,0 +1,22 @@ +import { BigNumber, BigNumberish } from '../../types/bignumber'; + +// Function to convert BigNumberish to bigint +export function bigNumberishToBigInt(value: BigNumberish): bigint { + if (typeof value === 'bigint') { + return value; + } else if (typeof value === 'string' || typeof value === 'number') { + return BigInt(value); + } else if (BigNumber.isBigNumber(value)) { + return BigInt(value.toString()); + } else { + throw new Error('Unsupported BigNumberish type'); + } +} + +export function isBigNumber(value: any): boolean { + return value instanceof BigNumber; +} + +export function fromBigInt(value: bigint): BigNumber { + return BigNumber.from(value.toString()); +} diff --git a/src/sdk/common/utils/concat-hex.ts b/src/sdk/common/utils/concat-hex.ts deleted file mode 100644 index c36b1a8..0000000 --- a/src/sdk/common/utils/concat-hex.ts +++ /dev/null @@ -1,6 +0,0 @@ -/** - * @ignore - */ -export function concatHex(...hex: string[]): string { - return hex.map((item, index) => (index ? item.slice(2) : item)).join(''); -} diff --git a/src/sdk/common/utils/deep-compare.spec.ts b/src/sdk/common/utils/deep-compare.spec.ts deleted file mode 100644 index 855a8a4..0000000 --- a/src/sdk/common/utils/deep-compare.spec.ts +++ /dev/null @@ -1,41 +0,0 @@ -import { BigNumber } from 'ethers'; -import { deepCompare } from './deep-compare'; - -describe('deepCompare()', () => { - it('expect to return false for different types', () => { - expect(deepCompare(1, 'a')).toBeFalsy(); - expect(deepCompare(false, 'a')).toBeFalsy(); - expect(deepCompare({}, 1)).toBeFalsy(); - }); - - it('expect to return true for the same primitive types', () => { - expect(deepCompare(1, 1)).toBeTruthy(); - expect(deepCompare('a', 'a')).toBeTruthy(); - expect(deepCompare(true, true)).toBeTruthy(); - }); - - it('expect to return true for the same object', () => { - expect( - deepCompare( - { - a: 1, - b: 'b', - c: true, - }, - { - a: 1, - b: 'b', - c: true, - }, - ), - ).toBeTruthy(); - }); - - it('expect to return true for the same array', () => { - expect(deepCompare([1, 2, 3, 'c'], [1, 2, 3, 'c'])).toBeTruthy(); - }); - - it('expect to return true for the same BigNumber', () => { - expect(deepCompare(BigNumber.from(1), BigNumber.from(1))).toBeTruthy(); - }); -}); diff --git a/src/sdk/common/utils/deep-compare.ts b/src/sdk/common/utils/deep-compare.ts index 6a6a931..8d0c9d6 100644 --- a/src/sdk/common/utils/deep-compare.ts +++ b/src/sdk/common/utils/deep-compare.ts @@ -1,5 +1,5 @@ -import { BigNumber } from 'ethers'; -import { isBigNumber } from './is-big-number'; +import { BigNumber } from '../../types/bignumber'; +import { isBigNumber } from './bignumber-utils'; /** * @ignore diff --git a/src/sdk/common/utils/execute-mode.ts b/src/sdk/common/utils/execute-mode.ts deleted file mode 100644 index a484c56..0000000 --- a/src/sdk/common/utils/execute-mode.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { hexConcat } from "ethers/lib/utils"; -import { CALL_TYPE, EXEC_TYPE } from "../constants"; -import { ethers } from "ethers"; - -export const getExecuteMode = ({ - callType, - execType -}: { - callType: CALL_TYPE - execType: EXEC_TYPE -}): string => { - return hexConcat([ - callType, // 1 byte - execType, // 1 byte - "0x00000000", // 4 bytes - "0x00000000", // 4 bytes - ethers.utils.zeroPad("0x00000000", 22) - ]); -} diff --git a/src/sdk/common/utils/hashing-utils.ts b/src/sdk/common/utils/hashing-utils.ts new file mode 100644 index 0000000..9886514 --- /dev/null +++ b/src/sdk/common/utils/hashing-utils.ts @@ -0,0 +1,75 @@ +import { encodePacked, Hex } from "viem"; +import { isAddress } from "./viem-utils"; +import { BytesLike } from "../types"; +import { isHex as isAHex, stringToBytes} from 'viem'; + +export function keccak256(data: BytesLike): string { + let result: string = null; + + if (data) { + switch (typeof data) { + case 'string': + if (isAddress(data)) { + result = keccak256(encodePacked(['address'], [data as Hex])) + } else if (isHex(data)) { + result = keccak256(encodePacked(['bytes'], [data as Hex])); + } else { + result = keccak256(encodePacked(['string'], [data as Hex])); + } + break; + case 'object': { + //result = utils.solidityKeccak256(['bytes'], [data]); + // TODO-LibraryFix - this needs debugging as its migrated from ethers + result = keccak256(encodePacked(['bytes'], [data.toString() as Hex])); + break; + } + } + } + + return result; + } + + export function isHex(hex: string, size = 0): boolean { + let result = isAHex(hex); + + if (result && size > 0) { + result = hex.length === size * 2 + 2; + } + + return result; + } + + export function toHexFromBytesLike(data: BytesLike): string { + let result: string = null; + + if (data !== null) { + switch (typeof data) { + case 'string': + if (isHex(data)) { + result = data; + } else { + result = toHexFromBytesLike(stringToBytes(data)); + } + break; + + case 'object': + try { + result = toHexFromBytesLike(data as any); + } catch (err) { + result = null; + } + break; + } + } + + if (!result) { + throw new Error('invalid hex data'); + } + + return result; + } + + export function concatHex(...hex: string[]): string { + return hex.map((item, index) => (index ? item.slice(2) : item)).join(''); + } + \ No newline at end of file diff --git a/src/sdk/common/utils/hexlify.ts b/src/sdk/common/utils/hexlify.ts new file mode 100644 index 0000000..258d333 --- /dev/null +++ b/src/sdk/common/utils/hexlify.ts @@ -0,0 +1,128 @@ +"use strict"; + +import { Bytes, BytesLike } from "../types"; + +/////////////////////////////// +// Exported Types + +//export type BytesLike = Bytes | string; + +export type DataOptions = { + allowMissingPrefix?: boolean; + hexPad?: "left" | "right" | null; +}; + +export interface Hexable { + toHexString(): string; +} + +/////////////////////////////// + + +function isHexableValue(value: any): value is Hexable { + return !!(value.toHexString); +} + +export function isBytesLikeValue(value: any): value is BytesLike { + return ((isHexString(value) && !(value.length % 2)) || isBytes(value)); +} + +function isInteger(value: number) { + return (typeof(value) === "number" && value == value && (value % 1) === 0); +} + +export function isBytes(value: any): value is Bytes { + if (value == null) { return false; } + + if (value.constructor === Uint8Array) { return true; } + if (typeof (value) === "string") { return false; } + if (!isInteger(value.length) || value.length < 0) { return false; } + + for (let i = 0; i < value.length; i++) { + const v = value[i]; + if (!isInteger(v) || v < 0 || v >= 256) { return false; } + } + return true; +} + +export function isHexString(value: any, length?: number): boolean { + if (typeof (value) !== "string" || !value.match(/^0x[0-9A-Fa-f]*$/)) { + return false + } + if (length && value.length !== 2 + 2 * length) { return false; } + return true; +} + + +export function checkSafeUint53(value: number, message?: string): void { + if (typeof (value) !== "number") { return; } + + if (message == null) { message = "value not safe"; } + + if (value < 0 || value >= 0x1fffffffffffff) { + throw new Error(`Invalid Hexlify value - CheckSafeInteger Failed due to out-of-safe-range value: ${value}`); + } + + if (value % 1) { + throw new Error(`Invalid Hexlify value - CCheckSafeInteger Failed due to non-integer value: ${value}`); + } +} + +const HexCharacters: string = "0123456789abcdef"; + +export function hexlifyValue(value: BytesLike | Hexable | number | bigint, options?: DataOptions): string { + if (!options) { options = {}; } + + if (typeof (value) === "number") { + checkSafeUint53(value); + + let hex = ""; + while (value) { + hex = HexCharacters[value & 0xf] + hex; + value = Math.floor(value / 16); + } + + if (hex.length) { + if (hex.length % 2) { hex = "0" + hex; } + return "0x" + hex; + } + + return "0x00"; + } + + if (typeof (value) === "bigint") { + value = value.toString(16); + if (value.length % 2) { return ("0x0" + value); } + return "0x" + value; + } + + if (options.allowMissingPrefix && typeof (value) === "string" && value.substring(0, 2) !== "0x") { + value = "0x" + value; + } + + if (isHexableValue(value)) { return value.toHexString(); } + + if (isHexString(value)) { + if ((value).length % 2) { + if (options.hexPad === "left") { + value = "0x0" + (value).substring(2); + } else if (options.hexPad === "right") { + value += "0"; + } else { + throw new Error(`invalid hexlify value - hex data is odd-length for value: ${value}`); + } + } + return (value).toLowerCase(); + } + + if (isBytes(value)) { + let result = "0x"; + for (let i = 0; i < value.length; i++) { + let v = value[i]; + result += HexCharacters[(v & 0xf0) >> 4] + HexCharacters[v & 0x0f]; + } + return result; + } + + throw new Error(`invalid hexlify value - ${value}`); +} diff --git a/src/sdk/common/utils/index.ts b/src/sdk/common/utils/index.ts index 3d8456f..33e8ee2 100644 --- a/src/sdk/common/utils/index.ts +++ b/src/sdk/common/utils/index.ts @@ -1,17 +1,9 @@ -export * from './addresses-equal'; -export * from './concat-hex'; export * from './deep-compare'; -export * from './is-address'; -export * from './is-big-number'; -export * from './is-hex'; export * from './is-url'; -export * from './keccak256'; -export * from './parse-json'; -export * from './prepare-address'; -export * from './prepare-addresses'; -export * from './random-private-key'; export * from './sleep'; -export * from './stringify-json'; -export * from './to-hex'; export * from './openurl'; -export * from './execute-mode'; +export * from './viem-utils'; +export * from './bignumber-utils'; +export * from './hashing-utils'; +export * from './json-utils'; +export * from './userop-utils'; diff --git a/src/sdk/common/utils/is-address.ts b/src/sdk/common/utils/is-address.ts deleted file mode 100644 index 5e20f95..0000000 --- a/src/sdk/common/utils/is-address.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { utils, constants } from 'ethers'; - -/** - * @ignore - */ -export function isAddress(value: string): boolean { - let result = false; - - if (value && value !== constants.AddressZero) { - try { - const address = utils.getAddress(value); - - if (address) { - result = address === value; - } - } catch (err) { - result = false; - } - } else if (value === constants.AddressZero) { - result = true; - } - - return result; -} diff --git a/src/sdk/common/utils/is-big-number.ts b/src/sdk/common/utils/is-big-number.ts deleted file mode 100644 index 04912a8..0000000 --- a/src/sdk/common/utils/is-big-number.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { BigNumber } from 'ethers'; - -/** - * @ignore - */ -export function isBigNumber(value: any): boolean { - return value instanceof BigNumber; -} diff --git a/src/sdk/common/utils/is-hex.ts b/src/sdk/common/utils/is-hex.ts deleted file mode 100644 index c3abe34..0000000 --- a/src/sdk/common/utils/is-hex.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { utils } from 'ethers'; - -/** - * @ignore - */ -export function isHex(hex: string, size = 0): boolean { - let result = utils.isHexString(hex); - - if (result && size > 0) { - result = hex.length === size * 2 + 2; - } - - return result; -} diff --git a/src/sdk/common/utils/json-utils.ts b/src/sdk/common/utils/json-utils.ts new file mode 100644 index 0000000..e1ec873 --- /dev/null +++ b/src/sdk/common/utils/json-utils.ts @@ -0,0 +1,17 @@ + + +export function parseJson(raw: string, defaultValue: T = null): T { + let result: T; + try { + result = JSON.parse(raw); + } catch (err) { + result = defaultValue; + } + + return result; + } + + export function stringifyJson(value: T, space?: number): string { + return JSON.stringify(value, null, space); + } + \ No newline at end of file diff --git a/src/sdk/common/utils/keccak256.ts b/src/sdk/common/utils/keccak256.ts deleted file mode 100644 index ca61ff7..0000000 --- a/src/sdk/common/utils/keccak256.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { utils, BytesLike } from 'ethers'; -import { isAddress } from './is-address'; -import { isHex } from './is-hex'; - -/** - * @ignore - */ -export function keccak256(data: BytesLike): string { - let result: string = null; - - if (data) { - switch (typeof data) { - case 'string': - if (isAddress(data)) { - result = utils.solidityKeccak256(['address'], [data]); - } else if (isHex(data)) { - result = utils.solidityKeccak256(['bytes'], [data]); - } else { - result = utils.solidityKeccak256(['string'], [data]); - } - break; - case 'object': - result = utils.solidityKeccak256(['bytes'], [data]); - break; - } - } - - return result; -} diff --git a/src/sdk/common/utils/prepare-address.ts b/src/sdk/common/utils/prepare-address.ts deleted file mode 100644 index cf7002d..0000000 --- a/src/sdk/common/utils/prepare-address.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { constants, utils } from 'ethers'; - -/** - * @ignore - */ -export function prepareAddress(value: string, zeroAddressAsNull = false): string { - let result: string = null; - - try { - result = utils.getAddress(value); - - if (result === constants.AddressZero) { - result = null; - } - } catch (err) { - // - } - - if (!result && zeroAddressAsNull) { - result = constants.AddressZero; - } - - return result; -} diff --git a/src/sdk/common/utils/prepare-addresses.ts b/src/sdk/common/utils/prepare-addresses.ts deleted file mode 100644 index ed7d686..0000000 --- a/src/sdk/common/utils/prepare-addresses.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { prepareAddress } from './prepare-address'; - -/** - * @ignore - */ -export function prepareAddresses(data: T, ...keys: (keyof T)[]): T { - const result = { - ...data, - }; - - for (const key of keys) { - if (!result[key]) { - continue; - } - - try { - if (Array.isArray(result[key])) { - const addresses: any = ((result[key] as any) as string[]).map((item) => { - let result = item; - - if (item) { - const address = prepareAddress(item); - - if (address) { - result = address; - } - } - - return result; - }); - - result[key] = addresses; - } else { - const address: any = prepareAddress(result[key] as any); - - if (address) { - result[key] = address; - } - } - } catch (err) { - // - } - } - - return result; -} diff --git a/src/sdk/common/utils/random-private-key.ts b/src/sdk/common/utils/random-private-key.ts deleted file mode 100644 index bd8b2b9..0000000 --- a/src/sdk/common/utils/random-private-key.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { utils } from 'ethers'; - -export function randomPrivateKey(): string { - return utils.hexlify(utils.randomBytes(32)); -} diff --git a/src/sdk/common/utils/stringify-json.ts b/src/sdk/common/utils/stringify-json.ts deleted file mode 100644 index d7c84fb..0000000 --- a/src/sdk/common/utils/stringify-json.ts +++ /dev/null @@ -1,6 +0,0 @@ -/** - * @ignore - */ -export function stringifyJson(value: T, space?: number): string { - return JSON.stringify(value, null, space); -} diff --git a/src/sdk/common/utils/to-hex.ts b/src/sdk/common/utils/to-hex.ts deleted file mode 100644 index b0526fb..0000000 --- a/src/sdk/common/utils/to-hex.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { BytesLike, utils } from 'ethers'; -import { isHex } from './is-hex'; - -/** - * @ignore - */ -export function toHex(data: BytesLike): string { - let result: string = null; - - if (data !== null) { - switch (typeof data) { - case 'string': - if (isHex(data)) { - result = data; - } else { - result = utils.hexlify(utils.toUtf8Bytes(data)); - } - break; - - case 'object': - try { - result = utils.hexlify(data as any); - } catch (err) { - result = null; - } - break; - } - } - - if (!result) { - throw new Error('invalid hex data'); - } - - return result; -} diff --git a/src/sdk/common/utils/userop-utils.ts b/src/sdk/common/utils/userop-utils.ts new file mode 100644 index 0000000..298e9f0 --- /dev/null +++ b/src/sdk/common/utils/userop-utils.ts @@ -0,0 +1,38 @@ +import { CALL_TYPE, EXEC_TYPE } from "../constants"; +import { concat, pad } from "viem"; + +export type Result = { key: string, value: any }; + +export type Deferrable = { + [K in keyof T]: T[K] | Promise; +} + +export const resolveProperties = async (object: Readonly>): Promise => { + const promises: Array> = Object.keys(object).map((key) => { + const value = object[>key]; + return Promise.resolve(value).then((v) => ({ key: key, value: v })); + }); + + const results = await Promise.all(promises); + + return results.reduce((accum, result) => { + accum[(result.key)] = result.value; + return accum; + }, {}); + } + + export const getExecuteMode = ({ + callType, + execType +}: { + callType: CALL_TYPE + execType: EXEC_TYPE +}): string => { + return concat([ + callType, // 1 byte + execType, // 1 byte + "0x00000000", // 4 bytes + "0x00000000", // 4 bytes + pad("0x00000000", {size: 22}) + ]); +} diff --git a/src/sdk/common/utils/viem-utils.ts b/src/sdk/common/utils/viem-utils.ts new file mode 100644 index 0000000..7d6d2d3 --- /dev/null +++ b/src/sdk/common/utils/viem-utils.ts @@ -0,0 +1,151 @@ +import { PublicClient, Address, createPublicClient, createWalletClient, http, Account, Chain, getAddress, extractChain, Hex, Transport } from 'viem' +import { privateKeyToAccount } from 'viem/accounts'; +import * as chains from "viem/chains"; +import { Networks } from '../../network/constants'; +import { AddressZero } from '../constants'; + +export const isContract = async ({ + client, + address, +}: { + client: PublicClient + address: Address +}) => { + const bytecode = await client.getBytecode({ + address: address, + }) + return bytecode && bytecode !== '0x' +} + + +export const getPublicClient = ({ chainId, transport }: { chainId: number, transport: Transport }) => { + const publicClient = createPublicClient({ + chain: Networks[chainId].chain, + transport: transport + }); + return publicClient; +} + +export const getWalletClientFromPrivateKey = ({ rpcUrl, chainId, privateKey }: { rpcUrl: string, chainId: number, privateKey: string }) => { + return createWalletClient({ + account: privateKeyToAccount(privateKey as Hex), + chain: Networks[chainId].chain, + transport: http(rpcUrl) as any, // Asserting to `any` to bypass the deep instantiation check + }); +} + +export const getWalletClientFromAccount = ({ rpcUrl, chainId, account }: { rpcUrl: string, chainId: number, account: Account }) => { + return createWalletClient({ + account: account, + chain: Networks[chainId].chain, + transport: http(rpcUrl) as any, // Asserting to `any` to bypass the deep instantiation check + }); +} + +export const getViemAccount = (privateKey: string): Account => { + return privateKeyToAccount(privateKey as Hex); +} + +export const getViemAddress = (address: string): Address => { + return getAddress(address); +} + +/** + * Utility method for converting a chainId to a {@link Chain} object + * + * @param chainId + * @returns a {@link Chain} object for the given chainId + * @throws if the chainId is not found + */ +export const getChain = (chainId: number) : Chain => { + return extractChain({ + chains: Object.values(chains) as Chain[], + id: chainId, + }); +} + +export function prepareAddress(value: string, zeroAddressAsNull = false): string { + let result: string = null; + + try { + result = getAddress(value); + + if (result === AddressZero) { + result = null; + } + } catch (err) { + // + } + + if (!result && zeroAddressAsNull) { + result = AddressZero; + } + + return result; +} + +export function prepareAddresses(data: T, ...keys: (keyof T)[]): T { + const result = { + ...data, + }; + + for (const key of keys) { + if (!result[key]) { + continue; + } + + try { + if (Array.isArray(result[key])) { + const addresses: any = ((result[key] as any) as string[]).map((item) => { + let result = item; + + if (item) { + const address = prepareAddress(item); + + if (address) { + result = address; + } + } + + return result; + }); + + result[key] = addresses; + } else { + const address: any = prepareAddress(result[key] as any); + + if (address) { + result[key] = address; + } + } + } catch (err) { + // + } + } + + return result; +} + +export function addressesEqual(address1: string, address2: string): boolean { + return (address1 || '').toLowerCase() === (address2 || '').toLowerCase(); +} + +export function isAddress(value: string): boolean { + let result = false; + + if (value && value !== AddressZero) { + try { + const address = getAddress(value); + + if (address) { + result = address === value; + } + } catch (err) { + result = false; + } + } else if (value === AddressZero) { + result = true; + } + + return result; +} diff --git a/src/sdk/context.ts b/src/sdk/context.ts index 3c5357e..8d1441d 100644 --- a/src/sdk/context.ts +++ b/src/sdk/context.ts @@ -1,7 +1,5 @@ import { ErrorSubject, Service } from './common'; import { NetworkService } from './network'; -import { StateService } from './state'; -import { WalletService } from './wallet'; export class Context { readonly error$ = new ErrorSubject(); @@ -10,8 +8,6 @@ export class Context { constructor( readonly services: { - stateService: StateService; - walletService: WalletService; networkService: NetworkService; }, ) { diff --git a/src/sdk/contracts/@openzeppelin/contracts/access/Ownable.ts b/src/sdk/contracts/@openzeppelin/contracts/access/Ownable.ts deleted file mode 100644 index aaf0fb4..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/access/Ownable.ts +++ /dev/null @@ -1,176 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export interface OwnableInterface extends utils.Interface { - functions: { - "owner()": FunctionFragment; - "renounceOwnership()": FunctionFragment; - "transferOwnership(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: "owner" | "renounceOwnership" | "transferOwnership" - ): FunctionFragment; - - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "renounceOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "transferOwnership", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "renounceOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "transferOwnership", - data: BytesLike - ): Result; - - events: { - "OwnershipTransferred(address,address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; -} - -export interface OwnershipTransferredEventObject { - previousOwner: string; - newOwner: string; -} -export type OwnershipTransferredEvent = TypedEvent< - [string, string], - OwnershipTransferredEventObject ->; - -export type OwnershipTransferredEventFilter = - TypedEventFilter; - -export interface Ownable extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: OwnableInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - owner(overrides?: CallOverrides): Promise<[string]>; - - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - owner(overrides?: CallOverrides): Promise; - - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - owner(overrides?: CallOverrides): Promise; - - renounceOwnership(overrides?: CallOverrides): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "OwnershipTransferred(address,address)"( - previousOwner?: PromiseOrValue | null, - newOwner?: PromiseOrValue | null - ): OwnershipTransferredEventFilter; - OwnershipTransferred( - previousOwner?: PromiseOrValue | null, - newOwner?: PromiseOrValue | null - ): OwnershipTransferredEventFilter; - }; - - estimateGas: { - owner(overrides?: CallOverrides): Promise; - - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - owner(overrides?: CallOverrides): Promise; - - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/@openzeppelin/contracts/access/index.ts b/src/sdk/contracts/@openzeppelin/contracts/access/index.ts deleted file mode 100644 index 999bcc7..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/access/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { Ownable } from "./Ownable"; diff --git a/src/sdk/contracts/@openzeppelin/contracts/index.ts b/src/sdk/contracts/@openzeppelin/contracts/index.ts deleted file mode 100644 index b570e96..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/index.ts +++ /dev/null @@ -1,13 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as access from "./access"; -export type { access }; -import type * as interfaces from "./interfaces"; -export type { interfaces }; -import type * as proxy from "./proxy"; -export type { proxy }; -import type * as token from "./token"; -export type { token }; -import type * as utils from "./utils"; -export type { utils }; diff --git a/src/sdk/contracts/@openzeppelin/contracts/interfaces/IERC1967.ts b/src/sdk/contracts/@openzeppelin/contracts/interfaces/IERC1967.ts deleted file mode 100644 index de12f65..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/interfaces/IERC1967.ts +++ /dev/null @@ -1,115 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { BaseContract, Signer, utils } from "ethers"; -import type { EventFragment } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export interface IERC1967Interface extends utils.Interface { - functions: {}; - - events: { - "AdminChanged(address,address)": EventFragment; - "BeaconUpgraded(address)": EventFragment; - "Upgraded(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AdminChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "BeaconUpgraded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment; -} - -export interface AdminChangedEventObject { - previousAdmin: string; - newAdmin: string; -} -export type AdminChangedEvent = TypedEvent< - [string, string], - AdminChangedEventObject ->; - -export type AdminChangedEventFilter = TypedEventFilter; - -export interface BeaconUpgradedEventObject { - beacon: string; -} -export type BeaconUpgradedEvent = TypedEvent< - [string], - BeaconUpgradedEventObject ->; - -export type BeaconUpgradedEventFilter = TypedEventFilter; - -export interface UpgradedEventObject { - implementation: string; -} -export type UpgradedEvent = TypedEvent<[string], UpgradedEventObject>; - -export type UpgradedEventFilter = TypedEventFilter; - -export interface IERC1967 extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IERC1967Interface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: {}; - - callStatic: {}; - - filters: { - "AdminChanged(address,address)"( - previousAdmin?: null, - newAdmin?: null - ): AdminChangedEventFilter; - AdminChanged( - previousAdmin?: null, - newAdmin?: null - ): AdminChangedEventFilter; - - "BeaconUpgraded(address)"( - beacon?: PromiseOrValue | null - ): BeaconUpgradedEventFilter; - BeaconUpgraded( - beacon?: PromiseOrValue | null - ): BeaconUpgradedEventFilter; - - "Upgraded(address)"( - implementation?: PromiseOrValue | null - ): UpgradedEventFilter; - Upgraded( - implementation?: PromiseOrValue | null - ): UpgradedEventFilter; - }; - - estimateGas: {}; - - populateTransaction: {}; -} diff --git a/src/sdk/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.ts b/src/sdk/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.ts deleted file mode 100644 index e1f9bed..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.ts +++ /dev/null @@ -1,88 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IERC1822ProxiableInterface extends utils.Interface { - functions: { - "proxiableUUID()": FunctionFragment; - }; - - getFunction(nameOrSignatureOrTopic: "proxiableUUID"): FunctionFragment; - - encodeFunctionData( - functionFragment: "proxiableUUID", - values?: undefined - ): string; - - decodeFunctionResult( - functionFragment: "proxiableUUID", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IERC1822Proxiable extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IERC1822ProxiableInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - proxiableUUID(overrides?: CallOverrides): Promise<[string]>; - }; - - proxiableUUID(overrides?: CallOverrides): Promise; - - callStatic: { - proxiableUUID(overrides?: CallOverrides): Promise; - }; - - filters: {}; - - estimateGas: { - proxiableUUID(overrides?: CallOverrides): Promise; - }; - - populateTransaction: { - proxiableUUID(overrides?: CallOverrides): Promise; - }; -} diff --git a/src/sdk/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts b/src/sdk/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts deleted file mode 100644 index daec45b..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { IERC1822Proxiable } from "./IERC1822Proxiable"; diff --git a/src/sdk/contracts/@openzeppelin/contracts/interfaces/index.ts b/src/sdk/contracts/@openzeppelin/contracts/interfaces/index.ts deleted file mode 100644 index 56b77b4..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/interfaces/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as draftIerc1822Sol from "./draft-IERC1822.sol"; -export type { draftIerc1822Sol }; -export type { IERC1967 } from "./IERC1967"; diff --git a/src/sdk/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.ts b/src/sdk/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.ts deleted file mode 100644 index 81ce155..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.ts +++ /dev/null @@ -1,115 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { BaseContract, Signer, utils } from "ethers"; -import type { EventFragment } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface ERC1967UpgradeInterface extends utils.Interface { - functions: {}; - - events: { - "AdminChanged(address,address)": EventFragment; - "BeaconUpgraded(address)": EventFragment; - "Upgraded(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AdminChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "BeaconUpgraded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment; -} - -export interface AdminChangedEventObject { - previousAdmin: string; - newAdmin: string; -} -export type AdminChangedEvent = TypedEvent< - [string, string], - AdminChangedEventObject ->; - -export type AdminChangedEventFilter = TypedEventFilter; - -export interface BeaconUpgradedEventObject { - beacon: string; -} -export type BeaconUpgradedEvent = TypedEvent< - [string], - BeaconUpgradedEventObject ->; - -export type BeaconUpgradedEventFilter = TypedEventFilter; - -export interface UpgradedEventObject { - implementation: string; -} -export type UpgradedEvent = TypedEvent<[string], UpgradedEventObject>; - -export type UpgradedEventFilter = TypedEventFilter; - -export interface ERC1967Upgrade extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: ERC1967UpgradeInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: {}; - - callStatic: {}; - - filters: { - "AdminChanged(address,address)"( - previousAdmin?: null, - newAdmin?: null - ): AdminChangedEventFilter; - AdminChanged( - previousAdmin?: null, - newAdmin?: null - ): AdminChangedEventFilter; - - "BeaconUpgraded(address)"( - beacon?: PromiseOrValue | null - ): BeaconUpgradedEventFilter; - BeaconUpgraded( - beacon?: PromiseOrValue | null - ): BeaconUpgradedEventFilter; - - "Upgraded(address)"( - implementation?: PromiseOrValue | null - ): UpgradedEventFilter; - Upgraded( - implementation?: PromiseOrValue | null - ): UpgradedEventFilter; - }; - - estimateGas: {}; - - populateTransaction: {}; -} diff --git a/src/sdk/contracts/@openzeppelin/contracts/proxy/ERC1967/index.ts b/src/sdk/contracts/@openzeppelin/contracts/proxy/ERC1967/index.ts deleted file mode 100644 index 0403bcd..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/proxy/ERC1967/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { ERC1967Upgrade } from "./ERC1967Upgrade"; diff --git a/src/sdk/contracts/@openzeppelin/contracts/proxy/beacon/IBeacon.ts b/src/sdk/contracts/@openzeppelin/contracts/proxy/beacon/IBeacon.ts deleted file mode 100644 index fb83fd9..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/proxy/beacon/IBeacon.ts +++ /dev/null @@ -1,88 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IBeaconInterface extends utils.Interface { - functions: { - "implementation()": FunctionFragment; - }; - - getFunction(nameOrSignatureOrTopic: "implementation"): FunctionFragment; - - encodeFunctionData( - functionFragment: "implementation", - values?: undefined - ): string; - - decodeFunctionResult( - functionFragment: "implementation", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IBeacon extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IBeaconInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - implementation(overrides?: CallOverrides): Promise<[string]>; - }; - - implementation(overrides?: CallOverrides): Promise; - - callStatic: { - implementation(overrides?: CallOverrides): Promise; - }; - - filters: {}; - - estimateGas: { - implementation(overrides?: CallOverrides): Promise; - }; - - populateTransaction: { - implementation(overrides?: CallOverrides): Promise; - }; -} diff --git a/src/sdk/contracts/@openzeppelin/contracts/proxy/beacon/index.ts b/src/sdk/contracts/@openzeppelin/contracts/proxy/beacon/index.ts deleted file mode 100644 index 9224b1e..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/proxy/beacon/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { IBeacon } from "./IBeacon"; diff --git a/src/sdk/contracts/@openzeppelin/contracts/proxy/index.ts b/src/sdk/contracts/@openzeppelin/contracts/proxy/index.ts deleted file mode 100644 index c2433d8..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/proxy/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as erc1967 from "./ERC1967"; -export type { erc1967 }; -import type * as beacon from "./beacon"; -export type { beacon }; -import type * as utils from "./utils"; -export type { utils }; diff --git a/src/sdk/contracts/@openzeppelin/contracts/proxy/utils/Initializable.ts b/src/sdk/contracts/@openzeppelin/contracts/proxy/utils/Initializable.ts deleted file mode 100644 index a97ca26..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/proxy/utils/Initializable.ts +++ /dev/null @@ -1,70 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { BaseContract, Signer, utils } from "ethers"; -import type { EventFragment } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface InitializableInterface extends utils.Interface { - functions: {}; - - events: { - "Initialized(uint8)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; -} - -export interface InitializedEventObject { - version: number; -} -export type InitializedEvent = TypedEvent<[number], InitializedEventObject>; - -export type InitializedEventFilter = TypedEventFilter; - -export interface Initializable extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: InitializableInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: {}; - - callStatic: {}; - - filters: { - "Initialized(uint8)"(version?: null): InitializedEventFilter; - Initialized(version?: null): InitializedEventFilter; - }; - - estimateGas: {}; - - populateTransaction: {}; -} diff --git a/src/sdk/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.ts b/src/sdk/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.ts deleted file mode 100644 index adc5896..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.ts +++ /dev/null @@ -1,226 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface UUPSUpgradeableInterface extends utils.Interface { - functions: { - "proxiableUUID()": FunctionFragment; - "upgradeTo(address)": FunctionFragment; - "upgradeToAndCall(address,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: "proxiableUUID" | "upgradeTo" | "upgradeToAndCall" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "proxiableUUID", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "upgradeTo", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "upgradeToAndCall", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "proxiableUUID", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "upgradeTo", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "upgradeToAndCall", - data: BytesLike - ): Result; - - events: { - "AdminChanged(address,address)": EventFragment; - "BeaconUpgraded(address)": EventFragment; - "Upgraded(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AdminChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "BeaconUpgraded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment; -} - -export interface AdminChangedEventObject { - previousAdmin: string; - newAdmin: string; -} -export type AdminChangedEvent = TypedEvent< - [string, string], - AdminChangedEventObject ->; - -export type AdminChangedEventFilter = TypedEventFilter; - -export interface BeaconUpgradedEventObject { - beacon: string; -} -export type BeaconUpgradedEvent = TypedEvent< - [string], - BeaconUpgradedEventObject ->; - -export type BeaconUpgradedEventFilter = TypedEventFilter; - -export interface UpgradedEventObject { - implementation: string; -} -export type UpgradedEvent = TypedEvent<[string], UpgradedEventObject>; - -export type UpgradedEventFilter = TypedEventFilter; - -export interface UUPSUpgradeable extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: UUPSUpgradeableInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - proxiableUUID(overrides?: CallOverrides): Promise<[string]>; - - upgradeTo( - newImplementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - upgradeToAndCall( - newImplementation: PromiseOrValue, - data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - proxiableUUID(overrides?: CallOverrides): Promise; - - upgradeTo( - newImplementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - upgradeToAndCall( - newImplementation: PromiseOrValue, - data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - proxiableUUID(overrides?: CallOverrides): Promise; - - upgradeTo( - newImplementation: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - upgradeToAndCall( - newImplementation: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AdminChanged(address,address)"( - previousAdmin?: null, - newAdmin?: null - ): AdminChangedEventFilter; - AdminChanged( - previousAdmin?: null, - newAdmin?: null - ): AdminChangedEventFilter; - - "BeaconUpgraded(address)"( - beacon?: PromiseOrValue | null - ): BeaconUpgradedEventFilter; - BeaconUpgraded( - beacon?: PromiseOrValue | null - ): BeaconUpgradedEventFilter; - - "Upgraded(address)"( - implementation?: PromiseOrValue | null - ): UpgradedEventFilter; - Upgraded( - implementation?: PromiseOrValue | null - ): UpgradedEventFilter; - }; - - estimateGas: { - proxiableUUID(overrides?: CallOverrides): Promise; - - upgradeTo( - newImplementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - upgradeToAndCall( - newImplementation: PromiseOrValue, - data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - proxiableUUID(overrides?: CallOverrides): Promise; - - upgradeTo( - newImplementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - upgradeToAndCall( - newImplementation: PromiseOrValue, - data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/@openzeppelin/contracts/proxy/utils/index.ts b/src/sdk/contracts/@openzeppelin/contracts/proxy/utils/index.ts deleted file mode 100644 index f23837b..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/proxy/utils/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { Initializable } from "./Initializable"; -export type { UUPSUpgradeable } from "./UUPSUpgradeable"; diff --git a/src/sdk/contracts/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.ts b/src/sdk/contracts/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.ts deleted file mode 100644 index 7da245c..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.ts +++ /dev/null @@ -1,231 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IERC1155ReceiverInterface extends utils.Interface { - functions: { - "onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)": FunctionFragment; - "onERC1155Received(address,address,uint256,uint256,bytes)": FunctionFragment; - "supportsInterface(bytes4)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "onERC1155BatchReceived" - | "onERC1155Received" - | "supportsInterface" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "onERC1155BatchReceived", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue[], - PromiseOrValue[], - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "onERC1155Received", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "supportsInterface", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "onERC1155BatchReceived", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "onERC1155Received", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "supportsInterface", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IERC1155Receiver extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IERC1155ReceiverInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - onERC1155BatchReceived( - operator: PromiseOrValue, - from: PromiseOrValue, - ids: PromiseOrValue[], - values: PromiseOrValue[], - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onERC1155Received( - operator: PromiseOrValue, - from: PromiseOrValue, - id: PromiseOrValue, - value: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - }; - - onERC1155BatchReceived( - operator: PromiseOrValue, - from: PromiseOrValue, - ids: PromiseOrValue[], - values: PromiseOrValue[], - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onERC1155Received( - operator: PromiseOrValue, - from: PromiseOrValue, - id: PromiseOrValue, - value: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - callStatic: { - onERC1155BatchReceived( - operator: PromiseOrValue, - from: PromiseOrValue, - ids: PromiseOrValue[], - values: PromiseOrValue[], - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC1155Received( - operator: PromiseOrValue, - from: PromiseOrValue, - id: PromiseOrValue, - value: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - onERC1155BatchReceived( - operator: PromiseOrValue, - from: PromiseOrValue, - ids: PromiseOrValue[], - values: PromiseOrValue[], - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onERC1155Received( - operator: PromiseOrValue, - from: PromiseOrValue, - id: PromiseOrValue, - value: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - onERC1155BatchReceived( - operator: PromiseOrValue, - from: PromiseOrValue, - ids: PromiseOrValue[], - values: PromiseOrValue[], - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onERC1155Received( - operator: PromiseOrValue, - from: PromiseOrValue, - id: PromiseOrValue, - value: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; -} diff --git a/src/sdk/contracts/@openzeppelin/contracts/token/ERC1155/index.ts b/src/sdk/contracts/@openzeppelin/contracts/token/ERC1155/index.ts deleted file mode 100644 index 0300251..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/token/ERC1155/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { IERC1155Receiver } from "./IERC1155Receiver"; diff --git a/src/sdk/contracts/@openzeppelin/contracts/token/ERC721/IERC721Receiver.ts b/src/sdk/contracts/@openzeppelin/contracts/token/ERC721/IERC721Receiver.ts deleted file mode 100644 index 29adc89..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/token/ERC721/IERC721Receiver.ts +++ /dev/null @@ -1,126 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IERC721ReceiverInterface extends utils.Interface { - functions: { - "onERC721Received(address,address,uint256,bytes)": FunctionFragment; - }; - - getFunction(nameOrSignatureOrTopic: "onERC721Received"): FunctionFragment; - - encodeFunctionData( - functionFragment: "onERC721Received", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - - decodeFunctionResult( - functionFragment: "onERC721Received", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IERC721Receiver extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IERC721ReceiverInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - onERC721Received( - operator: PromiseOrValue, - from: PromiseOrValue, - tokenId: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - onERC721Received( - operator: PromiseOrValue, - from: PromiseOrValue, - tokenId: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - onERC721Received( - operator: PromiseOrValue, - from: PromiseOrValue, - tokenId: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - onERC721Received( - operator: PromiseOrValue, - from: PromiseOrValue, - tokenId: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - onERC721Received( - operator: PromiseOrValue, - from: PromiseOrValue, - tokenId: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/@openzeppelin/contracts/token/ERC721/index.ts b/src/sdk/contracts/@openzeppelin/contracts/token/ERC721/index.ts deleted file mode 100644 index dd183b2..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/token/ERC721/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { IERC721Receiver } from "./IERC721Receiver"; diff --git a/src/sdk/contracts/@openzeppelin/contracts/token/ERC777/IERC777Recipient.ts b/src/sdk/contracts/@openzeppelin/contracts/token/ERC777/IERC777Recipient.ts deleted file mode 100644 index 01b120f..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/token/ERC777/IERC777Recipient.ts +++ /dev/null @@ -1,138 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IERC777RecipientInterface extends utils.Interface { - functions: { - "tokensReceived(address,address,address,uint256,bytes,bytes)": FunctionFragment; - }; - - getFunction(nameOrSignatureOrTopic: "tokensReceived"): FunctionFragment; - - encodeFunctionData( - functionFragment: "tokensReceived", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - - decodeFunctionResult( - functionFragment: "tokensReceived", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IERC777Recipient extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IERC777RecipientInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - tokensReceived( - operator: PromiseOrValue, - from: PromiseOrValue, - to: PromiseOrValue, - amount: PromiseOrValue, - userData: PromiseOrValue, - operatorData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - tokensReceived( - operator: PromiseOrValue, - from: PromiseOrValue, - to: PromiseOrValue, - amount: PromiseOrValue, - userData: PromiseOrValue, - operatorData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - tokensReceived( - operator: PromiseOrValue, - from: PromiseOrValue, - to: PromiseOrValue, - amount: PromiseOrValue, - userData: PromiseOrValue, - operatorData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - tokensReceived( - operator: PromiseOrValue, - from: PromiseOrValue, - to: PromiseOrValue, - amount: PromiseOrValue, - userData: PromiseOrValue, - operatorData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - tokensReceived( - operator: PromiseOrValue, - from: PromiseOrValue, - to: PromiseOrValue, - amount: PromiseOrValue, - userData: PromiseOrValue, - operatorData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/@openzeppelin/contracts/token/ERC777/index.ts b/src/sdk/contracts/@openzeppelin/contracts/token/ERC777/index.ts deleted file mode 100644 index 211979b..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/token/ERC777/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { IERC777Recipient } from "./IERC777Recipient"; diff --git a/src/sdk/contracts/@openzeppelin/contracts/token/index.ts b/src/sdk/contracts/@openzeppelin/contracts/token/index.ts deleted file mode 100644 index 06263eb..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/token/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as erc1155 from "./ERC1155"; -export type { erc1155 }; -import type * as erc721 from "./ERC721"; -export type { erc721 }; -import type * as erc777 from "./ERC777"; -export type { erc777 }; diff --git a/src/sdk/contracts/@openzeppelin/contracts/utils/index.ts b/src/sdk/contracts/@openzeppelin/contracts/utils/index.ts deleted file mode 100644 index 3aa96c1..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/utils/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as introspection from "./introspection"; -export type { introspection }; diff --git a/src/sdk/contracts/@openzeppelin/contracts/utils/introspection/IERC165.ts b/src/sdk/contracts/@openzeppelin/contracts/utils/introspection/IERC165.ts deleted file mode 100644 index 010603d..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/utils/introspection/IERC165.ts +++ /dev/null @@ -1,103 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IERC165Interface extends utils.Interface { - functions: { - "supportsInterface(bytes4)": FunctionFragment; - }; - - getFunction(nameOrSignatureOrTopic: "supportsInterface"): FunctionFragment; - - encodeFunctionData( - functionFragment: "supportsInterface", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "supportsInterface", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IERC165 extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IERC165Interface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - }; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - callStatic: { - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; -} diff --git a/src/sdk/contracts/@openzeppelin/contracts/utils/introspection/index.ts b/src/sdk/contracts/@openzeppelin/contracts/utils/introspection/index.ts deleted file mode 100644 index 3fcca5c..0000000 --- a/src/sdk/contracts/@openzeppelin/contracts/utils/introspection/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { IERC165 } from "./IERC165"; diff --git a/src/sdk/contracts/@openzeppelin/index.ts b/src/sdk/contracts/@openzeppelin/index.ts deleted file mode 100644 index a11e4ca..0000000 --- a/src/sdk/contracts/@openzeppelin/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as contracts from "./contracts"; -export type { contracts }; diff --git a/src/sdk/contracts/account-abstraction/contracts/core/BaseAccount.ts b/src/sdk/contracts/account-abstraction/contracts/core/BaseAccount.ts deleted file mode 100644 index 2285f11..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/core/BaseAccount.ts +++ /dev/null @@ -1,185 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export type UserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - accountGasLimits: PromiseOrValue; - preVerificationGas: PromiseOrValue; - gasFees: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; -}; - -export type UserOperationStructOutput = [ - string, - BigNumber, - string, - string, - string, - BigNumber, - string, - string, - string -] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - accountGasLimits: string; - preVerificationGas: BigNumber; - gasFees: string; - paymasterAndData: string; - signature: string; -}; - -export interface BaseAccountInterface extends utils.Interface { - functions: { - "entryPoint()": FunctionFragment; - "getNonce()": FunctionFragment; - "validateUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: "entryPoint" | "getNonce" | "validateUserOp" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "entryPoint", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "getNonce", values?: undefined): string; - encodeFunctionData( - functionFragment: "validateUserOp", - values: [ - UserOperationStruct, - PromiseOrValue, - PromiseOrValue - ] - ): string; - - decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getNonce", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "validateUserOp", - data: BytesLike - ): Result; - - events: {}; -} - -export interface BaseAccount extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: BaseAccountInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - entryPoint(overrides?: CallOverrides): Promise<[string]>; - - getNonce(overrides?: CallOverrides): Promise<[BigNumber]>; - - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - entryPoint(overrides?: CallOverrides): Promise; - - getNonce(overrides?: CallOverrides): Promise; - - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - entryPoint(overrides?: CallOverrides): Promise; - - getNonce(overrides?: CallOverrides): Promise; - - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - entryPoint(overrides?: CallOverrides): Promise; - - getNonce(overrides?: CallOverrides): Promise; - - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - entryPoint(overrides?: CallOverrides): Promise; - - getNonce(overrides?: CallOverrides): Promise; - - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/account-abstraction/contracts/core/EntryPoint.ts b/src/sdk/contracts/account-abstraction/contracts/core/EntryPoint.ts deleted file mode 100644 index 152b0a1..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/core/EntryPoint.ts +++ /dev/null @@ -1,950 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export type PackedUserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - accountGasLimits: PromiseOrValue; - preVerificationGas: PromiseOrValue; - gasFees: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; -}; - -export type PackedUserOperationStructOutput = [ - string, - BigNumber, - string, - string, - string, - BigNumber, - string, - string, - string -] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - accountGasLimits: string; - preVerificationGas: BigNumber; - gasFees: string; - paymasterAndData: string; - signature: string; -}; - -export declare namespace IStakeManager { - export type DepositInfoStruct = { - deposit: PromiseOrValue; - staked: PromiseOrValue; - stake: PromiseOrValue; - unstakeDelaySec: PromiseOrValue; - withdrawTime: PromiseOrValue; - }; - - export type DepositInfoStructOutput = [ - BigNumber, - boolean, - BigNumber, - number, - number - ] & { - deposit: BigNumber; - staked: boolean; - stake: BigNumber; - unstakeDelaySec: number; - withdrawTime: number; - }; -} - -export declare namespace IEntryPoint { - export type UserOpsPerAggregatorStruct = { - userOps: PackedUserOperationStruct[]; - aggregator: PromiseOrValue; - signature: PromiseOrValue; - }; - - export type UserOpsPerAggregatorStructOutput = [ - PackedUserOperationStructOutput[], - string, - string - ] & { - userOps: PackedUserOperationStructOutput[]; - aggregator: string; - signature: string; - }; -} - -export interface IEntryPointInterface extends utils.Interface { - functions: { - "addStake(uint32)": FunctionFragment; - "balanceOf(address)": FunctionFragment; - "delegateAndRevert(address,bytes)": FunctionFragment; - "depositTo(address)": FunctionFragment; - "getDepositInfo(address)": FunctionFragment; - "getNonce(address,uint192)": FunctionFragment; - "getSenderAddress(bytes)": FunctionFragment; - "getUserOpHash((address,uint256,bytes,bytes,bytes32,uint256,bytes32,bytes,bytes))": FunctionFragment; - "handleAggregatedOps(((address,uint256,bytes,bytes,bytes32,uint256,bytes32,bytes,bytes)[],address,bytes)[],address)": FunctionFragment; - "handleOps((address,uint256,bytes,bytes,bytes32,uint256,bytes32,bytes,bytes)[],address)": FunctionFragment; - "incrementNonce(uint192)": FunctionFragment; - "unlockStake()": FunctionFragment; - "withdrawStake(address)": FunctionFragment; - "withdrawTo(address,uint256)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addStake" - | "balanceOf" - | "delegateAndRevert" - | "depositTo" - | "getDepositInfo" - | "getNonce" - | "getSenderAddress" - | "getUserOpHash" - | "handleAggregatedOps" - | "handleOps" - | "incrementNonce" - | "unlockStake" - | "withdrawStake" - | "withdrawTo" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addStake", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "balanceOf", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "delegateAndRevert", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "depositTo", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getDepositInfo", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getNonce", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getSenderAddress", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getUserOpHash", - values: [PackedUserOperationStruct] - ): string; - encodeFunctionData( - functionFragment: "handleAggregatedOps", - values: [IEntryPoint.UserOpsPerAggregatorStruct[], PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "handleOps", - values: [PackedUserOperationStruct[], PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "incrementNonce", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "unlockStake", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "withdrawStake", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "withdrawTo", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult(functionFragment: "addStake", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "delegateAndRevert", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "depositTo", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getDepositInfo", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "getNonce", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getSenderAddress", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getUserOpHash", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "handleAggregatedOps", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "handleOps", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "incrementNonce", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "unlockStake", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "withdrawStake", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "withdrawTo", data: BytesLike): Result; - - events: { - "AccountDeployed(bytes32,address,address,address)": EventFragment; - "BeforeExecution()": EventFragment; - "Deposited(address,uint256)": EventFragment; - "PostOpRevertReason(bytes32,address,uint256,bytes)": EventFragment; - "SignatureAggregatorChanged(address)": EventFragment; - "StakeLocked(address,uint256,uint256)": EventFragment; - "StakeUnlocked(address,uint256)": EventFragment; - "StakeWithdrawn(address,address,uint256)": EventFragment; - "UserOperationEvent(bytes32,address,address,uint256,bool,uint256,uint256)": EventFragment; - "UserOperationPrefundTooLow(bytes32,address,uint256)": EventFragment; - "UserOperationRevertReason(bytes32,address,uint256,bytes)": EventFragment; - "Withdrawn(address,address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AccountDeployed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "BeforeExecution"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Deposited"): EventFragment; - getEvent(nameOrSignatureOrTopic: "PostOpRevertReason"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SignatureAggregatorChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "StakeLocked"): EventFragment; - getEvent(nameOrSignatureOrTopic: "StakeUnlocked"): EventFragment; - getEvent(nameOrSignatureOrTopic: "StakeWithdrawn"): EventFragment; - getEvent(nameOrSignatureOrTopic: "UserOperationEvent"): EventFragment; - getEvent(nameOrSignatureOrTopic: "UserOperationPrefundTooLow"): EventFragment; - getEvent(nameOrSignatureOrTopic: "UserOperationRevertReason"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Withdrawn"): EventFragment; -} - -export interface AccountDeployedEventObject { - userOpHash: string; - sender: string; - factory: string; - paymaster: string; -} -export type AccountDeployedEvent = TypedEvent< - [string, string, string, string], - AccountDeployedEventObject ->; - -export type AccountDeployedEventFilter = TypedEventFilter; - -export interface BeforeExecutionEventObject {} -export type BeforeExecutionEvent = TypedEvent<[], BeforeExecutionEventObject>; - -export type BeforeExecutionEventFilter = TypedEventFilter; - -export interface DepositedEventObject { - account: string; - totalDeposit: BigNumber; -} -export type DepositedEvent = TypedEvent< - [string, BigNumber], - DepositedEventObject ->; - -export type DepositedEventFilter = TypedEventFilter; - -export interface PostOpRevertReasonEventObject { - userOpHash: string; - sender: string; - nonce: BigNumber; - revertReason: string; -} -export type PostOpRevertReasonEvent = TypedEvent< - [string, string, BigNumber, string], - PostOpRevertReasonEventObject ->; - -export type PostOpRevertReasonEventFilter = - TypedEventFilter; - -export interface SignatureAggregatorChangedEventObject { - aggregator: string; -} -export type SignatureAggregatorChangedEvent = TypedEvent< - [string], - SignatureAggregatorChangedEventObject ->; - -export type SignatureAggregatorChangedEventFilter = - TypedEventFilter; - -export interface StakeLockedEventObject { - account: string; - totalStaked: BigNumber; - unstakeDelaySec: BigNumber; -} -export type StakeLockedEvent = TypedEvent< - [string, BigNumber, BigNumber], - StakeLockedEventObject ->; - -export type StakeLockedEventFilter = TypedEventFilter; - -export interface StakeUnlockedEventObject { - account: string; - withdrawTime: BigNumber; -} -export type StakeUnlockedEvent = TypedEvent< - [string, BigNumber], - StakeUnlockedEventObject ->; - -export type StakeUnlockedEventFilter = TypedEventFilter; - -export interface StakeWithdrawnEventObject { - account: string; - withdrawAddress: string; - amount: BigNumber; -} -export type StakeWithdrawnEvent = TypedEvent< - [string, string, BigNumber], - StakeWithdrawnEventObject ->; - -export type StakeWithdrawnEventFilter = TypedEventFilter; - -export interface UserOperationEventEventObject { - userOpHash: string; - sender: string; - paymaster: string; - nonce: BigNumber; - success: boolean; - actualGasCost: BigNumber; - actualGasUsed: BigNumber; -} -export type UserOperationEventEvent = TypedEvent< - [string, string, string, BigNumber, boolean, BigNumber, BigNumber], - UserOperationEventEventObject ->; - -export type UserOperationEventEventFilter = - TypedEventFilter; - -export interface UserOperationPrefundTooLowEventObject { - userOpHash: string; - sender: string; - nonce: BigNumber; -} -export type UserOperationPrefundTooLowEvent = TypedEvent< - [string, string, BigNumber], - UserOperationPrefundTooLowEventObject ->; - -export type UserOperationPrefundTooLowEventFilter = - TypedEventFilter; - -export interface UserOperationRevertReasonEventObject { - userOpHash: string; - sender: string; - nonce: BigNumber; - revertReason: string; -} -export type UserOperationRevertReasonEvent = TypedEvent< - [string, string, BigNumber, string], - UserOperationRevertReasonEventObject ->; - -export type UserOperationRevertReasonEventFilter = - TypedEventFilter; - -export interface WithdrawnEventObject { - account: string; - withdrawAddress: string; - amount: BigNumber; -} -export type WithdrawnEvent = TypedEvent< - [string, string, BigNumber], - WithdrawnEventObject ->; - -export type WithdrawnEventFilter = TypedEventFilter; - -export interface IEntryPoint extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IEntryPointInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - delegateAndRevert( - target: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [IStakeManager.DepositInfoStructOutput] & { - info: IStakeManager.DepositInfoStructOutput; - } - >; - - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber] & { nonce: BigNumber }>; - - getSenderAddress( - initCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getUserOpHash( - userOp: PackedUserOperationStruct, - overrides?: CallOverrides - ): Promise<[string]>; - - handleAggregatedOps( - opsPerAggregator: IEntryPoint.UserOpsPerAggregatorStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - handleOps( - ops: PackedUserOperationStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - delegateAndRevert( - target: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSenderAddress( - initCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getUserOpHash( - userOp: PackedUserOperationStruct, - overrides?: CallOverrides - ): Promise; - - handleAggregatedOps( - opsPerAggregator: IEntryPoint.UserOpsPerAggregatorStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - handleOps( - ops: PackedUserOperationStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - delegateAndRevert( - target: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSenderAddress( - initCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getUserOpHash( - userOp: PackedUserOperationStruct, - overrides?: CallOverrides - ): Promise; - - handleAggregatedOps( - opsPerAggregator: IEntryPoint.UserOpsPerAggregatorStruct[], - beneficiary: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - handleOps( - ops: PackedUserOperationStruct[], - beneficiary: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - unlockStake(overrides?: CallOverrides): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AccountDeployed(bytes32,address,address,address)"( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - factory?: null, - paymaster?: null - ): AccountDeployedEventFilter; - AccountDeployed( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - factory?: null, - paymaster?: null - ): AccountDeployedEventFilter; - - "BeforeExecution()"(): BeforeExecutionEventFilter; - BeforeExecution(): BeforeExecutionEventFilter; - - "Deposited(address,uint256)"( - account?: PromiseOrValue | null, - totalDeposit?: null - ): DepositedEventFilter; - Deposited( - account?: PromiseOrValue | null, - totalDeposit?: null - ): DepositedEventFilter; - - "PostOpRevertReason(bytes32,address,uint256,bytes)"( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - nonce?: null, - revertReason?: null - ): PostOpRevertReasonEventFilter; - PostOpRevertReason( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - nonce?: null, - revertReason?: null - ): PostOpRevertReasonEventFilter; - - "SignatureAggregatorChanged(address)"( - aggregator?: PromiseOrValue | null - ): SignatureAggregatorChangedEventFilter; - SignatureAggregatorChanged( - aggregator?: PromiseOrValue | null - ): SignatureAggregatorChangedEventFilter; - - "StakeLocked(address,uint256,uint256)"( - account?: PromiseOrValue | null, - totalStaked?: null, - unstakeDelaySec?: null - ): StakeLockedEventFilter; - StakeLocked( - account?: PromiseOrValue | null, - totalStaked?: null, - unstakeDelaySec?: null - ): StakeLockedEventFilter; - - "StakeUnlocked(address,uint256)"( - account?: PromiseOrValue | null, - withdrawTime?: null - ): StakeUnlockedEventFilter; - StakeUnlocked( - account?: PromiseOrValue | null, - withdrawTime?: null - ): StakeUnlockedEventFilter; - - "StakeWithdrawn(address,address,uint256)"( - account?: PromiseOrValue | null, - withdrawAddress?: null, - amount?: null - ): StakeWithdrawnEventFilter; - StakeWithdrawn( - account?: PromiseOrValue | null, - withdrawAddress?: null, - amount?: null - ): StakeWithdrawnEventFilter; - - "UserOperationEvent(bytes32,address,address,uint256,bool,uint256,uint256)"( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - paymaster?: PromiseOrValue | null, - nonce?: null, - success?: null, - actualGasCost?: null, - actualGasUsed?: null - ): UserOperationEventEventFilter; - UserOperationEvent( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - paymaster?: PromiseOrValue | null, - nonce?: null, - success?: null, - actualGasCost?: null, - actualGasUsed?: null - ): UserOperationEventEventFilter; - - "UserOperationPrefundTooLow(bytes32,address,uint256)"( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - nonce?: null - ): UserOperationPrefundTooLowEventFilter; - UserOperationPrefundTooLow( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - nonce?: null - ): UserOperationPrefundTooLowEventFilter; - - "UserOperationRevertReason(bytes32,address,uint256,bytes)"( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - nonce?: null, - revertReason?: null - ): UserOperationRevertReasonEventFilter; - UserOperationRevertReason( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - nonce?: null, - revertReason?: null - ): UserOperationRevertReasonEventFilter; - - "Withdrawn(address,address,uint256)"( - account?: PromiseOrValue | null, - withdrawAddress?: null, - amount?: null - ): WithdrawnEventFilter; - Withdrawn( - account?: PromiseOrValue | null, - withdrawAddress?: null, - amount?: null - ): WithdrawnEventFilter; - }; - - estimateGas: { - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - delegateAndRevert( - target: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSenderAddress( - initCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getUserOpHash( - userOp: PackedUserOperationStruct, - overrides?: CallOverrides - ): Promise; - - handleAggregatedOps( - opsPerAggregator: IEntryPoint.UserOpsPerAggregatorStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - handleOps( - ops: PackedUserOperationStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - delegateAndRevert( - target: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSenderAddress( - initCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getUserOpHash( - userOp: PackedUserOperationStruct, - overrides?: CallOverrides - ): Promise; - - handleAggregatedOps( - opsPerAggregator: IEntryPoint.UserOpsPerAggregatorStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - handleOps( - ops: PackedUserOperationStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/account-abstraction/contracts/core/index.ts b/src/sdk/contracts/account-abstraction/contracts/core/index.ts deleted file mode 100644 index 79702e8..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/core/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { BaseAccount } from "./BaseAccount"; diff --git a/src/sdk/contracts/account-abstraction/contracts/index.ts b/src/sdk/contracts/account-abstraction/contracts/index.ts deleted file mode 100644 index e56886b..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as core from "./core"; -export type { core }; -import type * as interfaces from "./interfaces"; -export type { interfaces }; -import type * as samples from "./samples"; -export type { samples }; diff --git a/src/sdk/contracts/account-abstraction/contracts/interfaces/IAccount.ts b/src/sdk/contracts/account-abstraction/contracts/interfaces/IAccount.ts deleted file mode 100644 index 936e8d0..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/interfaces/IAccount.ts +++ /dev/null @@ -1,160 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export type UserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - callGasLimit: PromiseOrValue; - verificationGasLimit: PromiseOrValue; - preVerificationGas: PromiseOrValue; - maxFeePerGas: PromiseOrValue; - maxPriorityFeePerGas: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; -}; - -export type UserOperationStructOutput = [ - string, - BigNumber, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - string -] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - callGasLimit: BigNumber; - verificationGasLimit: BigNumber; - preVerificationGas: BigNumber; - maxFeePerGas: BigNumber; - maxPriorityFeePerGas: BigNumber; - paymasterAndData: string; - signature: string; -}; - -export interface IAccountInterface extends utils.Interface { - functions: { - "validateUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)": FunctionFragment; - }; - - getFunction(nameOrSignatureOrTopic: "validateUserOp"): FunctionFragment; - - encodeFunctionData( - functionFragment: "validateUserOp", - values: [ - UserOperationStruct, - PromiseOrValue, - PromiseOrValue - ] - ): string; - - decodeFunctionResult( - functionFragment: "validateUserOp", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IAccount extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IAccountInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/account-abstraction/contracts/interfaces/IAggregator.ts b/src/sdk/contracts/account-abstraction/contracts/interfaces/IAggregator.ts deleted file mode 100644 index b617dc7..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/interfaces/IAggregator.ts +++ /dev/null @@ -1,222 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export type UserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - callGasLimit: PromiseOrValue; - verificationGasLimit: PromiseOrValue; - preVerificationGas: PromiseOrValue; - maxFeePerGas: PromiseOrValue; - maxPriorityFeePerGas: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; -}; - -export type UserOperationStructOutput = [ - string, - BigNumber, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - string -] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - callGasLimit: BigNumber; - verificationGasLimit: BigNumber; - preVerificationGas: BigNumber; - maxFeePerGas: BigNumber; - maxPriorityFeePerGas: BigNumber; - paymasterAndData: string; - signature: string; -}; - -export interface IAggregatorInterface extends utils.Interface { - functions: { - "aggregateSignatures((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes)[])": FunctionFragment; - "validateSignatures((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes)[],bytes)": FunctionFragment; - "validateUserOpSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes))": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "aggregateSignatures" - | "validateSignatures" - | "validateUserOpSignature" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "aggregateSignatures", - values: [UserOperationStruct[]] - ): string; - encodeFunctionData( - functionFragment: "validateSignatures", - values: [UserOperationStruct[], PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "validateUserOpSignature", - values: [UserOperationStruct] - ): string; - - decodeFunctionResult( - functionFragment: "aggregateSignatures", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "validateSignatures", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "validateUserOpSignature", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IAggregator extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IAggregatorInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - aggregateSignatures( - userOps: UserOperationStruct[], - overrides?: CallOverrides - ): Promise<[string] & { aggregatedSignature: string }>; - - validateSignatures( - userOps: UserOperationStruct[], - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[void]>; - - validateUserOpSignature( - userOp: UserOperationStruct, - overrides?: CallOverrides - ): Promise<[string] & { sigForUserOp: string }>; - }; - - aggregateSignatures( - userOps: UserOperationStruct[], - overrides?: CallOverrides - ): Promise; - - validateSignatures( - userOps: UserOperationStruct[], - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - validateUserOpSignature( - userOp: UserOperationStruct, - overrides?: CallOverrides - ): Promise; - - callStatic: { - aggregateSignatures( - userOps: UserOperationStruct[], - overrides?: CallOverrides - ): Promise; - - validateSignatures( - userOps: UserOperationStruct[], - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - validateUserOpSignature( - userOp: UserOperationStruct, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - aggregateSignatures( - userOps: UserOperationStruct[], - overrides?: CallOverrides - ): Promise; - - validateSignatures( - userOps: UserOperationStruct[], - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - validateUserOpSignature( - userOp: UserOperationStruct, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - aggregateSignatures( - userOps: UserOperationStruct[], - overrides?: CallOverrides - ): Promise; - - validateSignatures( - userOps: UserOperationStruct[], - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - validateUserOpSignature( - userOp: UserOperationStruct, - overrides?: CallOverrides - ): Promise; - }; -} diff --git a/src/sdk/contracts/account-abstraction/contracts/interfaces/IEntryPoint.ts b/src/sdk/contracts/account-abstraction/contracts/interfaces/IEntryPoint.ts deleted file mode 100644 index 152b0a1..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/interfaces/IEntryPoint.ts +++ /dev/null @@ -1,950 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export type PackedUserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - accountGasLimits: PromiseOrValue; - preVerificationGas: PromiseOrValue; - gasFees: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; -}; - -export type PackedUserOperationStructOutput = [ - string, - BigNumber, - string, - string, - string, - BigNumber, - string, - string, - string -] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - accountGasLimits: string; - preVerificationGas: BigNumber; - gasFees: string; - paymasterAndData: string; - signature: string; -}; - -export declare namespace IStakeManager { - export type DepositInfoStruct = { - deposit: PromiseOrValue; - staked: PromiseOrValue; - stake: PromiseOrValue; - unstakeDelaySec: PromiseOrValue; - withdrawTime: PromiseOrValue; - }; - - export type DepositInfoStructOutput = [ - BigNumber, - boolean, - BigNumber, - number, - number - ] & { - deposit: BigNumber; - staked: boolean; - stake: BigNumber; - unstakeDelaySec: number; - withdrawTime: number; - }; -} - -export declare namespace IEntryPoint { - export type UserOpsPerAggregatorStruct = { - userOps: PackedUserOperationStruct[]; - aggregator: PromiseOrValue; - signature: PromiseOrValue; - }; - - export type UserOpsPerAggregatorStructOutput = [ - PackedUserOperationStructOutput[], - string, - string - ] & { - userOps: PackedUserOperationStructOutput[]; - aggregator: string; - signature: string; - }; -} - -export interface IEntryPointInterface extends utils.Interface { - functions: { - "addStake(uint32)": FunctionFragment; - "balanceOf(address)": FunctionFragment; - "delegateAndRevert(address,bytes)": FunctionFragment; - "depositTo(address)": FunctionFragment; - "getDepositInfo(address)": FunctionFragment; - "getNonce(address,uint192)": FunctionFragment; - "getSenderAddress(bytes)": FunctionFragment; - "getUserOpHash((address,uint256,bytes,bytes,bytes32,uint256,bytes32,bytes,bytes))": FunctionFragment; - "handleAggregatedOps(((address,uint256,bytes,bytes,bytes32,uint256,bytes32,bytes,bytes)[],address,bytes)[],address)": FunctionFragment; - "handleOps((address,uint256,bytes,bytes,bytes32,uint256,bytes32,bytes,bytes)[],address)": FunctionFragment; - "incrementNonce(uint192)": FunctionFragment; - "unlockStake()": FunctionFragment; - "withdrawStake(address)": FunctionFragment; - "withdrawTo(address,uint256)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addStake" - | "balanceOf" - | "delegateAndRevert" - | "depositTo" - | "getDepositInfo" - | "getNonce" - | "getSenderAddress" - | "getUserOpHash" - | "handleAggregatedOps" - | "handleOps" - | "incrementNonce" - | "unlockStake" - | "withdrawStake" - | "withdrawTo" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addStake", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "balanceOf", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "delegateAndRevert", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "depositTo", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getDepositInfo", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getNonce", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getSenderAddress", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getUserOpHash", - values: [PackedUserOperationStruct] - ): string; - encodeFunctionData( - functionFragment: "handleAggregatedOps", - values: [IEntryPoint.UserOpsPerAggregatorStruct[], PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "handleOps", - values: [PackedUserOperationStruct[], PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "incrementNonce", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "unlockStake", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "withdrawStake", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "withdrawTo", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult(functionFragment: "addStake", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "delegateAndRevert", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "depositTo", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getDepositInfo", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "getNonce", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getSenderAddress", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getUserOpHash", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "handleAggregatedOps", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "handleOps", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "incrementNonce", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "unlockStake", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "withdrawStake", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "withdrawTo", data: BytesLike): Result; - - events: { - "AccountDeployed(bytes32,address,address,address)": EventFragment; - "BeforeExecution()": EventFragment; - "Deposited(address,uint256)": EventFragment; - "PostOpRevertReason(bytes32,address,uint256,bytes)": EventFragment; - "SignatureAggregatorChanged(address)": EventFragment; - "StakeLocked(address,uint256,uint256)": EventFragment; - "StakeUnlocked(address,uint256)": EventFragment; - "StakeWithdrawn(address,address,uint256)": EventFragment; - "UserOperationEvent(bytes32,address,address,uint256,bool,uint256,uint256)": EventFragment; - "UserOperationPrefundTooLow(bytes32,address,uint256)": EventFragment; - "UserOperationRevertReason(bytes32,address,uint256,bytes)": EventFragment; - "Withdrawn(address,address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AccountDeployed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "BeforeExecution"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Deposited"): EventFragment; - getEvent(nameOrSignatureOrTopic: "PostOpRevertReason"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SignatureAggregatorChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "StakeLocked"): EventFragment; - getEvent(nameOrSignatureOrTopic: "StakeUnlocked"): EventFragment; - getEvent(nameOrSignatureOrTopic: "StakeWithdrawn"): EventFragment; - getEvent(nameOrSignatureOrTopic: "UserOperationEvent"): EventFragment; - getEvent(nameOrSignatureOrTopic: "UserOperationPrefundTooLow"): EventFragment; - getEvent(nameOrSignatureOrTopic: "UserOperationRevertReason"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Withdrawn"): EventFragment; -} - -export interface AccountDeployedEventObject { - userOpHash: string; - sender: string; - factory: string; - paymaster: string; -} -export type AccountDeployedEvent = TypedEvent< - [string, string, string, string], - AccountDeployedEventObject ->; - -export type AccountDeployedEventFilter = TypedEventFilter; - -export interface BeforeExecutionEventObject {} -export type BeforeExecutionEvent = TypedEvent<[], BeforeExecutionEventObject>; - -export type BeforeExecutionEventFilter = TypedEventFilter; - -export interface DepositedEventObject { - account: string; - totalDeposit: BigNumber; -} -export type DepositedEvent = TypedEvent< - [string, BigNumber], - DepositedEventObject ->; - -export type DepositedEventFilter = TypedEventFilter; - -export interface PostOpRevertReasonEventObject { - userOpHash: string; - sender: string; - nonce: BigNumber; - revertReason: string; -} -export type PostOpRevertReasonEvent = TypedEvent< - [string, string, BigNumber, string], - PostOpRevertReasonEventObject ->; - -export type PostOpRevertReasonEventFilter = - TypedEventFilter; - -export interface SignatureAggregatorChangedEventObject { - aggregator: string; -} -export type SignatureAggregatorChangedEvent = TypedEvent< - [string], - SignatureAggregatorChangedEventObject ->; - -export type SignatureAggregatorChangedEventFilter = - TypedEventFilter; - -export interface StakeLockedEventObject { - account: string; - totalStaked: BigNumber; - unstakeDelaySec: BigNumber; -} -export type StakeLockedEvent = TypedEvent< - [string, BigNumber, BigNumber], - StakeLockedEventObject ->; - -export type StakeLockedEventFilter = TypedEventFilter; - -export interface StakeUnlockedEventObject { - account: string; - withdrawTime: BigNumber; -} -export type StakeUnlockedEvent = TypedEvent< - [string, BigNumber], - StakeUnlockedEventObject ->; - -export type StakeUnlockedEventFilter = TypedEventFilter; - -export interface StakeWithdrawnEventObject { - account: string; - withdrawAddress: string; - amount: BigNumber; -} -export type StakeWithdrawnEvent = TypedEvent< - [string, string, BigNumber], - StakeWithdrawnEventObject ->; - -export type StakeWithdrawnEventFilter = TypedEventFilter; - -export interface UserOperationEventEventObject { - userOpHash: string; - sender: string; - paymaster: string; - nonce: BigNumber; - success: boolean; - actualGasCost: BigNumber; - actualGasUsed: BigNumber; -} -export type UserOperationEventEvent = TypedEvent< - [string, string, string, BigNumber, boolean, BigNumber, BigNumber], - UserOperationEventEventObject ->; - -export type UserOperationEventEventFilter = - TypedEventFilter; - -export interface UserOperationPrefundTooLowEventObject { - userOpHash: string; - sender: string; - nonce: BigNumber; -} -export type UserOperationPrefundTooLowEvent = TypedEvent< - [string, string, BigNumber], - UserOperationPrefundTooLowEventObject ->; - -export type UserOperationPrefundTooLowEventFilter = - TypedEventFilter; - -export interface UserOperationRevertReasonEventObject { - userOpHash: string; - sender: string; - nonce: BigNumber; - revertReason: string; -} -export type UserOperationRevertReasonEvent = TypedEvent< - [string, string, BigNumber, string], - UserOperationRevertReasonEventObject ->; - -export type UserOperationRevertReasonEventFilter = - TypedEventFilter; - -export interface WithdrawnEventObject { - account: string; - withdrawAddress: string; - amount: BigNumber; -} -export type WithdrawnEvent = TypedEvent< - [string, string, BigNumber], - WithdrawnEventObject ->; - -export type WithdrawnEventFilter = TypedEventFilter; - -export interface IEntryPoint extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IEntryPointInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - delegateAndRevert( - target: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [IStakeManager.DepositInfoStructOutput] & { - info: IStakeManager.DepositInfoStructOutput; - } - >; - - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber] & { nonce: BigNumber }>; - - getSenderAddress( - initCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getUserOpHash( - userOp: PackedUserOperationStruct, - overrides?: CallOverrides - ): Promise<[string]>; - - handleAggregatedOps( - opsPerAggregator: IEntryPoint.UserOpsPerAggregatorStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - handleOps( - ops: PackedUserOperationStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - delegateAndRevert( - target: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSenderAddress( - initCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getUserOpHash( - userOp: PackedUserOperationStruct, - overrides?: CallOverrides - ): Promise; - - handleAggregatedOps( - opsPerAggregator: IEntryPoint.UserOpsPerAggregatorStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - handleOps( - ops: PackedUserOperationStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - delegateAndRevert( - target: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSenderAddress( - initCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getUserOpHash( - userOp: PackedUserOperationStruct, - overrides?: CallOverrides - ): Promise; - - handleAggregatedOps( - opsPerAggregator: IEntryPoint.UserOpsPerAggregatorStruct[], - beneficiary: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - handleOps( - ops: PackedUserOperationStruct[], - beneficiary: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - unlockStake(overrides?: CallOverrides): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AccountDeployed(bytes32,address,address,address)"( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - factory?: null, - paymaster?: null - ): AccountDeployedEventFilter; - AccountDeployed( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - factory?: null, - paymaster?: null - ): AccountDeployedEventFilter; - - "BeforeExecution()"(): BeforeExecutionEventFilter; - BeforeExecution(): BeforeExecutionEventFilter; - - "Deposited(address,uint256)"( - account?: PromiseOrValue | null, - totalDeposit?: null - ): DepositedEventFilter; - Deposited( - account?: PromiseOrValue | null, - totalDeposit?: null - ): DepositedEventFilter; - - "PostOpRevertReason(bytes32,address,uint256,bytes)"( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - nonce?: null, - revertReason?: null - ): PostOpRevertReasonEventFilter; - PostOpRevertReason( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - nonce?: null, - revertReason?: null - ): PostOpRevertReasonEventFilter; - - "SignatureAggregatorChanged(address)"( - aggregator?: PromiseOrValue | null - ): SignatureAggregatorChangedEventFilter; - SignatureAggregatorChanged( - aggregator?: PromiseOrValue | null - ): SignatureAggregatorChangedEventFilter; - - "StakeLocked(address,uint256,uint256)"( - account?: PromiseOrValue | null, - totalStaked?: null, - unstakeDelaySec?: null - ): StakeLockedEventFilter; - StakeLocked( - account?: PromiseOrValue | null, - totalStaked?: null, - unstakeDelaySec?: null - ): StakeLockedEventFilter; - - "StakeUnlocked(address,uint256)"( - account?: PromiseOrValue | null, - withdrawTime?: null - ): StakeUnlockedEventFilter; - StakeUnlocked( - account?: PromiseOrValue | null, - withdrawTime?: null - ): StakeUnlockedEventFilter; - - "StakeWithdrawn(address,address,uint256)"( - account?: PromiseOrValue | null, - withdrawAddress?: null, - amount?: null - ): StakeWithdrawnEventFilter; - StakeWithdrawn( - account?: PromiseOrValue | null, - withdrawAddress?: null, - amount?: null - ): StakeWithdrawnEventFilter; - - "UserOperationEvent(bytes32,address,address,uint256,bool,uint256,uint256)"( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - paymaster?: PromiseOrValue | null, - nonce?: null, - success?: null, - actualGasCost?: null, - actualGasUsed?: null - ): UserOperationEventEventFilter; - UserOperationEvent( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - paymaster?: PromiseOrValue | null, - nonce?: null, - success?: null, - actualGasCost?: null, - actualGasUsed?: null - ): UserOperationEventEventFilter; - - "UserOperationPrefundTooLow(bytes32,address,uint256)"( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - nonce?: null - ): UserOperationPrefundTooLowEventFilter; - UserOperationPrefundTooLow( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - nonce?: null - ): UserOperationPrefundTooLowEventFilter; - - "UserOperationRevertReason(bytes32,address,uint256,bytes)"( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - nonce?: null, - revertReason?: null - ): UserOperationRevertReasonEventFilter; - UserOperationRevertReason( - userOpHash?: PromiseOrValue | null, - sender?: PromiseOrValue | null, - nonce?: null, - revertReason?: null - ): UserOperationRevertReasonEventFilter; - - "Withdrawn(address,address,uint256)"( - account?: PromiseOrValue | null, - withdrawAddress?: null, - amount?: null - ): WithdrawnEventFilter; - Withdrawn( - account?: PromiseOrValue | null, - withdrawAddress?: null, - amount?: null - ): WithdrawnEventFilter; - }; - - estimateGas: { - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - delegateAndRevert( - target: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSenderAddress( - initCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getUserOpHash( - userOp: PackedUserOperationStruct, - overrides?: CallOverrides - ): Promise; - - handleAggregatedOps( - opsPerAggregator: IEntryPoint.UserOpsPerAggregatorStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - handleOps( - ops: PackedUserOperationStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - delegateAndRevert( - target: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSenderAddress( - initCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getUserOpHash( - userOp: PackedUserOperationStruct, - overrides?: CallOverrides - ): Promise; - - handleAggregatedOps( - opsPerAggregator: IEntryPoint.UserOpsPerAggregatorStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - handleOps( - ops: PackedUserOperationStruct[], - beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/account-abstraction/contracts/interfaces/INonceManager.ts b/src/sdk/contracts/account-abstraction/contracts/interfaces/INonceManager.ts deleted file mode 100644 index 2adfef6..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/interfaces/INonceManager.ts +++ /dev/null @@ -1,144 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export interface INonceManagerInterface extends utils.Interface { - functions: { - "getNonce(address,uint192)": FunctionFragment; - "incrementNonce(uint192)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: "getNonce" | "incrementNonce" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "getNonce", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "incrementNonce", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult(functionFragment: "getNonce", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "incrementNonce", - data: BytesLike - ): Result; - - events: {}; -} - -export interface INonceManager extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: INonceManagerInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber] & { nonce: BigNumber }>; - - incrementNonce( - key: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - getNonce( - sender: PromiseOrValue, - key: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - incrementNonce( - key: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/account-abstraction/contracts/interfaces/IPaymaster.ts b/src/sdk/contracts/account-abstraction/contracts/interfaces/IPaymaster.ts deleted file mode 100644 index 68b08bb..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/interfaces/IPaymaster.ts +++ /dev/null @@ -1,209 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export type UserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - callGasLimit: PromiseOrValue; - verificationGasLimit: PromiseOrValue; - preVerificationGas: PromiseOrValue; - maxFeePerGas: PromiseOrValue; - maxPriorityFeePerGas: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; -}; - -export type UserOperationStructOutput = [ - string, - BigNumber, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - string -] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - callGasLimit: BigNumber; - verificationGasLimit: BigNumber; - preVerificationGas: BigNumber; - maxFeePerGas: BigNumber; - maxPriorityFeePerGas: BigNumber; - paymasterAndData: string; - signature: string; -}; - -export interface IPaymasterInterface extends utils.Interface { - functions: { - "postOp(uint8,bytes,uint256)": FunctionFragment; - "validatePaymasterUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: "postOp" | "validatePaymasterUserOp" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "postOp", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "validatePaymasterUserOp", - values: [ - UserOperationStruct, - PromiseOrValue, - PromiseOrValue - ] - ): string; - - decodeFunctionResult(functionFragment: "postOp", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "validatePaymasterUserOp", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IPaymaster extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IPaymasterInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber] & { context: string; validationData: BigNumber } - >; - }; - - filters: {}; - - estimateGas: { - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/account-abstraction/contracts/interfaces/IStakeManager.ts b/src/sdk/contracts/account-abstraction/contracts/interfaces/IStakeManager.ts deleted file mode 100644 index 0766fd7..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/interfaces/IStakeManager.ts +++ /dev/null @@ -1,459 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export declare namespace IStakeManager { - export type DepositInfoStruct = { - deposit: PromiseOrValue; - staked: PromiseOrValue; - stake: PromiseOrValue; - unstakeDelaySec: PromiseOrValue; - withdrawTime: PromiseOrValue; - }; - - export type DepositInfoStructOutput = [ - BigNumber, - boolean, - BigNumber, - number, - number - ] & { - deposit: BigNumber; - staked: boolean; - stake: BigNumber; - unstakeDelaySec: number; - withdrawTime: number; - }; -} - -export interface IStakeManagerInterface extends utils.Interface { - functions: { - "addStake(uint32)": FunctionFragment; - "balanceOf(address)": FunctionFragment; - "depositTo(address)": FunctionFragment; - "getDepositInfo(address)": FunctionFragment; - "unlockStake()": FunctionFragment; - "withdrawStake(address)": FunctionFragment; - "withdrawTo(address,uint256)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addStake" - | "balanceOf" - | "depositTo" - | "getDepositInfo" - | "unlockStake" - | "withdrawStake" - | "withdrawTo" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addStake", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "balanceOf", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "depositTo", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getDepositInfo", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "unlockStake", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "withdrawStake", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "withdrawTo", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult(functionFragment: "addStake", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositTo", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getDepositInfo", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "unlockStake", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "withdrawStake", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "withdrawTo", data: BytesLike): Result; - - events: { - "Deposited(address,uint256)": EventFragment; - "StakeLocked(address,uint256,uint256)": EventFragment; - "StakeUnlocked(address,uint256)": EventFragment; - "StakeWithdrawn(address,address,uint256)": EventFragment; - "Withdrawn(address,address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "Deposited"): EventFragment; - getEvent(nameOrSignatureOrTopic: "StakeLocked"): EventFragment; - getEvent(nameOrSignatureOrTopic: "StakeUnlocked"): EventFragment; - getEvent(nameOrSignatureOrTopic: "StakeWithdrawn"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Withdrawn"): EventFragment; -} - -export interface DepositedEventObject { - account: string; - totalDeposit: BigNumber; -} -export type DepositedEvent = TypedEvent< - [string, BigNumber], - DepositedEventObject ->; - -export type DepositedEventFilter = TypedEventFilter; - -export interface StakeLockedEventObject { - account: string; - totalStaked: BigNumber; - unstakeDelaySec: BigNumber; -} -export type StakeLockedEvent = TypedEvent< - [string, BigNumber, BigNumber], - StakeLockedEventObject ->; - -export type StakeLockedEventFilter = TypedEventFilter; - -export interface StakeUnlockedEventObject { - account: string; - withdrawTime: BigNumber; -} -export type StakeUnlockedEvent = TypedEvent< - [string, BigNumber], - StakeUnlockedEventObject ->; - -export type StakeUnlockedEventFilter = TypedEventFilter; - -export interface StakeWithdrawnEventObject { - account: string; - withdrawAddress: string; - amount: BigNumber; -} -export type StakeWithdrawnEvent = TypedEvent< - [string, string, BigNumber], - StakeWithdrawnEventObject ->; - -export type StakeWithdrawnEventFilter = TypedEventFilter; - -export interface WithdrawnEventObject { - account: string; - withdrawAddress: string; - amount: BigNumber; -} -export type WithdrawnEvent = TypedEvent< - [string, string, BigNumber], - WithdrawnEventObject ->; - -export type WithdrawnEventFilter = TypedEventFilter; - -export interface IStakeManager extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IStakeManagerInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - depositTo( - account: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [IStakeManager.DepositInfoStructOutput] & { - info: IStakeManager.DepositInfoStructOutput; - } - >; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - unlockStake(overrides?: CallOverrides): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "Deposited(address,uint256)"( - account?: PromiseOrValue | null, - totalDeposit?: null - ): DepositedEventFilter; - Deposited( - account?: PromiseOrValue | null, - totalDeposit?: null - ): DepositedEventFilter; - - "StakeLocked(address,uint256,uint256)"( - account?: PromiseOrValue | null, - totalStaked?: null, - unstakeDelaySec?: null - ): StakeLockedEventFilter; - StakeLocked( - account?: PromiseOrValue | null, - totalStaked?: null, - unstakeDelaySec?: null - ): StakeLockedEventFilter; - - "StakeUnlocked(address,uint256)"( - account?: PromiseOrValue | null, - withdrawTime?: null - ): StakeUnlockedEventFilter; - StakeUnlocked( - account?: PromiseOrValue | null, - withdrawTime?: null - ): StakeUnlockedEventFilter; - - "StakeWithdrawn(address,address,uint256)"( - account?: PromiseOrValue | null, - withdrawAddress?: null, - amount?: null - ): StakeWithdrawnEventFilter; - StakeWithdrawn( - account?: PromiseOrValue | null, - withdrawAddress?: null, - amount?: null - ): StakeWithdrawnEventFilter; - - "Withdrawn(address,address,uint256)"( - account?: PromiseOrValue | null, - withdrawAddress?: null, - amount?: null - ): WithdrawnEventFilter; - Withdrawn( - account?: PromiseOrValue | null, - withdrawAddress?: null, - amount?: null - ): WithdrawnEventFilter; - }; - - estimateGas: { - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - addStake( - _unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositTo( - account: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDepositInfo( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawTo( - withdrawAddress: PromiseOrValue, - withdrawAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/account-abstraction/contracts/interfaces/index.ts b/src/sdk/contracts/account-abstraction/contracts/interfaces/index.ts deleted file mode 100644 index e49a4e9..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/interfaces/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { IAccount } from "./IAccount"; -export type { IAggregator } from "./IAggregator"; -export type { IEntryPoint } from "./IEntryPoint"; -export type { INonceManager } from "./INonceManager"; -export type { IPaymaster } from "./IPaymaster"; -export type { IStakeManager } from "./IStakeManager"; diff --git a/src/sdk/contracts/account-abstraction/contracts/samples/callback/TokenCallbackHandler.ts b/src/sdk/contracts/account-abstraction/contracts/samples/callback/TokenCallbackHandler.ts deleted file mode 100644 index 89d0168..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/samples/callback/TokenCallbackHandler.ts +++ /dev/null @@ -1,351 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface TokenCallbackHandlerInterface extends utils.Interface { - functions: { - "onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)": FunctionFragment; - "onERC1155Received(address,address,uint256,uint256,bytes)": FunctionFragment; - "onERC721Received(address,address,uint256,bytes)": FunctionFragment; - "supportsInterface(bytes4)": FunctionFragment; - "tokensReceived(address,address,address,uint256,bytes,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "onERC1155BatchReceived" - | "onERC1155Received" - | "onERC721Received" - | "supportsInterface" - | "tokensReceived" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "onERC1155BatchReceived", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue[], - PromiseOrValue[], - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "onERC1155Received", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "onERC721Received", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "supportsInterface", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "tokensReceived", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - - decodeFunctionResult( - functionFragment: "onERC1155BatchReceived", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "onERC1155Received", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "onERC721Received", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "supportsInterface", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "tokensReceived", - data: BytesLike - ): Result; - - events: {}; -} - -export interface TokenCallbackHandler extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: TokenCallbackHandlerInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - onERC1155BatchReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue[], - arg3: PromiseOrValue[], - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - onERC1155Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - onERC721Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - tokensReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[void]>; - }; - - onERC1155BatchReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue[], - arg3: PromiseOrValue[], - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC1155Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC721Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - tokensReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - callStatic: { - onERC1155BatchReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue[], - arg3: PromiseOrValue[], - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC1155Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC721Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - tokensReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - onERC1155BatchReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue[], - arg3: PromiseOrValue[], - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC1155Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC721Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - tokensReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - onERC1155BatchReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue[], - arg3: PromiseOrValue[], - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC1155Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC721Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - tokensReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; -} diff --git a/src/sdk/contracts/account-abstraction/contracts/samples/callback/index.ts b/src/sdk/contracts/account-abstraction/contracts/samples/callback/index.ts deleted file mode 100644 index 3806db9..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/samples/callback/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { TokenCallbackHandler } from "./TokenCallbackHandler"; diff --git a/src/sdk/contracts/account-abstraction/contracts/samples/index.ts b/src/sdk/contracts/account-abstraction/contracts/samples/index.ts deleted file mode 100644 index 3b69c53..0000000 --- a/src/sdk/contracts/account-abstraction/contracts/samples/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as callback from "./callback"; -export type { callback }; diff --git a/src/sdk/contracts/account-abstraction/index.ts b/src/sdk/contracts/account-abstraction/index.ts deleted file mode 100644 index a11e4ca..0000000 --- a/src/sdk/contracts/account-abstraction/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as contracts from "./contracts"; -export type { contracts }; diff --git a/src/sdk/contracts/common.ts b/src/sdk/contracts/common.ts deleted file mode 100644 index 4c90b08..0000000 --- a/src/sdk/contracts/common.ts +++ /dev/null @@ -1,46 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { Listener } from "@ethersproject/providers"; -import type { Event, EventFilter } from "ethers"; - -export interface TypedEvent< - TArgsArray extends Array = any, - TArgsObject = any -> extends Event { - args: TArgsArray & TArgsObject; -} - -export interface TypedEventFilter<_TEvent extends TypedEvent> - extends EventFilter {} - -export interface TypedListener { - (...listenerArg: [...__TypechainArgsArray, TEvent]): void; -} - -type __TypechainArgsArray = T extends TypedEvent ? U : never; - -export interface OnEvent { - ( - eventFilter: TypedEventFilter, - listener: TypedListener - ): TRes; - (eventName: string, listener: Listener): TRes; -} - -export type MinEthersFactory = { - deploy(...a: ARGS[]): Promise; -}; - -export type GetContractTypeFromFactory = F extends MinEthersFactory< - infer C, - any -> - ? C - : never; - -export type GetARGsTypeFromFactory = F extends MinEthersFactory - ? Parameters - : never; - -export type PromiseOrValue = T | Promise; diff --git a/src/sdk/contracts/erc7579-ref-impl/index.ts b/src/sdk/contracts/erc7579-ref-impl/index.ts deleted file mode 100644 index ccf9a6e..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as lib from "./lib"; -export type { lib }; -import type * as src from "./src"; -export type { src }; diff --git a/src/sdk/contracts/erc7579-ref-impl/lib/index.ts b/src/sdk/contracts/erc7579-ref-impl/lib/index.ts deleted file mode 100644 index 6373c8d..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/lib/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as sentinellist from "./sentinellist"; -export type { sentinellist }; -import type * as solady from "./solady"; -export type { solady }; diff --git a/src/sdk/contracts/erc7579-ref-impl/lib/sentinellist/index.ts b/src/sdk/contracts/erc7579-ref-impl/lib/sentinellist/index.ts deleted file mode 100644 index f68cafe..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/lib/sentinellist/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as src from "./src"; -export type { src }; diff --git a/src/sdk/contracts/erc7579-ref-impl/lib/sentinellist/src/SentinelList.sol/SentinelListLib.ts b/src/sdk/contracts/erc7579-ref-impl/lib/sentinellist/src/SentinelList.sol/SentinelListLib.ts deleted file mode 100644 index 6019541..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/lib/sentinellist/src/SentinelList.sol/SentinelListLib.ts +++ /dev/null @@ -1,56 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { BaseContract, Signer, utils } from "ethers"; - -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../../common"; - -export interface SentinelListLibInterface extends utils.Interface { - functions: {}; - - events: {}; -} - -export interface SentinelListLib extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: SentinelListLibInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: {}; - - callStatic: {}; - - filters: {}; - - estimateGas: {}; - - populateTransaction: {}; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/lib/sentinellist/src/SentinelList.sol/index.ts b/src/sdk/contracts/erc7579-ref-impl/lib/sentinellist/src/SentinelList.sol/index.ts deleted file mode 100644 index b5fb2d7..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/lib/sentinellist/src/SentinelList.sol/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { SentinelListLib } from "./SentinelListLib"; diff --git a/src/sdk/contracts/erc7579-ref-impl/lib/sentinellist/src/index.ts b/src/sdk/contracts/erc7579-ref-impl/lib/sentinellist/src/index.ts deleted file mode 100644 index b2f907a..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/lib/sentinellist/src/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as sentinelListSol from "./SentinelList.sol"; -export type { sentinelListSol }; diff --git a/src/sdk/contracts/erc7579-ref-impl/lib/solady/index.ts b/src/sdk/contracts/erc7579-ref-impl/lib/solady/index.ts deleted file mode 100644 index f68cafe..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/lib/solady/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as src from "./src"; -export type { src }; diff --git a/src/sdk/contracts/erc7579-ref-impl/lib/solady/src/index.ts b/src/sdk/contracts/erc7579-ref-impl/lib/solady/src/index.ts deleted file mode 100644 index 74cdc5f..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/lib/solady/src/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as utils from "./utils"; -export type { utils }; diff --git a/src/sdk/contracts/erc7579-ref-impl/lib/solady/src/utils/ECDSA.ts b/src/sdk/contracts/erc7579-ref-impl/lib/solady/src/utils/ECDSA.ts deleted file mode 100644 index 8833243..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/lib/solady/src/utils/ECDSA.ts +++ /dev/null @@ -1,56 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { BaseContract, Signer, utils } from "ethers"; - -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../../common"; - -export interface ECDSAInterface extends utils.Interface { - functions: {}; - - events: {}; -} - -export interface ECDSA extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: ECDSAInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: {}; - - callStatic: {}; - - filters: {}; - - estimateGas: {}; - - populateTransaction: {}; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/lib/solady/src/utils/LibClone.ts b/src/sdk/contracts/erc7579-ref-impl/lib/solady/src/utils/LibClone.ts deleted file mode 100644 index 7f441f6..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/lib/solady/src/utils/LibClone.ts +++ /dev/null @@ -1,56 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { BaseContract, Signer, utils } from "ethers"; - -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../../common"; - -export interface LibCloneInterface extends utils.Interface { - functions: {}; - - events: {}; -} - -export interface LibClone extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: LibCloneInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: {}; - - callStatic: {}; - - filters: {}; - - estimateGas: {}; - - populateTransaction: {}; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/lib/solady/src/utils/index.ts b/src/sdk/contracts/erc7579-ref-impl/lib/solady/src/utils/index.ts deleted file mode 100644 index 6cd28a3..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/lib/solady/src/utils/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { ECDSA } from "./ECDSA"; -export type { LibClone } from "./LibClone"; diff --git a/src/sdk/contracts/erc7579-ref-impl/src/core/AccountBase.ts b/src/sdk/contracts/erc7579-ref-impl/src/core/AccountBase.ts deleted file mode 100644 index 34232a3..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/core/AccountBase.ts +++ /dev/null @@ -1,85 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export interface AccountBaseInterface extends utils.Interface { - functions: { - "entryPoint()": FunctionFragment; - }; - - getFunction(nameOrSignatureOrTopic: "entryPoint"): FunctionFragment; - - encodeFunctionData( - functionFragment: "entryPoint", - values?: undefined - ): string; - - decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result; - - events: {}; -} - -export interface AccountBase extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: AccountBaseInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - entryPoint(overrides?: CallOverrides): Promise<[string]>; - }; - - entryPoint(overrides?: CallOverrides): Promise; - - callStatic: { - entryPoint(overrides?: CallOverrides): Promise; - }; - - filters: {}; - - estimateGas: { - entryPoint(overrides?: CallOverrides): Promise; - }; - - populateTransaction: { - entryPoint(overrides?: CallOverrides): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/core/Fallback.ts b/src/sdk/contracts/erc7579-ref-impl/src/core/Fallback.ts deleted file mode 100644 index 606752e..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/core/Fallback.ts +++ /dev/null @@ -1,520 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export interface FallbackInterface extends utils.Interface { - functions: { - "entryPoint()": FunctionFragment; - "installExecutor(address,bytes)": FunctionFragment; - "installFallback(address,bytes)": FunctionFragment; - "installValidator(address,bytes)": FunctionFragment; - "isExecutorInstalled(address)": FunctionFragment; - "isFallbackInstalled(address)": FunctionFragment; - "isValidatorInstalled(address)": FunctionFragment; - "uninstallExecutor(address,bytes)": FunctionFragment; - "uninstallFallback(address,bytes)": FunctionFragment; - "uninstallValidator(address,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "entryPoint" - | "installExecutor" - | "installFallback" - | "installValidator" - | "isExecutorInstalled" - | "isFallbackInstalled" - | "isValidatorInstalled" - | "uninstallExecutor" - | "uninstallFallback" - | "uninstallValidator" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "entryPoint", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "installExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isExecutorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isFallbackInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidatorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "installExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installValidator", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isExecutorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isFallbackInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isValidatorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallValidator", - data: BytesLike - ): Result; - - events: { - "DisableExecutor(address)": EventFragment; - "DisableValidator(address)": EventFragment; - "EnableExecutor(address)": EventFragment; - "EnableValidator(address)": EventFragment; - "FallbackHandlerChanged(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "DisableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "DisableValidator"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableValidator"): EventFragment; - getEvent(nameOrSignatureOrTopic: "FallbackHandlerChanged"): EventFragment; -} - -export interface DisableExecutorEventObject { - module: string; -} -export type DisableExecutorEvent = TypedEvent< - [string], - DisableExecutorEventObject ->; - -export type DisableExecutorEventFilter = TypedEventFilter; - -export interface DisableValidatorEventObject { - module: string; -} -export type DisableValidatorEvent = TypedEvent< - [string], - DisableValidatorEventObject ->; - -export type DisableValidatorEventFilter = - TypedEventFilter; - -export interface EnableExecutorEventObject { - module: string; -} -export type EnableExecutorEvent = TypedEvent< - [string], - EnableExecutorEventObject ->; - -export type EnableExecutorEventFilter = TypedEventFilter; - -export interface EnableValidatorEventObject { - module: string; -} -export type EnableValidatorEvent = TypedEvent< - [string], - EnableValidatorEventObject ->; - -export type EnableValidatorEventFilter = TypedEventFilter; - -export interface FallbackHandlerChangedEventObject { - handler: string; -} -export type FallbackHandlerChangedEvent = TypedEvent< - [string], - FallbackHandlerChangedEventObject ->; - -export type FallbackHandlerChangedEventFilter = - TypedEventFilter; - -export interface Fallback extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: FallbackInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - entryPoint(overrides?: CallOverrides): Promise<[string]>; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean] & { enabled: boolean }>; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - arg0: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - entryPoint(overrides?: CallOverrides): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - arg0: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - entryPoint(overrides?: CallOverrides): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallFallback( - arg0: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "DisableExecutor(address)"(module?: null): DisableExecutorEventFilter; - DisableExecutor(module?: null): DisableExecutorEventFilter; - - "DisableValidator(address)"(module?: null): DisableValidatorEventFilter; - DisableValidator(module?: null): DisableValidatorEventFilter; - - "EnableExecutor(address)"(module?: null): EnableExecutorEventFilter; - EnableExecutor(module?: null): EnableExecutorEventFilter; - - "EnableValidator(address)"(module?: null): EnableValidatorEventFilter; - EnableValidator(module?: null): EnableValidatorEventFilter; - - "FallbackHandlerChanged(address)"( - handler?: null - ): FallbackHandlerChangedEventFilter; - FallbackHandlerChanged(handler?: null): FallbackHandlerChangedEventFilter; - }; - - estimateGas: { - entryPoint(overrides?: CallOverrides): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - arg0: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - entryPoint(overrides?: CallOverrides): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - arg0: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/core/ModuleManager.ts b/src/sdk/contracts/erc7579-ref-impl/src/core/ModuleManager.ts deleted file mode 100644 index da74485..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/core/ModuleManager.ts +++ /dev/null @@ -1,618 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export interface ModuleManagerInterface extends utils.Interface { - functions: { - "entryPoint()": FunctionFragment; - "getExecutorsPaginated(address,uint256)": FunctionFragment; - "getValidatorPaginated(address,uint256)": FunctionFragment; - "installExecutor(address,bytes)": FunctionFragment; - "installFallback(address,bytes)": FunctionFragment; - "installValidator(address,bytes)": FunctionFragment; - "isExecutorInstalled(address)": FunctionFragment; - "isFallbackInstalled(address)": FunctionFragment; - "isValidatorInstalled(address)": FunctionFragment; - "supportsInterface(bytes4)": FunctionFragment; - "uninstallExecutor(address,bytes)": FunctionFragment; - "uninstallFallback(address,bytes)": FunctionFragment; - "uninstallValidator(address,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "entryPoint" - | "getExecutorsPaginated" - | "getValidatorPaginated" - | "installExecutor" - | "installFallback" - | "installValidator" - | "isExecutorInstalled" - | "isFallbackInstalled" - | "isValidatorInstalled" - | "supportsInterface" - | "uninstallExecutor" - | "uninstallFallback" - | "uninstallValidator" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "entryPoint", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getExecutorsPaginated", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getValidatorPaginated", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isExecutorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isFallbackInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidatorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "supportsInterface", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getExecutorsPaginated", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getValidatorPaginated", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installValidator", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isExecutorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isFallbackInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isValidatorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "supportsInterface", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallValidator", - data: BytesLike - ): Result; - - events: { - "DisableExecutor(address)": EventFragment; - "DisableValidator(address)": EventFragment; - "EnableExecutor(address)": EventFragment; - "EnableValidator(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "DisableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "DisableValidator"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableValidator"): EventFragment; -} - -export interface DisableExecutorEventObject { - module: string; -} -export type DisableExecutorEvent = TypedEvent< - [string], - DisableExecutorEventObject ->; - -export type DisableExecutorEventFilter = TypedEventFilter; - -export interface DisableValidatorEventObject { - module: string; -} -export type DisableValidatorEvent = TypedEvent< - [string], - DisableValidatorEventObject ->; - -export type DisableValidatorEventFilter = - TypedEventFilter; - -export interface EnableExecutorEventObject { - module: string; -} -export type EnableExecutorEvent = TypedEvent< - [string], - EnableExecutorEventObject ->; - -export type EnableExecutorEventFilter = TypedEventFilter; - -export interface EnableValidatorEventObject { - module: string; -} -export type EnableValidatorEvent = TypedEvent< - [string], - EnableValidatorEventObject ->; - -export type EnableValidatorEventFilter = TypedEventFilter; - -export interface ModuleManager extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: ModuleManagerInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - entryPoint(overrides?: CallOverrides): Promise<[string]>; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - supportsInterface( - interfaceID: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - entryPoint(overrides?: CallOverrides): Promise; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - entryPoint(overrides?: CallOverrides): Promise; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "DisableExecutor(address)"(module?: null): DisableExecutorEventFilter; - DisableExecutor(module?: null): DisableExecutorEventFilter; - - "DisableValidator(address)"(module?: null): DisableValidatorEventFilter; - DisableValidator(module?: null): DisableValidatorEventFilter; - - "EnableExecutor(address)"(module?: null): EnableExecutorEventFilter; - EnableExecutor(module?: null): EnableExecutorEventFilter; - - "EnableValidator(address)"(module?: null): EnableValidatorEventFilter; - EnableValidator(module?: null): EnableValidatorEventFilter; - }; - - estimateGas: { - entryPoint(overrides?: CallOverrides): Promise; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - entryPoint(overrides?: CallOverrides): Promise; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/core/index.ts b/src/sdk/contracts/erc7579-ref-impl/src/core/index.ts deleted file mode 100644 index 8c8c989..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/core/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { AccountBase } from "./AccountBase"; -export type { Fallback } from "./Fallback"; -export type { ModuleManager } from "./ModuleManager"; diff --git a/src/sdk/contracts/erc7579-ref-impl/src/index.ts b/src/sdk/contracts/erc7579-ref-impl/src/index.ts deleted file mode 100644 index 6b9d26f..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as core from "./core"; -export type { core }; -import type * as interfaces from "./interfaces"; -export type { interfaces }; diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IERC4337.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IERC4337.ts deleted file mode 100644 index 3a10e4a..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IERC4337.ts +++ /dev/null @@ -1,162 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export declare namespace IERC4337 { - export type UserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - callGasLimit: PromiseOrValue; - verificationGasLimit: PromiseOrValue; - preVerificationGas: PromiseOrValue; - maxFeePerGas: PromiseOrValue; - maxPriorityFeePerGas: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; - }; - - export type UserOperationStructOutput = [ - string, - BigNumber, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - string - ] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - callGasLimit: BigNumber; - verificationGasLimit: BigNumber; - preVerificationGas: BigNumber; - maxFeePerGas: BigNumber; - maxPriorityFeePerGas: BigNumber; - paymasterAndData: string; - signature: string; - }; -} - -export interface IERC4337Interface extends utils.Interface { - functions: { - "validateUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)": FunctionFragment; - }; - - getFunction(nameOrSignatureOrTopic: "validateUserOp"): FunctionFragment; - - encodeFunctionData( - functionFragment: "validateUserOp", - values: [ - IERC4337.UserOperationStruct, - PromiseOrValue, - PromiseOrValue - ] - ): string; - - decodeFunctionResult( - functionFragment: "validateUserOp", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IERC4337 extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IERC4337Interface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IAccountConfig.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IAccountConfig.ts deleted file mode 100644 index faa61b4..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IAccountConfig.ts +++ /dev/null @@ -1,485 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IAccountConfigInterface extends utils.Interface { - functions: { - "installExecutor(address,bytes)": FunctionFragment; - "installFallback(address,bytes)": FunctionFragment; - "installValidator(address,bytes)": FunctionFragment; - "isExecutorInstalled(address)": FunctionFragment; - "isFallbackInstalled(address)": FunctionFragment; - "isValidatorInstalled(address)": FunctionFragment; - "uninstallExecutor(address,bytes)": FunctionFragment; - "uninstallFallback(address,bytes)": FunctionFragment; - "uninstallValidator(address,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "installExecutor" - | "installFallback" - | "installValidator" - | "isExecutorInstalled" - | "isFallbackInstalled" - | "isValidatorInstalled" - | "uninstallExecutor" - | "uninstallFallback" - | "uninstallValidator" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "installExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isExecutorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isFallbackInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidatorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "installExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installValidator", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isExecutorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isFallbackInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isValidatorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallValidator", - data: BytesLike - ): Result; - - events: { - "DisableExecutor(address)": EventFragment; - "DisableValidator(address)": EventFragment; - "EnableExecutor(address)": EventFragment; - "EnableValidator(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "DisableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "DisableValidator"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableValidator"): EventFragment; -} - -export interface DisableExecutorEventObject { - module: string; -} -export type DisableExecutorEvent = TypedEvent< - [string], - DisableExecutorEventObject ->; - -export type DisableExecutorEventFilter = TypedEventFilter; - -export interface DisableValidatorEventObject { - module: string; -} -export type DisableValidatorEvent = TypedEvent< - [string], - DisableValidatorEventObject ->; - -export type DisableValidatorEventFilter = - TypedEventFilter; - -export interface EnableExecutorEventObject { - module: string; -} -export type EnableExecutorEvent = TypedEvent< - [string], - EnableExecutorEventObject ->; - -export type EnableExecutorEventFilter = TypedEventFilter; - -export interface EnableValidatorEventObject { - module: string; -} -export type EnableValidatorEvent = TypedEvent< - [string], - EnableValidatorEventObject ->; - -export type EnableValidatorEventFilter = TypedEventFilter; - -export interface IAccountConfig extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IAccountConfigInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "DisableExecutor(address)"(module?: null): DisableExecutorEventFilter; - DisableExecutor(module?: null): DisableExecutorEventFilter; - - "DisableValidator(address)"(module?: null): DisableValidatorEventFilter; - DisableValidator(module?: null): DisableValidatorEventFilter; - - "EnableExecutor(address)"(module?: null): EnableExecutorEventFilter; - EnableExecutor(module?: null): EnableExecutorEventFilter; - - "EnableValidator(address)"(module?: null): EnableValidatorEventFilter; - EnableValidator(module?: null): EnableValidatorEventFilter; - }; - - estimateGas: { - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IAccountConfig_Hook.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IAccountConfig_Hook.ts deleted file mode 100644 index ff54a52..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IAccountConfig_Hook.ts +++ /dev/null @@ -1,215 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IAccountConfig_HookInterface extends utils.Interface { - functions: { - "installHook(address,bytes)": FunctionFragment; - "isHookInstalled(address)": FunctionFragment; - "uninstallHook(address,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: "installHook" | "isHookInstalled" | "uninstallHook" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "installHook", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isHookInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallHook", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "installHook", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isHookInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallHook", - data: BytesLike - ): Result; - - events: { - "DisableHook(address)": EventFragment; - "EnableHook(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "DisableHook"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableHook"): EventFragment; -} - -export interface DisableHookEventObject { - module: string; -} -export type DisableHookEvent = TypedEvent<[string], DisableHookEventObject>; - -export type DisableHookEventFilter = TypedEventFilter; - -export interface EnableHookEventObject { - module: string; -} -export type EnableHookEvent = TypedEvent<[string], EnableHookEventObject>; - -export type EnableHookEventFilter = TypedEventFilter; - -export interface IAccountConfig_Hook extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IAccountConfig_HookInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - installHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isHookInstalled( - hook: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - uninstallHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - installHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isHookInstalled( - hook: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - installHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isHookInstalled( - hook: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "DisableHook(address)"(module?: null): DisableHookEventFilter; - DisableHook(module?: null): DisableHookEventFilter; - - "EnableHook(address)"(module?: null): EnableHookEventFilter; - EnableHook(module?: null): EnableHookEventFilter; - }; - - estimateGas: { - installHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isHookInstalled( - hook: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - installHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isHookInstalled( - hook: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IExecution.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IExecution.ts deleted file mode 100644 index 13fc3c2..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IExecution.ts +++ /dev/null @@ -1,253 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export declare namespace IExecution { - export type ExecutionStruct = { - target: PromiseOrValue; - value: PromiseOrValue; - callData: PromiseOrValue; - }; - - export type ExecutionStructOutput = [string, BigNumber, string] & { - target: string; - value: BigNumber; - callData: string; - }; -} - -export interface IExecutionInterface extends utils.Interface { - functions: { - "execute(address,uint256,bytes)": FunctionFragment; - "executeBatch((address,uint256,bytes)[])": FunctionFragment; - "executeBatchFromExecutor((address,uint256,bytes)[])": FunctionFragment; - "executeFromExecutor(address,uint256,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "execute" - | "executeBatch" - | "executeBatchFromExecutor" - | "executeFromExecutor" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "execute", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "executeBatch", - values: [IExecution.ExecutionStruct[]] - ): string; - encodeFunctionData( - functionFragment: "executeBatchFromExecutor", - values: [IExecution.ExecutionStruct[]] - ): string; - encodeFunctionData( - functionFragment: "executeFromExecutor", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "executeBatch", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeBatchFromExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeFromExecutor", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IExecution extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IExecutionInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: CallOverrides - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: CallOverrides - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IExecutionUnsafe.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IExecutionUnsafe.ts deleted file mode 100644 index 21a108f..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IExecutionUnsafe.ts +++ /dev/null @@ -1,153 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IExecutionUnsafeInterface extends utils.Interface { - functions: { - "executeDelegateCall(address,bytes)": FunctionFragment; - "executeDelegateCallFromExecutor(address,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "executeDelegateCall" - | "executeDelegateCallFromExecutor" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "executeDelegateCall", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "executeDelegateCallFromExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "executeDelegateCall", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeDelegateCallFromExecutor", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IExecutionUnsafe extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IExecutionUnsafeInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IMSA.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IMSA.ts deleted file mode 100644 index 00a17c1..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/IMSA.ts +++ /dev/null @@ -1,781 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export declare namespace IExecution { - export type ExecutionStruct = { - target: PromiseOrValue; - value: PromiseOrValue; - callData: PromiseOrValue; - }; - - export type ExecutionStructOutput = [string, BigNumber, string] & { - target: string; - value: BigNumber; - callData: string; - }; -} - -export interface IMSAInterface extends utils.Interface { - functions: { - "execute(address,uint256,bytes)": FunctionFragment; - "executeBatch((address,uint256,bytes)[])": FunctionFragment; - "executeBatchFromExecutor((address,uint256,bytes)[])": FunctionFragment; - "executeDelegateCall(address,bytes)": FunctionFragment; - "executeDelegateCallFromExecutor(address,bytes)": FunctionFragment; - "executeFromExecutor(address,uint256,bytes)": FunctionFragment; - "initializeAccount(bytes)": FunctionFragment; - "installExecutor(address,bytes)": FunctionFragment; - "installFallback(address,bytes)": FunctionFragment; - "installValidator(address,bytes)": FunctionFragment; - "isExecutorInstalled(address)": FunctionFragment; - "isFallbackInstalled(address)": FunctionFragment; - "isValidatorInstalled(address)": FunctionFragment; - "uninstallExecutor(address,bytes)": FunctionFragment; - "uninstallFallback(address,bytes)": FunctionFragment; - "uninstallValidator(address,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "execute" - | "executeBatch" - | "executeBatchFromExecutor" - | "executeDelegateCall" - | "executeDelegateCallFromExecutor" - | "executeFromExecutor" - | "initializeAccount" - | "installExecutor" - | "installFallback" - | "installValidator" - | "isExecutorInstalled" - | "isFallbackInstalled" - | "isValidatorInstalled" - | "uninstallExecutor" - | "uninstallFallback" - | "uninstallValidator" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "execute", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "executeBatch", - values: [IExecution.ExecutionStruct[]] - ): string; - encodeFunctionData( - functionFragment: "executeBatchFromExecutor", - values: [IExecution.ExecutionStruct[]] - ): string; - encodeFunctionData( - functionFragment: "executeDelegateCall", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "executeDelegateCallFromExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "executeFromExecutor", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "initializeAccount", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isExecutorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isFallbackInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidatorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "executeBatch", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeBatchFromExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeDelegateCall", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeDelegateCallFromExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeFromExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "initializeAccount", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installValidator", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isExecutorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isFallbackInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isValidatorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallValidator", - data: BytesLike - ): Result; - - events: { - "DisableExecutor(address)": EventFragment; - "DisableValidator(address)": EventFragment; - "EnableExecutor(address)": EventFragment; - "EnableValidator(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "DisableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "DisableValidator"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableValidator"): EventFragment; -} - -export interface DisableExecutorEventObject { - module: string; -} -export type DisableExecutorEvent = TypedEvent< - [string], - DisableExecutorEventObject ->; - -export type DisableExecutorEventFilter = TypedEventFilter; - -export interface DisableValidatorEventObject { - module: string; -} -export type DisableValidatorEvent = TypedEvent< - [string], - DisableValidatorEventObject ->; - -export type DisableValidatorEventFilter = - TypedEventFilter; - -export interface EnableExecutorEventObject { - module: string; -} -export type EnableExecutorEvent = TypedEvent< - [string], - EnableExecutorEventObject ->; - -export type EnableExecutorEventFilter = TypedEventFilter; - -export interface EnableValidatorEventObject { - module: string; -} -export type EnableValidatorEvent = TypedEvent< - [string], - EnableValidatorEventObject ->; - -export type EnableValidatorEventFilter = TypedEventFilter; - -export interface IMSA extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IMSAInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: CallOverrides - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: CallOverrides - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "DisableExecutor(address)"(module?: null): DisableExecutorEventFilter; - DisableExecutor(module?: null): DisableExecutorEventFilter; - - "DisableValidator(address)"(module?: null): DisableValidatorEventFilter; - DisableValidator(module?: null): DisableValidatorEventFilter; - - "EnableExecutor(address)"(module?: null): EnableExecutorEventFilter; - EnableExecutor(module?: null): EnableExecutorEventFilter; - - "EnableValidator(address)"(module?: null): EnableValidatorEventFilter; - EnableValidator(module?: null): EnableValidatorEventFilter; - }; - - estimateGas: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/index.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/index.ts deleted file mode 100644 index 15c12fd..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IMSA.sol/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { IAccountConfig } from "./IAccountConfig"; -export type { IAccountConfig_Hook } from "./IAccountConfig_Hook"; -export type { IExecution } from "./IExecution"; -export type { IExecutionUnsafe } from "./IExecutionUnsafe"; -export type { IMSA } from "./IMSA"; diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IExecutor.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IExecutor.ts deleted file mode 100644 index 63431d9..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IExecutor.ts +++ /dev/null @@ -1,173 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IExecutorInterface extends utils.Interface { - functions: { - "isModuleType(uint256)": FunctionFragment; - "onInstall(bytes)": FunctionFragment; - "onUninstall(bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: "isModuleType" | "onInstall" | "onUninstall" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "isModuleType", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "onInstall", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "onUninstall", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "isModuleType", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "onInstall", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "onUninstall", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IExecutor extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IExecutorInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IFallback.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IFallback.ts deleted file mode 100644 index ba326b0..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IFallback.ts +++ /dev/null @@ -1,173 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IFallbackInterface extends utils.Interface { - functions: { - "isModuleType(uint256)": FunctionFragment; - "onInstall(bytes)": FunctionFragment; - "onUninstall(bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: "isModuleType" | "onInstall" | "onUninstall" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "isModuleType", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "onInstall", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "onUninstall", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "isModuleType", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "onInstall", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "onUninstall", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IFallback extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IFallbackInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IHook.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IHook.ts deleted file mode 100644 index ac437b7..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IHook.ts +++ /dev/null @@ -1,245 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IHookInterface extends utils.Interface { - functions: { - "isModuleType(uint256)": FunctionFragment; - "onInstall(bytes)": FunctionFragment; - "onUninstall(bytes)": FunctionFragment; - "postCheck(bytes)": FunctionFragment; - "preCheck(address,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "isModuleType" - | "onInstall" - | "onUninstall" - | "postCheck" - | "preCheck" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "isModuleType", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "onInstall", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "onUninstall", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "postCheck", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "preCheck", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "isModuleType", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "onInstall", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "onUninstall", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "postCheck", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "preCheck", data: BytesLike): Result; - - events: {}; -} - -export interface IHook extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IHookInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - postCheck( - hookData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - preCheck( - msgSender: PromiseOrValue, - msgData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - postCheck( - hookData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - preCheck( - msgSender: PromiseOrValue, - msgData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - postCheck( - hookData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - preCheck( - msgSender: PromiseOrValue, - msgData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - postCheck( - hookData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - preCheck( - msgSender: PromiseOrValue, - msgData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - postCheck( - hookData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - preCheck( - msgSender: PromiseOrValue, - msgData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IModule.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IModule.ts deleted file mode 100644 index 077bbcc..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IModule.ts +++ /dev/null @@ -1,173 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IModuleInterface extends utils.Interface { - functions: { - "isModuleType(uint256)": FunctionFragment; - "onInstall(bytes)": FunctionFragment; - "onUninstall(bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: "isModuleType" | "onInstall" | "onUninstall" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "isModuleType", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "onInstall", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "onUninstall", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "isModuleType", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "onInstall", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "onUninstall", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IModule extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IModuleInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IValidator.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IValidator.ts deleted file mode 100644 index d354b82..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/IValidator.ts +++ /dev/null @@ -1,307 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export declare namespace IERC4337 { - export type UserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - callGasLimit: PromiseOrValue; - verificationGasLimit: PromiseOrValue; - preVerificationGas: PromiseOrValue; - maxFeePerGas: PromiseOrValue; - maxPriorityFeePerGas: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; - }; - - export type UserOperationStructOutput = [ - string, - BigNumber, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - string - ] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - callGasLimit: BigNumber; - verificationGasLimit: BigNumber; - preVerificationGas: BigNumber; - maxFeePerGas: BigNumber; - maxPriorityFeePerGas: BigNumber; - paymasterAndData: string; - signature: string; - }; -} - -export interface IValidatorInterface extends utils.Interface { - functions: { - "isModuleType(uint256)": FunctionFragment; - "isValidSignatureWithSender(address,bytes32,bytes)": FunctionFragment; - "onInstall(bytes)": FunctionFragment; - "onUninstall(bytes)": FunctionFragment; - "validateUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "isModuleType" - | "isValidSignatureWithSender" - | "onInstall" - | "onUninstall" - | "validateUserOp" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "isModuleType", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidSignatureWithSender", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "onInstall", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "onUninstall", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "validateUserOp", - values: [IERC4337.UserOperationStruct, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "isModuleType", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isValidSignatureWithSender", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "onInstall", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "onUninstall", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "validateUserOp", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IValidator extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IValidatorInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/index.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/index.ts deleted file mode 100644 index 033ae1d..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/IModule.sol/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { IExecutor } from "./IExecutor"; -export type { IFallback } from "./IFallback"; -export type { IHook } from "./IHook"; -export type { IModule } from "./IModule"; -export type { IValidator } from "./IValidator"; diff --git a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/index.ts b/src/sdk/contracts/erc7579-ref-impl/src/interfaces/index.ts deleted file mode 100644 index a22eb03..0000000 --- a/src/sdk/contracts/erc7579-ref-impl/src/interfaces/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as imsaSol from "./IMSA.sol"; -export type { imsaSol }; -import type * as iModuleSol from "./IModule.sol"; -export type { iModuleSol }; -export type { IERC4337 } from "./IERC4337"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/access/Ownable__factory.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/access/Ownable__factory.ts deleted file mode 100644 index fa14718..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/access/Ownable__factory.ts +++ /dev/null @@ -1,78 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - Ownable, - OwnableInterface, -} from "../../../../@openzeppelin/contracts/access/Ownable"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class Ownable__factory { - static readonly abi = _abi; - static createInterface(): OwnableInterface { - return new utils.Interface(_abi) as OwnableInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): Ownable { - return new Contract(address, _abi, signerOrProvider) as Ownable; - } -} diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/access/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/access/index.ts deleted file mode 100644 index e332ae3..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/access/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { Ownable__factory } from "./Ownable__factory"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/index.ts deleted file mode 100644 index cacd2b7..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as access from "./access"; -export * as interfaces from "./interfaces"; -export * as proxy from "./proxy"; -export * as token from "./token"; -export * as utils from "./utils"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.ts deleted file mode 100644 index 38cecf5..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.ts +++ /dev/null @@ -1,71 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IERC1967, - IERC1967Interface, -} from "../../../../@openzeppelin/contracts/interfaces/IERC1967"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "previousAdmin", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newAdmin", - type: "address", - }, - ], - name: "AdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "beacon", - type: "address", - }, - ], - name: "BeaconUpgraded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, -] as const; - -export class IERC1967__factory { - static readonly abi = _abi; - static createInterface(): IERC1967Interface { - return new utils.Interface(_abi) as IERC1967Interface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IERC1967 { - return new Contract(address, _abi, signerOrProvider) as IERC1967; - } -} diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.ts deleted file mode 100644 index d4d9218..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.ts +++ /dev/null @@ -1,39 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IERC1822Proxiable, - IERC1822ProxiableInterface, -} from "../../../../../@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable"; - -const _abi = [ - { - inputs: [], - name: "proxiableUUID", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; - -export class IERC1822Proxiable__factory { - static readonly abi = _abi; - static createInterface(): IERC1822ProxiableInterface { - return new utils.Interface(_abi) as IERC1822ProxiableInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IERC1822Proxiable { - return new Contract(address, _abi, signerOrProvider) as IERC1822Proxiable; - } -} diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts deleted file mode 100644 index ecca133..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { IERC1822Proxiable__factory } from "./IERC1822Proxiable__factory"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/interfaces/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/interfaces/index.ts deleted file mode 100644 index 09337a9..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/interfaces/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as draftIerc1822Sol from "./draft-IERC1822.sol"; -export { IERC1967__factory } from "./IERC1967__factory"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade__factory.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade__factory.ts deleted file mode 100644 index 384b7f6..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade__factory.ts +++ /dev/null @@ -1,71 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - ERC1967Upgrade, - ERC1967UpgradeInterface, -} from "../../../../../@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "previousAdmin", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newAdmin", - type: "address", - }, - ], - name: "AdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "beacon", - type: "address", - }, - ], - name: "BeaconUpgraded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, -] as const; - -export class ERC1967Upgrade__factory { - static readonly abi = _abi; - static createInterface(): ERC1967UpgradeInterface { - return new utils.Interface(_abi) as ERC1967UpgradeInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): ERC1967Upgrade { - return new Contract(address, _abi, signerOrProvider) as ERC1967Upgrade; - } -} diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts deleted file mode 100644 index 6c9ac13..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { ERC1967Upgrade__factory } from "./ERC1967Upgrade__factory"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.ts deleted file mode 100644 index 1aeed20..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.ts +++ /dev/null @@ -1,39 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IBeacon, - IBeaconInterface, -} from "../../../../../@openzeppelin/contracts/proxy/beacon/IBeacon"; - -const _abi = [ - { - inputs: [], - name: "implementation", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; - -export class IBeacon__factory { - static readonly abi = _abi; - static createInterface(): IBeaconInterface { - return new utils.Interface(_abi) as IBeaconInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IBeacon { - return new Contract(address, _abi, signerOrProvider) as IBeacon; - } -} diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/beacon/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/beacon/index.ts deleted file mode 100644 index 4a9d628..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/beacon/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { IBeacon__factory } from "./IBeacon__factory"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/index.ts deleted file mode 100644 index 4ac4c84..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as erc1967 from "./ERC1967"; -export * as beacon from "./beacon"; -export * as utils from "./utils"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/utils/Initializable__factory.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/utils/Initializable__factory.ts deleted file mode 100644 index 5af85bb..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/utils/Initializable__factory.ts +++ /dev/null @@ -1,39 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - Initializable, - InitializableInterface, -} from "../../../../../@openzeppelin/contracts/proxy/utils/Initializable"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, -] as const; - -export class Initializable__factory { - static readonly abi = _abi; - static createInterface(): InitializableInterface { - return new utils.Interface(_abi) as InitializableInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): Initializable { - return new Contract(address, _abi, signerOrProvider) as Initializable; - } -} diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable__factory.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable__factory.ts deleted file mode 100644 index 9192993..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable__factory.ts +++ /dev/null @@ -1,115 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - UUPSUpgradeable, - UUPSUpgradeableInterface, -} from "../../../../../@openzeppelin/contracts/proxy/utils/UUPSUpgradeable"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "previousAdmin", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newAdmin", - type: "address", - }, - ], - name: "AdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "beacon", - type: "address", - }, - ], - name: "BeaconUpgraded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, - { - inputs: [], - name: "proxiableUUID", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newImplementation", - type: "address", - }, - ], - name: "upgradeTo", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newImplementation", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "upgradeToAndCall", - outputs: [], - stateMutability: "payable", - type: "function", - }, -] as const; - -export class UUPSUpgradeable__factory { - static readonly abi = _abi; - static createInterface(): UUPSUpgradeableInterface { - return new utils.Interface(_abi) as UUPSUpgradeableInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): UUPSUpgradeable { - return new Contract(address, _abi, signerOrProvider) as UUPSUpgradeable; - } -} diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/utils/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/utils/index.ts deleted file mode 100644 index a192d15..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/proxy/utils/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { Initializable__factory } from "./Initializable__factory"; -export { UUPSUpgradeable__factory } from "./UUPSUpgradeable__factory"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.ts deleted file mode 100644 index b18d07e..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.ts +++ /dev/null @@ -1,123 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IERC1155Receiver, - IERC1155ReceiverInterface, -} from "../../../../../@openzeppelin/contracts/token/ERC1155/IERC1155Receiver"; - -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC1155BatchReceived", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC1155Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; - -export class IERC1155Receiver__factory { - static readonly abi = _abi; - static createInterface(): IERC1155ReceiverInterface { - return new utils.Interface(_abi) as IERC1155ReceiverInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IERC1155Receiver { - return new Contract(address, _abi, signerOrProvider) as IERC1155Receiver; - } -} diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC1155/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC1155/index.ts deleted file mode 100644 index 3e57b69..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC1155/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { IERC1155Receiver__factory } from "./IERC1155Receiver__factory"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.ts deleted file mode 100644 index 52ca02f..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.ts +++ /dev/null @@ -1,60 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IERC721Receiver, - IERC721ReceiverInterface, -} from "../../../../../@openzeppelin/contracts/token/ERC721/IERC721Receiver"; - -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class IERC721Receiver__factory { - static readonly abi = _abi; - static createInterface(): IERC721ReceiverInterface { - return new utils.Interface(_abi) as IERC721ReceiverInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IERC721Receiver { - return new Contract(address, _abi, signerOrProvider) as IERC721Receiver; - } -} diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC721/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC721/index.ts deleted file mode 100644 index aaceed6..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC721/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { IERC721Receiver__factory } from "./IERC721Receiver__factory"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC777/IERC777Recipient__factory.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC777/IERC777Recipient__factory.ts deleted file mode 100644 index 6c3f4d9..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC777/IERC777Recipient__factory.ts +++ /dev/null @@ -1,64 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IERC777Recipient, - IERC777RecipientInterface, -} from "../../../../../@openzeppelin/contracts/token/ERC777/IERC777Recipient"; - -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "userData", - type: "bytes", - }, - { - internalType: "bytes", - name: "operatorData", - type: "bytes", - }, - ], - name: "tokensReceived", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class IERC777Recipient__factory { - static readonly abi = _abi; - static createInterface(): IERC777RecipientInterface { - return new utils.Interface(_abi) as IERC777RecipientInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IERC777Recipient { - return new Contract(address, _abi, signerOrProvider) as IERC777Recipient; - } -} diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC777/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC777/index.ts deleted file mode 100644 index bbf9d2f..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/token/ERC777/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { IERC777Recipient__factory } from "./IERC777Recipient__factory"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/token/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/token/index.ts deleted file mode 100644 index 2111526..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/token/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as erc1155 from "./ERC1155"; -export * as erc721 from "./ERC721"; -export * as erc777 from "./ERC777"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/utils/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/utils/index.ts deleted file mode 100644 index 03cab17..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/utils/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as introspection from "./introspection"; diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.ts deleted file mode 100644 index 71bfb8a..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.ts +++ /dev/null @@ -1,45 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IERC165, - IERC165Interface, -} from "../../../../../@openzeppelin/contracts/utils/introspection/IERC165"; - -const _abi = [ - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; - -export class IERC165__factory { - static readonly abi = _abi; - static createInterface(): IERC165Interface { - return new utils.Interface(_abi) as IERC165Interface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IERC165 { - return new Contract(address, _abi, signerOrProvider) as IERC165; - } -} diff --git a/src/sdk/contracts/factories/@openzeppelin/contracts/utils/introspection/index.ts b/src/sdk/contracts/factories/@openzeppelin/contracts/utils/introspection/index.ts deleted file mode 100644 index 85d3733..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/contracts/utils/introspection/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { IERC165__factory } from "./IERC165__factory"; diff --git a/src/sdk/contracts/factories/@openzeppelin/index.ts b/src/sdk/contracts/factories/@openzeppelin/index.ts deleted file mode 100644 index 6397da0..0000000 --- a/src/sdk/contracts/factories/@openzeppelin/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as contracts from "./contracts"; diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/core/BaseAccount__factory.ts b/src/sdk/contracts/factories/account-abstraction/contracts/core/BaseAccount__factory.ts deleted file mode 100644 index a6eb6f6..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/core/BaseAccount__factory.ts +++ /dev/null @@ -1,138 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - BaseAccount, - BaseAccountInterface, -} from "../../../../account-abstraction/contracts/core/BaseAccount"; - -const _abi = [ - { - inputs: [], - name: "entryPoint", - outputs: [ - { - internalType: "contract IEntryPoint", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "getNonce", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct UserOperation", - name: "userOp", - type: "tuple", - }, - { - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "missingAccountFunds", - type: "uint256", - }, - ], - name: "validateUserOp", - outputs: [ - { - internalType: "uint256", - name: "validationData", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class BaseAccount__factory { - static readonly abi = _abi; - static createInterface(): BaseAccountInterface { - return new utils.Interface(_abi) as BaseAccountInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): BaseAccount { - return new Contract(address, _abi, signerOrProvider) as BaseAccount; - } -} diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/core/EntryPoint__factory.ts b/src/sdk/contracts/factories/account-abstraction/contracts/core/EntryPoint__factory.ts deleted file mode 100644 index c4bf2c5..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/core/EntryPoint__factory.ts +++ /dev/null @@ -1,858 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../../common"; -import type { - IEntryPoint, - IEntryPointInterface, -} from "../../../../account-abstraction/contracts/core/EntryPoint"; - -const _abi = [ - { - inputs: [ - { - internalType: "bool", - name: "success", - type: "bool", - }, - { - internalType: "bytes", - name: "ret", - type: "bytes", - }, - ], - name: "DelegateAndRevert", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "opIndex", - type: "uint256", - }, - { - internalType: "string", - name: "reason", - type: "string", - }, - ], - name: "FailedOp", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "opIndex", - type: "uint256", - }, - { - internalType: "string", - name: "reason", - type: "string", - }, - { - internalType: "bytes", - name: "inner", - type: "bytes", - }, - ], - name: "FailedOpWithRevert", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes", - name: "returnData", - type: "bytes", - }, - ], - name: "PostOpReverted", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "SenderAddressResult", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "aggregator", - type: "address", - }, - ], - name: "SignatureValidationFailed", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "factory", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "paymaster", - type: "address", - }, - ], - name: "AccountDeployed", - type: "event", - }, - { - anonymous: false, - inputs: [], - name: "BeforeExecution", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "totalDeposit", - type: "uint256", - }, - ], - name: "Deposited", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes", - name: "revertReason", - type: "bytes", - }, - ], - name: "PostOpRevertReason", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "aggregator", - type: "address", - }, - ], - name: "SignatureAggregatorChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "totalStaked", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "unstakeDelaySec", - type: "uint256", - }, - ], - name: "StakeLocked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "withdrawTime", - type: "uint256", - }, - ], - name: "StakeUnlocked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "withdrawAddress", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "StakeWithdrawn", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - indexed: false, - internalType: "bool", - name: "success", - type: "bool", - }, - { - indexed: false, - internalType: "uint256", - name: "actualGasCost", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "actualGasUsed", - type: "uint256", - }, - ], - name: "UserOperationEvent", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - ], - name: "UserOperationPrefundTooLow", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes", - name: "revertReason", - type: "bytes", - }, - ], - name: "UserOperationRevertReason", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "withdrawAddress", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "Withdrawn", - type: "event", - }, - { - inputs: [ - { - internalType: "uint32", - name: "_unstakeDelaySec", - type: "uint32", - }, - ], - name: "addStake", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "delegateAndRevert", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "depositTo", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "getDepositInfo", - outputs: [ - { - components: [ - { - internalType: "uint256", - name: "deposit", - type: "uint256", - }, - { - internalType: "bool", - name: "staked", - type: "bool", - }, - { - internalType: "uint112", - name: "stake", - type: "uint112", - }, - { - internalType: "uint32", - name: "unstakeDelaySec", - type: "uint32", - }, - { - internalType: "uint48", - name: "withdrawTime", - type: "uint48", - }, - ], - internalType: "struct IStakeManager.DepositInfo", - name: "info", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint192", - name: "key", - type: "uint192", - }, - ], - name: "getNonce", - outputs: [ - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - ], - name: "getSenderAddress", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "bytes32", - name: "accountGasLimits", - type: "bytes32", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "bytes32", - name: "gasFees", - type: "bytes32", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct PackedUserOperation", - name: "userOp", - type: "tuple", - }, - ], - name: "getUserOpHash", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "bytes32", - name: "accountGasLimits", - type: "bytes32", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "bytes32", - name: "gasFees", - type: "bytes32", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct PackedUserOperation[]", - name: "userOps", - type: "tuple[]", - }, - { - internalType: "contract IAggregator", - name: "aggregator", - type: "address", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct IEntryPoint.UserOpsPerAggregator[]", - name: "opsPerAggregator", - type: "tuple[]", - }, - { - internalType: "address payable", - name: "beneficiary", - type: "address", - }, - ], - name: "handleAggregatedOps", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "bytes32", - name: "accountGasLimits", - type: "bytes32", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "bytes32", - name: "gasFees", - type: "bytes32", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct PackedUserOperation[]", - name: "ops", - type: "tuple[]", - }, - { - internalType: "address payable", - name: "beneficiary", - type: "address", - }, - ], - name: "handleOps", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint192", - name: "key", - type: "uint192", - }, - ], - name: "incrementNonce", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "unlockStake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "withdrawAddress", - type: "address", - }, - ], - name: "withdrawStake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "withdrawAddress", - type: "address", - }, - { - internalType: "uint256", - name: "withdrawAmount", - type: "uint256", - }, - ], - name: "withdrawTo", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -const _bytecode = - "0x60806040526004361015610024575b361561001957600080fd5b61002233612748565b005b60003560e01c806242dc5314611b0057806301ffc9a7146119ae5780630396cb60146116765780630bd28e3b146115fa5780631b2e01b814611566578063205c2878146113d157806322cdde4c1461136b57806335567e1a146112b35780635287ce12146111a557806370a0823114611140578063765e827f14610e82578063850aaf6214610dc35780639b249f6914610c74578063b760faf914610c3a578063bb9fe6bf14610a68578063c23a5cea146107c4578063dbed18e0146101a15763fc7e286d0361000e573461019c5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c5773ffffffffffffffffffffffffffffffffffffffff61013a61229f565b16600052600060205260a0604060002065ffffffffffff6001825492015460405192835260ff8116151560208401526dffffffffffffffffffffffffffff8160081c16604084015263ffffffff8160781c16606084015260981c166080820152f35b600080fd5b3461019c576101af36612317565b906101b86129bd565b60009160005b82811061056f57506101d08493612588565b6000805b8481106102fc5750507fbb47ee3e183a558b1a2ff0874b079f3fc5478b7454eacf2bfc5af2ff5878f972600080a16000809360005b81811061024757610240868660007f575ff3acadd5ab348fe1855e217e0f3678f8d767d7494c9f9fefbee2e17cca4d8180a2613ba7565b6001600255005b6102a261025582848a612796565b73ffffffffffffffffffffffffffffffffffffffff6102766020830161282a565b167f575ff3acadd5ab348fe1855e217e0f3678f8d767d7494c9f9fefbee2e17cca4d600080a2806127d6565b906000915b8083106102b957505050600101610209565b909194976102f36102ed6001926102e78c8b6102e0826102da8e8b8d61269d565b9261265a565b5191613597565b90612409565b99612416565b950191906102a7565b6020610309828789612796565b61031f61031682806127d6565b9390920161282a565b9160009273ffffffffffffffffffffffffffffffffffffffff8091165b8285106103505750505050506001016101d4565b909192939561037f83610378610366848c61265a565b516103728b898b61269d565b856129f6565b9290613dd7565b9116840361050a576104a5576103958491613dd7565b9116610440576103b5576103aa600191612416565b96019392919061033c565b60a487604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152602160448201527f41413332207061796d61737465722065787069726564206f72206e6f7420647560648201527f65000000000000000000000000000000000000000000000000000000000000006084820152fd5b608488604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152601460448201527f41413334207369676e6174757265206572726f720000000000000000000000006064820152fd5b608488604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152601760448201527f414132322065787069726564206f72206e6f74206475650000000000000000006064820152fd5b608489604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152601460448201527f41413234207369676e6174757265206572726f720000000000000000000000006064820152fd5b61057a818487612796565b9361058585806127d6565b919095602073ffffffffffffffffffffffffffffffffffffffff6105aa82840161282a565b1697600192838a1461076657896105da575b5050505060019293949550906105d191612409565b939291016101be565b8060406105e892019061284b565b918a3b1561019c57929391906040519485937f2dd8113300000000000000000000000000000000000000000000000000000000855288604486016040600488015252606490818601918a60051b8701019680936000915b8c83106106e657505050505050838392610684927ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc8560009803016024860152612709565b03818a5afa90816106d7575b506106c657602486604051907f86a9f7500000000000000000000000000000000000000000000000000000000082526004820152fd5b93945084936105d1600189806105bc565b6106e0906121bd565b88610690565b91939596977fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9c908a9294969a0301865288357ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee18336030181121561019c57836107538793858394016128ec565b9a0196019301909189979695949261063f565b606483604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152601760248201527f4141393620696e76616c69642061676772656761746f720000000000000000006044820152fd5b3461019c576020807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c576107fc61229f565b33600052600082526001604060002001908154916dffffffffffffffffffffffffffff8360081c16928315610a0a5765ffffffffffff8160981c1680156109ac57421061094e5760009373ffffffffffffffffffffffffffffffffffffffff859485947fffffffffffffff000000000000000000000000000000000000000000000000ff86951690556040517fb7c918e0e249f999e965cafeb6c664271b3f4317d296461500e71da39f0cbda33391806108da8786836020909392919373ffffffffffffffffffffffffffffffffffffffff60408201951681520152565b0390a2165af16108e8612450565b50156108f057005b606490604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152601860248201527f6661696c656420746f207769746864726177207374616b6500000000000000006044820152fd5b606485604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152601b60248201527f5374616b65207769746864726177616c206973206e6f742064756500000000006044820152fd5b606486604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152601d60248201527f6d7573742063616c6c20756e6c6f636b5374616b6528292066697273740000006044820152fd5b606485604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152601460248201527f4e6f207374616b6520746f2077697468647261770000000000000000000000006044820152fd5b3461019c5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c573360005260006020526001604060002001805463ffffffff8160781c16908115610bdc5760ff1615610b7e5765ffffffffffff908142160191818311610b4f5780547fffffffffffffff000000000000ffffffffffffffffffffffffffffffffffff001678ffffffffffff00000000000000000000000000000000000000609885901b161790556040519116815233907ffa9b3c14cc825c412c9ed81b3ba365a5b459439403f18829e572ed53a4180f0a90602090a2005b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f616c726561647920756e7374616b696e670000000000000000000000000000006044820152fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6e6f74207374616b6564000000000000000000000000000000000000000000006044820152fd5b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c57610022610c6f61229f565b612748565b3461019c5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c5760043567ffffffffffffffff811161019c576020610cc8610d1b9236906004016122c2565b919073ffffffffffffffffffffffffffffffffffffffff9260405194859283927f570e1a360000000000000000000000000000000000000000000000000000000084528560048501526024840191612709565b03816000857f000000000000000000000000efc2c1444ebcc4db75e7613d20c6a62ff67a167c165af1908115610db757602492600092610d86575b50604051917f6ca7b806000000000000000000000000000000000000000000000000000000008352166004820152fd5b610da991925060203d602011610db0575b610da181836121ed565b8101906126dd565b9083610d56565b503d610d97565b6040513d6000823e3d90fd5b3461019c5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c57610dfa61229f565b60243567ffffffffffffffff811161019c57600091610e1e839236906004016122c2565b90816040519283928337810184815203915af4610e39612450565b90610e7e6040519283927f99410554000000000000000000000000000000000000000000000000000000008452151560048401526040602484015260448301906123c6565b0390fd5b3461019c57610e9036612317565b610e9b9291926129bd565b610ea483612588565b60005b848110610f1c57506000927fbb47ee3e183a558b1a2ff0874b079f3fc5478b7454eacf2bfc5af2ff5878f972600080a16000915b858310610eec576102408585613ba7565b909193600190610f12610f0087898761269d565b610f0a888661265a565b519088613597565b0194019190610edb565b610f47610f40610f2e8385979561265a565b51610f3a84898761269d565b846129f6565b9190613dd7565b73ffffffffffffffffffffffffffffffffffffffff929183166110db5761107657610f7190613dd7565b911661101157610f8657600101929092610ea7565b60a490604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152602160448201527f41413332207061796d61737465722065787069726564206f72206e6f7420647560648201527f65000000000000000000000000000000000000000000000000000000000000006084820152fd5b608482604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152601460448201527f41413334207369676e6174757265206572726f720000000000000000000000006064820152fd5b608483604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152601760448201527f414132322065787069726564206f72206e6f74206475650000000000000000006064820152fd5b608484604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152601460448201527f41413234207369676e6174757265206572726f720000000000000000000000006064820152fd5b3461019c5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c5773ffffffffffffffffffffffffffffffffffffffff61118c61229f565b1660005260006020526020604060002054604051908152f35b3461019c5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c5773ffffffffffffffffffffffffffffffffffffffff6111f161229f565b6000608060405161120181612155565b828152826020820152826040820152826060820152015216600052600060205260a06040600020608060405161123681612155565b6001835493848352015490602081019060ff8316151582526dffffffffffffffffffffffffffff60408201818560081c16815263ffffffff936060840193858760781c16855265ffffffffffff978891019660981c1686526040519788525115156020880152511660408601525116606084015251166080820152f35b3461019c5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c5760206112ec61229f565b73ffffffffffffffffffffffffffffffffffffffff6113096122f0565b911660005260018252604060002077ffffffffffffffffffffffffffffffffffffffffffffffff821660005282526040600020547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000006040519260401b16178152f35b3461019c577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60208136011261019c576004359067ffffffffffffffff821161019c5761012090823603011261019c576113c9602091600401612480565b604051908152f35b3461019c5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c5761140861229f565b60243590336000526000602052604060002090815491828411611508576000808573ffffffffffffffffffffffffffffffffffffffff8295839561144c848a612443565b90556040805173ffffffffffffffffffffffffffffffffffffffff831681526020810185905233917fd1c19fbcd4551a5edfb66d43d2e337c04837afda3482b42bdf569a8fccdae5fb91a2165af16114a2612450565b50156114aa57005b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f6661696c656420746f20776974686472617700000000000000000000000000006044820152fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f576974686472617720616d6f756e7420746f6f206c61726765000000000000006044820152fd5b3461019c5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c5761159d61229f565b73ffffffffffffffffffffffffffffffffffffffff6115ba6122f0565b9116600052600160205277ffffffffffffffffffffffffffffffffffffffffffffffff604060002091166000526020526020604060002054604051908152f35b3461019c5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c5760043577ffffffffffffffffffffffffffffffffffffffffffffffff811680910361019c5733600052600160205260406000209060005260205260406000206116728154612416565b9055005b6020807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c5760043563ffffffff9182821680920361019c5733600052600081526040600020928215611950576001840154908160781c1683106118f2576116f86dffffffffffffffffffffffffffff9182349160081c16612409565b93841561189457818511611836579065ffffffffffff61180592546040519061172082612155565b8152848101926001845260408201908816815260608201878152600160808401936000855233600052600089526040600020905181550194511515917fffffffffffffffffffffffffff0000000000000000000000000000000000000060ff72ffffffff0000000000000000000000000000006effffffffffffffffffffffffffff008954945160081b16945160781b1694169116171717835551167fffffffffffffff000000000000ffffffffffffffffffffffffffffffffffffff78ffffffffffff0000000000000000000000000000000000000083549260981b169116179055565b6040519283528201527fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c0160403392a2005b606483604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152600e60248201527f7374616b65206f766572666c6f770000000000000000000000000000000000006044820152fd5b606483604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152601260248201527f6e6f207374616b652073706563696669656400000000000000000000000000006044820152fd5b606482604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152601c60248201527f63616e6e6f7420646563726561736520756e7374616b652074696d65000000006044820152fd5b606482604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152601a60248201527f6d757374207370656369667920756e7374616b652064656c61790000000000006044820152fd5b3461019c5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c576004357fffffffff00000000000000000000000000000000000000000000000000000000811680910361019c57807f60fc6b6e0000000000000000000000000000000000000000000000000000000060209214908115611ad6575b8115611aac575b8115611a82575b8115611a58575b506040519015158152f35b7f01ffc9a70000000000000000000000000000000000000000000000000000000091501482611a4d565b7f3e84f0210000000000000000000000000000000000000000000000000000000081149150611a46565b7fcf28ef970000000000000000000000000000000000000000000000000000000081149150611a3f565b7f915074d80000000000000000000000000000000000000000000000000000000081149150611a38565b3461019c576102007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019c5767ffffffffffffffff60043581811161019c573660238201121561019c57611b62903690602481600401359101612268565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc36016101c0811261019c5761014060405191611b9e83612155565b1261019c5760405192611bb0846121a0565b60243573ffffffffffffffffffffffffffffffffffffffff8116810361019c578452602093604435858201526064356040820152608435606082015260a435608082015260c43560a082015260e43560c08201526101043573ffffffffffffffffffffffffffffffffffffffff8116810361019c5760e08201526101243561010082015261014435610120820152825261016435848301526101843560408301526101a43560608301526101c43560808301526101e43590811161019c57611c7c9036906004016122c2565b905a3033036120f7578351606081015195603f5a0260061c61271060a0840151890101116120ce5760009681519182611ff0575b5050505090611cca915a9003608085015101923691612268565b925a90600094845193611cdc85613ccc565b9173ffffffffffffffffffffffffffffffffffffffff60e0870151168015600014611ea957505073ffffffffffffffffffffffffffffffffffffffff855116935b5a9003019360a06060820151910151016080860151850390818111611e95575b50508302604085015192818410600014611dce5750506003811015611da157600203611d79576113c99293508093611d7481613d65565b613cf6565b5050507fdeadaa51000000000000000000000000000000000000000000000000000000008152fd5b6024857f4e487b710000000000000000000000000000000000000000000000000000000081526021600452fd5b81611dde92979396940390613c98565b506003841015611e6857507f49628fd1471006c1482da88028e9ce4dbb080b815c9b0344d39e5a8e6ec1419f60808683015192519473ffffffffffffffffffffffffffffffffffffffff865116948873ffffffffffffffffffffffffffffffffffffffff60e0890151169701519160405192835215898301528760408301526060820152a46113c9565b807f4e487b7100000000000000000000000000000000000000000000000000000000602492526021600452fd5b6064919003600a0204909301928780611d3d565b8095918051611eba575b5050611d1d565b6003861015611fc1576002860315611eb35760a088015190823b1561019c57600091611f2491836040519586809581947f7c627b210000000000000000000000000000000000000000000000000000000083528d60048401526080602484015260848301906123c6565b8b8b0260448301528b60648301520393f19081611fad575b50611fa65787893d610800808211611f9e575b506040519282828501016040528184528284013e610e7e6040519283927fad7954bc000000000000000000000000000000000000000000000000000000008452600484015260248301906123c6565b905083611f4f565b8980611eb3565b611fb89199506121bd565b6000978a611f3c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b91600092918380938c73ffffffffffffffffffffffffffffffffffffffff885116910192f115612023575b808080611cb0565b611cca929195503d6108008082116120c6575b5060405190888183010160405280825260008983013e805161205f575b5050600194909161201b565b7f1c4fada7374c0a9ee8841fc38afe82932dc0f8e69012e927f061a8bae611a20188870151918973ffffffffffffffffffffffffffffffffffffffff8551169401516120bc604051928392835260408d84015260408301906123c6565b0390a38680612053565b905088612036565b877fdeaddead000000000000000000000000000000000000000000000000000000006000526000fd5b606486604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152601760248201527f4141393220696e7465726e616c2063616c6c206f6e6c790000000000000000006044820152fd5b60a0810190811067ffffffffffffffff82111761217157604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610140810190811067ffffffffffffffff82111761217157604052565b67ffffffffffffffff811161217157604052565b6060810190811067ffffffffffffffff82111761217157604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761217157604052565b67ffffffffffffffff811161217157601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b9291926122748261222e565b9161228260405193846121ed565b82948184528183011161019c578281602093846000960137010152565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361019c57565b9181601f8401121561019c5782359167ffffffffffffffff831161019c576020838186019501011161019c57565b6024359077ffffffffffffffffffffffffffffffffffffffffffffffff8216820361019c57565b9060407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc83011261019c5760043567ffffffffffffffff9283821161019c578060238301121561019c57816004013593841161019c5760248460051b8301011161019c57602401919060243573ffffffffffffffffffffffffffffffffffffffff8116810361019c5790565b60005b8381106123b65750506000910152565b81810151838201526020016123a6565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602093612402815180928187528780880191016123a3565b0116010190565b91908201809211610b4f57565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610b4f5760010190565b91908203918211610b4f57565b3d1561247b573d906124618261222e565b9161246f60405193846121ed565b82523d6000602084013e565b606090565b604061248e8183018361284b565b90818351918237206124a3606084018461284b565b90818451918237209260c06124bb60e083018361284b565b908186519182372091845195602087019473ffffffffffffffffffffffffffffffffffffffff833516865260208301358789015260608801526080870152608081013560a087015260a081013582870152013560e08501526101009081850152835261012083019167ffffffffffffffff918484108385111761217157838252845190206101408501908152306101608601524661018086015260608452936101a00191821183831017612171575251902090565b67ffffffffffffffff81116121715760051b60200190565b9061259282612570565b6040906125a260405191826121ed565b8381527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe06125d08295612570565b019160005b8381106125e25750505050565b60209082516125f081612155565b83516125fb816121a0565b600081526000849181838201528187820152816060818184015260809282848201528260a08201528260c08201528260e082015282610100820152826101208201528652818587015281898701528501528301528286010152016125d5565b805182101561266e5760209160051b010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b919081101561266e5760051b810135907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee18136030182121561019c570190565b9081602091031261019c575173ffffffffffffffffffffffffffffffffffffffff8116810361019c5790565b601f82602094937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0938186528686013760008582860101520116010190565b7f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c4602073ffffffffffffffffffffffffffffffffffffffff61278a3485613c98565b936040519485521692a2565b919081101561266e5760051b810135907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa18136030182121561019c570190565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18136030182121561019c570180359067ffffffffffffffff821161019c57602001918160051b3603831361019c57565b3573ffffffffffffffffffffffffffffffffffffffff8116810361019c5790565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18136030182121561019c570180359067ffffffffffffffff821161019c5760200191813603831361019c57565b90357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18236030181121561019c57016020813591019167ffffffffffffffff821161019c57813603831361019c57565b61012091813573ffffffffffffffffffffffffffffffffffffffff811680910361019c576129626129476129ba9561299b93855260208601356020860152612937604087018761289c565b9091806040880152860191612709565b612954606086018661289c565b908583036060870152612709565b6080840135608084015260a084013560a084015260c084013560c084015261298d60e085018561289c565b9084830360e0860152612709565b916129ac610100918281019061289c565b929091818503910152612709565b90565b60028054146129cc5760028055565b60046040517f3ee5aeb5000000000000000000000000000000000000000000000000000000008152fd5b926000905a93805194843573ffffffffffffffffffffffffffffffffffffffff811680910361019c5786526020850135602087015260808501356fffffffffffffffffffffffffffffffff90818116606089015260801c604088015260a086013560c088015260c086013590811661010088015260801c610120870152612a8060e086018661284b565b801561357b576034811061351d578060141161019c578060241161019c5760341161019c57602481013560801c60a0880152601481013560801c60808801523560601c60e08701525b612ad285612480565b60208301526040860151946effffffffffffffffffffffffffffff8660c08901511760608901511760808901511760a0890151176101008901511761012089015117116134bf57604087015160608801510160808801510160a08801510160c0880151016101008801510296835173ffffffffffffffffffffffffffffffffffffffff81511690612b66604085018561284b565b806131e4575b505060e0015173ffffffffffffffffffffffffffffffffffffffff1690600082156131ac575b6020612bd7918b828a01516000868a604051978896879586937f19822f7c00000000000000000000000000000000000000000000000000000000855260048501613db5565b0393f160009181613178575b50612c8b573d8c610800808311612c83575b50604051916020818401016040528083526000602084013e610e7e6040519283927f65c8fd4d000000000000000000000000000000000000000000000000000000008452600484015260606024840152600d60648401527f4141323320726576657274656400000000000000000000000000000000000000608484015260a0604484015260a48301906123c6565b915082612bf5565b9a92939495969798999a91156130f2575b509773ffffffffffffffffffffffffffffffffffffffff835116602084015190600052600160205260406000208160401c60005260205267ffffffffffffffff604060002091825492612cee84612416565b9055160361308d575a8503116130285773ffffffffffffffffffffffffffffffffffffffff60e0606093015116612d42575b509060a09184959697986040608096015260608601520135905a900301910152565b969550505a9683519773ffffffffffffffffffffffffffffffffffffffff60e08a01511680600052600060205260406000208054848110612fc3576080612dcd9a9b9c600093878094039055015192602089015183604051809d819582947f52b7512c0000000000000000000000000000000000000000000000000000000084528c60048501613db5565b039286f1978860009160009a612f36575b50612e86573d8b610800808311612e7e575b50604051916020818401016040528083526000602084013e610e7e6040519283927f65c8fd4d000000000000000000000000000000000000000000000000000000008452600484015260606024840152600d60648401527f4141333320726576657274656400000000000000000000000000000000000000608484015260a0604484015260a48301906123c6565b915082612df0565b9991929394959697989998925a900311612eab57509096959094939291906080612d20565b60a490604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152602760448201527f41413336206f766572207061796d6173746572566572696669636174696f6e4760648201527f61734c696d6974000000000000000000000000000000000000000000000000006084820152fd5b915098503d90816000823e612f4b82826121ed565b604081838101031261019c5780519067ffffffffffffffff821161019c57828101601f83830101121561019c578181015191612f868361222e565b93612f9460405195866121ed565b838552820160208483850101011161019c57602092612fba9184808701918501016123a3565b01519838612dde565b60848b604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152601e60448201527f41413331207061796d6173746572206465706f73697420746f6f206c6f7700006064820152fd5b608490604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152601e60448201527f41413236206f76657220766572696669636174696f6e4761734c696d697400006064820152fd5b608482604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152601a60448201527f4141323520696e76616c6964206163636f756e74206e6f6e63650000000000006064820152fd5b600052600060205260406000208054808c11613113578b9003905538612c9c565b608484604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152601760448201527f41413231206469646e2774207061792070726566756e640000000000000000006064820152fd5b9091506020813d6020116131a4575b81613194602093836121ed565b8101031261019c57519038612be3565b3d9150613187565b508060005260006020526040600020548a81116000146131d75750612bd7602060005b915050612b92565b6020612bd7918c036131cf565b833b61345a57604088510151602060405180927f570e1a360000000000000000000000000000000000000000000000000000000082528260048301528160008161323260248201898b612709565b039273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000efc2c1444ebcc4db75e7613d20c6a62ff67a167c1690f1908115610db75760009161343b575b5073ffffffffffffffffffffffffffffffffffffffff811680156133d6578503613371573b1561330c5760141161019c5773ffffffffffffffffffffffffffffffffffffffff9183887fd51a9c61267aa6196961883ecf5ff2da6619c37dac0fa92122513fb32c032d2d604060e0958787602086015195510151168251913560601c82526020820152a391612b6c565b60848d604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152602060448201527f4141313520696e6974436f6465206d757374206372656174652073656e6465726064820152fd5b60848e604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152602060448201527f4141313420696e6974436f6465206d7573742072657475726e2073656e6465726064820152fd5b60848f604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152601b60448201527f4141313320696e6974436f6465206661696c6564206f72204f4f4700000000006064820152fd5b613454915060203d602011610db057610da181836121ed565b3861327c565b60848d604051907f220266b6000000000000000000000000000000000000000000000000000000008252600482015260406024820152601f60448201527f414131302073656e64657220616c726561647920636f6e7374727563746564006064820152fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f41413934206761732076616c756573206f766572666c6f7700000000000000006044820152fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f4141393320696e76616c6964207061796d6173746572416e64446174610000006044820152fd5b5050600060e087015260006080870152600060a0870152612ac9565b9092915a906060810151916040928351967fffffffff00000000000000000000000000000000000000000000000000000000886135d7606084018461284b565b600060038211613b9f575b7f8dd7712f0000000000000000000000000000000000000000000000000000000094168403613a445750505061379d6000926136b292602088015161363a8a5193849360208501528b602485015260648401906128ec565b90604483015203906136727fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0928381018352826121ed565b61379189519485927e42dc5300000000000000000000000000000000000000000000000000000000602085015261020060248501526102248401906123c6565b613760604484018b60806101a091805173ffffffffffffffffffffffffffffffffffffffff808251168652602082015160208701526040820151604087015260608201516060870152838201518487015260a082015160a087015260c082015160c087015260e08201511660e0860152610100808201519086015261012080910151908501526020810151610140850152604081015161016085015260608101516101808501520151910152565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc83820301610204840152876123c6565b039081018352826121ed565b6020918183809351910182305af1600051988652156137bf575b505050505050565b909192939495965060003d8214613a3a575b7fdeaddead00000000000000000000000000000000000000000000000000000000810361385b57608487878051917f220266b600000000000000000000000000000000000000000000000000000000835260048301526024820152600f60448201527f41413935206f7574206f662067617300000000000000000000000000000000006064820152fd5b7fdeadaa510000000000000000000000000000000000000000000000000000000091929395949650146000146138c55750506138a961389e6138b8935a90612443565b608085015190612409565b9083015183611d748295613d65565b905b3880808080806137b7565b909261395290828601518651907ff62676f440ff169a3a9afdbf812e89e7f95975ee8e5c31214ffdef631c5f479273ffffffffffffffffffffffffffffffffffffffff9580878551169401516139483d610800808211613a32575b508a519084818301018c5280825260008583013e8a805194859485528401528a8301906123c6565b0390a35a90612443565b916139636080860193845190612409565b926000905a94829488519761397789613ccc565b948260e08b0151168015600014613a1857505050875116955b5a9003019560a06060820151910151019051860390818111613a04575b5050840290850151928184106000146139de57505080611e68575090816139d89293611d7481613d65565b906138ba565b6139ee9082849397950390613c98565b50611e68575090826139ff92613cf6565b6139d8565b6064919003600a02049094019338806139ad565b90919892509751613a2a575b50613990565b955038613a24565b905038613920565b8181803e516137d1565b613b97945082935090613a8c917e42dc53000000000000000000000000000000000000000000000000000000006020613b6b9501526102006024860152610224850191612709565b613b3a604484018860806101a091805173ffffffffffffffffffffffffffffffffffffffff808251168652602082015160208701526040820151604087015260608201516060870152838201518487015260a082015160a087015260c082015160c087015260e08201511660e0860152610100808201519086015261012080910151908501526020810151610140850152604081015161016085015260608101516101808501520151910152565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc83820301610204840152846123c6565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081018952886121ed565b60008761379d565b5081356135e2565b73ffffffffffffffffffffffffffffffffffffffff168015613c3a57600080809381935af1613bd4612450565b5015613bdc57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f41413931206661696c65642073656e6420746f2062656e6566696369617279006044820152fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4141393020696e76616c69642062656e656669636961727900000000000000006044820152fd5b73ffffffffffffffffffffffffffffffffffffffff166000526000602052613cc66040600020918254612409565b80915590565b610120610100820151910151808214613cf257480180821015613ced575090565b905090565b5090565b9190917f49628fd1471006c1482da88028e9ce4dbb080b815c9b0344d39e5a8e6ec1419f6080602083015192519473ffffffffffffffffffffffffffffffffffffffff946020868851169660e089015116970151916040519283526000602084015260408301526060820152a4565b60208101519051907f67b4fa9642f42120bf031f3051d1824b0fe25627945b27b8a6a65d5761d5482e60208073ffffffffffffffffffffffffffffffffffffffff855116940151604051908152a3565b613dcd604092959493956060835260608301906128ec565b9460208201520152565b8015613e6457600060408051613dec816121d1565b828152826020820152015273ffffffffffffffffffffffffffffffffffffffff811690604065ffffffffffff91828160a01c16908115613e5c575b60d01c92825191613e37836121d1565b8583528460208401521691829101524211908115613e5457509091565b905042109091565b839150613e27565b5060009060009056fea2646970667358221220b094fd69f04977ae9458e5ba422d01cd2d20dbcfca0992ff37f19aa07deec25464736f6c63430008170033"; - -type EntryPointConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: EntryPointConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class EntryPoint__factory extends ContractFactory { - constructor(...args: EntryPointConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy(overrides || {}) as Promise; - } - override getDeployTransaction( - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(overrides || {}); - } - override attach(address: string): IEntryPoint { - return super.attach(address) as IEntryPoint; - } - override connect(signer: Signer): EntryPoint__factory { - return super.connect(signer) as EntryPoint__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): IEntryPointInterface { - return new utils.Interface(_abi) as IEntryPointInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IEntryPoint { - return new Contract(address, _abi, signerOrProvider) as IEntryPoint; - } -} \ No newline at end of file diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/core/index.ts b/src/sdk/contracts/factories/account-abstraction/contracts/core/index.ts deleted file mode 100644 index 3cce817..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/core/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { BaseAccount__factory } from "./BaseAccount__factory"; diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/index.ts b/src/sdk/contracts/factories/account-abstraction/contracts/index.ts deleted file mode 100644 index 80ab1f5..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as core from "./core"; -export * as interfaces from "./interfaces"; -export * as samples from "./samples"; diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IAccount__factory.ts b/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IAccount__factory.ts deleted file mode 100644 index 5d3c002..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IAccount__factory.ts +++ /dev/null @@ -1,112 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IAccount, - IAccountInterface, -} from "../../../../account-abstraction/contracts/interfaces/IAccount"; - -const _abi = [ - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct UserOperation", - name: "userOp", - type: "tuple", - }, - { - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "missingAccountFunds", - type: "uint256", - }, - ], - name: "validateUserOp", - outputs: [ - { - internalType: "uint256", - name: "validationData", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class IAccount__factory { - static readonly abi = _abi; - static createInterface(): IAccountInterface { - return new utils.Interface(_abi) as IAccountInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IAccount { - return new Contract(address, _abi, signerOrProvider) as IAccount; - } -} diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IAggregator__factory.ts b/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IAggregator__factory.ts deleted file mode 100644 index f2324b4..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IAggregator__factory.ts +++ /dev/null @@ -1,253 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IAggregator, - IAggregatorInterface, -} from "../../../../account-abstraction/contracts/interfaces/IAggregator"; - -const _abi = [ - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct UserOperation[]", - name: "userOps", - type: "tuple[]", - }, - ], - name: "aggregateSignatures", - outputs: [ - { - internalType: "bytes", - name: "aggregatedSignature", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct UserOperation[]", - name: "userOps", - type: "tuple[]", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "validateSignatures", - outputs: [], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct UserOperation", - name: "userOp", - type: "tuple", - }, - ], - name: "validateUserOpSignature", - outputs: [ - { - internalType: "bytes", - name: "sigForUserOp", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; - -export class IAggregator__factory { - static readonly abi = _abi; - static createInterface(): IAggregatorInterface { - return new utils.Interface(_abi) as IAggregatorInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IAggregator { - return new Contract(address, _abi, signerOrProvider) as IAggregator; - } -} diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IEntryPoint__factory.ts b/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IEntryPoint__factory.ts deleted file mode 100644 index 367886d..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IEntryPoint__factory.ts +++ /dev/null @@ -1,821 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IEntryPoint, - IEntryPointInterface, -} from "../../../../account-abstraction/contracts/interfaces/IEntryPoint"; - -const _abi = [ - { - inputs: [ - { - internalType: "bool", - name: "success", - type: "bool", - }, - { - internalType: "bytes", - name: "ret", - type: "bytes", - }, - ], - name: "DelegateAndRevert", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "opIndex", - type: "uint256", - }, - { - internalType: "string", - name: "reason", - type: "string", - }, - ], - name: "FailedOp", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "opIndex", - type: "uint256", - }, - { - internalType: "string", - name: "reason", - type: "string", - }, - { - internalType: "bytes", - name: "inner", - type: "bytes", - }, - ], - name: "FailedOpWithRevert", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes", - name: "returnData", - type: "bytes", - }, - ], - name: "PostOpReverted", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "SenderAddressResult", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "aggregator", - type: "address", - }, - ], - name: "SignatureValidationFailed", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "factory", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "paymaster", - type: "address", - }, - ], - name: "AccountDeployed", - type: "event", - }, - { - anonymous: false, - inputs: [], - name: "BeforeExecution", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "totalDeposit", - type: "uint256", - }, - ], - name: "Deposited", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes", - name: "revertReason", - type: "bytes", - }, - ], - name: "PostOpRevertReason", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "aggregator", - type: "address", - }, - ], - name: "SignatureAggregatorChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "totalStaked", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "unstakeDelaySec", - type: "uint256", - }, - ], - name: "StakeLocked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "withdrawTime", - type: "uint256", - }, - ], - name: "StakeUnlocked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "withdrawAddress", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "StakeWithdrawn", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - indexed: false, - internalType: "bool", - name: "success", - type: "bool", - }, - { - indexed: false, - internalType: "uint256", - name: "actualGasCost", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "actualGasUsed", - type: "uint256", - }, - ], - name: "UserOperationEvent", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - ], - name: "UserOperationPrefundTooLow", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes", - name: "revertReason", - type: "bytes", - }, - ], - name: "UserOperationRevertReason", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "withdrawAddress", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "Withdrawn", - type: "event", - }, - { - inputs: [ - { - internalType: "uint32", - name: "_unstakeDelaySec", - type: "uint32", - }, - ], - name: "addStake", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "delegateAndRevert", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "depositTo", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "getDepositInfo", - outputs: [ - { - components: [ - { - internalType: "uint256", - name: "deposit", - type: "uint256", - }, - { - internalType: "bool", - name: "staked", - type: "bool", - }, - { - internalType: "uint112", - name: "stake", - type: "uint112", - }, - { - internalType: "uint32", - name: "unstakeDelaySec", - type: "uint32", - }, - { - internalType: "uint48", - name: "withdrawTime", - type: "uint48", - }, - ], - internalType: "struct IStakeManager.DepositInfo", - name: "info", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint192", - name: "key", - type: "uint192", - }, - ], - name: "getNonce", - outputs: [ - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - ], - name: "getSenderAddress", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "bytes32", - name: "accountGasLimits", - type: "bytes32", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "bytes32", - name: "gasFees", - type: "bytes32", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct PackedUserOperation", - name: "userOp", - type: "tuple", - }, - ], - name: "getUserOpHash", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "bytes32", - name: "accountGasLimits", - type: "bytes32", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "bytes32", - name: "gasFees", - type: "bytes32", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct PackedUserOperation[]", - name: "userOps", - type: "tuple[]", - }, - { - internalType: "contract IAggregator", - name: "aggregator", - type: "address", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct IEntryPoint.UserOpsPerAggregator[]", - name: "opsPerAggregator", - type: "tuple[]", - }, - { - internalType: "address payable", - name: "beneficiary", - type: "address", - }, - ], - name: "handleAggregatedOps", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "bytes32", - name: "accountGasLimits", - type: "bytes32", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "bytes32", - name: "gasFees", - type: "bytes32", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct PackedUserOperation[]", - name: "ops", - type: "tuple[]", - }, - { - internalType: "address payable", - name: "beneficiary", - type: "address", - }, - ], - name: "handleOps", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint192", - name: "key", - type: "uint192", - }, - ], - name: "incrementNonce", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "unlockStake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "withdrawAddress", - type: "address", - }, - ], - name: "withdrawStake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "withdrawAddress", - type: "address", - }, - { - internalType: "uint256", - name: "withdrawAmount", - type: "uint256", - }, - ], - name: "withdrawTo", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class IEntryPoint__factory { - static readonly abi = _abi; - static createInterface(): IEntryPointInterface { - return new utils.Interface(_abi) as IEntryPointInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IEntryPoint { - return new Contract(address, _abi, signerOrProvider) as IEntryPoint; - } -} diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/INonceManager__factory.ts b/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/INonceManager__factory.ts deleted file mode 100644 index f18b34c..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/INonceManager__factory.ts +++ /dev/null @@ -1,63 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - INonceManager, - INonceManagerInterface, -} from "../../../../account-abstraction/contracts/interfaces/INonceManager"; - -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint192", - name: "key", - type: "uint192", - }, - ], - name: "getNonce", - outputs: [ - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint192", - name: "key", - type: "uint192", - }, - ], - name: "incrementNonce", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class INonceManager__factory { - static readonly abi = _abi; - static createInterface(): INonceManagerInterface { - return new utils.Interface(_abi) as INonceManagerInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): INonceManager { - return new Contract(address, _abi, signerOrProvider) as INonceManager; - } -} diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IPaymaster__factory.ts b/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IPaymaster__factory.ts deleted file mode 100644 index a747a96..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IPaymaster__factory.ts +++ /dev/null @@ -1,140 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IPaymaster, - IPaymasterInterface, -} from "../../../../account-abstraction/contracts/interfaces/IPaymaster"; - -const _abi = [ - { - inputs: [ - { - internalType: "enum IPaymaster.PostOpMode", - name: "mode", - type: "uint8", - }, - { - internalType: "bytes", - name: "context", - type: "bytes", - }, - { - internalType: "uint256", - name: "actualGasCost", - type: "uint256", - }, - ], - name: "postOp", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct UserOperation", - name: "userOp", - type: "tuple", - }, - { - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "maxCost", - type: "uint256", - }, - ], - name: "validatePaymasterUserOp", - outputs: [ - { - internalType: "bytes", - name: "context", - type: "bytes", - }, - { - internalType: "uint256", - name: "validationData", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class IPaymaster__factory { - static readonly abi = _abi; - static createInterface(): IPaymasterInterface { - return new utils.Interface(_abi) as IPaymasterInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IPaymaster { - return new Contract(address, _abi, signerOrProvider) as IPaymaster; - } -} diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IStakeManager__factory.ts b/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IStakeManager__factory.ts deleted file mode 100644 index 93f6b6e..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/IStakeManager__factory.ts +++ /dev/null @@ -1,268 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IStakeManager, - IStakeManagerInterface, -} from "../../../../account-abstraction/contracts/interfaces/IStakeManager"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "totalDeposit", - type: "uint256", - }, - ], - name: "Deposited", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "totalStaked", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "unstakeDelaySec", - type: "uint256", - }, - ], - name: "StakeLocked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "withdrawTime", - type: "uint256", - }, - ], - name: "StakeUnlocked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "withdrawAddress", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "StakeWithdrawn", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "withdrawAddress", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "Withdrawn", - type: "event", - }, - { - inputs: [ - { - internalType: "uint32", - name: "_unstakeDelaySec", - type: "uint32", - }, - ], - name: "addStake", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "depositTo", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "getDepositInfo", - outputs: [ - { - components: [ - { - internalType: "uint112", - name: "deposit", - type: "uint112", - }, - { - internalType: "bool", - name: "staked", - type: "bool", - }, - { - internalType: "uint112", - name: "stake", - type: "uint112", - }, - { - internalType: "uint32", - name: "unstakeDelaySec", - type: "uint32", - }, - { - internalType: "uint48", - name: "withdrawTime", - type: "uint48", - }, - ], - internalType: "struct IStakeManager.DepositInfo", - name: "info", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "unlockStake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "withdrawAddress", - type: "address", - }, - ], - name: "withdrawStake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "withdrawAddress", - type: "address", - }, - { - internalType: "uint256", - name: "withdrawAmount", - type: "uint256", - }, - ], - name: "withdrawTo", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class IStakeManager__factory { - static readonly abi = _abi; - static createInterface(): IStakeManagerInterface { - return new utils.Interface(_abi) as IStakeManagerInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IStakeManager { - return new Contract(address, _abi, signerOrProvider) as IStakeManager; - } -} diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/index.ts b/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/index.ts deleted file mode 100644 index e2deec4..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/interfaces/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { IAccount__factory } from "./IAccount__factory"; -export { IAggregator__factory } from "./IAggregator__factory"; -export { IEntryPoint__factory } from "./IEntryPoint__factory"; -export { INonceManager__factory } from "./INonceManager__factory"; -export { IPaymaster__factory } from "./IPaymaster__factory"; -export { IStakeManager__factory } from "./IStakeManager__factory"; diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/samples/callback/TokenCallbackHandler__factory.ts b/src/sdk/contracts/factories/account-abstraction/contracts/samples/callback/TokenCallbackHandler__factory.ts deleted file mode 100644 index f9b9cd4..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/samples/callback/TokenCallbackHandler__factory.ts +++ /dev/null @@ -1,236 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../../../common"; -import type { - TokenCallbackHandler, - TokenCallbackHandlerInterface, -} from "../../../../../account-abstraction/contracts/samples/callback/TokenCallbackHandler"; - -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "onERC1155BatchReceived", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "onERC1155Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "tokensReceived", - outputs: [], - stateMutability: "pure", - type: "function", - }, -] as const; - -const _bytecode = - "0x608060405234801561001057600080fd5b506104a6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100565760003560e01c806223de291461005b57806301ffc9a714610075578063150b7a021461009d578063bc197c81146100d5578063f23a6e61146100f7575b600080fd5b6100736100693660046101ce565b5050505050505050565b005b610088610083366004610279565b610117565b60405190151581526020015b60405180910390f35b6100bc6100ab3660046102aa565b630a85bd0160e11b95945050505050565b6040516001600160e01b03199091168152602001610094565b6100bc6100e336600461035e565b63bc197c8160e01b98975050505050505050565b6100bc6101053660046103f8565b63f23a6e6160e01b9695505050505050565b60006001600160e01b03198216630a85bd0160e11b148061014857506001600160e01b03198216630271189760e51b145b8061016357506001600160e01b031982166301ffc9a760e01b145b92915050565b80356001600160a01b038116811461018057600080fd5b919050565b60008083601f84011261019757600080fd5b50813567ffffffffffffffff8111156101af57600080fd5b6020830191508360208285010111156101c757600080fd5b9250929050565b60008060008060008060008060c0898b0312156101ea57600080fd5b6101f389610169565b975061020160208a01610169565b965061020f60408a01610169565b955060608901359450608089013567ffffffffffffffff8082111561023357600080fd5b61023f8c838d01610185565b909650945060a08b013591508082111561025857600080fd5b506102658b828c01610185565b999c989b5096995094979396929594505050565b60006020828403121561028b57600080fd5b81356001600160e01b0319811681146102a357600080fd5b9392505050565b6000806000806000608086880312156102c257600080fd5b6102cb86610169565b94506102d960208701610169565b935060408601359250606086013567ffffffffffffffff8111156102fc57600080fd5b61030888828901610185565b969995985093965092949392505050565b60008083601f84011261032b57600080fd5b50813567ffffffffffffffff81111561034357600080fd5b6020830191508360208260051b85010111156101c757600080fd5b60008060008060008060008060a0898b03121561037a57600080fd5b61038389610169565b975061039160208a01610169565b9650604089013567ffffffffffffffff808211156103ae57600080fd5b6103ba8c838d01610319565b909850965060608b01359150808211156103d357600080fd5b6103df8c838d01610319565b909650945060808b013591508082111561025857600080fd5b60008060008060008060a0878903121561041157600080fd5b61041a87610169565b955061042860208801610169565b94506040870135935060608701359250608087013567ffffffffffffffff81111561045257600080fd5b61045e89828a01610185565b979a969950949750929593949250505056fea26469706673582212201e04ee15e5474c1944fa1dee0970060fb1f2b95620ec7254b3caa4614ce8863c64736f6c63430008110033"; - -type TokenCallbackHandlerConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: TokenCallbackHandlerConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class TokenCallbackHandler__factory extends ContractFactory { - constructor(...args: TokenCallbackHandlerConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy(overrides || {}) as Promise; - } - override getDeployTransaction( - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(overrides || {}); - } - override attach(address: string): TokenCallbackHandler { - return super.attach(address) as TokenCallbackHandler; - } - override connect(signer: Signer): TokenCallbackHandler__factory { - return super.connect(signer) as TokenCallbackHandler__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): TokenCallbackHandlerInterface { - return new utils.Interface(_abi) as TokenCallbackHandlerInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): TokenCallbackHandler { - return new Contract( - address, - _abi, - signerOrProvider - ) as TokenCallbackHandler; - } -} diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/samples/callback/index.ts b/src/sdk/contracts/factories/account-abstraction/contracts/samples/callback/index.ts deleted file mode 100644 index 75032bf..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/samples/callback/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { TokenCallbackHandler__factory } from "./TokenCallbackHandler__factory"; diff --git a/src/sdk/contracts/factories/account-abstraction/contracts/samples/index.ts b/src/sdk/contracts/factories/account-abstraction/contracts/samples/index.ts deleted file mode 100644 index 01db08e..0000000 --- a/src/sdk/contracts/factories/account-abstraction/contracts/samples/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as callback from "./callback"; diff --git a/src/sdk/contracts/factories/account-abstraction/index.ts b/src/sdk/contracts/factories/account-abstraction/index.ts deleted file mode 100644 index 6397da0..0000000 --- a/src/sdk/contracts/factories/account-abstraction/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as contracts from "./contracts"; diff --git a/src/sdk/contracts/factories/index.ts b/src/sdk/contracts/factories/index.ts deleted file mode 100644 index 99f9076..0000000 --- a/src/sdk/contracts/factories/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as openzeppelin from "./@openzeppelin"; -export * as accountAbstraction from "./account-abstraction"; -export * as src from "./src"; diff --git a/src/sdk/contracts/factories/src/ERC6900/index.ts b/src/sdk/contracts/factories/src/ERC6900/index.ts deleted file mode 100644 index 7b3c83f..0000000 --- a/src/sdk/contracts/factories/src/ERC6900/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as libraries from "./libraries"; diff --git a/src/sdk/contracts/factories/src/ERC6900/libraries/ErrorsLib__factory.ts b/src/sdk/contracts/factories/src/ERC6900/libraries/ErrorsLib__factory.ts deleted file mode 100644 index 94c6083..0000000 --- a/src/sdk/contracts/factories/src/ERC6900/libraries/ErrorsLib__factory.ts +++ /dev/null @@ -1,339 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../../common"; -import type { - ErrorsLib, - ErrorsLibInterface, -} from "../../../../src/ERC6900/libraries/ErrorsLib"; - -const _abi = [ - { - inputs: [], - name: "AlreadyAGuardian", - type: "error", - }, - { - inputs: [], - name: "AlreadyAnOwner", - type: "error", - }, - { - inputs: [], - name: "AlwaysDenyRule", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes", - name: "revertReason", - type: "bytes", - }, - ], - name: "AuthorizeUpgradeReverted", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "plugin", - type: "address", - }, - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "ExecFromPluginExternalNotPermitted", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "plugin", - type: "address", - }, - { - internalType: "bytes4", - name: "selector", - type: "bytes4", - }, - ], - name: "ExecFromPluginNotPermitted", - type: "error", - }, - { - inputs: [], - name: "GuardianAlreadySignedProposal", - type: "error", - }, - { - inputs: [], - name: "GuardianCannotBeOwner", - type: "error", - }, - { - inputs: [], - name: "GuardianProposalResolved", - type: "error", - }, - { - inputs: [], - name: "InvalidConfiguration", - type: "error", - }, - { - inputs: [], - name: "InvalidGuardian", - type: "error", - }, - { - inputs: [], - name: "InvalidGuardianProposalId", - type: "error", - }, - { - inputs: [], - name: "InvalidTotalGuardians", - type: "error", - }, - { - inputs: [], - name: "MultipleOwnerPluginRequired", - type: "error", - }, - { - inputs: [], - name: "NoValidProposal", - type: "error", - }, - { - inputs: [], - name: "NotAGuardian", - type: "error", - }, - { - inputs: [], - name: "NotAnOwner", - type: "error", - }, - { - inputs: [], - name: "NotAuthorized", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "plugin", - type: "address", - }, - { - internalType: "uint8", - name: "functionId", - type: "uint8", - }, - { - internalType: "bytes", - name: "revertReason", - type: "bytes", - }, - ], - name: "PostExecHookReverted", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "plugin", - type: "address", - }, - { - internalType: "uint8", - name: "functionId", - type: "uint8", - }, - { - internalType: "bytes", - name: "revertReason", - type: "bytes", - }, - ], - name: "PreExecHookReverted", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "plugin", - type: "address", - }, - { - internalType: "uint8", - name: "functionId", - type: "uint8", - }, - { - internalType: "bytes", - name: "revertReason", - type: "bytes", - }, - ], - name: "PreRuntimeValidationHookFailed", - type: "error", - }, - { - inputs: [], - name: "ProposalTimelockBound", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "selector", - type: "bytes4", - }, - ], - name: "RuntimeValidationFunctionMissing", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "plugin", - type: "address", - }, - { - internalType: "uint8", - name: "functionId", - type: "uint8", - }, - { - internalType: "bytes", - name: "revertReason", - type: "bytes", - }, - ], - name: "RuntimeValidationFunctionReverted", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "plugin", - type: "address", - }, - { - internalType: "uint8", - name: "functionId", - type: "uint8", - }, - { - internalType: "address", - name: "aggregator", - type: "address", - }, - ], - name: "UnexpectedAggregator", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "selector", - type: "bytes4", - }, - ], - name: "UnrecognizedFunction", - type: "error", - }, - { - inputs: [], - name: "UnresolvedGuardianProposal", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "selector", - type: "bytes4", - }, - ], - name: "UserOpValidationFunctionMissing", - type: "error", - }, -] as const; - -const _bytecode = - "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212207e0795d11a7400097ca691701ef417358dbb0b7a5e75b5a040998958ed323ecf64736f6c63430008170033"; - -type ErrorsLibConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: ErrorsLibConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class ErrorsLib__factory extends ContractFactory { - constructor(...args: ErrorsLibConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy(overrides || {}) as Promise; - } - override getDeployTransaction( - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(overrides || {}); - } - override attach(address: string): ErrorsLib { - return super.attach(address) as ErrorsLib; - } - override connect(signer: Signer): ErrorsLib__factory { - return super.connect(signer) as ErrorsLib__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): ErrorsLibInterface { - return new utils.Interface(_abi) as ErrorsLibInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): ErrorsLib { - return new Contract(address, _abi, signerOrProvider) as ErrorsLib; - } -} diff --git a/src/sdk/contracts/factories/src/ERC6900/libraries/index.ts b/src/sdk/contracts/factories/src/ERC6900/libraries/index.ts deleted file mode 100644 index 31dc99c..0000000 --- a/src/sdk/contracts/factories/src/ERC6900/libraries/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { ErrorsLib__factory } from "./ErrorsLib__factory"; diff --git a/src/sdk/contracts/factories/src/ERC7579/access/AccessController__factory.ts b/src/sdk/contracts/factories/src/ERC7579/access/AccessController__factory.ts deleted file mode 100644 index 09e6e7a..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/access/AccessController__factory.ts +++ /dev/null @@ -1,575 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../../common"; -import type { - AccessController, - AccessControllerInterface, -} from "../../../../src/ERC7579/access/AccessController"; - -const _abi = [ - { - inputs: [], - name: "AddingInvalidGuardian", - type: "error", - }, - { - inputs: [], - name: "AddingInvalidOwner", - type: "error", - }, - { - inputs: [], - name: "AlreadySignedProposal", - type: "error", - }, - { - inputs: [], - name: "InvalidProposal", - type: "error", - }, - { - inputs: [], - name: "NotEnoughGuardians", - type: "error", - }, - { - inputs: [], - name: "OnlyGuardian", - type: "error", - }, - { - inputs: [], - name: "OnlyOwnerOrGuardianOrSelf", - type: "error", - }, - { - inputs: [], - name: "OnlyOwnerOrSelf", - type: "error", - }, - { - inputs: [], - name: "ProposalResolved", - type: "error", - }, - { - inputs: [], - name: "ProposalTimelocked", - type: "error", - }, - { - inputs: [], - name: "ProposalUnresolved", - type: "error", - }, - { - inputs: [], - name: "RemovingInvalidGuardian", - type: "error", - }, - { - inputs: [], - name: "RemovingInvalidOwner", - type: "error", - }, - { - inputs: [], - name: "WalletNeedsOwner", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newGuardian", - type: "address", - }, - ], - name: "GuardianAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "removedGuardian", - type: "address", - }, - ], - name: "GuardianRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "removedOwner", - type: "address", - }, - ], - name: "OwnerRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "discardedBy", - type: "address", - }, - ], - name: "ProposalDiscarded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "newOwnerProposed", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "proposer", - type: "address", - }, - ], - name: "ProposalSubmitted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "newTimelock", - type: "uint256", - }, - ], - name: "ProposalTimelockChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "newOwnerProposed", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "approvalCount", - type: "uint256", - }, - ], - name: "QuorumNotReached", - type: "event", - }, - { - inputs: [], - name: "AUTHOR", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "NAME", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newGuardian", - type: "address", - }, - ], - name: "addGuardian", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "addOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_newTimelock", - type: "uint256", - }, - ], - name: "changeProposalTimelock", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "discardCurrentProposal", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_proposalId", - type: "uint256", - }, - ], - name: "getProposal", - outputs: [ - { - internalType: "address", - name: "ownerProposed_", - type: "address", - }, - { - internalType: "uint256", - name: "approvalCount_", - type: "uint256", - }, - { - internalType: "address[]", - name: "guardiansApproved_", - type: "address[]", - }, - { - internalType: "bool", - name: "resolved_", - type: "bool", - }, - { - internalType: "uint256", - name: "proposedAt_", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "guardianCosign", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "guardianCount", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "guardianPropose", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_address", - type: "address", - }, - ], - name: "isGuardian", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_address", - type: "address", - }, - ], - name: "isOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "ownerCount", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "proposalId", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "proposalTimelock", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_guardian", - type: "address", - }, - ], - name: "removeGuardian", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "removeOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -const _bytecode = - "0x60e06040526103e860805261025860a0526201518060c05234801561002357600080fd5b5060805160a05160c05161106c6100536000396000610b2001526000610d9a01526000610dd2015261106c6000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c80637dcab4ce116100a2578063a7be85c611610071578063a7be85c614610238578063bf57159b14610260578063c3db883814610269578063c7f758a814610271578063ffa1ad741461029557600080fd5b80637dcab4ce146101c2578063a1c0d459146101d5578063a3f4df7e146101e8578063a526d83b1461022557600080fd5b80632f54bf6e116100e95780632f54bf6e1461017857806341c9ddff1461018b57806354387ad7146101935780637065cb481461019c57806371404156146101af57600080fd5b80630c68ba211461011b5780630db0262214610143578063173825d91461015a5780632dfca4451461016f575b600080fd5b61012e610129366004610ea0565b6102b9565b60405190151581526020015b60405180910390f35b61014c60005481565b60405190815260200161013a565b61016d610168366004610ea0565b6102d7565b005b61014c60025481565b61012e610186366004610ea0565b6103b2565b61016d6103d0565b61014c60015481565b61016d6101aa366004610ea0565b61058f565b61016d6101bd366004610ea0565b61064d565b61016d6101d0366004610ea0565b6106fe565b61016d6101e3366004610ed0565b6108e5565b6102186040518060400160405280601181526020017020b1b1b2b9b99021b7b73a3937b63632b960791b81525081565b60405161013a9190610ee9565b61016d610233366004610ea0565b610950565b61021860405180604001604052806009815260200168115d1a195c9cdc1bdd60ba1b81525081565b61014c60035481565b61016d610a0e565b61028461027f366004610ed0565b610bca565b60405161013a959493929190610f38565b610218604051806040016040528060058152602001640312e302e360dc1b81525081565b6001600160a01b031660009081526005602052604090205460ff1690565b6102e0336103b2565b806102ea57503330145b610307576040516311d9f09160e01b815260040160405180910390fd5b6001600160a01b03811615806103235750610321816103b2565b155b156103415760405163f1369ccb60e01b815260040160405180910390fd5b6001600054116103645760405163021870b960e11b815260040160405180910390fd5b61036d81610cd4565b604080513081526001600160a01b03831660208201527fe594d081b4382713733fe631966432c9cea5199afb2db5c3c1931f9f9300367991015b60405180910390a150565b6001600160a01b031660009081526004602052604090205460ff1690565b6103d9336102b9565b6103f657604051636570ecab60e11b815260040160405180910390fd5b60025460000361041957604051631dc0650160e31b815260040160405180910390fd5b610424600254610d07565b15610442576040516320181a3560e21b815260040160405180910390fd5b600254600090815260066020526040902054600160a01b900460ff161561047c57604051638b19dbcb60e01b815260040160405180910390fd5b60028054600090815260066020908152604080832060019081018054808301825590855292842090920180546001600160a01b0319163317905583548352822090920180549091906104cf908490610fbb565b90915550506002546000818152600660205260409020546001600160a01b0316906104f990610d7e565b1561052c576002546000908152600660205260409020805460ff60a01b1916600160a01b17905561052981610e0a565b50565b60028054600081815260066020908152604091829020909301548151308152938401929092526001600160a01b0384169083015260608201527f7afa94f51443879f537b9be4f09d5d734c2c233b788d2f6af6565add34706bab906080016103a7565b610598336103b2565b806105a257503330145b6105bf576040516311d9f09160e01b815260040160405180910390fd5b6001600160a01b03811615806105d957506105d9816102b9565b806105e857506105e8816103b2565b1561060657604051631a1aefc560e21b815260040160405180910390fd5b61060f81610e0a565b604080513081526001600160a01b03831660208201527fc82bdbbf677a2462f2a7e22e4ba9abd209496b69cd7b868b3b1d28f76e09a40a91016103a7565b610656336103b2565b8061066057503330145b61067d576040516311d9f09160e01b815260040160405180910390fd5b6001600160a01b03811615806106995750610697816102b9565b155b156106b75760405163985f453960e01b815260040160405180910390fd5b6106c081610e3b565b604080513081526001600160a01b03831660208201527fee943cdb81826d5909c559c6b1ae6908fcaf2dbc16c4b730346736b486283e8b91016103a7565b610707336102b9565b61072457604051636570ecab60e11b815260040160405180910390fd5b6001600160a01b038116158061073e575061073e816102b9565b8061074d575061074d816103b2565b1561076b57604051631a1aefc560e21b815260040160405180910390fd5b6003600154101561078f57604051636bb07db960e11b815260040160405180910390fd5b600254600090815260066020526040902060010154158015906107cb5750600254600090815260066020526040902054600160a01b900460ff16155b156107e957604051639fa6dc5760e01b815260040160405180910390fd5b6002546107f7906001610fbb565b6002818155600091825260066020908152604080842080546001600160a01b0387166001600160a01b03199182161790915583548552818520600190810180548083018255908752938620909301805490911633179055825484528320909101805491929091610868908490610fbb565b9091555050600280546000908152600660209081526040808320805460ff60a01b1916905583548352918290204260039091015591548151308152928301526001600160a01b038316908201523360608201527f9fb4a8d051aad8866705f4d52eb05a29939e15ad43dd4aab82cf31806759eac3906080016103a7565b6108ee336103b2565b806108f857503330145b610915576040516311d9f09160e01b815260040160405180910390fd5b600381905560408051308152602081018390527f47870c5ed1a3a6940ad17950265b8b50d279f73d7d026febbef88fd3ffcb934b91016103a7565b610959336103b2565b8061096357503330145b610980576040516311d9f09160e01b815260040160405180910390fd5b6001600160a01b038116158061099a575061099a816102b9565b806109a957506109a9816103b2565b156109c75760405163053bd11560e31b815260040160405180910390fd5b6109d081610e6f565b604080513081526001600160a01b03831660208201527fbc3292102fa77e083913064b282926717cdfaede4d35f553d66366c0a3da755a91016103a7565b610a17336103b2565b80610a265750610a26336102b9565b80610a3057503330145b610a4d576040516302d8be6160e21b815260040160405180910390fd5b600254600090815260066020526040902054600160a01b900460ff1615610a8757604051638b19dbcb60e01b815260040160405180910390fd5b610a90336102b9565b8015610a9e57506000600354115b15610ae557600380546002546000908152600660205260409020909101544291610ac791610fbb565b10610ae55760405163ae18e9c760e01b815260040160405180910390fd5b610aee336102b9565b8015610afa5750600354155b15610b64576002546000908152600660205260409020600301544290610b469062ffffff7f00000000000000000000000000000000000000000000000000000000000000001690610fbb565b10610b645760405163ae18e9c760e01b815260040160405180910390fd5b60028054600090815260066020908152604091829020805460ff60a01b1916600160a01b179055915481513081529283015233908201527faf7f1090397448391393dc134b45d6d20e79a9d2a8f5a82fb42d1514a55ecbf99060600160405180910390a1565b60008060608180851580610bdf575060025486115b15610bfd57604051631dc0650160e31b815260040160405180910390fd5b6000868152600660209081526040808320815160a08101835281546001600160a01b0381168252600160a01b900460ff16151581850152600182018054845181870281018701865281815292959394860193830182828015610c8857602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610c6a575b5050505050815260200160028201548152602001600382015481525050905080600001518160600151826040015183602001518460800151955095509550955095505091939590929450565b6001600160a01b0381166000908152600460205260408120805460ff1916905554610d0190600190610fd4565b60005550565b6000805b600083815260066020526040902060010154811015610d75576000838152600660205260409020600101805433919083908110610d4a57610d4a610fe7565b6000918252602090912001546001600160a01b031603610d6d5750600192915050565b600101610d0b565b50600092915050565b600154600082815260066020526040812060020154909161ffff7f00000000000000000000000000000000000000000000000000000000000000001691610df8906fffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690610ffd565b610e029190611014565b101592915050565b6001600160a01b0381166000908152600460205260408120805460ff191660019081179091559054610d0191610fbb565b6001600160a01b0381166000908152600560205260409020805460ff1916905560018054610e699190610fd4565b60015550565b6001600160a01b0381166000908152600560205260409020805460ff191660019081179091558054610e6991610fbb565b600060208284031215610eb257600080fd5b81356001600160a01b0381168114610ec957600080fd5b9392505050565b600060208284031215610ee257600080fd5b5035919050565b60006020808352835180602085015260005b81811015610f1757858101830151858201604001528201610efb565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038681168252602080830187905260a060408401819052865190840181905260009287830192909160c0860190855b81811015610f8c578551851683529483019491830191600101610f6e565b5050961515606086015250505050608001529392505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610fce57610fce610fa5565b92915050565b81810381811115610fce57610fce610fa5565b634e487b7160e01b600052603260045260246000fd5b8082028115828204841417610fce57610fce610fa5565b60008261103157634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212205bb02889167c710b0e882f7644a58f0f81bbc5e69ab85dd7eff1fea8a7ac582f64736f6c63430008170033"; - -type AccessControllerConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: AccessControllerConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class AccessController__factory extends ContractFactory { - constructor(...args: AccessControllerConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy(overrides || {}) as Promise; - } - override getDeployTransaction( - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(overrides || {}); - } - override attach(address: string): AccessController { - return super.attach(address) as AccessController; - } - override connect(signer: Signer): AccessController__factory { - return super.connect(signer) as AccessController__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): AccessControllerInterface { - return new utils.Interface(_abi) as AccessControllerInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): AccessController { - return new Contract(address, _abi, signerOrProvider) as AccessController; - } -} diff --git a/src/sdk/contracts/factories/src/ERC7579/access/index.ts b/src/sdk/contracts/factories/src/ERC7579/access/index.ts deleted file mode 100644 index dc7ff6c..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/access/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { AccessController__factory } from "./AccessController__factory"; diff --git a/src/sdk/contracts/factories/src/ERC7579/index.ts b/src/sdk/contracts/factories/src/ERC7579/index.ts deleted file mode 100644 index b9cdd8d..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as access from "./access"; -export * as interfaces from "./interfaces"; -export * as libraries from "./libraries"; -export * as modules from "./modules"; -export * as wallet from "./wallet"; diff --git a/src/sdk/contracts/factories/src/ERC7579/interfaces/IAccessController__factory.ts b/src/sdk/contracts/factories/src/ERC7579/interfaces/IAccessController__factory.ts deleted file mode 100644 index 874983b..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/interfaces/IAccessController__factory.ts +++ /dev/null @@ -1,377 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IAccessController, - IAccessControllerInterface, -} from "../../../../src/ERC7579/interfaces/IAccessController"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newGuardian", - type: "address", - }, - ], - name: "GuardianAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "removedGuardian", - type: "address", - }, - ], - name: "GuardianRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "removedOwner", - type: "address", - }, - ], - name: "OwnerRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "discardedBy", - type: "address", - }, - ], - name: "ProposalDiscarded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "newOwnerProposed", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "proposer", - type: "address", - }, - ], - name: "ProposalSubmitted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "newTimelock", - type: "uint256", - }, - ], - name: "ProposalTimelockChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "newOwnerProposed", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "approvalCount", - type: "uint256", - }, - ], - name: "QuorumNotReached", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "_newGuardian", - type: "address", - }, - ], - name: "addGuardian", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "addOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_newTimelock", - type: "uint256", - }, - ], - name: "changeProposalTimelock", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "discardCurrentProposal", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_proposalId", - type: "uint256", - }, - ], - name: "getProposal", - outputs: [ - { - internalType: "address", - name: "ownerProposed_", - type: "address", - }, - { - internalType: "uint256", - name: "approvalCount_", - type: "uint256", - }, - { - internalType: "address[]", - name: "guardiansApproved_", - type: "address[]", - }, - { - internalType: "bool", - name: "resolved_", - type: "bool", - }, - { - internalType: "uint256", - name: "proposedAt_", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "guardianCosign", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "guardianPropose", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_address", - type: "address", - }, - ], - name: "isGuardian", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_address", - type: "address", - }, - ], - name: "isOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_guardian", - type: "address", - }, - ], - name: "removeGuardian", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "removeOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class IAccessController__factory { - static readonly abi = _abi; - static createInterface(): IAccessControllerInterface { - return new utils.Interface(_abi) as IAccessControllerInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IAccessController { - return new Contract(address, _abi, signerOrProvider) as IAccessController; - } -} diff --git a/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig_Hook__factory.ts b/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig_Hook__factory.ts deleted file mode 100644 index 077b3de..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig_Hook__factory.ts +++ /dev/null @@ -1,107 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IAccountConfig_Hook, - IAccountConfig_HookInterface, -} from "../../../../../src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig_Hook"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "DisableHook", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "EnableHook", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "hook", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "installHook", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "hook", - type: "address", - }, - ], - name: "isHookInstalled", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "hook", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "uninstallHook", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class IAccountConfig_Hook__factory { - static readonly abi = _abi; - static createInterface(): IAccountConfig_HookInterface { - return new utils.Interface(_abi) as IAccountConfig_HookInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IAccountConfig_Hook { - return new Contract(address, _abi, signerOrProvider) as IAccountConfig_Hook; - } -} diff --git a/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig__factory.ts b/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig__factory.ts deleted file mode 100644 index 6ee2eb2..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig__factory.ts +++ /dev/null @@ -1,243 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IAccountConfig, - IAccountConfigInterface, -} from "../../../../../src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "DisableExecutor", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "DisableValidator", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "EnableExecutor", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "EnableValidator", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "executor", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "installExecutor", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "fallbackHandler", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "installFallback", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "validator", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "installValidator", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "executor", - type: "address", - }, - ], - name: "isExecutorInstalled", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "fallbackHandler", - type: "address", - }, - ], - name: "isFallbackInstalled", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "validator", - type: "address", - }, - ], - name: "isValidatorInstalled", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "executor", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "uninstallExecutor", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "fallbackHandler", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "uninstallFallback", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "validator", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "uninstallValidator", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class IAccountConfig__factory { - static readonly abi = _abi; - static createInterface(): IAccountConfigInterface { - return new utils.Interface(_abi) as IAccountConfigInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IAccountConfig { - return new Contract(address, _abi, signerOrProvider) as IAccountConfig; - } -} diff --git a/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IEtherspotWallet7579__factory.ts b/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IEtherspotWallet7579__factory.ts deleted file mode 100644 index 5669822..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IEtherspotWallet7579__factory.ts +++ /dev/null @@ -1,443 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IEtherspotWallet7579, - IEtherspotWallet7579Interface, -} from "../../../../../src/ERC7579/interfaces/IEtherspotWallet7579.sol/IEtherspotWallet7579"; - -const _abi = [ - { - inputs: [], - name: "Unsupported", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "DisableExecutor", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "DisableValidator", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "EnableExecutor", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "EnableValidator", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "result", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - internalType: "struct IExecution.Execution[]", - name: "executions", - type: "tuple[]", - }, - ], - name: "executeBatch", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - internalType: "struct IExecution.Execution[]", - name: "executions", - type: "tuple[]", - }, - ], - name: "executeBatchFromExecutor", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - name: "executeDelegateCall", - outputs: [ - { - internalType: "bytes", - name: "result", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - name: "executeDelegateCallFromExecutor", - outputs: [ - { - internalType: "bytes", - name: "result", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - name: "executeFromExecutor", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "initializeAccount", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "executor", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "installExecutor", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "fallbackHandler", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "installFallback", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "validator", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "installValidator", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "executor", - type: "address", - }, - ], - name: "isExecutorInstalled", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "fallbackHandler", - type: "address", - }, - ], - name: "isFallbackInstalled", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "validator", - type: "address", - }, - ], - name: "isValidatorInstalled", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "executor", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "uninstallExecutor", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "fallbackHandler", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "uninstallFallback", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "validator", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "uninstallValidator", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class IEtherspotWallet7579__factory { - static readonly abi = _abi; - static createInterface(): IEtherspotWallet7579Interface { - return new utils.Interface(_abi) as IEtherspotWallet7579Interface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IEtherspotWallet7579 { - return new Contract( - address, - _abi, - signerOrProvider - ) as IEtherspotWallet7579; - } -} diff --git a/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecutionUnsafe__factory.ts b/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecutionUnsafe__factory.ts deleted file mode 100644 index e6831c6..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecutionUnsafe__factory.ts +++ /dev/null @@ -1,74 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IExecutionUnsafe, - IExecutionUnsafeInterface, -} from "../../../../../src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecutionUnsafe"; - -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - name: "executeDelegateCall", - outputs: [ - { - internalType: "bytes", - name: "result", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - name: "executeDelegateCallFromExecutor", - outputs: [ - { - internalType: "bytes", - name: "result", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, -] as const; - -export class IExecutionUnsafe__factory { - static readonly abi = _abi; - static createInterface(): IExecutionUnsafeInterface { - return new utils.Interface(_abi) as IExecutionUnsafeInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IExecutionUnsafe { - return new Contract(address, _abi, signerOrProvider) as IExecutionUnsafe; - } -} diff --git a/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecution__factory.ts b/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecution__factory.ts deleted file mode 100644 index 059a61d..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecution__factory.ts +++ /dev/null @@ -1,161 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IExecution, - IExecutionInterface, -} from "../../../../../src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecution"; - -const _abi = [ - { - inputs: [], - name: "Unsupported", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "result", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - internalType: "struct IExecution.Execution[]", - name: "executions", - type: "tuple[]", - }, - ], - name: "executeBatch", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - internalType: "struct IExecution.Execution[]", - name: "executions", - type: "tuple[]", - }, - ], - name: "executeBatchFromExecutor", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - name: "executeFromExecutor", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, -] as const; - -export class IExecution__factory { - static readonly abi = _abi; - static createInterface(): IExecutionInterface { - return new utils.Interface(_abi) as IExecutionInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IExecution { - return new Contract(address, _abi, signerOrProvider) as IExecution; - } -} diff --git a/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/index.ts b/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/index.ts deleted file mode 100644 index 8eff275..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/interfaces/IEtherspotWallet7579.sol/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { IAccountConfig__factory } from "./IAccountConfig__factory"; -export { IAccountConfig_Hook__factory } from "./IAccountConfig_Hook__factory"; -export { IEtherspotWallet7579__factory } from "./IEtherspotWallet7579__factory"; -export { IExecution__factory } from "./IExecution__factory"; -export { IExecutionUnsafe__factory } from "./IExecutionUnsafe__factory"; diff --git a/src/sdk/contracts/factories/src/ERC7579/interfaces/index.ts b/src/sdk/contracts/factories/src/ERC7579/interfaces/index.ts deleted file mode 100644 index c792dff..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/interfaces/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as iEtherspotWallet7579Sol from "./IEtherspotWallet7579.sol"; -export { IAccessController__factory } from "./IAccessController__factory"; diff --git a/src/sdk/contracts/factories/src/ERC7579/libraries/ErrorsLib__factory.ts b/src/sdk/contracts/factories/src/ERC7579/libraries/ErrorsLib__factory.ts deleted file mode 100644 index b047c50..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/libraries/ErrorsLib__factory.ts +++ /dev/null @@ -1,133 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../../common"; -import type { - ErrorsLib, - ErrorsLibInterface, -} from "../../../../src/ERC7579/libraries/ErrorsLib"; - -const _abi = [ - { - inputs: [], - name: "AddingInvalidGuardian", - type: "error", - }, - { - inputs: [], - name: "AddingInvalidOwner", - type: "error", - }, - { - inputs: [], - name: "AlreadySignedProposal", - type: "error", - }, - { - inputs: [], - name: "InvalidProposal", - type: "error", - }, - { - inputs: [], - name: "NotEnoughGuardians", - type: "error", - }, - { - inputs: [], - name: "OnlyGuardian", - type: "error", - }, - { - inputs: [], - name: "OnlyOwnerOrGuardianOrSelf", - type: "error", - }, - { - inputs: [], - name: "OnlyOwnerOrSelf", - type: "error", - }, - { - inputs: [], - name: "ProposalResolved", - type: "error", - }, - { - inputs: [], - name: "ProposalTimelocked", - type: "error", - }, - { - inputs: [], - name: "ProposalUnresolved", - type: "error", - }, - { - inputs: [], - name: "RemovingInvalidGuardian", - type: "error", - }, - { - inputs: [], - name: "RemovingInvalidOwner", - type: "error", - }, - { - inputs: [], - name: "WalletNeedsOwner", - type: "error", - }, -] as const; - -const _bytecode = - "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208d77a094057176932190cc82a0949e5656ae0e3c73149fc8a0e34e957dade28d64736f6c63430008170033"; - -type ErrorsLibConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: ErrorsLibConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class ErrorsLib__factory extends ContractFactory { - constructor(...args: ErrorsLibConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy(overrides || {}) as Promise; - } - override getDeployTransaction( - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(overrides || {}); - } - override attach(address: string): ErrorsLib { - return super.attach(address) as ErrorsLib; - } - override connect(signer: Signer): ErrorsLib__factory { - return super.connect(signer) as ErrorsLib__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): ErrorsLibInterface { - return new utils.Interface(_abi) as ErrorsLibInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): ErrorsLib { - return new Contract(address, _abi, signerOrProvider) as ErrorsLib; - } -} diff --git a/src/sdk/contracts/factories/src/ERC7579/libraries/index.ts b/src/sdk/contracts/factories/src/ERC7579/libraries/index.ts deleted file mode 100644 index 31dc99c..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/libraries/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { ErrorsLib__factory } from "./ErrorsLib__factory"; diff --git a/src/sdk/contracts/factories/src/ERC7579/modules/MultipleOwnerECDSAValidator__factory.ts b/src/sdk/contracts/factories/src/ERC7579/modules/MultipleOwnerECDSAValidator__factory.ts deleted file mode 100644 index 9c5a725..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/modules/MultipleOwnerECDSAValidator__factory.ts +++ /dev/null @@ -1,251 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../../common"; -import type { - MultipleOwnerECDSAValidator, - MultipleOwnerECDSAValidatorInterface, -} from "../../../../src/ERC7579/modules/MultipleOwnerECDSAValidator"; - -const _abi = [ - { - inputs: [ - { - internalType: "bytes4", - name: "functionSig", - type: "bytes4", - }, - ], - name: "InvalidExecution", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - ], - name: "InvalidTargetAddress", - type: "error", - }, - { - inputs: [], - name: "InvalidTargetCall", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "typeID", - type: "uint256", - }, - ], - name: "isModuleType", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "bytes32", - name: "hash", - type: "bytes32", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "isValidSignatureWithSender", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onInstall", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onUninstall", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct IERC4337.UserOperation", - name: "userOp", - type: "tuple", - }, - { - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - ], - name: "validateUserOp", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; - -const _bytecode = - "0x608060405234801561001057600080fd5b50610497806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80636d61fe701461005c5780638a91b0e31461005c578063ecd0596114610070578063f551e2ee14610099578063fff35b72146100ca575b600080fd5b61006e61006a3660046102e3565b5050565b005b61008461007e366004610325565b60011490565b60405190151581526020015b60405180910390f35b6100b16100a736600461033e565b6000949350505050565b6040516001600160e01b03199091168152602001610090565b6100dd6100d83660046103a6565b6100eb565b604051908152602001610090565b60008061011d836020527b19457468657265756d205369676e6564204d6573736167653a0a3332600052603c60042090565b9050600061016f6101326101408701876103f1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086939250506102099050565b90506001600160a01b03811615806101ec57506040516317aa5fb760e11b81526001600160a01b03821660048201523390632f54bf6e90602401602060405180830381865afa1580156101c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101ea9190610438565b155b156101fc57600192505050610203565b6000925050505b92915050565b604051600190836000526020830151604052604083510361024557604083015160ff81901c601b016020526001600160ff1b031660605261026b565b604183510361026657606083015160001a602052604083015160605261026b565b600091505b6020600160806000855afa5191503d61028c57638baa579f6000526004601cfd5b600060605260405292915050565b60008083601f8401126102ac57600080fd5b50813567ffffffffffffffff8111156102c457600080fd5b6020830191508360208285010111156102dc57600080fd5b9250929050565b600080602083850312156102f657600080fd5b823567ffffffffffffffff81111561030d57600080fd5b6103198582860161029a565b90969095509350505050565b60006020828403121561033757600080fd5b5035919050565b6000806000806060858703121561035457600080fd5b84356001600160a01b038116811461036b57600080fd5b935060208501359250604085013567ffffffffffffffff81111561038e57600080fd5b61039a8782880161029a565b95989497509550505050565b600080604083850312156103b957600080fd5b823567ffffffffffffffff8111156103d057600080fd5b830161016081860312156103e357600080fd5b946020939093013593505050565b6000808335601e1984360301811261040857600080fd5b83018035915067ffffffffffffffff82111561042357600080fd5b6020019150368190038213156102dc57600080fd5b60006020828403121561044a57600080fd5b8151801515811461045a57600080fd5b939250505056fea264697066735822122036bd3e1fce05431ea8ff3ebb7b3cef0b85122211ada4d99f17200148e3e32eda64736f6c63430008170033"; - -type MultipleOwnerECDSAValidatorConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: MultipleOwnerECDSAValidatorConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class MultipleOwnerECDSAValidator__factory extends ContractFactory { - constructor(...args: MultipleOwnerECDSAValidatorConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy( - overrides || {} - ) as Promise; - } - override getDeployTransaction( - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(overrides || {}); - } - override attach(address: string): MultipleOwnerECDSAValidator { - return super.attach(address) as MultipleOwnerECDSAValidator; - } - override connect(signer: Signer): MultipleOwnerECDSAValidator__factory { - return super.connect(signer) as MultipleOwnerECDSAValidator__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): MultipleOwnerECDSAValidatorInterface { - return new utils.Interface(_abi) as MultipleOwnerECDSAValidatorInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): MultipleOwnerECDSAValidator { - return new Contract( - address, - _abi, - signerOrProvider - ) as MultipleOwnerECDSAValidator; - } -} diff --git a/src/sdk/contracts/factories/src/ERC7579/modules/index.ts b/src/sdk/contracts/factories/src/ERC7579/modules/index.ts deleted file mode 100644 index bcc968e..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/modules/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { MultipleOwnerECDSAValidator__factory } from "./MultipleOwnerECDSAValidator__factory"; diff --git a/src/sdk/contracts/factories/src/ERC7579/modules/validator/ERC20SessionKeyValidator__factory.ts b/src/sdk/contracts/factories/src/ERC7579/modules/validator/ERC20SessionKeyValidator__factory.ts deleted file mode 100644 index c41c6ff..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/modules/validator/ERC20SessionKeyValidator__factory.ts +++ /dev/null @@ -1,703 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../../../common"; -import { - ERC20SessionKeyValidator, - ERC20SessionKeyValidatorInterface -} from "../../../../../src/ERC7579/modules/ERC20SessionKeyValidator" - -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "smartAccount", - type: "address", - }, - ], - name: "AlreadyInitialized", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "total", - type: "uint256", - }, - { - internalType: "uint256", - name: "spendCap", - type: "uint256", - }, - ], - name: "ERC20SKV_ExceedsExecutorSpendCap", - type: "error", - }, - { - inputs: [], - name: "ERC20SKV_InsufficientApprovalAmount", - type: "error", - }, - { - inputs: [], - name: "ERC20SKV_InvalidSessionKey", - type: "error", - }, - { - inputs: [], - name: "ERC20SKV_SessionKeySpendLimitExceeded", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "sessionKey", - type: "address", - }, - ], - name: "ERC20SKV_SessionPaused", - type: "error", - }, - { - inputs: [], - name: "ERC20SKV_UnsuportedToken", - type: "error", - }, - { - inputs: [], - name: "ERC20SKV_UnsupportedInterface", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "selectorUsed", - type: "bytes4", - }, - ], - name: "ERC20SKV_UnsupportedSelector", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - ], - name: "InvalidTargetAddress", - type: "error", - }, - { - inputs: [], - name: "NotImplemented", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "smartAccount", - type: "address", - }, - ], - name: "NotInitialized", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "newCap", - type: "uint256", - }, - ], - name: "ERC20SKV_ExecutorSpendCapReduced", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "sessionKey", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "wallet", - type: "address", - }, - ], - name: "ERC20SKV_SessionKeyDisabled", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "sessionKey", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "wallet", - type: "address", - }, - ], - name: "ERC20SKV_SessionKeyEnabled", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "newLimit", - type: "uint256", - }, - ], - name: "ERC20SKV_SessionKeySpentLimitReduced", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "_sessionKey", - type: "address", - }, - ], - name: "checkSessionKeyPaused", - outputs: [ - { - internalType: "bool", - name: "paused", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_session", - type: "address", - }, - ], - name: "disableSessionKey", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "_sessionData", - type: "bytes", - }, - ], - name: "enableSessionKey", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "getAssociatedSessionKeys", - outputs: [ - { - internalType: "address[]", - name: "keys", - type: "address[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_sessionKey", - type: "address", - }, - ], - name: "getSessionKeyData", - outputs: [ - { - components: [ - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - { - internalType: "bytes4", - name: "funcSelector", - type: "bytes4", - }, - { - internalType: "uint256", - name: "spendingLimit", - type: "uint256", - }, - { - internalType: "uint48", - name: "validAfter", - type: "uint48", - }, - { - internalType: "uint48", - name: "validUntil", - type: "uint48", - }, - { - internalType: "bool", - name: "paused", - type: "bool", - }, - ], - internalType: "struct ERC20SessionKeyValidator.SessionData", - name: "data", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "smartAccount", - type: "address", - }, - ], - name: "isInitialized", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "moduleTypeId", - type: "uint256", - }, - ], - name: "isModuleType", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "bytes32", - name: "hash", - type: "bytes32", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "isValidSignatureWithSender", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onInstall", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onUninstall", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_oldSessionKey", - type: "address", - }, - { - internalType: "bytes", - name: "_newSessionData", - type: "bytes", - }, - ], - name: "rotateSessionKey", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "sessionKey", - type: "address", - }, - { - internalType: "address", - name: "wallet", - type: "address", - }, - ], - name: "sessionData", - outputs: [ - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - { - internalType: "bytes4", - name: "funcSelector", - type: "bytes4", - }, - { - internalType: "uint256", - name: "spendingLimit", - type: "uint256", - }, - { - internalType: "uint48", - name: "validAfter", - type: "uint48", - }, - { - internalType: "uint48", - name: "validUntil", - type: "uint48", - }, - { - internalType: "bool", - name: "paused", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_sessionKey", - type: "address", - }, - ], - name: "toggleSessionKeyPause", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_sessionKey", - type: "address", - }, - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "bytes32", - name: "accountGasLimits", - type: "bytes32", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "bytes32", - name: "gasFees", - type: "bytes32", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct PackedUserOperation", - name: "userOp", - type: "tuple", - }, - ], - name: "validateSessionKeyParams", - outputs: [ - { - internalType: "bool", - name: "valid", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "bytes32", - name: "accountGasLimits", - type: "bytes32", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "bytes32", - name: "gasFees", - type: "bytes32", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct PackedUserOperation", - name: "userOp", - type: "tuple", - }, - { - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - ], - name: "validateUserOp", - outputs: [ - { - internalType: "uint256", - name: "validationData", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "wallet", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "walletSessionKeys", - outputs: [ - { - internalType: "address", - name: "assocSessionKeys", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - ] as const; - - const _bytecode = - "0x608060405234801561001057600080fd5b506114a0806100206000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c8063c037ee1911610097578063d8d38e4211610066578063d8d38e4214610463578063e08dd00814610476578063ecd059611461048b578063f551e2ee1461049f57600080fd5b8063c037ee1914610407578063c602e59c1461042a578063cc8cbd281461043d578063d60b347f1461045057600080fd5b80636d61fe70116100d35780636d61fe70146103a95780638a91b0e3146103a95780638aaa6a40146103bb57806397003203146103e657600080fd5b8063110891c11461010557806320cbdcc61461026f578063495079a0146102c357806352721fdd146102d6575b600080fd5b6101ef610113366004611013565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810191909152506001600160a01b039081166000908152600160208181526040808420338552825292839020835160e08082018652825496871682526001600160e01b0319600160a01b8804821b811694830194909452600160c01b90960490951b9091169284019290925281015460608301526002015465ffffffffffff8082166080840152600160301b82041660a083015260ff600160601b90910416151560c082015290565b6040805182516001600160a01b031681526020808401516001600160e01b0319908116918301919091528383015116918101919091526060808301519082015260808083015165ffffffffffff9081169183019190915260a0808401519091169082015260c09182015115159181019190915260e0015b60405180910390f35b6102c161027d366004611013565b6001600160a01b031660009081526001602090815260408083203384529091529020600201805460ff60601b198116600160601b9182900460ff1615909102179055565b005b6102c16102d136600461107e565b6104ba565b61034f6102e43660046110c0565b600160208181526000938452604080852090915291835291208054918101546002909101546001600160a01b03831692600160a01b810460e090811b93600160c01b909204901b9165ffffffffffff80821691600160301b810490911690600160601b900460ff1687565b604080516001600160a01b039890981688526001600160e01b031996871660208901529490951693860193909352606085019190915265ffffffffffff90811660808501521660a0830152151560c082015260e001610266565b6102c16103b736600461107e565b5050565b6103ce6103c93660046110f3565b61081a565b6040516001600160a01b039091168152602001610266565b6103f96103f4366004611136565b610852565b604051908152602001610266565b61041a61041536600461117b565b610940565b6040519015158152602001610266565b6102c16104383660046111c9565b610ba3565b61041a61044b366004611013565b610bbb565b61041a61045e366004611013565b610bee565b6102c1610471366004611013565b610c09565b61047e610c95565b604051610266919061121c565b61041a610499366004611269565b60011490565b6104ad61045e366004611282565b60405161026691906112dc565b60006104c960148284866112f1565b6104d29161131b565b60601c905060006104e76028601485876112f1565b6104f09161131b565b60601c90506000610505602c602886886112f1565b61050e91611350565b905060006105206030602c87896112f1565b61052991611350565b9050600061053b60506030888a6112f1565b6105449161137e565b9050600061055660566050898b6112f1565b61055f9161139c565b60d01c90506000610574605c60568a8c6112f1565b61057d9161139c565b60d01c905061058b84610cfe565b6105b3578360405163a47eb18d60e01b81526004016105aa91906112dc565b60405180910390fd5b6040518060e00160405280876001600160a01b03168152602001866001600160e01b0319168152602001856001600160e01b03191681526020018481526020018365ffffffffffff1681526020018265ffffffffffff1681526020016000151581525060016000896001600160a01b03166001600160a01b031681526020019081526020016000206000336001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060208201518160000160146101000a81548163ffffffff021916908360e01c021790555060408201518160000160186101000a81548163ffffffff021916908360e01c02179055506060820151816001015560808201518160020160006101000a81548165ffffffffffff021916908365ffffffffffff16021790555060a08201518160020160066101000a81548165ffffffffffff021916908365ffffffffffff16021790555060c082015181600201600c6101000a81548160ff021916908315150217905550905050600080336001600160a01b03166001600160a01b03168152602001908152602001600020879080600181540180825580915050600190039060005260206000200160009091909190916101000a8154816001600160a01b0302191690836001600160a01b031602179055507f3c8d6097a1246293dc66a3eeb0db267cb28a5b6c3367e2de5f331659222eb1ff87336040516108079291906001600160a01b0392831681529116602082015260400190565b60405180910390a1505050505050505050565b6000602052816000526040600020818154811061083657600080fd5b6000918252602090912001546001600160a01b03169150829050565b600080610884836020527b19457468657265756d205369676e6564204d6573736167653a0a3332600052603c60042090565b905060006108d48261089a6101008801886113ca565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610e5992505050565b90506108e08186610940565b6108ef5760019250505061093a565b6001600160a01b03811660009081526001602090815260408083203384529091528120600281015490916109349165ffffffffffff600160301b820481169116610eea565b93505050505b92915050565b6000368161095160608501856113ca565b9150915060008060008060006109678787610f22565b6001600160a01b038f16600090815260016020908152604080832033845290915290206002810154959a509398509196509450925090600160301b900465ffffffffffff1615806109cb5750600281015442600160301b90910465ffffffffffff16105b156109e957604051636ed16c7960e01b815260040160405180910390fd5b80546001600160a01b03868116911614610a165760405163218d2fb360e11b815260040160405180910390fd5b80546040516301ffc9a760e01b81526001600160a01b038716916301ffc9a791610a4d91600160a01b900460e01b906004016112dc565b602060405180830381865afa158015610a6a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a8e9190611411565b1515600003610ab057604051630863587160e11b815260040160405180910390fd5b80546001600160e01b0319878116600160c01b90920460e01b1614610aea578560405163a47eb18d60e01b81526004016105aa91906112dc565b8060010154821115610b0f57604051638d6d48cb60e01b815260040160405180910390fd5b610b188b610bbb565b15610b41576040516374d12a8360e01b81526001600160a01b038c1660048201526024016105aa565b818160010154610b519190611433565b600182018190556040805184815260208101929092527fb10c143a4d4e1ac2eb4bef814c5b1904c6b22e51893cb1124ff8be22f8fdb55f910160405180910390a15060019a9950505050505050505050565b610bac83610c09565b610bb682826104ba565b505050565b6001600160a01b03166000908152600160209081526040808320338452909152902060020154600160601b900460ff1690565b600060405163d623472560e01b815260040160405180910390fd5b6001600160a01b03811660008181526001602081815260408084203380865290835281852080546001600160e01b031916815593840194909455600290920180546cffffffffffffffffffffffffff1916905581519384528301919091527f3552ecdbdb725cc8b621be8a316008bbcb5bc1e72e9a6b08da9b20bd7f78266d910160405180910390a150565b3360009081526020818152604091829020805483518184028101840190945280845260609392830182828015610cf457602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610cd6575b5050505050905090565b60408051600480825260a082019092526000918291906020820160808036833701905050905063095ea7b360e01b81600081518110610d3f57610d3f611454565b6001600160e01b031990921660209283029190910190910152805163a9059cbb60e01b9082906001908110610d7657610d76611454565b6001600160e01b03199092166020928302919091019091015280516323b872dd60e01b9082906002908110610dad57610dad611454565b6001600160e01b031990921660209283029190910190910152805163010a5c0b60e41b9082906003908110610de457610de4611454565b6001600160e01b03199092166020928302919091019091015260005b8151811015610e4f57818181518110610e1b57610e1b611454565b60200260200101516001600160e01b031916846001600160e01b03191603610e47575060019392505050565b600101610e00565b5060009392505050565b6040516001908360005260208301516040526040835103610e9557604083015160ff81901c601b016020526001600160ff1b0316606052610ebb565b6041835103610eb657606083015160001a6020526040830151606052610ebb565b600091505b6020600160806000855afa5191503d610edc57638baa579f6000526004601cfd5b600060605260405292915050565b600060d08265ffffffffffff16901b60a08465ffffffffffff16901b85610f12576000610f15565b60015b60ff161717949350505050565b6000600483013581808086356001600160e01b0319811663095ea7b360e01b1480610f5d57506001600160e01b0319811663a9059cbb60e01b145b80610f7857506001600160e01b0319811663010a5c0b60e41b145b15610f9a57945050505060048401359050602484013560006044860135610fed565b63dc478d2360e01b6001600160e01b0319821601610fd257945050505060048401359050604484013560248501356064860135610fed565b8060405163a47eb18d60e01b81526004016105aa91906112dc565b9295509295909350565b80356001600160a01b038116811461100e57600080fd5b919050565b60006020828403121561102557600080fd5b61102e82610ff7565b9392505050565b60008083601f84011261104757600080fd5b50813567ffffffffffffffff81111561105f57600080fd5b60208301915083602082850101111561107757600080fd5b9250929050565b6000806020838503121561109157600080fd5b823567ffffffffffffffff8111156110a857600080fd5b6110b485828601611035565b90969095509350505050565b600080604083850312156110d357600080fd5b6110dc83610ff7565b91506110ea60208401610ff7565b90509250929050565b6000806040838503121561110657600080fd5b61110f83610ff7565b946020939093013593505050565b6000610120828403121561113057600080fd5b50919050565b6000806040838503121561114957600080fd5b823567ffffffffffffffff81111561116057600080fd5b61116c8582860161111d565b95602094909401359450505050565b6000806040838503121561118e57600080fd5b61119783610ff7565b9150602083013567ffffffffffffffff8111156111b357600080fd5b6111bf8582860161111d565b9150509250929050565b6000806000604084860312156111de57600080fd5b6111e784610ff7565b9250602084013567ffffffffffffffff81111561120357600080fd5b61120f86828701611035565b9497909650939450505050565b6020808252825182820181905260009190848201906040850190845b8181101561125d5783516001600160a01b031683529284019291840191600101611238565b50909695505050505050565b60006020828403121561127b57600080fd5b5035919050565b6000806000806060858703121561129857600080fd5b6112a185610ff7565b935060208501359250604085013567ffffffffffffffff8111156112c457600080fd5b6112d087828801611035565b95989497509550505050565b6001600160e01b031991909116815260200190565b6000808585111561130157600080fd5b8386111561130e57600080fd5b5050820193919092039150565b6bffffffffffffffffffffffff1981358181169160148510156113485780818660140360031b1b83161692505b505092915050565b6001600160e01b031981358181169160048510156113485760049490940360031b84901b1690921692915050565b8035602083101561093a57600019602084900360031b1b1692915050565b6001600160d01b031981358181169160068510156113485760069490940360031b84901b1690921692915050565b6000808335601e198436030181126113e157600080fd5b83018035915067ffffffffffffffff8211156113fc57600080fd5b60200191503681900382131561107757600080fd5b60006020828403121561142357600080fd5b8151801515811461102e57600080fd5b8181038181111561093a57634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfea2646970667358221220ce038f6e945c9ba1d1cdf21e902b46ee133cd1730bbab3412819dd0c75bf4d8064736f6c63430008170033"; - - type ERC20SessionKeyValidatorConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - - const isSuperArgs = ( - xs: ERC20SessionKeyValidatorConstructorParams - ): xs is ConstructorParameters => xs.length > 1; - - export class ERC20SessionKeyValidator__factory extends ContractFactory { - constructor(...args: ERC20SessionKeyValidatorConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy(overrides || {}) as Promise; - } - override getDeployTransaction( - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(overrides || {}); - } - override attach(address: string): ERC20SessionKeyValidator { - return super.attach(address) as ERC20SessionKeyValidator; - } - override connect(signer: Signer): ERC20SessionKeyValidator__factory { - return super.connect(signer) as ERC20SessionKeyValidator__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): ERC20SessionKeyValidatorInterface { - return new utils.Interface(_abi) as ERC20SessionKeyValidatorInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): ERC20SessionKeyValidator { - return new Contract( - address, - _abi, - signerOrProvider - ) as ERC20SessionKeyValidator; - } - } - \ No newline at end of file diff --git a/src/sdk/contracts/factories/src/ERC7579/modules/validator/index.ts b/src/sdk/contracts/factories/src/ERC7579/modules/validator/index.ts deleted file mode 100644 index c27e10b..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/modules/validator/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { ERC20SessionKeyValidator__factory } from "./ERC20SessionKeyValidator__factory"; \ No newline at end of file diff --git a/src/sdk/contracts/factories/src/ERC7579/wallet/EtherspotWallet7579Base__factory.ts b/src/sdk/contracts/factories/src/ERC7579/wallet/EtherspotWallet7579Base__factory.ts deleted file mode 100644 index c4cb0cf..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/wallet/EtherspotWallet7579Base__factory.ts +++ /dev/null @@ -1,739 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - EtherspotWallet7579Base, - EtherspotWallet7579BaseInterface, -} from "../../../../src/ERC7579/wallet/EtherspotWallet7579Base"; - -const _abi = [ - { - inputs: [], - name: "AccountAccessUnauthorized", - type: "error", - }, - { - inputs: [], - name: "CannotRemoveLastValidator", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "InvalidAddress", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "InvalidModule", - type: "error", - }, - { - inputs: [], - name: "LinkedList_AlreadyInitialized", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "entry", - type: "address", - }, - ], - name: "LinkedList_EntryAlreadyInList", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "entry", - type: "address", - }, - ], - name: "LinkedList_InvalidEntry", - type: "error", - }, - { - inputs: [], - name: "LinkedList_InvalidPage", - type: "error", - }, - { - inputs: [], - name: "Unsupported", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "currentHandler", - type: "address", - }, - ], - name: "fallbackHandlerAlreadyInstalled", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "DisableExecutor", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "DisableValidator", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "EnableExecutor", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "module", - type: "address", - }, - ], - name: "EnableValidator", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "handler", - type: "address", - }, - ], - name: "FallbackHandlerChanged", - type: "event", - }, - { - stateMutability: "nonpayable", - type: "fallback", - }, - { - inputs: [], - name: "entryPoint", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "result", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - internalType: "struct IExecution.Execution[]", - name: "executions", - type: "tuple[]", - }, - ], - name: "executeBatch", - outputs: [ - { - internalType: "bytes[]", - name: "result", - type: "bytes[]", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - internalType: "struct IExecution.Execution[]", - name: "executions", - type: "tuple[]", - }, - ], - name: "executeBatchFromExecutor", - outputs: [ - { - internalType: "bytes[]", - name: "returnDatas", - type: "bytes[]", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - name: "executeDelegateCall", - outputs: [ - { - internalType: "bytes", - name: "result", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - name: "executeDelegateCallFromExecutor", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "target", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - ], - name: "executeFromExecutor", - outputs: [ - { - internalType: "bytes", - name: "returnData", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "cursor", - type: "address", - }, - { - internalType: "uint256", - name: "size", - type: "uint256", - }, - ], - name: "getExecutorsPaginated", - outputs: [ - { - internalType: "address[]", - name: "array", - type: "address[]", - }, - { - internalType: "address", - name: "next", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "cursor", - type: "address", - }, - { - internalType: "uint256", - name: "size", - type: "uint256", - }, - ], - name: "getValidatorPaginated", - outputs: [ - { - internalType: "address[]", - name: "array", - type: "address[]", - }, - { - internalType: "address", - name: "next", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "initializeAccount", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "executor", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "installExecutor", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "fallbackHandler", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "installFallback", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "validator", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "installValidator", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "executor", - type: "address", - }, - ], - name: "isExecutorInstalled", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "fallbackHandler", - type: "address", - }, - ], - name: "isFallbackInstalled", - outputs: [ - { - internalType: "bool", - name: "enabled", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "hash", - type: "bytes32", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "isValidSignature", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "validator", - type: "address", - }, - ], - name: "isValidatorInstalled", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "executor", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "uninstallExecutor", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "uninstallFallback", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "validator", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "uninstallValidator", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct IERC4337.UserOperation", - name: "userOp", - type: "tuple", - }, - { - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "missingAccountFunds", - type: "uint256", - }, - ], - name: "validateUserOp", - outputs: [ - { - internalType: "uint256", - name: "validSignature", - type: "uint256", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - stateMutability: "payable", - type: "receive", - }, -] as const; - -export class EtherspotWallet7579Base__factory { - static readonly abi = _abi; - static createInterface(): EtherspotWallet7579BaseInterface { - return new utils.Interface(_abi) as EtherspotWallet7579BaseInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): EtherspotWallet7579Base { - return new Contract( - address, - _abi, - signerOrProvider - ) as EtherspotWallet7579Base; - } -} diff --git a/src/sdk/contracts/factories/src/ERC7579/wallet/EtherspotWallet7579Factory__factory.ts b/src/sdk/contracts/factories/src/ERC7579/wallet/EtherspotWallet7579Factory__factory.ts deleted file mode 100644 index 4629e18..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/wallet/EtherspotWallet7579Factory__factory.ts +++ /dev/null @@ -1,168 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../../common"; -import type { - EtherspotWallet7579Factory, - EtherspotWallet7579FactoryInterface, -} from "../../../../src/ERC7579/wallet/EtherspotWallet7579Factory"; - -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_ewImplementation", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "_salt", - type: "bytes32", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - ], - name: "_getSalt", - outputs: [ - { - internalType: "bytes32", - name: "salt", - type: "bytes32", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "salt", - type: "bytes32", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - ], - name: "createAccount", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "salt", - type: "bytes32", - }, - { - internalType: "bytes", - name: "initcode", - type: "bytes", - }, - ], - name: "getAddress", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "implementation", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; - -const _bytecode = - "0x6080604052600436106100dd5760003560e01c80638da5cb5b1161007f578063f04e283e11610059578063f04e283e14610207578063f2fde38b1461021a578063f8a593701461022d578063fee81cf41461024057600080fd5b80638da5cb5b146101ae578063b36f9705146101c7578063d959fd0e146101e757600080fd5b806354d1f13d116100bb57806354d1f13d1461011f57806356c717f5146101275780635c60da1b1461015a578063715018a6146101a657600080fd5b806325692962146100e257806345171159146100ec5780634a1ce599146100ff575b600080fd5b6100ea610273565b005b6100ea6100fa366004610849565b6102c3565b34801561010b57600080fd5b506100ea61011a36600461088b565b610356565b6100ea6103db565b34801561013357600080fd5b506101476101423660046108af565b610417565b6040519081526020015b60405180910390f35b34801561016657600080fd5b5061018e7f000000000000000000000000202a5598bdba2ce62bffa13ecccb04969719fad981565b6040516001600160a01b039091168152602001610151565b6100ea61044d565b3480156101ba57600080fd5b50638b78c6d8195461018e565b3480156101d357600080fd5b506100ea6101e236600461092b565b610461565b3480156101f357600080fd5b5061018e6102023660046108af565b6104ef565b6100ea61021536600461088b565b610533565b6100ea61022836600461088b565b610573565b61018e61023b3660046108af565b61059a565b34801561024c57600080fd5b5061014761025b36600461088b565b63389a75e1600c908152600091909152602090205490565b60006202a30067ffffffffffffffff164201905063389a75e1600c5233600052806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d600080a250565b6102cb61064c565b6001600160a01b0382166102f2576040516301650c7760e51b815260040160405180910390fd5b604051621cb65b60e51b815263ffffffff821660048201526001600160a01b03831690630396cb609034906024016000604051808303818588803b15801561033957600080fd5b505af115801561034d573d6000803e3d6000fd5b50505050505050565b61035e61064c565b6001600160a01b038116610385576040516301650c7760e51b815260040160405180910390fd5b806001600160a01b031663bb9fe6bf6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156103c057600080fd5b505af11580156103d4573d6000803e3d6000fd5b5050505050565b63389a75e1600c523360005260006020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c92600080a2565b600083838360405160200161042e93929190610959565b6040516020818303038152906040528051906020012090509392505050565b61045561064c565b61045f6000610667565b565b61046961064c565b6001600160a01b038216610490576040516301650c7760e51b815260040160405180910390fd5b60405163611d2e7560e11b81526001600160a01b03828116600483015283169063c23a5cea90602401600060405180830381600087803b1580156104d357600080fd5b505af11580156104e7573d6000803e3d6000fd5b505050505050565b6000806104fd858585610417565b905061052a7f000000000000000000000000202a5598bdba2ce62bffa13ecccb04969719fad982306106a5565b95945050505050565b61053b61064c565b63389a75e1600c52806000526020600c20805442111561056357636f5e88186000526004601cfd5b6000905561057081610667565b50565b61057b61064c565b8060601b61059157637448fbae6000526004601cfd5b61057081610667565b6000806105a8858585610417565b90506000806105d8347f000000000000000000000000202a5598bdba2ce62bffa13ecccb04969719fad98561072e565b915091508161064257604051634b6a141960e01b81526001600160a01b03821690634b6a14199061060f9089908990600401610973565b600060405180830381600087803b15801561062957600080fd5b505af115801561063d573d6000803e3d6000fd5b505050505b9695505050505050565b638b78c6d81954331461045f576382b429006000526004601cfd5b638b78c6d81980546001600160a01b039092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a355565b60008061072185604080517fcc3735a920a3ca505d382bbc545af43d6000803e6038573d6000fd5b3d6000f360609081527f5155f3363d3d373d3d363d7f360894a13ba1a3210667c828492db98dca3e20768352616009602052601e9390935268603d3d8160223d3973600a52605f6021209152600090915290565b905061052a818585610812565b6000806040517fcc3735a920a3ca505d382bbc545af43d6000803e6038573d6000fd5b3d6000f36060527f5155f3363d3d373d3d363d7f360894a13ba1a3210667c828492db98dca3e207660405261600960205284601e5268603d3d8160223d3973600a52605f60212060358201523060581b815260ff8153836015820152605581209150813b6107da5783605f602188f59150816107d55763301164256000526004601cfd5b610800565b6001925085156108005760003860003889865af16108005763b12d13eb6000526004601cfd5b80604052506000606052935093915050565b600060ff60005350603592835260601b60015260155260556000908120915290565b6001600160a01b038116811461057057600080fd5b6000806040838503121561085c57600080fd5b823561086781610834565b9150602083013563ffffffff8116811461088057600080fd5b809150509250929050565b60006020828403121561089d57600080fd5b81356108a881610834565b9392505050565b6000806000604084860312156108c457600080fd5b83359250602084013567ffffffffffffffff808211156108e357600080fd5b818601915086601f8301126108f757600080fd5b81358181111561090657600080fd5b87602082850101111561091857600080fd5b6020830194508093505050509250925092565b6000806040838503121561093e57600080fd5b823561094981610834565b9150602083013561088081610834565b838152818360208301376000910160200190815292915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f1916010191905056fea2646970667358221220513a82a8caa53617dec3bbe9922886aaba082d511fed53c25ac374c22d18c93764736f6c63430008170033"; - -type EtherspotWallet7579FactoryConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: EtherspotWallet7579FactoryConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class EtherspotWallet7579Factory__factory extends ContractFactory { - constructor(...args: EtherspotWallet7579FactoryConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - _ewImplementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy( - _ewImplementation, - overrides || {} - ) as Promise; - } - override getDeployTransaction( - _ewImplementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(_ewImplementation, overrides || {}); - } - override attach(address: string): EtherspotWallet7579Factory { - return super.attach(address) as EtherspotWallet7579Factory; - } - override connect(signer: Signer): EtherspotWallet7579Factory__factory { - return super.connect(signer) as EtherspotWallet7579Factory__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): EtherspotWallet7579FactoryInterface { - return new utils.Interface(_abi) as EtherspotWallet7579FactoryInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): EtherspotWallet7579Factory { - return new Contract( - address, - _abi, - signerOrProvider - ) as EtherspotWallet7579Factory; - } -} diff --git a/src/sdk/contracts/factories/src/ERC7579/wallet/EtherspotWallet7579__factory.ts b/src/sdk/contracts/factories/src/ERC7579/wallet/EtherspotWallet7579__factory.ts deleted file mode 100644 index 5d71993..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/wallet/EtherspotWallet7579__factory.ts +++ /dev/null @@ -1,1292 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../../common"; -import type { - ModularEtherspotWallet, - ModularEtherspotWalletInterface, -} from "../../../../src/ERC7579/wallet/EtherspotWallet7579"; - -const _abi = [ - { - "inputs": [ - - ], - "name": "AccountAccessUnauthorized", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "AccountInitializationFailed", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "AddingInvalidGuardian", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "AddingInvalidOwner", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "AlreadySignedProposal", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "CannotRemoveLastValidator", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "ExecutionFailed", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "FallbackInvalidCallType", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "currentHook", - "type": "address" - } - ], - "name": "HookAlreadyInstalled", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "HookPostCheckFailed", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "caller", - "type": "address" - } - ], - "name": "InvalidFallbackCaller", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "module", - "type": "address" - } - ], - "name": "InvalidModule", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "InvalidProposal", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "LinkedList_AlreadyInitialized", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "entry", - "type": "address" - } - ], - "name": "LinkedList_EntryAlreadyInList", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "entry", - "type": "address" - } - ], - "name": "LinkedList_InvalidEntry", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "LinkedList_InvalidPage", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "bytes4", - "name": "selector", - "type": "bytes4" - } - ], - "name": "NoFallbackHandler", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "NotEnoughGuardians", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "OnlyGuardian", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "OnlyOwnerOrGuardianOrSelf", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "OnlyOwnerOrSelf", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "OnlyProxy", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "ProposalResolved", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "ProposalTimelocked", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "ProposalUnresolved", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "RemovingInvalidGuardian", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "RemovingInvalidOwner", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "CallType", - "name": "callType", - "type": "bytes1" - } - ], - "name": "UnsupportedCallType", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "ExecType", - "name": "execType", - "type": "bytes1" - } - ], - "name": "UnsupportedExecType", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "moduleType", - "type": "uint256" - } - ], - "name": "UnsupportedModuleType", - "type": "error" - }, - { - "inputs": [ - - ], - "name": "WalletNeedsOwner", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newGuardian", - "type": "address" - } - ], - "name": "GuardianAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "removedGuardian", - "type": "address" - } - ], - "name": "GuardianRemoved", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "moduleTypeId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "module", - "type": "address" - } - ], - "name": "ModuleInstalled", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "moduleTypeId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "module", - "type": "address" - } - ], - "name": "ModuleUninstalled", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnerAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "removedOwner", - "type": "address" - } - ], - "name": "OwnerRemoved", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "proposalId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "discardedBy", - "type": "address" - } - ], - "name": "ProposalDiscarded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "proposalId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "newOwnerProposed", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "proposer", - "type": "address" - } - ], - "name": "ProposalSubmitted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "proposalId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "newOwnerProposed", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "approvalCount", - "type": "uint256" - } - ], - "name": "QuorumNotReached", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "batchExecutionindex", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "result", - "type": "bytes" - } - ], - "name": "TryExecuteUnsuccessful", - "type": "event" - }, - { - "stateMutability": "payable", - "type": "fallback" - }, - { - "inputs": [ - - ], - "name": "accountId", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_newGuardian", - "type": "address" - } - ], - "name": "addGuardian", - "outputs": [ - - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_newOwner", - "type": "address" - } - ], - "name": "addOwner", - "outputs": [ - - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_newTimelock", - "type": "uint256" - } - ], - "name": "changeProposalTimelock", - "outputs": [ - - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - - ], - "name": "discardCurrentProposal", - "outputs": [ - - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - - ], - "name": "entryPoint", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "ModeCode", - "name": "mode", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "executionCalldata", - "type": "bytes" - } - ], - "name": "execute", - "outputs": [ - - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "ModeCode", - "name": "mode", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "executionCalldata", - "type": "bytes" - } - ], - "name": "executeFromExecutor", - "outputs": [ - { - "internalType": "bytes[]", - "name": "returnData", - "type": "bytes[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "nonce", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "initCode", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "callData", - "type": "bytes" - }, - { - "internalType": "bytes32", - "name": "accountGasLimits", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "preVerificationGas", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "gasFees", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "paymasterAndData", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "signature", - "type": "bytes" - } - ], - "internalType": "struct PackedUserOperation", - "name": "userOp", - "type": "tuple" - } - ], - "name": "executeUserOp", - "outputs": [ - - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes4", - "name": "functionSig", - "type": "bytes4" - } - ], - "name": "getActiveFallbackHandler", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "handler", - "type": "address" - }, - { - "internalType": "CallType", - "name": "calltype", - "type": "bytes1" - }, - { - "internalType": "address[]", - "name": "allowedCallers", - "type": "address[]" - } - ], - "internalType": "struct ModuleManager.FallbackHandler", - "name": "", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - - ], - "name": "getActiveHook", - "outputs": [ - { - "internalType": "address", - "name": "hook", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "cursor", - "type": "address" - }, - { - "internalType": "uint256", - "name": "size", - "type": "uint256" - } - ], - "name": "getExecutorsPaginated", - "outputs": [ - { - "internalType": "address[]", - "name": "array", - "type": "address[]" - }, - { - "internalType": "address", - "name": "next", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_proposalId", - "type": "uint256" - } - ], - "name": "getProposal", - "outputs": [ - { - "internalType": "address", - "name": "ownerProposed_", - "type": "address" - }, - { - "internalType": "uint256", - "name": "approvalCount_", - "type": "uint256" - }, - { - "internalType": "address[]", - "name": "guardiansApproved_", - "type": "address[]" - }, - { - "internalType": "bool", - "name": "resolved_", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "proposedAt_", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "cursor", - "type": "address" - }, - { - "internalType": "uint256", - "name": "size", - "type": "uint256" - } - ], - "name": "getValidatorPaginated", - "outputs": [ - { - "internalType": "address[]", - "name": "array", - "type": "address[]" - }, - { - "internalType": "address", - "name": "next", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - - ], - "name": "guardianCosign", - "outputs": [ - - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - - ], - "name": "guardianCount", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_newOwner", - "type": "address" - } - ], - "name": "guardianPropose", - "outputs": [ - - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - - ], - "name": "implementation", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "initializeAccount", - "outputs": [ - - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "moduleTypeId", - "type": "uint256" - }, - { - "internalType": "address", - "name": "module", - "type": "address" - }, - { - "internalType": "bytes", - "name": "initData", - "type": "bytes" - } - ], - "name": "installModule", - "outputs": [ - - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_address", - "type": "address" - } - ], - "name": "isGuardian", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "moduleTypeId", - "type": "uint256" - }, - { - "internalType": "address", - "name": "module", - "type": "address" - }, - { - "internalType": "bytes", - "name": "additionalContext", - "type": "bytes" - } - ], - "name": "isModuleInstalled", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_address", - "type": "address" - } - ], - "name": "isOwner", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "hash", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "isValidSignature", - "outputs": [ - { - "internalType": "bytes4", - "name": "", - "type": "bytes4" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - - ], - "name": "ownerCount", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - - ], - "name": "proposalId", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - - ], - "name": "proposalTimelock", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_guardian", - "type": "address" - } - ], - "name": "removeGuardian", - "outputs": [ - - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_owner", - "type": "address" - } - ], - "name": "removeOwner", - "outputs": [ - - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "ModeCode", - "name": "mode", - "type": "bytes32" - } - ], - "name": "supportsExecutionMode", - "outputs": [ - { - "internalType": "bool", - "name": "isSupported", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "modulTypeId", - "type": "uint256" - } - ], - "name": "supportsModule", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "moduleTypeId", - "type": "uint256" - }, - { - "internalType": "address", - "name": "module", - "type": "address" - }, - { - "internalType": "bytes", - "name": "deInitData", - "type": "bytes" - } - ], - "name": "uninstallModule", - "outputs": [ - - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "nonce", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "initCode", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "callData", - "type": "bytes" - }, - { - "internalType": "bytes32", - "name": "accountGasLimits", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "preVerificationGas", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "gasFees", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "paymasterAndData", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "signature", - "type": "bytes" - } - ], - "internalType": "struct PackedUserOperation", - "name": "userOp", - "type": "tuple" - }, - { - "internalType": "bytes32", - "name": "userOpHash", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "missingAccountFunds", - "type": "uint256" - } - ], - "name": "validateUserOp", - "outputs": [ - { - "internalType": "uint256", - "name": "validSignature", - "type": "uint256" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "stateMutability": "payable", - "type": "receive" - } -] as const; - -const _bytecode = - "0x6080604052600436106101f25760003560e01c80637dcab4ce1161010d578063bf57159b116100a0578063d691c9641161006f578063d691c96414610721578063e9ae5c5314610741578063ea5f61d014610754578063eac9b20d14610774578063f2dc691d146107a1576101f9565b8063bf57159b146106a5578063c3db8838146106bb578063c7f758a8146106d0578063d03c791414610701576101f9565b8063a1c0d459116100dc578063a1c0d4591461062f578063a526d83b1461064f578063a71763a81461066f578063b0d691fe14610682576101f9565b80637dcab4ce1461058257806385571368146105a25780639517e29f146105d05780639cfd7cff146105e3576101f9565b80632f54bf6e116101855780635c60da1b116101545780635c60da1b146104fb5780637065cb481461052f578063714041561461054f57806372aea6541461056f576101f9565b80632f54bf6e1461049d57806341c9ddff146104bd5780634b6a1419146104d257806354387ad7146104e5576101f9565b80631626ba7e116101c15780631626ba7e1461041b578063173825d91461045457806319822f7c146104745780632dfca44514610487576101f9565b80630a664dba146103755780630c68ba21146103a75780630db02622146103d7578063112d3a7d146103fb576101f9565b366101f957005b61020e6000356001600160e01b0319166107c1565b6000610218610874565b600080356001600160e01b0319168152600291909101602090815260409182902080548351808501909452601484527346616c6c6261636b2068616e646c65723a20257360601b9284019290925292506001600160a01b03811691600160a01b90910460f81b906102899083610898565b6001600160a01b0382166102c357604051632464e76d60e11b81526001600160e01b03196000351660048201526024015b60405180910390fd5b6102d181607f60f91b6108dd565b156103255760408051368101909152366000823760408051601481019091523360601b90526000803660140183865afa90506103133d60408051918201905290565b3d6000823e81610321573d81fd5b3d81f35b6103308160006108dd565b156103735760408051368101909152366000823760408051601481019091523360601b9052600080366014018382875af190506103133d60408051918201905290565b005b34801561038157600080fd5b5061038a6108f4565b6040516001600160a01b0390911681526020015b60405180910390f35b3480156103b357600080fd5b506103c76103c2366004613826565b610911565b604051901515815260200161039e565b3480156103e357600080fd5b506103ed60005481565b60405190815260200161039e565b34801561040757600080fd5b506103c7610416366004613884565b61092f565b34801561042757600080fd5b5061043b6104363660046138df565b610994565b6040516001600160e01b0319909116815260200161039e565b34801561046057600080fd5b5061037361046f366004613826565b610a6a565b6103ed610482366004613943565b610b31565b34801561049357600080fd5b506103ed60025481565b3480156104a957600080fd5b506103c76104b8366004613826565b610c17565b3480156104c957600080fd5b50610373610c35565b6103736104e0366004613990565b610df2565b3480156104f157600080fd5b506103ed60015481565b34801561050757600080fd5b5061038a7f000000000000000000000000917398df969752a7d94725740918f38e4b8eecec81565b34801561053b57600080fd5b5061037361054a366004613826565b610ee6565b34801561055b57600080fd5b5061037361056a366004613826565b610fa4565b61037361057d3660046139d1565b611041565b34801561058e57600080fd5b5061037361059d366004613826565b611121565b3480156105ae57600080fd5b506105c26105bd366004613a05565b6112e6565b60405161039e929190613a76565b6103736105de366004613884565b61130d565b3480156105ef57600080fd5b50604080518082018252601e81527f657468657273706f7477616c6c65742e6d6f64756c61722e76312e302e3000006020820152905161039e9190613af0565b34801561063b57600080fd5b5061037361064a366004613b03565b61143a565b34801561065b57600080fd5b5061037361066a366004613826565b61146f565b61037361067d366004613884565b61152d565b34801561068e57600080fd5b506f71727de22e5e9d8baf0edac6f37da03261038a565b3480156106b157600080fd5b506103ed60035481565b3480156106c757600080fd5b506103736115f6565b3480156106dc57600080fd5b506106f06106eb366004613b03565b611739565b60405161039e959493929190613b1c565b34801561070d57600080fd5b506103c761071c366004613b03565b611843565b61073461072f3660046138df565b6118e2565b60405161039e9190613b57565b61037361074f3660046138df565b611f39565b34801561076057600080fd5b506105c261076f366004613a05565b6123ae565b34801561078057600080fd5b5061079461078f366004613bd1565b6123cb565b60405161039e9190613bee565b3480156107ad57600080fd5b506103c76107bc366004613b03565b6124a3565b60006107cb610874565b6001600160e01b03198316600090815260029190910160209081526040918290206001018054835181840281018401909452808452909183018282801561083b57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161081d575b5050505050905061084c81336124f2565b1515600003610870576040516332cf492b60e11b81523360048201526024016102ba565b5050565b7ff88ce1fdb7fb1cbd3282e49729100fa3f2d6ee9f797961fe4fb1871cea89ea0290565b61087082826040516024016108ae929190613c6c565b60408051601f198184030181529190526020810180516001600160e01b031663319af33360e01b1790526124ff565b6001600160f81b0319828116908216145b92915050565b600061090c6000805160206142aa8339815191525490565b905090565b6001600160a01b031660009081526005602052604090205460ff1690565b600060018503610949576109428461250b565b905061098c565b6002850361095a5761094284612529565b600385036109775761094261097183850185613bd1565b85612543565b600485036109885761094284612581565b5060005b949350505050565b6000806109a46014828587613c7f565b6109ad91613ca9565b60601c90506109bb8161250b565b6109e357604051635c93ff2f60e11b81526001600160a01b03821660048201526024016102ba565b6001600160a01b03811663f551e2ee3387610a01876014818b613c7f565b6040518563ffffffff1660e01b8152600401610a209493929190613d05565b602060405180830381865afa158015610a3d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a619190613d37565b95945050505050565b610a7333610c17565b80610a7d57503330145b610a9a576040516311d9f09160e01b815260040160405180910390fd5b610aa381610c17565b610ac05760405163f1369ccb60e01b815260040160405180910390fd5b600160005411610ae35760405163021870b960e11b815260040160405180910390fd5b610aec816125b3565b604080513081526001600160a01b03831660208201527fe594d081b4382713733fe631966432c9cea5199afb2db5c3c1931f9f9300367991015b60405180910390a150565b6000336f71727de22e5e9d8baf0edac6f37da03214610b6357604051635629665f60e11b815260040160405180910390fd5b816020850135606081901c90610b788261250b565b610b8757600193505050610bfd565b604051639700320360e01b81526001600160a01b03831690639700320390610bb5908a908a90600401613d99565b6020604051808303816000875af1158015610bd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bf89190613e98565b935050505b8015610c0f5760003860003884335af1505b509392505050565b6001600160a01b031660009081526004602052604090205460ff1690565b610c3e33610911565b610c5b57604051636570ecab60e11b815260040160405180910390fd5b600254600081815260066020526040812090829003610c8d57604051631dc0650160e31b815260040160405180910390fd5b610c96826125e8565b15610cb4576040516320181a3560e21b815260040160405180910390fd5b610cd6600254600090815260066020526040902054600160a01b900460ff1690565b15610cf457604051638b19dbcb60e01b815260040160405180910390fd5b60008281526006602090815260408220600180820180549182018155845291832090910180546001600160a01b03191633179055838252600201805491610d3a83613ec7565b909155505080546001600160a01b0316610d538361265f565b15610d85576000838152600660205260409020805460ff60a01b1916600160a01b179055610d8081612699565b505050565b6000838152600660209081526040918290206002015482513081529182018690526001600160a01b0384169282019290925260608101919091527f7afa94f51443879f537b9be4f09d5d734c2c233b788d2f6af6565add34706bab906080015b60405180910390a1505050565b6001600160a01b037f000000000000000000000000917398df969752a7d94725740918f38e4b8eecec163003610e3b576040516308e3edd160e41b815260040160405180910390fd5b610e436126c9565b60008080610e5384860186613fa3565b925092509250610e6283612699565b6000826001600160a01b031682604051610e7c9190614004565b600060405180830381855af49150503d8060008114610eb7576040519150601f19603f3d011682016040523d82523d6000602084013e610ebc565b606091505b5050905080610ede57604051631b79777760e11b815260040160405180910390fd5b505050505050565b610eef33610c17565b80610ef957503330145b610f16576040516311d9f09160e01b815260040160405180910390fd5b6001600160a01b0381161580610f305750610f3081610911565b80610f3f5750610f3f81610c17565b15610f5d57604051631a1aefc560e21b815260040160405180910390fd5b610f6681612699565b604080513081526001600160a01b03831660208201527fc82bdbbf677a2462f2a7e22e4ba9abd209496b69cd7b868b3b1d28f76e09a40a9101610b26565b610fad33610c17565b80610fb757503330145b610fd4576040516311d9f09160e01b815260040160405180910390fd5b610fdd81610911565b610ffa5760405163985f453960e01b815260040160405180910390fd5b611003816126ea565b604080513081526001600160a01b03831660208201527fee943cdb81826d5909c559c6b1ae6908fcaf2dbc16c4b730346736b486283e8b9101610b26565b336f71727de22e5e9d8baf0edac6f37da032148061105e57503330145b61107b57604051635629665f60e11b815260040160405180910390fd5b36600061108b6060840184614020565b611099916004908290613c7f565b915091506000306001600160a01b031683836040516110b9929190614066565b600060405180830381855af49150503d80600081146110f4576040519150601f19603f3d011682016040523d82523d6000602084013e6110f9565b606091505b505090508061111b57604051632b3f6d1160e21b815260040160405180910390fd5b50505050565b61112a33610911565b61114757604051636570ecab60e11b815260040160405180910390fd5b6001600160a01b0381161580611161575061116181610911565b80611170575061117081610c17565b1561118e57604051631a1aefc560e21b815260040160405180910390fd5b600360015410156111b257604051636bb07db960e11b815260040160405180910390fd5b60025460009081526006602052604090206001810154158015906111df57508054600160a01b900460ff16155b156111fd57604051639fa6dc5760e01b815260040160405180910390fd5b6000600254600161120e9190614076565b6000818152600660209081526040822080546001600160a01b0388166001600160a01b031991821617825560018083018054918201815585529284209092018054909216331790915582825260020180549293509061126c83613ec7565b9091555050600081815260066020908152604091829020805460ff60a01b1916815542600390910155600283905581513081529081018390526001600160a01b038516918101919091523360608201527f9fb4a8d051aad8866705f4d52eb05a29939e15ad43dd4aab82cf31806759eac390608001610de5565b60606000806112f3610874565b905061130081868661274b565b92509250505b9250929050565b336f71727de22e5e9d8baf0edac6f37da032148061132a57503330145b61134757604051635629665f60e11b815260040160405180910390fd5b6001840361135f5761135a8383836128e7565b6113f2565b600284036113725761135a838383612963565b600384036113c3576113b86040518060400160405280601f81526020017f49545320412046414c4c4241434b203d3e20696e7374616c6c4d6f64756c650081525061297c565b61135a8383836129bf565b600484036113d65761135a838383612c89565b60405163041c38b360e41b8152600481018590526024016102ba565b604080518581526001600160a01b03851660208201527fd21d0b289f126c4b473ea641963e766833c2f13866e4ff480abd787c100ef12391015b60405180910390a150505050565b61144333610c17565b8061144d57503330145b61146a576040516311d9f09160e01b815260040160405180910390fd5b600355565b61147833610c17565b8061148257503330145b61149f576040516311d9f09160e01b815260040160405180910390fd5b6001600160a01b03811615806114b957506114b981610911565b806114c857506114c881610c17565b156114e65760405163053bd11560e31b815260040160405180910390fd5b6114ef81612cec565b604080513081526001600160a01b03831660208201527fbc3292102fa77e083913064b282926717cdfaede4d35f553d66366c0a3da755a9101610b26565b336f71727de22e5e9d8baf0edac6f37da032148061154a57503330145b61156757604051635629665f60e11b815260040160405180910390fd5b6001840361157f5761157a838383612d1e565b6115b8565b600284036115925761157a838383612daf565b600384036115a55761157a838383612dcd565b600484036113d65761157a8383836130aa565b604080518581526001600160a01b03851660208201527f341347516a9de374859dfda710fa4828b2d48cb57d4fbe4c1149612b8e02276e910161142c565b6115ff33610c17565b8061160e575061160e33610911565b8061161857503330145b611635576040516302d8be6160e21b815260040160405180910390fd5b6002546000908152600660205260408120600354909190156116595760035461165e565b620151805b9050611682600254600090815260066020526040902054600160a01b900460ff1690565b156116a057604051638b19dbcb60e01b815260040160405180910390fd5b60006116ab33610911565b90508080156116c95750428284600301546116c69190614076565b10155b156116e75760405163ae18e9c760e01b815260040160405180910390fd5b825460ff60a01b1916600160a01b17835560025460408051308152602081019290925233908201527faf7f1090397448391393dc134b45d6d20e79a9d2a8f5a82fb42d1514a55ecbf990606001610de5565b6000806060818085158061174e575060025486115b1561176c57604051631dc0650160e31b815260040160405180910390fd5b6000868152600660209081526040808320815160a08101835281546001600160a01b0381168252600160a01b900460ff161515818501526001820180548451818702810187018652818152929593948601938301828280156117f757602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116117d9575b5050505050815260200160028201548152602001600382015481525050905080600001518160600151826040015183602001518460800151955095509550955095505091939590929450565b600081600881901b61185982600160f81b6108dd565b1561186757600192506118aa565b6118728260006108dd565b1561188057600192506118aa565b611892826001600160f81b03196108dd565b156118a057600192506118aa565b5060009392505050565b6118b58160006108dd565b156118c357600192506118db565b6118d181600160f81b6108dd565b156118a057600192505b5050919050565b606060006118ee610874565b60010190506118fd8133613126565b61191c57604051635c93ff2f60e11b81523360048201526024016102ba565b60006119346000805160206142aa8339815191525490565b90506001600160a01b038116611bf45785600881901b61195882600160f81b6108dd565b156119c757863587016020810190356119728360006108dd565b15611988576119818282613160565b96506119c0565b61199683600160f81b6108dd565b156119a5576119818282613238565b826040516308c3ee0360e11b81526004016102ba9190614089565b5050611bed565b6119d28260006108dd565b15611b20576000803660006119e78b8b613365565b6040805160018082528183019092529498509296509094509250816020015b6060815260200190600190039081611a065790505098506000611a2986826108dd565b15611a5d57611a3a858585856133b6565b8a600081518110611a4d57611a4d61409e565b6020026020010181905250611b16565b611a6b86600160f81b6108dd565b15611afb57611a7c858585856133ec565b8b600081518110611a8f57611a8f61409e565b6020908102919091010152905080611af6577fe723f28f104e46b47fd3531f3608374ac226bcf3ddda334a23a266453e0efdb760008b600081518110611ad757611ad761409e565b6020026020010151604051611aed9291906140b4565b60405180910390a15b611b16565b856040516308c3ee0360e11b81526004016102ba9190614089565b5050505050611bed565b611b32826001600160f81b03196108dd565b15611bd2576000611b46601482898b613c7f565b611b4f91613ca9565b60601c9050366000611b64896014818d613c7f565b9092509050611b748460006108dd565b15611b8a57611b8483838361341d565b50611bca565b611b9884600160f81b6108dd565b15611baf57611ba8838383613451565b5050611bca565b836040516308c3ee0360e11b81526004016102ba9190614089565b505050611bed565b81604051632e5bf3f960e21b81526004016102ba9190614089565b5050611f30565b604051631057c74d60e11b81526000906001600160a01b038316906320af8e9a90611c27903390859036906004016140cd565b6000604051808303816000875af1158015611c46573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c6e91908101906140f2565b905086600881901b611c8482600160f81b6108dd565b15611cd85787358801602081019035611c9e8360006108dd565b15611cb457611cad8282613160565b9750611cd1565b611cc283600160f81b6108dd565b156119a557611cad8282613238565b5050611ea0565b611ce38260006108dd565b15611e1157600080366000611cf88c8c613365565b6040805160018082528183019092529498509296509094509250816020015b6060815260200190600190039081611d175790505099506000611d3a86826108dd565b15611d6e57611d4b858585856133b6565b8b600081518110611d5e57611d5e61409e565b6020026020010181905250611e07565b611d7c86600160f81b6108dd565b15611afb57611d8d858585856133ec565b8c600081518110611da057611da061409e565b6020908102919091010152905080611e07577fe723f28f104e46b47fd3531f3608374ac226bcf3ddda334a23a266453e0efdb760008c600081518110611de857611de861409e565b6020026020010151604051611dfe9291906140b4565b60405180910390a15b5050505050611ea0565b611e23826001600160f81b03196108dd565b15611bd2576000611e376014828a8c613c7f565b611e4091613ca9565b60601c9050366000611e558a6014818e613c7f565b9092509050611e658460006108dd565b15611e7b57611e7583838361341d565b50611e9c565b611e8984600160f81b6108dd565b15611baf57611e99838383613451565b50505b5050505b5050604051630b9dfbed60e11b81526001600160a01b0383169063173bf7da90611ece908490600401613af0565b6020604051808303816000875af1158015611eed573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f11919061415f565b611f2e5760405163546b3e6360e01b815260040160405180910390fd5b505b50509392505050565b336f71727de22e5e9d8baf0edac6f37da0321480611f5657503330145b611f7357604051635629665f60e11b815260040160405180910390fd5b6000611f8b6000805160206142aa8339815191525490565b90506001600160a01b03811661212f5783600881901b611faf82600160f81b6108dd565b156120025784358501602081019035611fc98360006108dd565b15611fde57611fd88282613160565b50611ffb565b611fec83600160f81b6108dd565b156119a557611fd88282613238565b5050612128565b61200d8260006108dd565b15612099576000803660006120228989613365565b935093509350935061203885600060f81b6108dd565b1561204f57612049848484846133b6565b50612090565b61205d85600160f81b6108dd565b156120755761206e848484846133ec565b5050612090565b846040516308c3ee0360e11b81526004016102ba9190614089565b50505050612128565b6120ab826001600160f81b03196108dd565b15611bd25760006120bf6014828789613c7f565b6120c891613ca9565b60601c90503660006120dd876014818b613c7f565b90925090506120ed8460006108dd565b15612103576120fd83838361341d565b50612124565b61211184600160f81b6108dd565b15611baf57612121838383613451565b50505b5050505b505061111b565b604051631057c74d60e11b81526000906001600160a01b038316906320af8e9a90612162903390859036906004016140cd565b6000604051808303816000875af1158015612181573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526121a991908101906140f2565b905084600881901b6121bf82600160f81b6108dd565b1561221257853586016020810190356121d98360006108dd565b156121ee576121e88282613160565b5061220b565b6121fc83600160f81b6108dd565b156119a5576121e88282613238565b5050612319565b61221d8260006108dd565b1561228a576000803660006122328a8a613365565b935093509350935061224885600060f81b6108dd565b1561225f57612259848484846133b6565b50612281565b61226d85600160f81b6108dd565b156120755761227e848484846133ec565b50505b50505050612319565b61229c826001600160f81b03196108dd565b15611bd25760006122b0601482888a613c7f565b6122b991613ca9565b60601c90503660006122ce886014818c613c7f565b90925090506122de8460006108dd565b156122f4576122ee83838361341d565b50612315565b61230284600160f81b6108dd565b15611baf57612312838383613451565b50505b5050505b5050604051630b9dfbed60e11b81526001600160a01b0383169063173bf7da90612347908490600401613af0565b6020604051808303816000875af1158015612366573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061238a919061415f565b6123a75760405163546b3e6360e01b815260040160405180910390fd5b5050505050565b60606000806123bb610874565b600101905061130081868661274b565b604080516060808201835260008083526020830152918101919091526123ef610874565b6001600160e01b0319831660009081526002919091016020908152604091829020825160608101845281546001600160a01b0381168252600160a01b900460f81b6001600160f81b031916818401526001820180548551818602810186018752818152929593949386019383018282801561249357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311612475575b5050505050815250509050919050565b6000600182036124b557506001919050565b600282036124c557506001919050565b600382036124d557506001919050565b600482036124e557506001919050565b506000919050565b919050565b600080610a618484613480565b612508816134e6565b50565b600080612516610874565b90506125228184613126565b9392505050565b600080612534610874565b60010190506125228184613126565b60008061254e610874565b6001600160e01b0319949094166000908152600290940160205250506040909120546001600160a01b0390811691161490565b6000816001600160a01b03166125a36000805160206142aa8339815191525490565b6001600160a01b03161492915050565b6001600160a01b0381166000908152600460205260408120805460ff19169055805490806125e083614181565b919050555050565b6000805b60008381526006602052604090206001015481101561265657600083815260066020526040902060010180543391908390811061262b5761262b61409e565b6000918252602090912001546001600160a01b03160361264e5750600192915050565b6001016125ec565b50600092915050565b600154600082815260066020526040812060020154909161025891612687906103e890614198565b61269191906141af565b101592915050565b6001600160a01b0381166000908152600460205260408120805460ff19166001179055805490806125e083613ec7565b60006126d3610874565b90506126e181600101613507565b61250881613507565b6001600160a01b0381166000908152600560205260408120805460ff19169055600180549161271883614181565b919050555061273f600254600090815260066020526040902054600160a01b900460ff1690565b612508576125086115f6565b606060006001600160a01b03841660011480159061276e575061276e8585613126565b1561279757604051637c84ecfb60e01b81526001600160a01b03851660048201526024016102ba565b826000036127b85760405163f725081760e01b815260040160405180910390fd5b826001600160401b038111156127d0576127d0613ee0565b6040519080825280602002602001820160405280156127f9578160200160208202803683370190505b506001600160a01b03808616600090815260208890526040812054929450911691505b6001600160a01b0382161580159061283e57506001600160a01b038216600114155b801561284957508381105b156128a357818382815181106128615761286161409e565b6001600160a01b03928316602091820292909201810191909152928116600090815292879052604090922054909116908061289b81613ec7565b91505061281c565b6001600160a01b0382166001146128db57826128c06001836141d1565b815181106128d0576128d061409e565b602002602001015191505b80835250935093915050565b60006128f1610874565b90506128fd8185613564565b6040516306d61fe760e41b81526001600160a01b03851690636d61fe709061292b90869086906004016141e4565b600060405180830381600087803b15801561294557600080fd5b505af1158015612959573d6000803e3d6000fd5b5050505050505050565b600061296d610874565b60010190506128fd8185613564565b612508816040516024016129909190613af0565b60408051601f198184030181529190526020810180516001600160e01b031663104c13eb60e21b1790526124ff565b6129fe6040518060400160405280601781526020017f5f696e7374616c6c46616c6c6261636b48616e646c657200000000000000000081525084610898565b612a3d82828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061363a92505050565b600082828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250604080516060818101909252602b8082529697509195869550909350839250612aa291906142f4602083013961297c565b60208701873594508035935060208101356040519350601f19601f602083020116840160405260005b81811015612aea57602081028381016060013590860152600101612acb565b5050604081013560208183010335606081815281838501602083013780945050505050612b2e6040518060600160405280602a81526020016142ca602a913961297c565b612b378461367d565b15612b845760405162461bcd60e51b815260206004820152601e60248201527f46756e6374696f6e2073656c6563746f7220616c72656164792075736564000060448201526064016102ba565b604080516060810182526001600160a01b038a1681526001600160f81b031985166020820152908101839052612bb8610874565b6001600160e01b0319861660009081526002919091016020908152604091829020835181548584015160f81c600160a01b026001600160a81b03199091166001600160a01b0390921691909117178155918301518051612c1e926001850192019061378c565b50506040516306d61fe760e41b81526001600160a01b038a169150636d61fe7090612c4d908490600401613af0565b600060405180830381600087803b158015612c6757600080fd5b505af1158015612c7b573d6000803e3d6000fd5b505050505050505050505050565b6000612ca16000805160206142aa8339815191525490565b90506001600160a01b03811615612cd65760405163741cbe0360e01b81526001600160a01b03821660048201526024016102ba565b6128fd846000805160206142aa83398151915255565b6001600160a01b0381166000908152600560205260408120805460ff1916600190811790915580549161271883613ec7565b6000612d28610874565b9050600080612d39848601866141f8565b9092509050612d498383886136b7565b604051638a91b0e360e01b81526001600160a01b03871690638a91b0e390612d75908490600401613af0565b600060405180830381600087803b158015612d8f57600080fd5b505af1158015612da3573d6000803e3d6000fd5b50505050505050505050565b6000612db9610874565b6001019050600080612d39848601866141f8565b6000612ddc6004828486613c7f565b612de591614247565b90506000612df68360048187613c7f565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929350612e39925084915061367d9050565b612e855760405162461bcd60e51b815260206004820152601a60248201527f46756e6374696f6e2073656c6563746f72206e6f74207573656400000000000060448201526064016102ba565b6000612e8f610874565b6001600160e01b0319841660009081526002919091016020908152604091829020825160608101845281546001600160a01b0381168252600160a01b900460f81b6001600160f81b0319168184015260018201805485518186028101860187528181529295939493860193830182828015612f3357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311612f15575b5050505050815250509050856001600160a01b031681600001516001600160a01b031614612fb65760405162461bcd60e51b815260206004820152602a60248201527f46756e6374696f6e2073656c6563746f72206e6f74207573656420627920746860448201526934b9903430b7323632b960b11b60648201526084016102ba565b6020810151612fcd816001600160f81b03196108dd565b15612feb57604051633accf26360e11b815260040160405180910390fd5b60408051600080825260808201835260208201818152928201526060810181905290613015610874565b6001600160e01b0319871660009081526002919091016020908152604091829020835181548584015160f81c600160a01b026001600160a81b03199091166001600160a01b039092169190911717815591830151805161307b926001850192019061378c565b5050604051638a91b0e360e01b81526001600160a01b038a169150638a91b0e390612c4d908790600401613af0565b6130c160006000805160206142aa83398151915255565b604051638a91b0e360e01b81526001600160a01b03841690638a91b0e3906130ef90859085906004016141e4565b600060405180830381600087803b15801561310957600080fd5b505af115801561311d573d6000803e3d6000fd5b50505050505050565b600060016001600160a01b038316148015906125225750506001600160a01b03908116600090815260209290925260409091205416151590565b606081806001600160401b0381111561317b5761317b613ee0565b6040519080825280602002602001820160405280156131ae57816020015b60608152602001906001900390816131995790505b50915060005b8181101561323057368585838181106131cf576131cf61409e565b90506020028101906131e19190614275565b905061320a6131f36020830183613826565b60208301356132056040850185614020565b6133b6565b84838151811061321c5761321c61409e565b6020908102919091010152506001016131b4565b505092915050565b606081806001600160401b0381111561325357613253613ee0565b60405190808252806020026020018201604052801561328657816020015b60608152602001906001900390816132715790505b50915060005b8181101561323057368585838181106132a7576132a761409e565b90506020028101906132b99190614275565b905060006132e46132cd6020840184613826565b60208401356132df6040860186614020565b6133ec565b8685815181106132f6576132f661409e565b602090810291909101015290508061335b577fe723f28f104e46b47fd3531f3608374ac226bcf3ddda334a23a266453e0efdb78386858151811061333c5761333c61409e565b60200260200101516040516133529291906140b4565b60405180910390a15b505060010161328c565b60008036816133776014828789613c7f565b61338091613ca9565b60601c9350613393603460148789613c7f565b61339c9161428b565b92506133ab8560348189613c7f565b949793965094505050565b60405181838237600038838387895af16133d3573d6000823e3d81fd5b3d8152602081013d6000823e3d01604052949350505050565b604051600090828482376000388483888a5af191503d8152602081013d6000823e3d81016040525094509492505050565b604051818382376000388383875af4613439573d6000823e3d81fd5b3d8152602081013d6000823e3d016040529392505050565b604051600090828482376000388483885af491503d8152602081013d6000823e3d810160405250935093915050565b81516000908190815b818110156134d857846001600160a01b03168682815181106134ad576134ad61409e565b60200260200101516001600160a01b0316036134d0579250600191506113069050565b600101613489565b506000958695509350505050565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b60016000908152602082905260409020546001600160a01b03161561353f576040516329e42f3360e11b815260040160405180910390fd5b60016000818152602092909252604090912080546001600160a01b0319169091179055565b6001600160a01b038116158061358357506001600160a01b0381166001145b156135ac57604051637c84ecfb60e01b81526001600160a01b03821660048201526024016102ba565b6001600160a01b0381811660009081526020849052604090205416156135f057604051631034f46960e21b81526001600160a01b03821660048201526024016102ba565b60016000818152602093909352604080842080546001600160a01b039485168087529286208054959091166001600160a01b03199586161790559190935280549091169091179055565b6125088160405160240161364e9190613af0565b60408051601f198184030181529190526020810180516001600160e01b03166305f3bfab60e11b1790526124ff565b600080613688610874565b6001600160e01b03199093166000908152600293909301602052505060409020546001600160a01b0316151590565b6001600160a01b03811615806136d657506001600160a01b0381166001145b156136ff57604051637c84ecfb60e01b81526001600160a01b03831660048201526024016102ba565b6001600160a01b0382811660009081526020859052604090205481169082161461374757604051637c84ecfb60e01b81526001600160a01b03821660048201526024016102ba565b6001600160a01b0390811660008181526020949094526040808520805494841686529085208054949093166001600160a01b0319948516179092559092528154169055565b8280548282559060005260206000209081019282156137e1579160200282015b828111156137e157825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906137ac565b506137ed9291506137f1565b5090565b5b808211156137ed57600081556001016137f2565b6001600160a01b038116811461250857600080fd5b80356124ed81613806565b60006020828403121561383857600080fd5b813561252281613806565b60008083601f84011261385557600080fd5b5081356001600160401b0381111561386c57600080fd5b60208301915083602082850101111561130657600080fd5b6000806000806060858703121561389a57600080fd5b8435935060208501356138ac81613806565b925060408501356001600160401b038111156138c757600080fd5b6138d387828801613843565b95989497509550505050565b6000806000604084860312156138f457600080fd5b8335925060208401356001600160401b0381111561391157600080fd5b61391d86828701613843565b9497909650939450505050565b6000610120828403121561393d57600080fd5b50919050565b60008060006060848603121561395857600080fd5b83356001600160401b0381111561396e57600080fd5b61397a8682870161392a565b9660208601359650604090950135949350505050565b600080602083850312156139a357600080fd5b82356001600160401b038111156139b957600080fd5b6139c585828601613843565b90969095509350505050565b6000602082840312156139e357600080fd5b81356001600160401b038111156139f957600080fd5b61098c8482850161392a565b60008060408385031215613a1857600080fd5b8235613a2381613806565b946020939093013593505050565b60008151808452602080850194506020840160005b83811015613a6b5781516001600160a01b031687529582019590820190600101613a46565b509495945050505050565b604081526000613a896040830185613a31565b905060018060a01b03831660208301529392505050565b60005b83811015613abb578181015183820152602001613aa3565b50506000910152565b60008151808452613adc816020860160208601613aa0565b601f01601f19169290920160200192915050565b6020815260006125226020830184613ac4565b600060208284031215613b1557600080fd5b5035919050565b60018060a01b038616815284602082015260a060408201526000613b4360a0830186613a31565b931515606083015250608001529392505050565b600060208083016020845280855180835260408601915060408160051b87010192506020870160005b82811015613bae57603f19888603018452613b9c858351613ac4565b94509285019290850190600101613b80565b5092979650505050505050565b6001600160e01b03198116811461250857600080fd5b600060208284031215613be357600080fd5b813561252281613bbb565b602080825282516001600160a01b0390811683830152838201516001600160f81b031916604080850191909152840151606080850152805160808501819052600093929183019190849060a08701905b80831015613c6057845184168252938501936001929092019190850190613c3e565b50979650505050505050565b604081526000613a896040830185613ac4565b60008085851115613c8f57600080fd5b83861115613c9c57600080fd5b5050820193919092039150565b6bffffffffffffffffffffffff1981358181169160148510156132305760149490940360031b84901b1690921692915050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60018060a01b0385168152836020820152606060408201526000613d2d606083018486613cdc565b9695505050505050565b600060208284031215613d4957600080fd5b815161252281613bbb565b6000808335601e19843603018112613d6b57600080fd5b83016020810192503590506001600160401b03811115613d8a57600080fd5b80360382131561130657600080fd5b60408152613dba60408201613dad8561381b565b6001600160a01b03169052565b602083013560608201526000613dd36040850185613d54565b610120806080860152613deb61016086018385613cdc565b9250613dfa6060880188613d54565b9250603f19808786030160a0880152613e14858584613cdc565b9450608089013560c088015260a089013560e0880152610100935060c089013584880152613e4560e08a018a613d54565b9250818887030184890152613e5b868483613cdc565b955050613e6a848a018a613d54565b9450925080878603016101408801525050613e86838383613cdc565b93505050508260208301529392505050565b600060208284031215613eaa57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b600060018201613ed957613ed9613eb1565b5060010190565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613f1e57613f1e613ee0565b604052919050565b60006001600160401b03821115613f3f57613f3f613ee0565b50601f01601f191660200190565b600082601f830112613f5e57600080fd5b8135613f71613f6c82613f26565b613ef6565b818152846020838601011115613f8657600080fd5b816020850160208301376000918101602001919091529392505050565b600080600060608486031215613fb857600080fd5b8335613fc381613806565b92506020840135613fd381613806565b915060408401356001600160401b03811115613fee57600080fd5b613ffa86828701613f4d565b9150509250925092565b60008251614016818460208701613aa0565b9190910192915050565b6000808335601e1984360301811261403757600080fd5b8301803591506001600160401b0382111561405157600080fd5b60200191503681900382131561130657600080fd5b8183823760009101908152919050565b808201808211156108ee576108ee613eb1565b6001600160f81b031991909116815260200190565b634e487b7160e01b600052603260045260246000fd5b82815260406020820152600061098c6040830184613ac4565b6001600160a01b0384168152604060208201819052600090610a619083018486613cdc565b60006020828403121561410457600080fd5b81516001600160401b0381111561411a57600080fd5b8201601f8101841361412b57600080fd5b8051614139613f6c82613f26565b81815285602083850101111561414e57600080fd5b610a61826020830160208601613aa0565b60006020828403121561417157600080fd5b8151801515811461252257600080fd5b60008161419057614190613eb1565b506000190190565b80820281158282048414176108ee576108ee613eb1565b6000826141cc57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156108ee576108ee613eb1565b60208152600061098c602083018486613cdc565b6000806040838503121561420b57600080fd5b823561421681613806565b915060208301356001600160401b0381111561423157600080fd5b61423d85828601613f4d565b9150509250929050565b6001600160e01b031981358181169160048510156132305760049490940360031b84901b1690921692915050565b60008235605e1983360301811261401657600080fd5b803560208310156108ee57600019602084900360031b1b169291505056fe36e05829dd1b9a4411d96a3549582172d7f071c1c0db5c573fcf94eb284316085f696e7374616c6c46616c6c6261636b48616e646c6572203d3e2061667465722061737320626c6f636b5f696e7374616c6c46616c6c6261636b48616e646c6572203d3e206265666f72652061737320626c6f636ba2646970667358221220bf02496db3249e2d1367792c0e795e1aecc9a6894a5dd038f18fc440d85e8c7464736f6c63430008170033"; - -type EtherspotWallet7579ConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: EtherspotWallet7579ConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class EtherspotWallet7579__factory extends ContractFactory { - constructor(...args: EtherspotWallet7579ConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy(overrides || {}) as Promise; - } - override getDeployTransaction( - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(overrides || {}); - } - override attach(address: string): ModularEtherspotWallet { - return super.attach(address) as ModularEtherspotWallet; - } - override connect(signer: Signer): EtherspotWallet7579__factory { - return super.connect(signer) as EtherspotWallet7579__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): ModularEtherspotWalletInterface { - return new utils.Interface(_abi) as ModularEtherspotWalletInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): ModularEtherspotWallet { - return new Contract(address, _abi, signerOrProvider) as ModularEtherspotWallet; - } -} diff --git a/src/sdk/contracts/factories/src/ERC7579/wallet/index.ts b/src/sdk/contracts/factories/src/ERC7579/wallet/index.ts deleted file mode 100644 index 421fd6f..0000000 --- a/src/sdk/contracts/factories/src/ERC7579/wallet/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { EtherspotWallet7579__factory } from "./EtherspotWallet7579__factory"; -export { EtherspotWallet7579Base__factory } from "./EtherspotWallet7579Base__factory"; -export { EtherspotWallet7579Factory__factory } from "./EtherspotWallet7579Factory__factory"; diff --git a/src/sdk/contracts/factories/src/access/AccessController__factory.ts b/src/sdk/contracts/factories/src/access/AccessController__factory.ts deleted file mode 100644 index a765e28..0000000 --- a/src/sdk/contracts/factories/src/access/AccessController__factory.ts +++ /dev/null @@ -1,381 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - AccessController, - AccessControllerInterface, -} from "../../../src/access/AccessController"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newGuardian", - type: "address", - }, - ], - name: "GuardianAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "removedGuardian", - type: "address", - }, - ], - name: "GuardianRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "removedOwner", - type: "address", - }, - ], - name: "OwnerRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "discardedBy", - type: "address", - }, - ], - name: "ProposalDiscarded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "newOwnerProposed", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "proposer", - type: "address", - }, - ], - name: "ProposalSubmitted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newTimelock", - type: "uint256", - }, - ], - name: "ProposalTimelockChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "newOwnerProposed", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "approvalCount", - type: "uint256", - }, - ], - name: "QuorumNotReached", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "_newGuardian", - type: "address", - }, - ], - name: "addGuardian", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "addOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_newTimelock", - type: "uint256", - }, - ], - name: "changeProposalTimelock", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "discardCurrentProposal", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_proposalId", - type: "uint256", - }, - ], - name: "getProposal", - outputs: [ - { - internalType: "address", - name: "ownerProposed_", - type: "address", - }, - { - internalType: "uint256", - name: "approvalCount_", - type: "uint256", - }, - { - internalType: "address[]", - name: "guardiansApproved_", - type: "address[]", - }, - { - internalType: "bool", - name: "resolved_", - type: "bool", - }, - { - internalType: "uint256", - name: "proposedAt_", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "guardianCosign", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "guardianCount", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "guardianPropose", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_address", - type: "address", - }, - ], - name: "isGuardian", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_address", - type: "address", - }, - ], - name: "isOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "ownerCount", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "proposalId", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "proposalTimelock", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_guardian", - type: "address", - }, - ], - name: "removeGuardian", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "removeOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class AccessController__factory { - static readonly abi = _abi; - static createInterface(): AccessControllerInterface { - return new utils.Interface(_abi) as AccessControllerInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): AccessController { - return new Contract(address, _abi, signerOrProvider) as AccessController; - } -} diff --git a/src/sdk/contracts/factories/src/access/index.ts b/src/sdk/contracts/factories/src/access/index.ts deleted file mode 100644 index dc7ff6c..0000000 --- a/src/sdk/contracts/factories/src/access/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { AccessController__factory } from "./AccessController__factory"; diff --git a/src/sdk/contracts/factories/src/helpers/UniversalSignatureValidator.sol/UniversalSigValidator__factory.ts b/src/sdk/contracts/factories/src/helpers/UniversalSignatureValidator.sol/UniversalSigValidator__factory.ts deleted file mode 100644 index f3693dd..0000000 --- a/src/sdk/contracts/factories/src/helpers/UniversalSignatureValidator.sol/UniversalSigValidator__factory.ts +++ /dev/null @@ -1,181 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../../common"; -import type { - UniversalSigValidator, - UniversalSigValidatorInterface, -} from "../../../../src/helpers/UniversalSignatureValidator.sol/UniversalSigValidator"; - -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "error", - type: "bytes", - }, - ], - name: "ERC1271Revert", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes", - name: "error", - type: "bytes", - }, - ], - name: "ERC6492DeployFailed", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "_signer", - type: "address", - }, - { - internalType: "bytes32", - name: "_hash", - type: "bytes32", - }, - { - internalType: "bytes", - name: "_signature", - type: "bytes", - }, - ], - name: "isValidSig", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_signer", - type: "address", - }, - { - internalType: "bytes32", - name: "_hash", - type: "bytes32", - }, - { - internalType: "bytes", - name: "_signature", - type: "bytes", - }, - { - internalType: "bool", - name: "allowSideEffects", - type: "bool", - }, - ], - name: "isValidSigImpl", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_signer", - type: "address", - }, - { - internalType: "bytes32", - name: "_hash", - type: "bytes32", - }, - { - internalType: "bytes", - name: "_signature", - type: "bytes", - }, - ], - name: "isValidSigWithSideEffects", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -const _bytecode = - "0x608060405234801561001057600080fd5b50610a7a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806316d43401146100465780638f0684301461006d57806398ef1ed814610080575b600080fd5b61005961005436600461069e565b610093565b604051901515815260200160405180910390f35b61005961007b366004610712565b6104cc565b61005961008e366004610712565b610549565b60006001600160a01b0386163b6060827f649264926492649264926492649264926492649264926492649264926492649287876100d160208261076e565b6100dd928a9290610795565b6100e6916107bf565b14905080156101c0576000606088828961010160208261076e565b9261010e93929190610795565b81019061011b9190610880565b9550909250905060008590036101b957600080836001600160a01b031683604051610146919061091a565b6000604051808303816000865af19150503d8060008114610183576040519150601f19603f3d011682016040523d82523d6000602084013e610188565b606091505b5091509150816101b65780604051639d0d6e2d60e01b81526004016101ad9190610962565b60405180910390fd5b50505b50506101fa565b86868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509294505050505b80806102065750600083115b1561030557604051630b135d3f60e11b81526001600160a01b038a1690631626ba7e90610239908b90869060040161097c565b602060405180830381865afa925050508015610272575060408051601f3d908101601f1916820190925261026f91810190610995565b60015b6102c1573d8080156102a0576040519150601f19603f3d011682016040523d82523d6000602084013e6102a5565b606091505b5080604051636f2a959960e01b81526004016101ad9190610962565b6001600160e01b03198116630b135d3f60e11b14841580156102e05750825b80156102ea575086155b156102f957806000526001601ffd5b94506104c39350505050565b6041861461037b5760405162461bcd60e51b815260206004820152603a60248201527f5369676e617475726556616c696461746f72237265636f7665725369676e657260448201527f3a20696e76616c6964207369676e6174757265206c656e67746800000000000060648201526084016101ad565b600061038a602082898b610795565b610393916107bf565b905060006103a5604060208a8c610795565b6103ae916107bf565b90506000898960408181106103c5576103c56109bf565b919091013560f81c915050601b81148015906103e557508060ff16601c14155b156104485760405162461bcd60e51b815260206004820152602d60248201527f5369676e617475726556616c696461746f723a20696e76616c6964207369676e60448201526c617475726520762076616c756560981b60648201526084016101ad565b6040805160008152602081018083528d905260ff83169181019190915260608101849052608081018390526001600160a01b038d169060019060a0016020604051602081039080840390855afa1580156104a6573d6000803e3d6000fd5b505050602060405103516001600160a01b03161496505050505050505b95945050505050565b6040516316d4340160e01b815260009030906316d43401906104fb9088908890889088906001906004016109d5565b6020604051808303816000875af115801561051a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061053e9190610a27565b90505b949350505050565b6040516316d4340160e01b815260009030906316d434019061057790889088908890889088906004016109d5565b6020604051808303816000875af19250505080156105b2575060408051601f3d908101601f191682019092526105af91810190610a27565b60015b610628573d8080156105e0576040519150601f19603f3d011682016040523d82523d6000602084013e6105e5565b606091505b50805160018190036106245781600081518110610604576106046109bf565b6020910101516001600160f81b031916600160f81b149250610541915050565b8082fd5b9050610541565b6001600160a01b038116811461064457600080fd5b50565b60008083601f84011261065957600080fd5b50813567ffffffffffffffff81111561067157600080fd5b60208301915083602082850101111561068957600080fd5b9250929050565b801515811461064457600080fd5b6000806000806000608086880312156106b657600080fd5b85356106c18161062f565b945060208601359350604086013567ffffffffffffffff8111156106e457600080fd5b6106f088828901610647565b909450925050606086013561070481610690565b809150509295509295909350565b6000806000806060858703121561072857600080fd5b84356107338161062f565b935060208501359250604085013567ffffffffffffffff81111561075657600080fd5b61076287828801610647565b95989497509550505050565b8181038181111561078f57634e487b7160e01b600052601160045260246000fd5b92915050565b600080858511156107a557600080fd5b838611156107b257600080fd5b5050820193919092039150565b8035602083101561078f57600019602084900360031b1b1692915050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261080457600080fd5b813567ffffffffffffffff8082111561081f5761081f6107dd565b604051601f8301601f19908116603f01168101908282118183101715610847576108476107dd565b8160405283815286602085880101111561086057600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060006060848603121561089557600080fd5b83356108a08161062f565b9250602084013567ffffffffffffffff808211156108bd57600080fd5b6108c9878388016107f3565b935060408601359150808211156108df57600080fd5b506108ec868287016107f3565b9150509250925092565b60005b838110156109115781810151838201526020016108f9565b50506000910152565b6000825161092c8184602087016108f6565b9190910192915050565b6000815180845261094e8160208601602086016108f6565b601f01601f19169290920160200192915050565b6020815260006109756020830184610936565b9392505050565b8281526040602082015260006105416040830184610936565b6000602082840312156109a757600080fd5b81516001600160e01b03198116811461097557600080fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0386168152602081018590526080604082018190528101839052828460a0830137600081840160a0908101919091529115156060820152601f909201601f1916909101019392505050565b600060208284031215610a3957600080fd5b81516109758161069056fea26469706673582212207368badeb048ee590c988585f7d208568af2b37bcbb36c67115a7b6d5bdff3cc64736f6c63430008110033"; - -type UniversalSigValidatorConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: UniversalSigValidatorConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class UniversalSigValidator__factory extends ContractFactory { - constructor(...args: UniversalSigValidatorConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy(overrides || {}) as Promise; - } - override getDeployTransaction( - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(overrides || {}); - } - override attach(address: string): UniversalSigValidator { - return super.attach(address) as UniversalSigValidator; - } - override connect(signer: Signer): UniversalSigValidator__factory { - return super.connect(signer) as UniversalSigValidator__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): UniversalSigValidatorInterface { - return new utils.Interface(_abi) as UniversalSigValidatorInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): UniversalSigValidator { - return new Contract( - address, - _abi, - signerOrProvider - ) as UniversalSigValidator; - } -} diff --git a/src/sdk/contracts/factories/src/helpers/UniversalSignatureValidator.sol/ValidateSigOffchain__factory.ts b/src/sdk/contracts/factories/src/helpers/UniversalSignatureValidator.sol/ValidateSigOffchain__factory.ts deleted file mode 100644 index 127b000..0000000 --- a/src/sdk/contracts/factories/src/helpers/UniversalSignatureValidator.sol/ValidateSigOffchain__factory.ts +++ /dev/null @@ -1,107 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { - Signer, - utils, - Contract, - ContractFactory, - BytesLike, - Overrides, -} from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../../common"; -import type { - ValidateSigOffchain, - ValidateSigOffchainInterface, -} from "../../../../src/helpers/UniversalSignatureValidator.sol/ValidateSigOffchain"; - -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_signer", - type: "address", - }, - { - internalType: "bytes32", - name: "_hash", - type: "bytes32", - }, - { - internalType: "bytes", - name: "_signature", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, -] as const; - -const _bytecode = - "0x608060405234801561001057600080fd5b50604051610d08380380610d0883398101604081905261002f91610124565b600060405161003d906100dd565b604051809103906000f080158015610059573d6000803e3d6000fd5b5090506000816001600160a01b0316638f0684308686866040518463ffffffff1660e01b815260040161008e939291906101fb565b6020604051808303816000875af11580156100ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100d19190610244565b9050806000526001601ff35b610a9a8061026e83390190565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561011b578181015183820152602001610103565b50506000910152565b60008060006060848603121561013957600080fd5b83516001600160a01b038116811461015057600080fd5b6020850151604086015191945092506001600160401b038082111561017457600080fd5b818601915086601f83011261018857600080fd5b81518181111561019a5761019a6100ea565b604051601f8201601f19908116603f011681019083821181831017156101c2576101c26100ea565b816040528281528960208487010111156101db57600080fd5b6101ec836020830160208801610100565b80955050505050509250925092565b60018060a01b0384168152826020820152606060408201526000825180606084015261022e816080850160208701610100565b601f01601f191691909101608001949350505050565b60006020828403121561025657600080fd5b8151801515811461026657600080fd5b939250505056fe608060405234801561001057600080fd5b50610a7a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806316d43401146100465780638f0684301461006d57806398ef1ed814610080575b600080fd5b61005961005436600461069e565b610093565b604051901515815260200160405180910390f35b61005961007b366004610712565b6104cc565b61005961008e366004610712565b610549565b60006001600160a01b0386163b6060827f649264926492649264926492649264926492649264926492649264926492649287876100d160208261076e565b6100dd928a9290610795565b6100e6916107bf565b14905080156101c0576000606088828961010160208261076e565b9261010e93929190610795565b81019061011b9190610880565b9550909250905060008590036101b957600080836001600160a01b031683604051610146919061091a565b6000604051808303816000865af19150503d8060008114610183576040519150601f19603f3d011682016040523d82523d6000602084013e610188565b606091505b5091509150816101b65780604051639d0d6e2d60e01b81526004016101ad9190610962565b60405180910390fd5b50505b50506101fa565b86868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509294505050505b80806102065750600083115b1561030557604051630b135d3f60e11b81526001600160a01b038a1690631626ba7e90610239908b90869060040161097c565b602060405180830381865afa925050508015610272575060408051601f3d908101601f1916820190925261026f91810190610995565b60015b6102c1573d8080156102a0576040519150601f19603f3d011682016040523d82523d6000602084013e6102a5565b606091505b5080604051636f2a959960e01b81526004016101ad9190610962565b6001600160e01b03198116630b135d3f60e11b14841580156102e05750825b80156102ea575086155b156102f957806000526001601ffd5b94506104c39350505050565b6041861461037b5760405162461bcd60e51b815260206004820152603a60248201527f5369676e617475726556616c696461746f72237265636f7665725369676e657260448201527f3a20696e76616c6964207369676e6174757265206c656e67746800000000000060648201526084016101ad565b600061038a602082898b610795565b610393916107bf565b905060006103a5604060208a8c610795565b6103ae916107bf565b90506000898960408181106103c5576103c56109bf565b919091013560f81c915050601b81148015906103e557508060ff16601c14155b156104485760405162461bcd60e51b815260206004820152602d60248201527f5369676e617475726556616c696461746f723a20696e76616c6964207369676e60448201526c617475726520762076616c756560981b60648201526084016101ad565b6040805160008152602081018083528d905260ff83169181019190915260608101849052608081018390526001600160a01b038d169060019060a0016020604051602081039080840390855afa1580156104a6573d6000803e3d6000fd5b505050602060405103516001600160a01b03161496505050505050505b95945050505050565b6040516316d4340160e01b815260009030906316d43401906104fb9088908890889088906001906004016109d5565b6020604051808303816000875af115801561051a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061053e9190610a27565b90505b949350505050565b6040516316d4340160e01b815260009030906316d434019061057790889088908890889088906004016109d5565b6020604051808303816000875af19250505080156105b2575060408051601f3d908101601f191682019092526105af91810190610a27565b60015b610628573d8080156105e0576040519150601f19603f3d011682016040523d82523d6000602084013e6105e5565b606091505b50805160018190036106245781600081518110610604576106046109bf565b6020910101516001600160f81b031916600160f81b149250610541915050565b8082fd5b9050610541565b6001600160a01b038116811461064457600080fd5b50565b60008083601f84011261065957600080fd5b50813567ffffffffffffffff81111561067157600080fd5b60208301915083602082850101111561068957600080fd5b9250929050565b801515811461064457600080fd5b6000806000806000608086880312156106b657600080fd5b85356106c18161062f565b945060208601359350604086013567ffffffffffffffff8111156106e457600080fd5b6106f088828901610647565b909450925050606086013561070481610690565b809150509295509295909350565b6000806000806060858703121561072857600080fd5b84356107338161062f565b935060208501359250604085013567ffffffffffffffff81111561075657600080fd5b61076287828801610647565b95989497509550505050565b8181038181111561078f57634e487b7160e01b600052601160045260246000fd5b92915050565b600080858511156107a557600080fd5b838611156107b257600080fd5b5050820193919092039150565b8035602083101561078f57600019602084900360031b1b1692915050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261080457600080fd5b813567ffffffffffffffff8082111561081f5761081f6107dd565b604051601f8301601f19908116603f01168101908282118183101715610847576108476107dd565b8160405283815286602085880101111561086057600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060006060848603121561089557600080fd5b83356108a08161062f565b9250602084013567ffffffffffffffff808211156108bd57600080fd5b6108c9878388016107f3565b935060408601359150808211156108df57600080fd5b506108ec868287016107f3565b9150509250925092565b60005b838110156109115781810151838201526020016108f9565b50506000910152565b6000825161092c8184602087016108f6565b9190910192915050565b6000815180845261094e8160208601602086016108f6565b601f01601f19169290920160200192915050565b6020815260006109756020830184610936565b9392505050565b8281526040602082015260006105416040830184610936565b6000602082840312156109a757600080fd5b81516001600160e01b03198116811461097557600080fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0386168152602081018590526080604082018190528101839052828460a0830137600081840160a0908101919091529115156060820152601f909201601f1916909101019392505050565b600060208284031215610a3957600080fd5b81516109758161069056fea26469706673582212207368badeb048ee590c988585f7d208568af2b37bcbb36c67115a7b6d5bdff3cc64736f6c63430008110033"; - -type ValidateSigOffchainConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: ValidateSigOffchainConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class ValidateSigOffchain__factory extends ContractFactory { - constructor(...args: ValidateSigOffchainConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy( - _signer, - _hash, - _signature, - overrides || {} - ) as Promise; - } - override getDeployTransaction( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction( - _signer, - _hash, - _signature, - overrides || {} - ); - } - override attach(address: string): ValidateSigOffchain { - return super.attach(address) as ValidateSigOffchain; - } - override connect(signer: Signer): ValidateSigOffchain__factory { - return super.connect(signer) as ValidateSigOffchain__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): ValidateSigOffchainInterface { - return new utils.Interface(_abi) as ValidateSigOffchainInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): ValidateSigOffchain { - return new Contract(address, _abi, signerOrProvider) as ValidateSigOffchain; - } -} diff --git a/src/sdk/contracts/factories/src/helpers/UniversalSignatureValidator.sol/index.ts b/src/sdk/contracts/factories/src/helpers/UniversalSignatureValidator.sol/index.ts deleted file mode 100644 index f19d3b5..0000000 --- a/src/sdk/contracts/factories/src/helpers/UniversalSignatureValidator.sol/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { UniversalSigValidator__factory } from "./UniversalSigValidator__factory"; -export { ValidateSigOffchain__factory } from "./ValidateSigOffchain__factory"; diff --git a/src/sdk/contracts/factories/src/helpers/index.ts b/src/sdk/contracts/factories/src/helpers/index.ts deleted file mode 100644 index 2893d8f..0000000 --- a/src/sdk/contracts/factories/src/helpers/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as universalSignatureValidatorSol from "./UniversalSignatureValidator.sol"; diff --git a/src/sdk/contracts/factories/src/index.ts b/src/sdk/contracts/factories/src/index.ts deleted file mode 100644 index 3ed2e30..0000000 --- a/src/sdk/contracts/factories/src/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export * as access from "./access"; -export * as helpers from "./helpers"; -export * as interfaces from "./interfaces"; -export * as paymaster from "./paymaster"; -export * as wallet from "./wallet"; diff --git a/src/sdk/contracts/factories/src/interfaces/IAccessController__factory.ts b/src/sdk/contracts/factories/src/interfaces/IAccessController__factory.ts deleted file mode 100644 index 0b483b8..0000000 --- a/src/sdk/contracts/factories/src/interfaces/IAccessController__factory.ts +++ /dev/null @@ -1,329 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IAccessController, - IAccessControllerInterface, -} from "../../../src/interfaces/IAccessController"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newGuardian", - type: "address", - }, - ], - name: "GuardianAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "removedGuardian", - type: "address", - }, - ], - name: "GuardianRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "removedOwner", - type: "address", - }, - ], - name: "OwnerRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "discardedBy", - type: "address", - }, - ], - name: "ProposalDiscarded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "newOwnerProposed", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "proposer", - type: "address", - }, - ], - name: "ProposalSubmitted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newTimelock", - type: "uint256", - }, - ], - name: "ProposalTimelockChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "newOwnerProposed", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "approvalCount", - type: "uint256", - }, - ], - name: "QuorumNotReached", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "_newGuardian", - type: "address", - }, - ], - name: "addGuardian", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "addOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_newTimelock", - type: "uint256", - }, - ], - name: "changeProposalTimelock", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "discardCurrentProposal", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_proposalId", - type: "uint256", - }, - ], - name: "getProposal", - outputs: [ - { - internalType: "address", - name: "ownerProposed_", - type: "address", - }, - { - internalType: "uint256", - name: "approvalCount_", - type: "uint256", - }, - { - internalType: "address[]", - name: "guardiansApproved_", - type: "address[]", - }, - { - internalType: "bool", - name: "resolved_", - type: "bool", - }, - { - internalType: "uint256", - name: "proposedAt_", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "guardianCosign", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "guardianPropose", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_address", - type: "address", - }, - ], - name: "isGuardian", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_address", - type: "address", - }, - ], - name: "isOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_guardian", - type: "address", - }, - ], - name: "removeGuardian", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "removeOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class IAccessController__factory { - static readonly abi = _abi; - static createInterface(): IAccessControllerInterface { - return new utils.Interface(_abi) as IAccessControllerInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IAccessController { - return new Contract(address, _abi, signerOrProvider) as IAccessController; - } -} diff --git a/src/sdk/contracts/factories/src/interfaces/IERC1271Wallet__factory.ts b/src/sdk/contracts/factories/src/interfaces/IERC1271Wallet__factory.ts deleted file mode 100644 index 06e9b8c..0000000 --- a/src/sdk/contracts/factories/src/interfaces/IERC1271Wallet__factory.ts +++ /dev/null @@ -1,50 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IERC1271Wallet, - IERC1271WalletInterface, -} from "../../../src/interfaces/IERC1271Wallet"; - -const _abi = [ - { - inputs: [ - { - internalType: "bytes32", - name: "hash", - type: "bytes32", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "isValidSignature", - outputs: [ - { - internalType: "bytes4", - name: "magicValue", - type: "bytes4", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; - -export class IERC1271Wallet__factory { - static readonly abi = _abi; - static createInterface(): IERC1271WalletInterface { - return new utils.Interface(_abi) as IERC1271WalletInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IERC1271Wallet { - return new Contract(address, _abi, signerOrProvider) as IERC1271Wallet; - } -} diff --git a/src/sdk/contracts/factories/src/interfaces/IERC721Wallet.sol/IERC1271Wallet__factory.ts b/src/sdk/contracts/factories/src/interfaces/IERC721Wallet.sol/IERC1271Wallet__factory.ts deleted file mode 100644 index ee8b28d..0000000 --- a/src/sdk/contracts/factories/src/interfaces/IERC721Wallet.sol/IERC1271Wallet__factory.ts +++ /dev/null @@ -1,50 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IERC1271Wallet, - IERC1271WalletInterface, -} from "../../../../src/interfaces/IERC721Wallet.sol/IERC1271Wallet"; - -const _abi = [ - { - inputs: [ - { - internalType: "bytes32", - name: "hash", - type: "bytes32", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "isValidSignature", - outputs: [ - { - internalType: "bytes4", - name: "magicValue", - type: "bytes4", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; - -export class IERC1271Wallet__factory { - static readonly abi = _abi; - static createInterface(): IERC1271WalletInterface { - return new utils.Interface(_abi) as IERC1271WalletInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IERC1271Wallet { - return new Contract(address, _abi, signerOrProvider) as IERC1271Wallet; - } -} diff --git a/src/sdk/contracts/factories/src/interfaces/IERC721Wallet.sol/index.ts b/src/sdk/contracts/factories/src/interfaces/IERC721Wallet.sol/index.ts deleted file mode 100644 index da19bec..0000000 --- a/src/sdk/contracts/factories/src/interfaces/IERC721Wallet.sol/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { IERC1271Wallet__factory } from "./IERC1271Wallet__factory"; diff --git a/src/sdk/contracts/factories/src/interfaces/IEtherspotPaymaster__factory.ts b/src/sdk/contracts/factories/src/interfaces/IEtherspotPaymaster__factory.ts deleted file mode 100644 index da0412e..0000000 --- a/src/sdk/contracts/factories/src/interfaces/IEtherspotPaymaster__factory.ts +++ /dev/null @@ -1,516 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IEtherspotPaymaster, - IEtherspotPaymasterInterface, -} from "../../../src/interfaces/IEtherspotPaymaster"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "AddedBatchToWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "AddedToWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "RemovedBatchFromWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "RemovedFromWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "SponsorSuccessful", - type: "event", - }, - { - inputs: [ - { - internalType: "address[]", - name: "_accounts", - type: "address[]", - }, - ], - name: "addBatchToWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint32", - name: "unstakeDelaySec", - type: "uint32", - }, - ], - name: "addStake", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_account", - type: "address", - }, - ], - name: "addToWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_sponsor", - type: "address", - }, - { - internalType: "address", - name: "_account", - type: "address", - }, - ], - name: "check", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "depositFunds", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [], - name: "getDeposit", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct UserOperation", - name: "userOp", - type: "tuple", - }, - { - internalType: "uint48", - name: "validUntil", - type: "uint48", - }, - { - internalType: "uint48", - name: "validAfter", - type: "uint48", - }, - ], - name: "getHash", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_sponsor", - type: "address", - }, - ], - name: "getSponsorBalance", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - ], - name: "parsePaymasterAndData", - outputs: [ - { - internalType: "uint48", - name: "validUntil", - type: "uint48", - }, - { - internalType: "uint48", - name: "validAfter", - type: "uint48", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "enum IEtherspotPaymaster.PostOpMode", - name: "mode", - type: "uint8", - }, - { - internalType: "bytes", - name: "context", - type: "bytes", - }, - { - internalType: "uint256", - name: "actualGasCost", - type: "uint256", - }, - ], - name: "postOp", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "_accounts", - type: "address[]", - }, - ], - name: "removeBatchFromWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_account", - type: "address", - }, - ], - name: "removeFromWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "unlockStake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct UserOperation", - name: "userOp", - type: "tuple", - }, - { - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "maxCost", - type: "uint256", - }, - ], - name: "validatePaymasterUserOp", - outputs: [ - { - internalType: "bytes", - name: "context", - type: "bytes", - }, - { - internalType: "uint256", - name: "validationData", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "_sponsor", - type: "address", - }, - { - internalType: "uint256", - name: "_amount", - type: "uint256", - }, - ], - name: "withdrawFunds", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "withdrawAddress", - type: "address", - }, - ], - name: "withdrawStake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class IEtherspotPaymaster__factory { - static readonly abi = _abi; - static createInterface(): IEtherspotPaymasterInterface { - return new utils.Interface(_abi) as IEtherspotPaymasterInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IEtherspotPaymaster { - return new Contract(address, _abi, signerOrProvider) as IEtherspotPaymaster; - } -} diff --git a/src/sdk/contracts/factories/src/interfaces/IEtherspotWalletFactory__factory.ts b/src/sdk/contracts/factories/src/interfaces/IEtherspotWalletFactory__factory.ts deleted file mode 100644 index ddbe965..0000000 --- a/src/sdk/contracts/factories/src/interfaces/IEtherspotWalletFactory__factory.ts +++ /dev/null @@ -1,148 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IEtherspotWalletFactory, - IEtherspotWalletFactoryInterface, -} from "../../../src/interfaces/IEtherspotWalletFactory"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "wallet", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "index", - type: "uint256", - }, - ], - name: "AccountCreation", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newImplementation", - type: "address", - }, - ], - name: "ImplementationSet", - type: "event", - }, - { - inputs: [], - name: "accountCreationCode", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_impl", - type: "address", - }, - ], - name: "checkImplementation", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "uint256", - name: "_index", - type: "uint256", - }, - ], - name: "createAccount", - outputs: [ - { - internalType: "address", - name: "ret", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "uint256", - name: "_index", - type: "uint256", - }, - ], - name: "getAddress", - outputs: [ - { - internalType: "address", - name: "proxy", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; - -export class IEtherspotWalletFactory__factory { - static readonly abi = _abi; - static createInterface(): IEtherspotWalletFactoryInterface { - return new utils.Interface(_abi) as IEtherspotWalletFactoryInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IEtherspotWalletFactory { - return new Contract( - address, - _abi, - signerOrProvider - ) as IEtherspotWalletFactory; - } -} diff --git a/src/sdk/contracts/factories/src/interfaces/IEtherspotWallet__factory.ts b/src/sdk/contracts/factories/src/interfaces/IEtherspotWallet__factory.ts deleted file mode 100644 index 1b9d84f..0000000 --- a/src/sdk/contracts/factories/src/interfaces/IEtherspotWallet__factory.ts +++ /dev/null @@ -1,492 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IEtherspotWallet, - IEtherspotWalletInterface, -} from "../../../src/interfaces/IEtherspotWallet"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "contract IEntryPoint", - name: "entryPoint", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "EtherspotWalletInitialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "EtherspotWalletReceived", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newGuardian", - type: "address", - }, - ], - name: "GuardianAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "removedGuardian", - type: "address", - }, - ], - name: "GuardianRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "removedOwner", - type: "address", - }, - ], - name: "OwnerRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "discardedBy", - type: "address", - }, - ], - name: "ProposalDiscarded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "newOwnerProposed", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "proposer", - type: "address", - }, - ], - name: "ProposalSubmitted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newTimelock", - type: "uint256", - }, - ], - name: "ProposalTimelockChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "newOwnerProposed", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "approvalCount", - type: "uint256", - }, - ], - name: "QuorumNotReached", - type: "event", - }, - { - inputs: [], - name: "addDeposit", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newGuardian", - type: "address", - }, - ], - name: "addGuardian", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "addOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_newTimelock", - type: "uint256", - }, - ], - name: "changeProposalTimelock", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "discardCurrentProposal", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "entryPoint", - outputs: [ - { - internalType: "contract IEntryPoint", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "dest", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "func", - type: "bytes", - }, - ], - name: "execute", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "dest", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "value", - type: "uint256[]", - }, - { - internalType: "bytes[]", - name: "func", - type: "bytes[]", - }, - ], - name: "executeBatch", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "getDeposit", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_proposalId", - type: "uint256", - }, - ], - name: "getProposal", - outputs: [ - { - internalType: "address", - name: "ownerProposed_", - type: "address", - }, - { - internalType: "uint256", - name: "approvalCount_", - type: "uint256", - }, - { - internalType: "address[]", - name: "guardiansApproved_", - type: "address[]", - }, - { - internalType: "bool", - name: "resolved_", - type: "bool", - }, - { - internalType: "uint256", - name: "proposedAt_", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "guardianCosign", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "guardianPropose", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_address", - type: "address", - }, - ], - name: "isGuardian", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_address", - type: "address", - }, - ], - name: "isOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "hash", - type: "bytes32", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "isValidSignature", - outputs: [ - { - internalType: "bytes4", - name: "magicValue", - type: "bytes4", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_guardian", - type: "address", - }, - ], - name: "removeGuardian", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "removeOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "withdrawAddress", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "withdrawDepositTo", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - stateMutability: "payable", - type: "receive", - }, -] as const; - -export class IEtherspotWallet__factory { - static readonly abi = _abi; - static createInterface(): IEtherspotWalletInterface { - return new utils.Interface(_abi) as IEtherspotWalletInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IEtherspotWallet { - return new Contract(address, _abi, signerOrProvider) as IEtherspotWallet; - } -} diff --git a/src/sdk/contracts/factories/src/interfaces/IWhitelist__factory.ts b/src/sdk/contracts/factories/src/interfaces/IWhitelist__factory.ts deleted file mode 100644 index 6f8362f..0000000 --- a/src/sdk/contracts/factories/src/interfaces/IWhitelist__factory.ts +++ /dev/null @@ -1,178 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - IWhitelist, - IWhitelistInterface, -} from "../../../src/interfaces/IWhitelist"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "AddedBatchToWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "AddedToWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "RemovedBatchFromWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "RemovedFromWhitelist", - type: "event", - }, - { - inputs: [ - { - internalType: "address[]", - name: "_accounts", - type: "address[]", - }, - ], - name: "addBatchToWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_account", - type: "address", - }, - ], - name: "addToWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_sponsor", - type: "address", - }, - { - internalType: "address", - name: "_account", - type: "address", - }, - ], - name: "check", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "_accounts", - type: "address[]", - }, - ], - name: "removeBatchFromWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_account", - type: "address", - }, - ], - name: "removeFromWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class IWhitelist__factory { - static readonly abi = _abi; - static createInterface(): IWhitelistInterface { - return new utils.Interface(_abi) as IWhitelistInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): IWhitelist { - return new Contract(address, _abi, signerOrProvider) as IWhitelist; - } -} diff --git a/src/sdk/contracts/factories/src/interfaces/index.ts b/src/sdk/contracts/factories/src/interfaces/index.ts deleted file mode 100644 index 0599c0b..0000000 --- a/src/sdk/contracts/factories/src/interfaces/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { IAccessController__factory } from "./IAccessController__factory"; -export { IERC1271Wallet__factory } from "./IERC1271Wallet__factory"; -export { IEtherspotPaymaster__factory } from "./IEtherspotPaymaster__factory"; -export { IEtherspotWallet__factory } from "./IEtherspotWallet__factory"; -export { IEtherspotWalletFactory__factory } from "./IEtherspotWalletFactory__factory"; -export { IWhitelist__factory } from "./IWhitelist__factory"; diff --git a/src/sdk/contracts/factories/src/paymaster/BasePaymaster__factory.ts b/src/sdk/contracts/factories/src/paymaster/BasePaymaster__factory.ts deleted file mode 100644 index 03feb23..0000000 --- a/src/sdk/contracts/factories/src/paymaster/BasePaymaster__factory.ts +++ /dev/null @@ -1,251 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - BasePaymaster, - BasePaymasterInterface, -} from "../../../src/paymaster/BasePaymaster"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - inputs: [ - { - internalType: "uint32", - name: "unstakeDelaySec", - type: "uint32", - }, - ], - name: "addStake", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [], - name: "entryPoint", - outputs: [ - { - internalType: "contract IEntryPoint", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "getDeposit", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "enum IPaymaster.PostOpMode", - name: "mode", - type: "uint8", - }, - { - internalType: "bytes", - name: "context", - type: "bytes", - }, - { - internalType: "uint256", - name: "actualGasCost", - type: "uint256", - }, - ], - name: "postOp", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "unlockStake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct UserOperation", - name: "userOp", - type: "tuple", - }, - { - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "maxCost", - type: "uint256", - }, - ], - name: "validatePaymasterUserOp", - outputs: [ - { - internalType: "bytes", - name: "context", - type: "bytes", - }, - { - internalType: "uint256", - name: "validationData", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "withdrawAddress", - type: "address", - }, - ], - name: "withdrawStake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -export class BasePaymaster__factory { - static readonly abi = _abi; - static createInterface(): BasePaymasterInterface { - return new utils.Interface(_abi) as BasePaymasterInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): BasePaymaster { - return new Contract(address, _abi, signerOrProvider) as BasePaymaster; - } -} diff --git a/src/sdk/contracts/factories/src/paymaster/EtherspotPaymaster__factory.ts b/src/sdk/contracts/factories/src/paymaster/EtherspotPaymaster__factory.ts deleted file mode 100644 index bd2e165..0000000 --- a/src/sdk/contracts/factories/src/paymaster/EtherspotPaymaster__factory.ts +++ /dev/null @@ -1,629 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../common"; -import type { - EtherspotPaymaster, - EtherspotPaymasterInterface, -} from "../../../src/paymaster/EtherspotPaymaster"; - -const _abi = [ - { - inputs: [ - { - internalType: "contract IEntryPoint", - name: "_entryPoint", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "AddedBatchToWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "AddedToWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "RemovedBatchFromWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "RemovedFromWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "SponsorSuccessful", - type: "event", - }, - { - inputs: [ - { - internalType: "address[]", - name: "_accounts", - type: "address[]", - }, - ], - name: "addBatchToWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint32", - name: "unstakeDelaySec", - type: "uint32", - }, - ], - name: "addStake", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_account", - type: "address", - }, - ], - name: "addToWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_sponsor", - type: "address", - }, - { - internalType: "address", - name: "_account", - type: "address", - }, - ], - name: "check", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "depositFunds", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [], - name: "entryPoint", - outputs: [ - { - internalType: "contract IEntryPoint", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "getDeposit", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct UserOperation", - name: "userOp", - type: "tuple", - }, - { - internalType: "uint48", - name: "validUntil", - type: "uint48", - }, - { - internalType: "uint48", - name: "validAfter", - type: "uint48", - }, - ], - name: "getHash", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_sponsor", - type: "address", - }, - ], - name: "getSponsorBalance", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - ], - name: "parsePaymasterAndData", - outputs: [ - { - internalType: "uint48", - name: "validUntil", - type: "uint48", - }, - { - internalType: "uint48", - name: "validAfter", - type: "uint48", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "enum IPaymaster.PostOpMode", - name: "mode", - type: "uint8", - }, - { - internalType: "bytes", - name: "context", - type: "bytes", - }, - { - internalType: "uint256", - name: "actualGasCost", - type: "uint256", - }, - ], - name: "postOp", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "_accounts", - type: "address[]", - }, - ], - name: "removeBatchFromWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_account", - type: "address", - }, - ], - name: "removeFromWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "unlockStake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct UserOperation", - name: "userOp", - type: "tuple", - }, - { - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "maxCost", - type: "uint256", - }, - ], - name: "validatePaymasterUserOp", - outputs: [ - { - internalType: "bytes", - name: "context", - type: "bytes", - }, - { - internalType: "uint256", - name: "validationData", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_amount", - type: "uint256", - }, - ], - name: "withdrawFunds", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "withdrawAddress", - type: "address", - }, - ], - name: "withdrawStake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -const _bytecode = - "0x60a060405234801561001057600080fd5b5060405162001c0238038062001c02833981016040819052610031916100a2565b8061003b33610052565b6001600160a01b03166080525060016002556100d2565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100b457600080fd5b81516001600160a01b03811681146100cb57600080fd5b9392505050565b608051611ae36200011f60003960008181610295015281816103ff0152818161056201528181610749015281816107dd01528181610854015281816108f30152610dcb0152611ae36000f3fe60806040526004361061011f5760003560e01c8063b0d691fe116100a0578063de481f1711610064578063de481f1714610331578063e2c41dbc14610367578063e43252d71461036f578063f2fde38b1461038f578063f465c77e146103af57600080fd5b8063b0d691fe14610283578063b3154db0146102b7578063bb9fe6bf146102e7578063c23a5cea146102fc578063c399ec881461031c57600080fd5b80638da5cb5b116100e75780638da5cb5b146101ae57806394d4ad60146101e557806394e1fc1914610215578063a3d19d8c14610243578063a9a234091461026357600080fd5b80630396cb6014610124578063123a6a8214610139578063155dd5ee14610159578063715018a6146101795780638ab1d6811461018e575b600080fd5b610137610132366004611535565b6103dd565b005b34801561014557600080fd5b50610137610154366004611562565b610468565b34801561016557600080fd5b506101376101743660046115d7565b6104b8565b34801561018557600080fd5b506101376105d3565b34801561019a57600080fd5b506101376101a9366004611605565b6105e7565b3480156101ba57600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b3480156101f157600080fd5b50610205610200366004611664565b610629565b6040516101dc94939291906116a6565b34801561022157600080fd5b50610235610230366004611726565b610666565b6040519081526020016101dc565b34801561024f57600080fd5b5061013761025e366004611562565b6106c0565b34801561026f57600080fd5b5061013761027e366004611784565b610710565b34801561028f57600080fd5b506101c87f000000000000000000000000000000000000000000000000000000000000000081565b3480156102c357600080fd5b506102d76102d23660046117e4565b61072a565b60405190151581526020016101dc565b3480156102f357600080fd5b5061013761073f565b34801561030857600080fd5b50610137610317366004611605565b6107b6565b34801561032857600080fd5b5061023561083c565b34801561033d57600080fd5b5061023561034c366004611605565b6001600160a01b031660009081526003602052604090205490565b6101376108cc565b34801561037b57600080fd5b5061013761038a366004611605565b610963565b34801561039b57600080fd5b506101376103aa366004611605565b6109a5565b3480156103bb57600080fd5b506103cf6103ca36600461181d565b610a1b565b6040516101dc92919061186b565b6103e5610a3f565b604051621cb65b60e51b815263ffffffff821660048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690630396cb609034906024016000604051808303818588803b15801561044c57600080fd5b505af1158015610460573d6000803e3d6000fd5b505050505050565b6104728282610a99565b81816040516104829291906118c0565b6040519081900381209033907f75dcdde27b71b9c529ae8b02072e1eeda244662d2d9c2effea5a1afb8fc913f390600090a35050565b6104c0610ae8565b3360009081526003602052604090205481111561053c5760405162461bcd60e51b815260206004820152602f60248201527f457468657273706f745061796d61737465723a3a206e6f7420656e6f7567682060448201526e6465706f73697465642066756e647360881b60648201526084015b60405180910390fd5b6105463382610b3f565b60405163040b850f60e31b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063205c287890604401600060405180830381600087803b1580156105ae57600080fd5b505af11580156105c2573d6000803e3d6000fd5b505050506105d06001600255565b50565b6105db610a3f565b6105e56000610b70565b565b6105f081610bc0565b6040516001600160a01b0382169033907fd288ab5da2e1f37cf384a1565a3f905ad289b092fbdd31950dbbfef148c04f8890600090a350565b600080368161063c605460148789611902565b810190610649919061192c565b909450925061065b8560548189611902565b949793965094505050565b600061067184610ca4565b604080516020810192909252469082015230606082015265ffffffffffff8085166080830152831660a082015260c0016040516020818303038152906040528051906020012090509392505050565b6106ca8282610d76565b81816040516106da9291906118c0565b6040519081900381209033907f6eabb183ad4385932735ae89018089a008c58e814451b618bc0dd0e7922f6d1390600090a35050565b610718610dc0565b61072484848484610e30565b50505050565b60006107368383610eb5565b90505b92915050565b610747610a3f565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663bb9fe6bf6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156107a257600080fd5b505af1158015610724573d6000803e3d6000fd5b6107be610a3f565b60405163611d2e7560e11b81526001600160a01b0382811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063c23a5cea90602401600060405180830381600087803b15801561082157600080fd5b505af1158015610835573d6000803e3d6000fd5b5050505050565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa1580156108a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c7919061195f565b905090565b6108d4610ae8565b6108de3334610ee3565b60405163b760faf960e01b81523060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063b760faf99034906024016000604051808303818588803b15801561094057600080fd5b505af1158015610954573d6000803e3d6000fd5b50505050506105e56001600255565b61096c81610f0b565b6040516001600160a01b0382169033907f0c4b48e75a1f7ab0a9a2f786b5d6c1f7789020403bff177fb54d46edb89ccc0090600090a350565b6109ad610a3f565b6001600160a01b038116610a125760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610533565b6105d081610b70565b60606000610a27610dc0565b610a32858585610ff9565b915091505b935093915050565b6000546001600160a01b031633146105e55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610533565b60005b81811015610ae357610ad3838383818110610ab957610ab9611978565b9050602002016020810190610ace9190611605565b610bc0565b610adc816119a4565b9050610a9c565b505050565b6002805403610b395760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610533565b60028055565b6001600160a01b03821660009081526003602052604081208054839290610b679084906119bd565b90915550505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038116610c115760405162461bcd60e51b815260206004820152601860248201527757686974656c6973743a3a205a65726f206164647265737360401b6044820152606401610533565b610c1b3382610eb5565b610c765760405162461bcd60e51b815260206004820152602660248201527f57686974656c6973743a3a204163636f756e74206973206e6f742077686974656044820152651b1a5cdd195960d21b6064820152608401610533565b3360009081526001602090815260408083206001600160a01b0394909416835292905220805460ff19169055565b600081356020830135610cba60408501856119d0565b604051610cc8929190611a17565b604051908190039020610cde60608601866119d0565b604051610cec929190611a17565b604080519182900382206001600160a01b03909516602083015281019290925260608201526080808201929092529083013560a08083019190915283013560c08083019190915283013560e0808301919091528301356101008083019190915283013561012082015261014001604051602081830303815290604052805190602001209050919050565b60005b81811015610ae357610db0838383818110610d9657610d96611978565b9050602002016020810190610dab9190611605565b610f0b565b610db9816119a4565b9050610d79565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146105e55760405162461bcd60e51b815260206004820152601560248201527414d95b99195c881b9bdd08115b9d1c9e541bda5b9d605a1b6044820152606401610533565b6000808080610e4186880188611a27565b9350935093509350610e68848287610e599190611a6d565b610e6390856119bd565b610ee3565b604080516001600160a01b038087168252851660208201527f2c5d05f0498c9d2ef9ad6bec38fa7d6693827331e772b11b0864225ad20507f4910160405180910390a15050505050505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b6001600160a01b03821660009081526003602052604081208054839290610b67908490611a6d565b6001600160a01b038116610f5c5760405162461bcd60e51b815260206004820152601860248201527757686974656c6973743a3a205a65726f206164647265737360401b6044820152606401610533565b610f663382610eb5565b15610fc65760405162461bcd60e51b815260206004820152602a60248201527f57686974656c6973743a3a204163636f756e7420697320616c726561647920776044820152691a1a5d195b1a5cdd195960b21b6064820152608401610533565b3360009081526001602081815260408084206001600160a01b03959095168452939052919020805460ff19169091179055565b60606000808036816110126102006101208b018b6119d0565b92965090945092509050604081148061102b5750604181145b6110a75760405162461bcd60e51b815260206004820152604160248201527f457468657273706f745061796d61737465723a3a20696e76616c69642073696760448201527f6e6174757265206c656e67746820696e207061796d6173746572416e644461746064820152606160f81b608482015260a401610533565b60006110ea6110b78b8787610666565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000006000908152601c91909152603c902090565b905060008a35905060006111348386868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061128692505050565b90506111408183610eb5565b61117157611150600188886112aa565b60405180602001604052806000815250909850985050505050505050610a37565b6000611183619c4060e08f0135611a80565b90506000611191828d611a6d565b9050806111b3846001600160a01b031660009081526003602052604090205490565b101561121e5760405162461bcd60e51b815260206004820152603460248201527f457468657273706f745061796d61737465723a3a2053706f6e736f72207061796044820152736d61737465722066756e647320746f6f206c6f7760601b6064820152608401610533565b6112288382610b3f565b604080516001600160a01b038086166020830152861691810191909152606081018290526080810183905260a00160405160208183030381529060405261127160008b8b6112aa565b9a509a50505050505050505050935093915050565b600080600061129585856112e2565b915091506112a281611327565b509392505050565b600060d08265ffffffffffff16901b60a08465ffffffffffff16901b856112d25760006112d5565b60015b60ff161717949350505050565b60008082516041036113185760208301516040840151606085015160001a61130c87828585611471565b94509450505050611320565b506000905060025b9250929050565b600081600481111561133b5761133b611a97565b036113435750565b600181600481111561135757611357611a97565b036113a45760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610533565b60028160048111156113b8576113b8611a97565b036114055760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610533565b600381600481111561141957611419611a97565b036105d05760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610533565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156114a8575060009050600361152c565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156114fc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166115255760006001925092505061152c565b9150600090505b94509492505050565b60006020828403121561154757600080fd5b813563ffffffff8116811461155b57600080fd5b9392505050565b6000806020838503121561157557600080fd5b823567ffffffffffffffff8082111561158d57600080fd5b818501915085601f8301126115a157600080fd5b8135818111156115b057600080fd5b8660208260051b85010111156115c557600080fd5b60209290920196919550909350505050565b6000602082840312156115e957600080fd5b5035919050565b6001600160a01b03811681146105d057600080fd5b60006020828403121561161757600080fd5b813561155b816115f0565b60008083601f84011261163457600080fd5b50813567ffffffffffffffff81111561164c57600080fd5b60208301915083602082850101111561132057600080fd5b6000806020838503121561167757600080fd5b823567ffffffffffffffff81111561168e57600080fd5b61169a85828601611622565b90969095509350505050565b600065ffffffffffff808716835280861660208401525060606040830152826060830152828460808401376000608084840101526080601f19601f850116830101905095945050505050565b6000610160828403121561170557600080fd5b50919050565b803565ffffffffffff8116811461172157600080fd5b919050565b60008060006060848603121561173b57600080fd5b833567ffffffffffffffff81111561175257600080fd5b61175e868287016116f2565b93505061176d6020850161170b565b915061177b6040850161170b565b90509250925092565b6000806000806060858703121561179a57600080fd5b8435600381106117a957600080fd5b9350602085013567ffffffffffffffff8111156117c557600080fd5b6117d187828801611622565b9598909750949560400135949350505050565b600080604083850312156117f757600080fd5b8235611802816115f0565b91506020830135611812816115f0565b809150509250929050565b60008060006060848603121561183257600080fd5b833567ffffffffffffffff81111561184957600080fd5b611855868287016116f2565b9660208601359650604090950135949350505050565b604081526000835180604084015260005b81811015611899576020818701810151606086840101520161187c565b506000606082850101526060601f19601f8301168401019150508260208301529392505050565b60008184825b858110156118f75781356118d9816115f0565b6001600160a01b0316835260209283019291909101906001016118c6565b509095945050505050565b6000808585111561191257600080fd5b8386111561191f57600080fd5b5050820193919092039150565b6000806040838503121561193f57600080fd5b6119488361170b565b91506119566020840161170b565b90509250929050565b60006020828403121561197157600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016119b6576119b661198e565b5060010190565b818103818111156107395761073961198e565b6000808335601e198436030181126119e757600080fd5b83018035915067ffffffffffffffff821115611a0257600080fd5b60200191503681900382131561132057600080fd5b8183823760009101908152919050565b60008060008060808587031215611a3d57600080fd5b8435611a48816115f0565b93506020850135611a58816115f0565b93969395505050506040820135916060013590565b808201808211156107395761073961198e565b80820281158282048414176107395761073961198e565b634e487b7160e01b600052602160045260246000fdfea264697066735822122007fa2e030debf8b03bb1a4965f0636621190d6523b91ba6f9ec5d238d1d1448364736f6c63430008110033"; - -type EtherspotPaymasterConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: EtherspotPaymasterConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class EtherspotPaymaster__factory extends ContractFactory { - constructor(...args: EtherspotPaymasterConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - _entryPoint: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy( - _entryPoint, - overrides || {} - ) as Promise; - } - override getDeployTransaction( - _entryPoint: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(_entryPoint, overrides || {}); - } - override attach(address: string): EtherspotPaymaster { - return super.attach(address) as EtherspotPaymaster; - } - override connect(signer: Signer): EtherspotPaymaster__factory { - return super.connect(signer) as EtherspotPaymaster__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): EtherspotPaymasterInterface { - return new utils.Interface(_abi) as EtherspotPaymasterInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): EtherspotPaymaster { - return new Contract(address, _abi, signerOrProvider) as EtherspotPaymaster; - } -} diff --git a/src/sdk/contracts/factories/src/paymaster/Whitelist__factory.ts b/src/sdk/contracts/factories/src/paymaster/Whitelist__factory.ts deleted file mode 100644 index 2f09069..0000000 --- a/src/sdk/contracts/factories/src/paymaster/Whitelist__factory.ts +++ /dev/null @@ -1,215 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../common"; -import type { - Whitelist, - WhitelistInterface, -} from "../../../src/paymaster/Whitelist"; - -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "AddedBatchToWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "AddedToWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "RemovedBatchFromWhitelist", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "paymaster", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "RemovedFromWhitelist", - type: "event", - }, - { - inputs: [ - { - internalType: "address[]", - name: "_accounts", - type: "address[]", - }, - ], - name: "addBatchToWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_account", - type: "address", - }, - ], - name: "addToWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_sponsor", - type: "address", - }, - { - internalType: "address", - name: "_account", - type: "address", - }, - ], - name: "check", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "_accounts", - type: "address[]", - }, - ], - name: "removeBatchFromWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_account", - type: "address", - }, - ], - name: "removeFromWhitelist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -const _bytecode = - "0x608060405234801561001057600080fd5b50610630806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063123a6a821461005c5780638ab1d68114610071578063a3d19d8c14610084578063b3154db014610097578063e43252d7146100be575b600080fd5b61006f61006a36600461049e565b6100d1565b005b61006f61007f36600461052f565b610121565b61006f61009236600461049e565b610163565b6100aa6100a536600461054a565b6101b3565b604051901515815260200160405180910390f35b61006f6100cc36600461052f565b6101c6565b6100db8282610208565b81816040516100eb92919061057d565b6040519081900381209033907f75dcdde27b71b9c529ae8b02072e1eeda244662d2d9c2effea5a1afb8fc913f390600090a35050565b61012a81610257565b6040516001600160a01b0382169033907fd288ab5da2e1f37cf384a1565a3f905ad289b092fbdd31950dbbfef148c04f8890600090a350565b61016d828261033e565b818160405161017d92919061057d565b6040519081900381209033907f6eabb183ad4385932735ae89018089a008c58e814451b618bc0dd0e7922f6d1390600090a35050565b60006101bf8383610388565b9392505050565b6101cf816103b4565b6040516001600160a01b0382169033907f0c4b48e75a1f7ab0a9a2f786b5d6c1f7789020403bff177fb54d46edb89ccc0090600090a350565b60005b8181101561025257610242838383818110610228576102286105bd565b905060200201602081019061023d919061052f565b610257565b61024b816105d3565b905061020b565b505050565b6001600160a01b0381166102ad5760405162461bcd60e51b815260206004820152601860248201527757686974656c6973743a3a205a65726f206164647265737360401b60448201526064015b60405180910390fd5b6102b73382610388565b6103125760405162461bcd60e51b815260206004820152602660248201527f57686974656c6973743a3a204163636f756e74206973206e6f742077686974656044820152651b1a5cdd195960d21b60648201526084016102a4565b336000908152602081815260408083206001600160a01b0394909416835292905220805460ff19169055565b60005b818110156102525761037883838381811061035e5761035e6105bd565b9050602002016020810190610373919061052f565b6103b4565b610381816105d3565b9050610341565b6001600160a01b0391821660009081526020818152604080832093909416825291909152205460ff1690565b6001600160a01b0381166104055760405162461bcd60e51b815260206004820152601860248201527757686974656c6973743a3a205a65726f206164647265737360401b60448201526064016102a4565b61040f3382610388565b1561046f5760405162461bcd60e51b815260206004820152602a60248201527f57686974656c6973743a3a204163636f756e7420697320616c726561647920776044820152691a1a5d195b1a5cdd195960b21b60648201526084016102a4565b336000908152602081815260408083206001600160a01b0394909416835292905220805460ff19166001179055565b600080602083850312156104b157600080fd5b823567ffffffffffffffff808211156104c957600080fd5b818501915085601f8301126104dd57600080fd5b8135818111156104ec57600080fd5b8660208260051b850101111561050157600080fd5b60209290920196919550909350505050565b80356001600160a01b038116811461052a57600080fd5b919050565b60006020828403121561054157600080fd5b6101bf82610513565b6000806040838503121561055d57600080fd5b61056683610513565b915061057460208401610513565b90509250929050565b60008184825b858110156105b2576001600160a01b0361059c83610513565b1683526020928301929190910190600101610583565b509095945050505050565b634e487b7160e01b600052603260045260246000fd5b6000600182016105f357634e487b7160e01b600052601160045260246000fd5b506001019056fea26469706673582212208c42722a6a682051f10641a080c059bb9904925da0993fff187c78544bd89a6f64736f6c63430008110033"; - -type WhitelistConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: WhitelistConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class Whitelist__factory extends ContractFactory { - constructor(...args: WhitelistConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy(overrides || {}) as Promise; - } - override getDeployTransaction( - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(overrides || {}); - } - override attach(address: string): Whitelist { - return super.attach(address) as Whitelist; - } - override connect(signer: Signer): Whitelist__factory { - return super.connect(signer) as Whitelist__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): WhitelistInterface { - return new utils.Interface(_abi) as WhitelistInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): Whitelist { - return new Contract(address, _abi, signerOrProvider) as Whitelist; - } -} diff --git a/src/sdk/contracts/factories/src/paymaster/index.ts b/src/sdk/contracts/factories/src/paymaster/index.ts deleted file mode 100644 index b0e7e51..0000000 --- a/src/sdk/contracts/factories/src/paymaster/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { BasePaymaster__factory } from "./BasePaymaster__factory"; -export { EtherspotPaymaster__factory } from "./EtherspotPaymaster__factory"; -export { Whitelist__factory } from "./Whitelist__factory"; diff --git a/src/sdk/contracts/factories/src/wallet/EtherspotWalletFactory__factory.ts b/src/sdk/contracts/factories/src/wallet/EtherspotWalletFactory__factory.ts deleted file mode 100644 index afe3ecf..0000000 --- a/src/sdk/contracts/factories/src/wallet/EtherspotWalletFactory__factory.ts +++ /dev/null @@ -1,266 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../common"; -import type { - EtherspotWalletFactory, - EtherspotWalletFactoryInterface, -} from "../../../src/wallet/EtherspotWalletFactory"; - -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "wallet", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "index", - type: "uint256", - }, - ], - name: "AccountCreation", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newImplementation", - type: "address", - }, - ], - name: "ImplementationSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - inputs: [], - name: "accountCreationCode", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [], - name: "accountImplementation", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "changeOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_impl", - type: "address", - }, - ], - name: "checkImplementation", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "uint256", - name: "_index", - type: "uint256", - }, - ], - name: "createAccount", - outputs: [ - { - internalType: "address", - name: "ret", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "uint256", - name: "_index", - type: "uint256", - }, - ], - name: "getAddress", - outputs: [ - { - internalType: "address", - name: "proxy", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "contract EtherspotWallet", - name: "_newImpl", - type: "address", - }, - ], - name: "setImplementation", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; - -const _bytecode = - "0x608060405234801561001057600080fd5b506040516109eb3803806109eb83398101604081905261002f91610054565b600180546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b610958806100936000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80638da5cb5b1161005b5780638da5cb5b146100f8578063a6f9dae11461010b578063d784d42614610120578063e6c0c5971461013357600080fd5b806311464fbe1461008d57806331c884df146100bd5780635fbfb9cf146100d25780638cb84e18146100e5575b600080fd5b6000546100a0906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100c5610165565b6040516100b49190610667565b6100a06100e03660046106b2565b61018f565b6100a06100f33660046106b2565b610355565b6001546100a0906001600160a01b031681565b61011e6101193660046106de565b61047b565b005b61011e61012e3660046106de565b610576565b6101556101413660046106de565b6000546001600160a01b0390811691161490565b60405190151581526020016100b4565b60606040518060200161017790610636565b601f1982820381018352601f90910116604052919050565b600080546001600160a01b03166101c15760405162461bcd60e51b81526004016101b890610702565b60405180910390fd5b60006101cd8484610355565b90506001600160a01b0381163b156101e657905061034f565b60006101f1856105ee565b90506000818051906020012085604051602001610218929190918252602082015260400190565b60405160208183030381529060405280519060200120905060006040518060200161024290610636565b601f1982820381018352601f90910116604081905260005461027392916001600160a01b0390911690602001610751565b6040516020818303038152906040529050818151826020016000f594506001600160a01b0385166102dc5760405162461bcd60e51b815260206004820152601360248201527210dc99585d194c8818d85b1b0819985a5b1959606a1b60448201526064016101b8565b8251156102fd57600080600085516020870160008a5af1036102fd57600080fd5b866001600160a01b0316856001600160a01b03167f8967dcaa00d8fcb9bb2b5beff4aaf8c020063512cf08fbe11fec37a1e3a150f28860405161034291815260200190565b60405180910390a3505050505b92915050565b600080546001600160a01b031661037e5760405162461bcd60e51b81526004016101b890610702565b6000610389846105ee565b905060008180519060200120846040516020016103b0929190918252602082015260400190565b6040516020818303038152906040528051906020012090506000604051806020016103da90610636565b601f1982820381018352601f90910116604081905260005461040b92916001600160a01b0390911690602001610751565b60408051808303601f1901815282825280516020918201206001600160f81b0319828501523060601b6bffffffffffffffffffffffff1916602185015260358401959095526055808401959095528151808403909501855260759092019052825192019190912095945050505050565b6001546001600160a01b031633146104a55760405162461bcd60e51b81526004016101b890610773565b6001600160a01b0381166105215760405162461bcd60e51b815260206004820152603960248201527f457468657273706f7457616c6c6574466163746f72793a3a206e6577206f776e60448201527f65722063616e6e6f74206265207a65726f20616464726573730000000000000060648201526084016101b8565b600180546001600160a01b0319166001600160a01b0383169081179091556040519081527fa2ea9883a321a3e97b8266c2b078bfeec6d50c711ed71f874a90d500ae2eaf36906020015b60405180910390a150565b6001546001600160a01b031633146105a05760405162461bcd60e51b81526004016101b890610773565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527fab64f92ab780ecbf4f3866f57cee465ff36c89450dcce20237ca7a8d81fb7d139060200161056b565b6040516001600160a01b038216602482015260609060440160408051601f198184030181529190526020810180516001600160e01b031663189acdbd60e31b17905292915050565b61016c806107b783390190565b60005b8381101561065e578181015183820152602001610646565b50506000910152565b6020815260008251806020840152610686816040850160208701610643565b601f01601f19169190910160400192915050565b6001600160a01b03811681146106af57600080fd5b50565b600080604083850312156106c557600080fd5b82356106d08161069a565b946020939093013593505050565b6000602082840312156106f057600080fd5b81356106fb8161069a565b9392505050565b6020808252602f908201527f457468657273706f7457616c6c6574466163746f72793a3a20696d706c656d6560408201526e1b9d185d1a5bdb881b9bdd081cd95d608a1b606082015260800190565b60008351610763818460208801610643565b9190910191825250602001919050565b60208082526023908201527f457468657273706f7457616c6c6574466163746f72793a3a206f6e6c79206f776040820152623732b960e91b60608201526080019056fe608060405234801561001057600080fd5b5060405161016c38038061016c83398101604081905261002f916100b0565b6001600160a01b0381166100895760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420616464726573732070726f76696465640000000000000000604482015260640160405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc556100e0565b6000602082840312156100c257600080fd5b81516001600160a01b03811681146100d957600080fd5b9392505050565b607e806100ee6000396000f3fe60806040527f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc543660008037600080366000845af43d6000803e806042573d6000fd5b503d6000f3fea2646970667358221220bf4792713f0ae541fee868815c68df07e96dbe0616b01cc209b0004f92ee91a964736f6c63430008110033a26469706673582212203e64300034d979bd11aa404f2cad9153ef1dfb4526906564f046df1fc218543d64736f6c63430008110033"; - -type EtherspotWalletFactoryConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: EtherspotWalletFactoryConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class EtherspotWalletFactory__factory extends ContractFactory { - constructor(...args: EtherspotWalletFactoryConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy( - _owner, - overrides || {} - ) as Promise; - } - override getDeployTransaction( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(_owner, overrides || {}); - } - override attach(address: string): EtherspotWalletFactory { - return super.attach(address) as EtherspotWalletFactory; - } - override connect(signer: Signer): EtherspotWalletFactory__factory { - return super.connect(signer) as EtherspotWalletFactory__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): EtherspotWalletFactoryInterface { - return new utils.Interface(_abi) as EtherspotWalletFactoryInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): EtherspotWalletFactory { - return new Contract( - address, - _abi, - signerOrProvider - ) as EtherspotWalletFactory; - } -} diff --git a/src/sdk/contracts/factories/src/wallet/EtherspotWallet__factory.ts b/src/sdk/contracts/factories/src/wallet/EtherspotWallet__factory.ts deleted file mode 100644 index 5278a80..0000000 --- a/src/sdk/contracts/factories/src/wallet/EtherspotWallet__factory.ts +++ /dev/null @@ -1,992 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../common"; -import type { - EtherspotWallet, - EtherspotWalletInterface, -} from "../../../src/wallet/EtherspotWallet"; - -const _abi = [ - { - inputs: [ - { - internalType: "contract IEntryPoint", - name: "anEntryPoint", - type: "address", - }, - { - internalType: "contract IEtherspotWalletFactory", - name: "anWalletFactory", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "previousAdmin", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newAdmin", - type: "address", - }, - ], - name: "AdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "beacon", - type: "address", - }, - ], - name: "BeaconUpgraded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "contract IEntryPoint", - name: "entryPoint", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "EtherspotWalletInitialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "EtherspotWalletReceived", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newGuardian", - type: "address", - }, - ], - name: "GuardianAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "removedGuardian", - type: "address", - }, - ], - name: "GuardianRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "removedOwner", - type: "address", - }, - ], - name: "OwnerRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "discardedBy", - type: "address", - }, - ], - name: "ProposalDiscarded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "newOwnerProposed", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "proposer", - type: "address", - }, - ], - name: "ProposalSubmitted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newTimelock", - type: "uint256", - }, - ], - name: "ProposalTimelockChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "proposalId", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "newOwnerProposed", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "approvalCount", - type: "uint256", - }, - ], - name: "QuorumNotReached", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, - { - inputs: [], - name: "addDeposit", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newGuardian", - type: "address", - }, - ], - name: "addGuardian", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "addOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_newTimelock", - type: "uint256", - }, - ], - name: "changeProposalTimelock", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "discardCurrentProposal", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "entryPoint", - outputs: [ - { - internalType: "contract IEntryPoint", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "dest", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "func", - type: "bytes", - }, - ], - name: "execute", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "dest", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "value", - type: "uint256[]", - }, - { - internalType: "bytes[]", - name: "func", - type: "bytes[]", - }, - ], - name: "executeBatch", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "getDeposit", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "getNonce", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_proposalId", - type: "uint256", - }, - ], - name: "getProposal", - outputs: [ - { - internalType: "address", - name: "ownerProposed_", - type: "address", - }, - { - internalType: "uint256", - name: "approvalCount_", - type: "uint256", - }, - { - internalType: "address[]", - name: "guardiansApproved_", - type: "address[]", - }, - { - internalType: "bool", - name: "resolved_", - type: "bool", - }, - { - internalType: "uint256", - name: "proposedAt_", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "guardianCosign", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "guardianCount", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "guardianPropose", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "anOwner", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_address", - type: "address", - }, - ], - name: "isGuardian", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_address", - type: "address", - }, - ], - name: "isOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "hash", - type: "bytes32", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "isValidSignature", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "onERC1155BatchReceived", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "onERC1155Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [], - name: "ownerCount", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "proposalId", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "proposalTimelock", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "proxiableUUID", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_guardian", - type: "address", - }, - ], - name: "removeGuardian", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "removeOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "tokensReceived", - outputs: [], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newImplementation", - type: "address", - }, - ], - name: "upgradeTo", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newImplementation", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "upgradeToAndCall", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "bytes", - name: "initCode", - type: "bytes", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "uint256", - name: "callGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "verificationGasLimit", - type: "uint256", - }, - { - internalType: "uint256", - name: "preVerificationGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFeePerGas", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPriorityFeePerGas", - type: "uint256", - }, - { - internalType: "bytes", - name: "paymasterAndData", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct UserOperation", - name: "userOp", - type: "tuple", - }, - { - internalType: "bytes32", - name: "userOpHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "missingAccountFunds", - type: "uint256", - }, - ], - name: "validateUserOp", - outputs: [ - { - internalType: "uint256", - name: "validationData", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "withdrawAddress", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "withdrawDepositTo", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - stateMutability: "payable", - type: "receive", - }, -] as const; - -const _bytecode = - "0x610140604052306080526103e860a05261025860c0526201518060e0523480156200002957600080fd5b50604051620034b9380380620034b98339810160408190526200004c91620001d5565b6001600160a01b038216158015906200006d57506001600160a01b03811615155b620000d75760405162461bcd60e51b815260206004820152602f60248201527f457468657273706f7457616c6c65743a3a20696e76616c696420636f6e73747260448201526e3ab1ba37b9103830b930b6b2ba32b960891b60648201526084015b60405180910390fd5b6001600160a01b0380831661010052811661012052620000f6620000fe565b505062000214565b600054610100900460ff1615620001685760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b6064820152608401620000ce565b60005460ff90811614620001ba576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6001600160a01b0381168114620001d257600080fd5b50565b60008060408385031215620001e957600080fd5b8251620001f681620001bc565b60208401519092506200020981620001bc565b809150509250929050565b60805160a05160c05160e0516101005161012051613201620002b86000396000611aa901526000818161051a01528181610b2601528181610ce301528181610d92015281816112fe015281816113e5015281816118df01528181611cf40152612391015260006115b801526000611ee501526000611f1d0152600081816107b9015281816107f901528181610e2301528181610e630152610ef601526132016000f3fe6080604052600436106101f15760003560e01c806352d1902d1161010d578063b61d27f6116100a0578063c3db88381161006f578063c3db8838146105be578063c4d66de8146105d3578063c7f758a8146105f3578063d087d28814610624578063f23a6e611461063957600080fd5b8063b61d27f614610544578063bc197c8114610564578063bf57159b14610593578063c399ec88146105a957600080fd5b80637dcab4ce116100dc5780637dcab4ce146104a0578063a1c0d459146104c0578063a526d83b146104e0578063b0d691fe1461050057600080fd5b806352d1902d1461043557806354387ad71461044a5780637065cb4814610460578063714041561461048057600080fd5b80632f54bf6e1161018557806347e1da2a1161015457806347e1da2a146103da5780634a58db19146103fa5780634d44560d146104025780634f1ef2861461042257600080fd5b80632f54bf6e146103655780633659cfe6146103855780633a871cdd146103a557806341c9ddff146103c557600080fd5b8063150b7a02116101c1578063150b7a02146102ca5780631626ba7e1461030f578063173825d91461032f5780632dfca4451461034f57600080fd5b806223de291461022a57806301ffc9a7146102515780630c68ba21146102865780630db02622146102a657600080fd5b3661022557604051349033907f6bfe7d1a46050e376574ac8bf67e7ceefae9d5c3ea3f3d8f42d08fb5e10736ec90600090a3005b600080fd5b34801561023657600080fd5b5061024f6102453660046128dc565b5050505050505050565b005b34801561025d57600080fd5b5061027161026c36600461298d565b610666565b60405190151581526020015b60405180910390f35b34801561029257600080fd5b506102716102a13660046129b7565b6106b8565b3480156102b257600080fd5b506102bc60015481565b60405190815260200161027d565b3480156102d657600080fd5b506102f66102e53660046129d4565b630a85bd0160e11b95945050505050565b6040516001600160e01b0319909116815260200161027d565b34801561031b57600080fd5b506102f661032a366004612a47565b6106d6565b34801561033b57600080fd5b5061024f61034a3660046129b7565b61074d565b34801561035b57600080fd5b506102bc60035481565b34801561037157600080fd5b506102716103803660046129b7565b610791565b34801561039157600080fd5b5061024f6103a03660046129b7565b6107af565b3480156103b157600080fd5b506102bc6103c0366004612a93565b61088b565b3480156103d157600080fd5b5061024f6108aa565b3480156103e657600080fd5b5061024f6103f5366004612b2c565b610b24565b61024f610ce1565b34801561040e57600080fd5b5061024f61041d366004612bc6565b610d61565b61024f610430366004612c08565b610e19565b34801561044157600080fd5b506102bc610ee9565b34801561045657600080fd5b506102bc60025481565b34801561046c57600080fd5b5061024f61047b3660046129b7565b610f9c565b34801561048c57600080fd5b5061024f61049b3660046129b7565b610fd4565b3480156104ac57600080fd5b5061024f6104bb3660046129b7565b61100c565b3480156104cc57600080fd5b5061024f6104db366004612ccc565b611260565b3480156104ec57600080fd5b5061024f6104fb3660046129b7565b6112c4565b34801561050c57600080fd5b506040516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016815260200161027d565b34801561055057600080fd5b5061024f61055f366004612ce5565b6112fc565b34801561057057600080fd5b506102f661057f366004612d41565b63bc197c8160e01b98975050505050505050565b34801561059f57600080fd5b506102bc60045481565b3480156105b557600080fd5b506102bc6113c5565b3480156105ca57600080fd5b5061024f611456565b3480156105df57600080fd5b5061024f6105ee3660046129b7565b61166d565b3480156105ff57600080fd5b5061061361060e366004612ccc565b61177f565b60405161027d959493929190612ddf565b34801561063057600080fd5b506102bc6118b8565b34801561064557600080fd5b506102f6610654366004612e4c565b63f23a6e6160e01b9695505050505050565b60006001600160e01b03198216630a85bd0160e11b148061069757506001600160e01b03198216630271189760e51b145b806106b257506001600160e01b031982166301ffc9a760e01b145b92915050565b6001600160a01b031660009081526006602052604090205460ff1690565b6000806107198585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061190e92505050565b905061072481610791565b156107395750630b135d3f60e11b9050610746565b506001600160e01b031990505b9392505050565b61075633610791565b8061076057503330145b6107855760405162461bcd60e51b815260040161077c90612eb6565b60405180910390fd5b61078e81611932565b50565b6001600160a01b031660009081526005602052604090205460ff1690565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036107f75760405162461bcd60e51b815260040161077c90612ee0565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610840600080516020613185833981519152546001600160a01b031690565b6001600160a01b0316146108665760405162461bcd60e51b815260040161077c90612f2c565b61086f81611a5b565b6040805160008082526020820190925261078e91839190611b79565b6000610895611ce9565b61089f8484611d63565b905061074682611dfb565b6108b3336106b8565b6108f55760405162461bcd60e51b815260206004820152601360248201527220a1a61d1d1037b7363c9033bab0b93234b0b760691b604482015260640161077c565b6003546000036109435760405162461bcd60e51b81526020600482015260196024820152781050d30e8e881a5b9d985b1a59081c1c9bdc1bdcd85b081a59603a1b604482015260640161077c565b61094e600354611e48565b156109aa5760405162461bcd60e51b815260206004820152602660248201527f41434c3a3a20677561726469616e20616c7265616479207369676e65642070726044820152651bdc1bdcd85b60d21b606482015260840161077c565b600354600090815260076020526040902054600160a01b900460ff1615610a135760405162461bcd60e51b815260206004820152601f60248201527f41434c3a3a2070726f706f73616c20616c7265616479207265736f6c76656400604482015260640161077c565b60038054600090815260076020908152604080832060020180546001818101835591855292842090920180546001600160a01b031916331790559254825291812082018054909190610a66908490612f8e565b90915550506003546000818152600760205260409020546001600160a01b031690610a9090611ec9565b15610ac0576003546000908152600760205260409020805460ff60a01b1916600160a01b17905561078e81611f55565b6003546000818152600760209081526040918290206001015482519384526001600160a01b03851691840191909152908201527f49c70961209a4b7094f03ff1e54f2dd8f38425aa77a72af54804727d9c1472af906060015b60405180910390a150565b7f0000000000000000000000000000000000000000000000000000000000000000336001600160a01b0382161480610b605750610b6033610791565b610bac5760405162461bcd60e51b815260206004820152601d60248201527f41434c3a3a206e6f74206f776e6572206f7220656e747279506f696e74000000604482015260640161077c565b8515801590610bba57508584145b8015610bc557508382145b610c2d5760405162461bcd60e51b815260206004820152603360248201527f457468657273706f7457616c6c65743a3a206578656375746542617463683a2060448201527277726f6e67206172726179206c656e6774687360681b606482015260840161077c565b60005b8681101561024557610cd9888883818110610c4d57610c4d612fa1565b9050602002016020810190610c6291906129b7565b878784818110610c7457610c74612fa1565b90506020020135868685818110610c8d57610c8d612fa1565b9050602002810190610c9f9190612fb7565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506120c292505050565b600101610c30565b7f000000000000000000000000000000000000000000000000000000000000000060405163b760faf960e01b81523060048201526001600160a01b03919091169063b760faf99034906024016000604051808303818588803b158015610d4657600080fd5b505af1158015610d5a573d6000803e3d6000fd5b5050505050565b610d6a33610791565b80610d7457503330145b610d905760405162461bcd60e51b815260040161077c90612eb6565b7f000000000000000000000000000000000000000000000000000000000000000060405163040b850f60e31b81526001600160a01b03848116600483015260248201849052919091169063205c287890604401600060405180830381600087803b158015610dfd57600080fd5b505af1158015610e11573d6000803e3d6000fd5b505050505050565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610e615760405162461bcd60e51b815260040161077c90612ee0565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610eaa600080516020613185833981519152546001600160a01b031690565b6001600160a01b031614610ed05760405162461bcd60e51b815260040161077c90612f2c565b610ed982611a5b565b610ee582826001611b79565b5050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610f895760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c0000000000000000606482015260840161077c565b5060008051602061318583398151915290565b610fa533610791565b80610faf57503330145b610fcb5760405162461bcd60e51b815260040161077c90612eb6565b61078e81611f55565b610fdd33610791565b80610fe757503330145b6110035760405162461bcd60e51b815260040161077c90612eb6565b61078e81612132565b611015336106b8565b6110575760405162461bcd60e51b815260206004820152601360248201527220a1a61d1d1037b7363c9033bab0b93234b0b760691b604482015260640161077c565b600360025410156110d05760405162461bcd60e51b815260206004820152603b60248201527f41434c3a3a206e6f7420656e6f75676820677561726469616e7320746f20707260448201527f6f706f7365206e6577206f776e657220286d696e696d756d2033290000000000606482015260840161077c565b6003546000908152600760205260409020600201541580159061110c5750600354600090815260076020526040902054600160a01b900460ff16155b156111685760405162461bcd60e51b815260206004820152602660248201527f41434c3a3a206c61746573742070726f706f73616c206e6f74207965742072656044820152651cdbdb1d995960d21b606482015260840161077c565b600354611176906001612f8e565b6003818155600091825260076020908152604080842080546001600160a01b0387166001600160a01b031991821617909155835485528185206002018054600181810183559187529386209093018054909116331790559154835290822081018054919290916111e7908490612f8e565b9091555050600380546000908152600760209081526040808320805460ff60a01b1916905583548352918290204290840155915481519081526001600160a01b0384169281019290925233908201527f1d66a9a8742996ed3cd2ef39261401cbd7cffd856851b944c947596cfc9f4b6090606001610b19565b61126933610791565b8061127357503330145b61128f5760405162461bcd60e51b815260040161077c90612eb6565b60048190556040518181527f831cc2d20e13f1a154d4ec26bd307f776914d4b08134b52714482cc60773982c90602001610b19565b6112cd33610791565b806112d757503330145b6112f35760405162461bcd60e51b815260040161077c90612eb6565b61078e8161220b565b7f0000000000000000000000000000000000000000000000000000000000000000336001600160a01b0382161480611338575061133833610791565b6113845760405162461bcd60e51b815260206004820152601d60248201527f41434c3a3a206e6f74206f776e6572206f7220656e747279506f696e74000000604482015260640161077c565b610d5a858585858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506120c292505050565b6040516370a0823160e01b81523060048201526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a08231906024015b602060405180830381865afa15801561142d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114519190612ffe565b905090565b61145f33610791565b8061146e575061146e336106b8565b6114ba5760405162461bcd60e51b815260206004820152601c60248201527f41434c3a3a206f6e6c79206f776e6572206f7220677561726469616e00000000604482015260640161077c565b600354600090815260076020526040902054600160a01b900460ff16156115235760405162461bcd60e51b815260206004820152601f60248201527f41434c3a3a2070726f706f73616c20616c7265616479207265736f6c76656400604482015260640161077c565b61152c336106b8565b801561153a57506000600454115b1561157e576004546003805460009081526007602052604090200154429161156191612f8e565b1061157e5760405162461bcd60e51b815260040161077c90613017565b611587336106b8565b80156115935750600454155b156115fb57600380546000908152600760205260409020015442906115de9062ffffff7f00000000000000000000000000000000000000000000000000000000000000001690612f8e565b106115fb5760405162461bcd60e51b815260040161077c90613017565b6003805460009081526007602052604090819020805460ff60a01b1916600160a01b179055905490517f27116c550f5a629d364a8412ba7c63b6460642328da83b74683a02cd068a9177916116639133909182526001600160a01b0316602082015260400190565b60405180910390a1565b600054610100900460ff161580801561168d5750600054600160ff909116105b806116a75750303b1580156116a7575060005460ff166001145b61170a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161077c565b6000805460ff19166001179055801561172d576000805461ff0019166101001790555b6117368261237c565b8015610ee5576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b60008060608180851580159061179757506003548611155b6117df5760405162461bcd60e51b81526020600482015260196024820152781050d30e8e881a5b9d985b1a59081c1c9bdc1bdcd85b081a59603a1b604482015260640161077c565b6000868152600760209081526040808320815160a08101835281546001600160a01b0381168252600160a01b900460ff1615158185015260018201548184015260028201805484518187028101870190955280855291949293606086019390929083018282801561187957602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161185b575b50505091835250506003919091015460209182015281516040830151606084015192840151608090940151919b909a5091985091965090945092505050565b604051631aab3f0d60e11b8152306004820152600060248201819052906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906335567e1a90604401611410565b600080600061191d85856123e8565b9150915061192a8161242d565b509392505050565b6001600160a01b03811660009081526005602052604090205460ff1661199a5760405162461bcd60e51b815260206004820152601860248201527f41434c3a3a206e6f6e2d6578697374616e74206f776e65720000000000000000604482015260640161077c565b60018054116119eb5760405162461bcd60e51b815260206004820181905260248201527f41434c3a3a2077616c6c65742063616e6e6f74206265206f776e65726c657373604482015260640161077c565b6040516001600160a01b03821681527f58619076adf5bb0943d100ef88d52d7c3fd691b19d3a9071b555b651fbf418da9060200160405180910390a16001600160a01b0381166000908152600560205260409020805460ff1916905560018054611a559190613074565b60015550565b611a6433610791565b80611a6e57503330145b611a8a5760405162461bcd60e51b815260040161077c90612eb6565b60405163e6c0c59760e01b81526001600160a01b0382811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063e6c0c59790602401602060405180830381865afa158015611af0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b149190613087565b61078e5760405162461bcd60e51b815260206004820152603060248201527f457468657273706f7457616c6c65743a3a207570677261646520696d706c656d60448201526f195b9d185d1a5bdb881a5b9d985b1a5960821b606482015260840161077c565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615611bb157611bac83612577565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611c0b575060408051601f3d908101601f19168201909252611c0891810190612ffe565b60015b611c6e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840161077c565b6000805160206131858339815191528114611cdd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840161077c565b50611bac838383612613565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611d615760405162461bcd60e51b815260206004820152601c60248201527f6163636f756e743a206e6f742066726f6d20456e747279506f696e7400000000604482015260640161077c565b565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000006000908152601c829052603c8120611de3610380611da6610140870187612fb7565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869392505061190e9050565b611df15760019150506106b2565b5060009392505050565b801561078e57604051600090339060001990849084818181858888f193505050503d8060008114610d5a576040519150601f19603f3d011682016040523d82523d6000602084013e610d5a565b6000805b600083815260076020526040902060020154811015611ec0576000838152600760205260409020600201805433919083908110611e8b57611e8b612fa1565b6000918252602090912001546001600160a01b031603611eae5750600192915050565b80611eb8816130a9565b915050611e4c565b50600092915050565b600254600082815260076020526040812060010154909161ffff7f00000000000000000000000000000000000000000000000000000000000000001691611f43906fffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906130c2565b611f4d91906130d9565b101592915050565b6001600160a01b038116611fa05760405162461bcd60e51b815260206004820152601260248201527141434c3a3a207a65726f206164647265737360701b604482015260640161077c565b6001600160a01b03811660009081526005602052604090205460ff1615611fff5760405162461bcd60e51b815260206004820152601360248201527220a1a61d1d1030b63932b0b23c9037bbb732b960691b604482015260640161077c565b612008816106b8565b156120555760405162461bcd60e51b815260206004820152601e60248201527f41434c3a3a20677561726469616e2063616e6e6f74206265206f776e65720000604482015260640161077c565b6040516001600160a01b03821681527f994a936646fe87ffe4f1e469d3d6aa417d6b855598397f323de5b449f765f0c39060200160405180910390a16001600160a01b0381166000908152600560205260409020805460ff191660019081179091558054611a5591612f8e565b600080846001600160a01b031684846040516120de919061311f565b60006040518083038185875af1925050503d806000811461211b576040519150601f19603f3d011682016040523d82523d6000602084013e612120565b606091505b509150915081610d5a57805160208201fd5b6001600160a01b03811660009081526006602052604090205460ff1661219a5760405162461bcd60e51b815260206004820152601b60248201527f41434c3a3a206e6f6e2d6578697374616e7420677561726469616e0000000000604482015260640161077c565b6040516001600160a01b03821681527fb8107d0c6b40be480ce3172ee66ba6d64b71f6b1685a851340036e6e2e3e3c529060200160405180910390a16001600160a01b0381166000908152600660205260409020805460ff1916905560025461220590600190613074565b60025550565b6001600160a01b0381166122565760405162461bcd60e51b815260206004820152601260248201527141434c3a3a207a65726f206164647265737360701b604482015260640161077c565b6001600160a01b03811660009081526006602052604090205460ff16156122b85760405162461bcd60e51b815260206004820152601660248201527520a1a61d1d1030b63932b0b23c9033bab0b93234b0b760511b604482015260640161077c565b6122c181610791565b1561230e5760405162461bcd60e51b815260206004820152601e60248201527f41434c3a3a20677561726469616e2063616e6e6f74206265206f776e65720000604482015260640161077c565b6040516001600160a01b03821681527f038596bb31e2e7d3d9f184d4c98b310103f6d7f5830e5eec32bffe6f1728f9699060200160405180910390a16001600160a01b0381166000908152600660205260409020805460ff1916600190811790915560025461220591612f8e565b61238581611f55565b806001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f7de3ed105440056cd9149fc06ecd82c66b9c67841d6dcf50c16a08cc9a5ea2c460405160405180910390a350565b600080825160410361241e5760208301516040840151606085015160001a6124128782858561263e565b94509450505050612426565b506000905060025b9250929050565b60008160048111156124415761244161313b565b036124495750565b600181600481111561245d5761245d61313b565b036124aa5760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015260640161077c565b60028160048111156124be576124be61313b565b0361250b5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015260640161077c565b600381600481111561251f5761251f61313b565b0361078e5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b606482015260840161077c565b6001600160a01b0381163b6125e45760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161077c565b60008051602061318583398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b61261c83612702565b6000825111806126295750805b15611bac576126388383612742565b50505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561267557506000905060036126f9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156126c9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166126f2576000600192509250506126f9565b9150600090505b94509492505050565b61270b81612577565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061074683836040518060600160405280602781526020016131a5602791396060600080856001600160a01b03168560405161277f919061311f565b600060405180830381855af49150503d80600081146127ba576040519150601f19603f3d011682016040523d82523d6000602084013e6127bf565b606091505b50915091506127d0868383876127da565b9695505050505050565b60608315612849578251600003612842576001600160a01b0385163b6128425760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161077c565b5081612853565b612853838361285b565b949350505050565b81511561286b5781518083602001fd5b8060405162461bcd60e51b815260040161077c9190613151565b6001600160a01b038116811461078e57600080fd5b60008083601f8401126128ac57600080fd5b50813567ffffffffffffffff8111156128c457600080fd5b60208301915083602082850101111561242657600080fd5b60008060008060008060008060c0898b0312156128f857600080fd5b883561290381612885565b9750602089013561291381612885565b9650604089013561292381612885565b955060608901359450608089013567ffffffffffffffff8082111561294757600080fd5b6129538c838d0161289a565b909650945060a08b013591508082111561296c57600080fd5b506129798b828c0161289a565b999c989b5096995094979396929594505050565b60006020828403121561299f57600080fd5b81356001600160e01b03198116811461074657600080fd5b6000602082840312156129c957600080fd5b813561074681612885565b6000806000806000608086880312156129ec57600080fd5b85356129f781612885565b94506020860135612a0781612885565b935060408601359250606086013567ffffffffffffffff811115612a2a57600080fd5b612a368882890161289a565b969995985093965092949392505050565b600080600060408486031215612a5c57600080fd5b83359250602084013567ffffffffffffffff811115612a7a57600080fd5b612a868682870161289a565b9497909650939450505050565b600080600060608486031215612aa857600080fd5b833567ffffffffffffffff811115612abf57600080fd5b84016101608187031215612ad257600080fd5b95602085013595506040909401359392505050565b60008083601f840112612af957600080fd5b50813567ffffffffffffffff811115612b1157600080fd5b6020830191508360208260051b850101111561242657600080fd5b60008060008060008060608789031215612b4557600080fd5b863567ffffffffffffffff80821115612b5d57600080fd5b612b698a838b01612ae7565b90985096506020890135915080821115612b8257600080fd5b612b8e8a838b01612ae7565b90965094506040890135915080821115612ba757600080fd5b50612bb489828a01612ae7565b979a9699509497509295939492505050565b60008060408385031215612bd957600080fd5b8235612be481612885565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215612c1b57600080fd5b8235612c2681612885565b9150602083013567ffffffffffffffff80821115612c4357600080fd5b818501915085601f830112612c5757600080fd5b813581811115612c6957612c69612bf2565b604051601f8201601f19908116603f01168101908382118183101715612c9157612c91612bf2565b81604052828152886020848701011115612caa57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600060208284031215612cde57600080fd5b5035919050565b60008060008060608587031215612cfb57600080fd5b8435612d0681612885565b935060208501359250604085013567ffffffffffffffff811115612d2957600080fd5b612d358782880161289a565b95989497509550505050565b60008060008060008060008060a0898b031215612d5d57600080fd5b8835612d6881612885565b97506020890135612d7881612885565b9650604089013567ffffffffffffffff80821115612d9557600080fd5b612da18c838d01612ae7565b909850965060608b0135915080821115612dba57600080fd5b612dc68c838d01612ae7565b909650945060808b013591508082111561296c57600080fd5b6001600160a01b038681168252602080830187905260a060408401819052865190840181905260009287830192909160c0860190855b81811015612e33578551851683529483019491830191600101612e15565b5050961515606086015250505050608001529392505050565b60008060008060008060a08789031215612e6557600080fd5b8635612e7081612885565b95506020870135612e8081612885565b94506040870135935060608701359250608087013567ffffffffffffffff811115612eaa57600080fd5b612bb489828a0161289a565b60208082526010908201526f20a1a61d1d1037b7363c9037bbb732b960811b604082015260600190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b808201808211156106b2576106b2612f78565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112612fce57600080fd5b83018035915067ffffffffffffffff821115612fe957600080fd5b60200191503681900382131561242657600080fd5b60006020828403121561301057600080fd5b5051919050565b6020808252603d908201527f41434c3a3a20677561726469616e2063616e6e6f74206469736361726420707260408201527f6f706f73616c20756e74696c2074696d656c6f636b2072656c61736564000000606082015260800190565b818103818111156106b2576106b2612f78565b60006020828403121561309957600080fd5b8151801515811461074657600080fd5b6000600182016130bb576130bb612f78565b5060010190565b80820281158282048414176106b2576106b2612f78565b6000826130f657634e487b7160e01b600052601260045260246000fd5b500490565b60005b838110156131165781810151838201526020016130fe565b50506000910152565b600082516131318184602087016130fb565b9190910192915050565b634e487b7160e01b600052602160045260246000fd5b60208152600082518060208401526131708160408501602087016130fb565b601f01601f1916919091016040019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212204682ef7d1071ac9e2f99785dd22a08509b8f91e9e41330c4a7ce77e4aac6a03764736f6c63430008110033"; - -type EtherspotWalletConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: EtherspotWalletConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class EtherspotWallet__factory extends ContractFactory { - constructor(...args: EtherspotWalletConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - anEntryPoint: PromiseOrValue, - anWalletFactory: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy( - anEntryPoint, - anWalletFactory, - overrides || {} - ) as Promise; - } - override getDeployTransaction( - anEntryPoint: PromiseOrValue, - anWalletFactory: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction( - anEntryPoint, - anWalletFactory, - overrides || {} - ); - } - override attach(address: string): EtherspotWallet { - return super.attach(address) as EtherspotWallet; - } - override connect(signer: Signer): EtherspotWallet__factory { - return super.connect(signer) as EtherspotWallet__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): EtherspotWalletInterface { - return new utils.Interface(_abi) as EtherspotWalletInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): EtherspotWallet { - return new Contract(address, _abi, signerOrProvider) as EtherspotWallet; - } -} diff --git a/src/sdk/contracts/factories/src/wallet/Proxy__factory.ts b/src/sdk/contracts/factories/src/wallet/Proxy__factory.ts deleted file mode 100644 index 2a9251b..0000000 --- a/src/sdk/contracts/factories/src/wallet/Proxy__factory.ts +++ /dev/null @@ -1,74 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; -import type { Provider, TransactionRequest } from "@ethersproject/providers"; -import type { PromiseOrValue } from "../../../common"; -import type { Proxy, ProxyInterface } from "../../../src/wallet/Proxy"; - -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_singleton", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - stateMutability: "payable", - type: "fallback", - }, -] as const; - -const _bytecode = - "0x608060405234801561001057600080fd5b5060405161016c38038061016c83398101604081905261002f916100b0565b6001600160a01b0381166100895760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420616464726573732070726f76696465640000000000000000604482015260640160405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc556100e0565b6000602082840312156100c257600080fd5b81516001600160a01b03811681146100d957600080fd5b9392505050565b607e806100ee6000396000f3fe60806040527f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc543660008037600080366000845af43d6000803e806042573d6000fd5b503d6000f3fea2646970667358221220bf4792713f0ae541fee868815c68df07e96dbe0616b01cc209b0004f92ee91a964736f6c63430008110033"; - -type ProxyConstructorParams = - | [signer?: Signer] - | ConstructorParameters; - -const isSuperArgs = ( - xs: ProxyConstructorParams -): xs is ConstructorParameters => xs.length > 1; - -export class Proxy__factory extends ContractFactory { - constructor(...args: ProxyConstructorParams) { - if (isSuperArgs(args)) { - super(...args); - } else { - super(_abi, _bytecode, args[0]); - } - } - - override deploy( - _singleton: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise { - return super.deploy(_singleton, overrides || {}) as Promise; - } - override getDeployTransaction( - _singleton: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): TransactionRequest { - return super.getDeployTransaction(_singleton, overrides || {}); - } - override attach(address: string): Proxy { - return super.attach(address) as Proxy; - } - override connect(signer: Signer): Proxy__factory { - return super.connect(signer) as Proxy__factory; - } - - static readonly bytecode = _bytecode; - static readonly abi = _abi; - static createInterface(): ProxyInterface { - return new utils.Interface(_abi) as ProxyInterface; - } - static connect(address: string, signerOrProvider: Signer | Provider): Proxy { - return new Contract(address, _abi, signerOrProvider) as Proxy; - } -} diff --git a/src/sdk/contracts/factories/src/wallet/index.ts b/src/sdk/contracts/factories/src/wallet/index.ts deleted file mode 100644 index 66a50b5..0000000 --- a/src/sdk/contracts/factories/src/wallet/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export { EtherspotWallet__factory } from "./EtherspotWallet__factory"; -export { EtherspotWalletFactory__factory } from "./EtherspotWalletFactory__factory"; -export { Proxy__factory } from "./Proxy__factory"; diff --git a/src/sdk/contracts/index.ts b/src/sdk/contracts/index.ts deleted file mode 100644 index 954ed39..0000000 --- a/src/sdk/contracts/index.ts +++ /dev/null @@ -1,79 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as openzeppelin from "./@openzeppelin"; -export type { openzeppelin }; -import type * as accountAbstraction from "./account-abstraction"; -export type { accountAbstraction }; -import type * as src from "./src"; -export type { src }; -export * as factories from "./factories"; -export type { Ownable } from "./@openzeppelin/contracts/access/Ownable"; -export { Ownable__factory } from "./factories/@openzeppelin/contracts/access/Ownable__factory"; -export type { IERC1822Proxiable } from "./@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable"; -export { IERC1822Proxiable__factory } from "./factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory"; -export type { IERC1967 } from "./@openzeppelin/contracts/interfaces/IERC1967"; -export { IERC1967__factory } from "./factories/@openzeppelin/contracts/interfaces/IERC1967__factory"; -export type { IBeacon } from "./@openzeppelin/contracts/proxy/beacon/IBeacon"; -export { IBeacon__factory } from "./factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory"; -export type { ERC1967Upgrade } from "./@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade"; -export { ERC1967Upgrade__factory } from "./factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade__factory"; -export type { Initializable } from "./@openzeppelin/contracts/proxy/utils/Initializable"; -export { Initializable__factory } from "./factories/@openzeppelin/contracts/proxy/utils/Initializable__factory"; -export type { UUPSUpgradeable } from "./@openzeppelin/contracts/proxy/utils/UUPSUpgradeable"; -export { UUPSUpgradeable__factory } from "./factories/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable__factory"; -export type { IERC1155Receiver } from "./@openzeppelin/contracts/token/ERC1155/IERC1155Receiver"; -export { IERC1155Receiver__factory } from "./factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory"; -export type { IERC721Receiver } from "./@openzeppelin/contracts/token/ERC721/IERC721Receiver"; -export { IERC721Receiver__factory } from "./factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory"; -export type { IERC777Recipient } from "./@openzeppelin/contracts/token/ERC777/IERC777Recipient"; -export { IERC777Recipient__factory } from "./factories/@openzeppelin/contracts/token/ERC777/IERC777Recipient__factory"; -export type { IERC165 } from "./@openzeppelin/contracts/utils/introspection/IERC165"; -export { IERC165__factory } from "./factories/@openzeppelin/contracts/utils/introspection/IERC165__factory"; -export type { BaseAccount } from "./account-abstraction/contracts/core/BaseAccount"; -export { BaseAccount__factory } from "./factories/account-abstraction/contracts/core/BaseAccount__factory"; -export type { IAccount } from "./account-abstraction/contracts/interfaces/IAccount"; -export { IAccount__factory } from "./factories/account-abstraction/contracts/interfaces/IAccount__factory"; -export type { IAggregator } from "./account-abstraction/contracts/interfaces/IAggregator"; -export { IAggregator__factory } from "./factories/account-abstraction/contracts/interfaces/IAggregator__factory"; -export type { IEntryPoint } from "./account-abstraction/contracts/interfaces/IEntryPoint"; -export { IEntryPoint__factory } from "./factories/account-abstraction/contracts/interfaces/IEntryPoint__factory"; -export type { INonceManager } from "./account-abstraction/contracts/interfaces/INonceManager"; -export { INonceManager__factory } from "./factories/account-abstraction/contracts/interfaces/INonceManager__factory"; -export type { IPaymaster } from "./account-abstraction/contracts/interfaces/IPaymaster"; -export { IPaymaster__factory } from "./factories/account-abstraction/contracts/interfaces/IPaymaster__factory"; -export type { IStakeManager } from "./account-abstraction/contracts/interfaces/IStakeManager"; -export { IStakeManager__factory } from "./factories/account-abstraction/contracts/interfaces/IStakeManager__factory"; -export type { TokenCallbackHandler } from "./account-abstraction/contracts/samples/callback/TokenCallbackHandler"; -export { TokenCallbackHandler__factory } from "./factories/account-abstraction/contracts/samples/callback/TokenCallbackHandler__factory"; -export type { AccessController } from "./src/access/AccessController"; -export { AccessController__factory } from "./factories/src/access/AccessController__factory"; -export type { UniversalSigValidator } from "./src/helpers/UniversalSignatureValidator.sol/UniversalSigValidator"; -export { UniversalSigValidator__factory } from "./factories/src/helpers/UniversalSignatureValidator.sol/UniversalSigValidator__factory"; -export type { ValidateSigOffchain } from "./src/helpers/UniversalSignatureValidator.sol/ValidateSigOffchain"; -export { ValidateSigOffchain__factory } from "./factories/src/helpers/UniversalSignatureValidator.sol/ValidateSigOffchain__factory"; -export type { IAccessController } from "./src/interfaces/IAccessController"; -export { IAccessController__factory } from "./factories/src/interfaces/IAccessController__factory"; -export type { IERC1271Wallet } from "./src/interfaces/IERC1271Wallet"; -export { IERC1271Wallet__factory } from "./factories/src/interfaces/IERC1271Wallet__factory"; -export type { IEtherspotPaymaster } from "./src/interfaces/IEtherspotPaymaster"; -export { IEtherspotPaymaster__factory } from "./factories/src/interfaces/IEtherspotPaymaster__factory"; -export type { IEtherspotWallet } from "./src/interfaces/IEtherspotWallet"; -export { IEtherspotWallet__factory } from "./factories/src/interfaces/IEtherspotWallet__factory"; -export type { IEtherspotWalletFactory } from "./src/interfaces/IEtherspotWalletFactory"; -export { IEtherspotWalletFactory__factory } from "./factories/src/interfaces/IEtherspotWalletFactory__factory"; -export type { IWhitelist } from "./src/interfaces/IWhitelist"; -export { IWhitelist__factory } from "./factories/src/interfaces/IWhitelist__factory"; -export type { BasePaymaster } from "./src/paymaster/BasePaymaster"; -export { BasePaymaster__factory } from "./factories/src/paymaster/BasePaymaster__factory"; -export type { EtherspotPaymaster } from "./src/paymaster/EtherspotPaymaster"; -export { EtherspotPaymaster__factory } from "./factories/src/paymaster/EtherspotPaymaster__factory"; -export type { Whitelist } from "./src/paymaster/Whitelist"; -export { Whitelist__factory } from "./factories/src/paymaster/Whitelist__factory"; -export type { EtherspotWallet } from "./src/wallet/EtherspotWallet"; -export { EtherspotWallet__factory } from "./factories/src/wallet/EtherspotWallet__factory"; -export type { EtherspotWalletFactory } from "./src/wallet/EtherspotWalletFactory"; -export { EtherspotWalletFactory__factory } from "./factories/src/wallet/EtherspotWalletFactory__factory"; -export type { Proxy } from "./src/wallet/Proxy"; -export { Proxy__factory } from "./factories/src/wallet/Proxy__factory"; -export { EntryPoint__factory } from "./factories/account-abstraction/contracts/core/EntryPoint__factory"; diff --git a/src/sdk/contracts/src/ERC6900/index.ts b/src/sdk/contracts/src/ERC6900/index.ts deleted file mode 100644 index 128489a..0000000 --- a/src/sdk/contracts/src/ERC6900/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as libraries from "./libraries"; -export type { libraries }; diff --git a/src/sdk/contracts/src/ERC6900/libraries/ErrorsLib.ts b/src/sdk/contracts/src/ERC6900/libraries/ErrorsLib.ts deleted file mode 100644 index 716d95f..0000000 --- a/src/sdk/contracts/src/ERC6900/libraries/ErrorsLib.ts +++ /dev/null @@ -1,55 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { BaseContract, Signer, utils } from "ethers"; - -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "../../../common"; - -export interface ErrorsLibInterface extends utils.Interface { - functions: {}; - - events: {}; -} - -export interface ErrorsLib extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: ErrorsLibInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: {}; - - callStatic: {}; - - filters: {}; - - estimateGas: {}; - - populateTransaction: {}; -} diff --git a/src/sdk/contracts/src/ERC6900/libraries/index.ts b/src/sdk/contracts/src/ERC6900/libraries/index.ts deleted file mode 100644 index da947a3..0000000 --- a/src/sdk/contracts/src/ERC6900/libraries/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { ErrorsLib } from "./ErrorsLib"; diff --git a/src/sdk/contracts/src/ERC7579/access/AccessController.ts b/src/sdk/contracts/src/ERC7579/access/AccessController.ts deleted file mode 100644 index 25f663d..0000000 --- a/src/sdk/contracts/src/ERC7579/access/AccessController.ts +++ /dev/null @@ -1,768 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export interface AccessControllerInterface extends utils.Interface { - functions: { - "AUTHOR()": FunctionFragment; - "NAME()": FunctionFragment; - "VERSION()": FunctionFragment; - "addGuardian(address)": FunctionFragment; - "addOwner(address)": FunctionFragment; - "changeProposalTimelock(uint256)": FunctionFragment; - "discardCurrentProposal()": FunctionFragment; - "getProposal(uint256)": FunctionFragment; - "guardianCosign()": FunctionFragment; - "guardianCount()": FunctionFragment; - "guardianPropose(address)": FunctionFragment; - "isGuardian(address)": FunctionFragment; - "isOwner(address)": FunctionFragment; - "ownerCount()": FunctionFragment; - "proposalId()": FunctionFragment; - "proposalTimelock()": FunctionFragment; - "removeGuardian(address)": FunctionFragment; - "removeOwner(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "AUTHOR" - | "NAME" - | "VERSION" - | "addGuardian" - | "addOwner" - | "changeProposalTimelock" - | "discardCurrentProposal" - | "getProposal" - | "guardianCosign" - | "guardianCount" - | "guardianPropose" - | "isGuardian" - | "isOwner" - | "ownerCount" - | "proposalId" - | "proposalTimelock" - | "removeGuardian" - | "removeOwner" - ): FunctionFragment; - - encodeFunctionData(functionFragment: "AUTHOR", values?: undefined): string; - encodeFunctionData(functionFragment: "NAME", values?: undefined): string; - encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; - encodeFunctionData( - functionFragment: "addGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "addOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "changeProposalTimelock", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "discardCurrentProposal", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getProposal", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "guardianCosign", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "guardianCount", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "guardianPropose", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "ownerCount", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "proposalId", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "proposalTimelock", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "removeGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "removeOwner", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult(functionFragment: "AUTHOR", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "addGuardian", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "addOwner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "changeProposalTimelock", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "discardCurrentProposal", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getProposal", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianCosign", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianCount", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianPropose", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "isGuardian", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "proposalId", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "proposalTimelock", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeGuardian", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeOwner", - data: BytesLike - ): Result; - - events: { - "GuardianAdded(address,address)": EventFragment; - "GuardianRemoved(address,address)": EventFragment; - "OwnerAdded(address,address)": EventFragment; - "OwnerRemoved(address,address)": EventFragment; - "ProposalDiscarded(address,uint256,address)": EventFragment; - "ProposalSubmitted(address,uint256,address,address)": EventFragment; - "ProposalTimelockChanged(address,uint256)": EventFragment; - "QuorumNotReached(address,uint256,address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "GuardianAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "GuardianRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalDiscarded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalSubmitted"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalTimelockChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "QuorumNotReached"): EventFragment; -} - -export interface GuardianAddedEventObject { - account: string; - newGuardian: string; -} -export type GuardianAddedEvent = TypedEvent< - [string, string], - GuardianAddedEventObject ->; - -export type GuardianAddedEventFilter = TypedEventFilter; - -export interface GuardianRemovedEventObject { - account: string; - removedGuardian: string; -} -export type GuardianRemovedEvent = TypedEvent< - [string, string], - GuardianRemovedEventObject ->; - -export type GuardianRemovedEventFilter = TypedEventFilter; - -export interface OwnerAddedEventObject { - account: string; - newOwner: string; -} -export type OwnerAddedEvent = TypedEvent< - [string, string], - OwnerAddedEventObject ->; - -export type OwnerAddedEventFilter = TypedEventFilter; - -export interface OwnerRemovedEventObject { - account: string; - removedOwner: string; -} -export type OwnerRemovedEvent = TypedEvent< - [string, string], - OwnerRemovedEventObject ->; - -export type OwnerRemovedEventFilter = TypedEventFilter; - -export interface ProposalDiscardedEventObject { - account: string; - proposalId: BigNumber; - discardedBy: string; -} -export type ProposalDiscardedEvent = TypedEvent< - [string, BigNumber, string], - ProposalDiscardedEventObject ->; - -export type ProposalDiscardedEventFilter = - TypedEventFilter; - -export interface ProposalSubmittedEventObject { - account: string; - proposalId: BigNumber; - newOwnerProposed: string; - proposer: string; -} -export type ProposalSubmittedEvent = TypedEvent< - [string, BigNumber, string, string], - ProposalSubmittedEventObject ->; - -export type ProposalSubmittedEventFilter = - TypedEventFilter; - -export interface ProposalTimelockChangedEventObject { - account: string; - newTimelock: BigNumber; -} -export type ProposalTimelockChangedEvent = TypedEvent< - [string, BigNumber], - ProposalTimelockChangedEventObject ->; - -export type ProposalTimelockChangedEventFilter = - TypedEventFilter; - -export interface QuorumNotReachedEventObject { - account: string; - proposalId: BigNumber; - newOwnerProposed: string; - approvalCount: BigNumber; -} -export type QuorumNotReachedEvent = TypedEvent< - [string, BigNumber, string, BigNumber], - QuorumNotReachedEventObject ->; - -export type QuorumNotReachedEventFilter = - TypedEventFilter; - -export interface AccessController extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: AccessControllerInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - AUTHOR(overrides?: CallOverrides): Promise<[string]>; - - NAME(overrides?: CallOverrides): Promise<[string]>; - - VERSION(overrides?: CallOverrides): Promise<[string]>; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise<[BigNumber]>; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - ownerCount(overrides?: CallOverrides): Promise<[BigNumber]>; - - proposalId(overrides?: CallOverrides): Promise<[BigNumber]>; - - proposalTimelock(overrides?: CallOverrides): Promise<[BigNumber]>; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - AUTHOR(overrides?: CallOverrides): Promise; - - NAME(overrides?: CallOverrides): Promise; - - VERSION(overrides?: CallOverrides): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - AUTHOR(overrides?: CallOverrides): Promise; - - NAME(overrides?: CallOverrides): Promise; - - VERSION(overrides?: CallOverrides): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - discardCurrentProposal(overrides?: CallOverrides): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign(overrides?: CallOverrides): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "GuardianAdded(address,address)"( - account?: null, - newGuardian?: null - ): GuardianAddedEventFilter; - GuardianAdded(account?: null, newGuardian?: null): GuardianAddedEventFilter; - - "GuardianRemoved(address,address)"( - account?: null, - removedGuardian?: null - ): GuardianRemovedEventFilter; - GuardianRemoved( - account?: null, - removedGuardian?: null - ): GuardianRemovedEventFilter; - - "OwnerAdded(address,address)"( - account?: null, - newOwner?: null - ): OwnerAddedEventFilter; - OwnerAdded(account?: null, newOwner?: null): OwnerAddedEventFilter; - - "OwnerRemoved(address,address)"( - account?: null, - removedOwner?: null - ): OwnerRemovedEventFilter; - OwnerRemoved(account?: null, removedOwner?: null): OwnerRemovedEventFilter; - - "ProposalDiscarded(address,uint256,address)"( - account?: null, - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - ProposalDiscarded( - account?: null, - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - - "ProposalSubmitted(address,uint256,address,address)"( - account?: null, - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - ProposalSubmitted( - account?: null, - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - - "ProposalTimelockChanged(address,uint256)"( - account?: null, - newTimelock?: null - ): ProposalTimelockChangedEventFilter; - ProposalTimelockChanged( - account?: null, - newTimelock?: null - ): ProposalTimelockChangedEventFilter; - - "QuorumNotReached(address,uint256,address,uint256)"( - account?: null, - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - QuorumNotReached( - account?: null, - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - }; - - estimateGas: { - AUTHOR(overrides?: CallOverrides): Promise; - - NAME(overrides?: CallOverrides): Promise; - - VERSION(overrides?: CallOverrides): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - AUTHOR(overrides?: CallOverrides): Promise; - - NAME(overrides?: CallOverrides): Promise; - - VERSION(overrides?: CallOverrides): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/ERC7579/access/index.ts b/src/sdk/contracts/src/ERC7579/access/index.ts deleted file mode 100644 index bc397b1..0000000 --- a/src/sdk/contracts/src/ERC7579/access/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { AccessController } from "./AccessController"; diff --git a/src/sdk/contracts/src/ERC7579/index.ts b/src/sdk/contracts/src/ERC7579/index.ts deleted file mode 100644 index 9da2e56..0000000 --- a/src/sdk/contracts/src/ERC7579/index.ts +++ /dev/null @@ -1,13 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as access from "./access"; -export type { access }; -import type * as interfaces from "./interfaces"; -export type { interfaces }; -import type * as libraries from "./libraries"; -export type { libraries }; -import type * as modules from "./modules"; -export type { modules }; -import type * as wallet from "./wallet"; -export type { wallet }; diff --git a/src/sdk/contracts/src/ERC7579/interfaces/IAccessController.ts b/src/sdk/contracts/src/ERC7579/interfaces/IAccessController.ts deleted file mode 100644 index 45fdcb3..0000000 --- a/src/sdk/contracts/src/ERC7579/interfaces/IAccessController.ts +++ /dev/null @@ -1,652 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export interface IAccessControllerInterface extends utils.Interface { - functions: { - "addGuardian(address)": FunctionFragment; - "addOwner(address)": FunctionFragment; - "changeProposalTimelock(uint256)": FunctionFragment; - "discardCurrentProposal()": FunctionFragment; - "getProposal(uint256)": FunctionFragment; - "guardianCosign()": FunctionFragment; - "guardianPropose(address)": FunctionFragment; - "isGuardian(address)": FunctionFragment; - "isOwner(address)": FunctionFragment; - "removeGuardian(address)": FunctionFragment; - "removeOwner(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addGuardian" - | "addOwner" - | "changeProposalTimelock" - | "discardCurrentProposal" - | "getProposal" - | "guardianCosign" - | "guardianPropose" - | "isGuardian" - | "isOwner" - | "removeGuardian" - | "removeOwner" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "addOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "changeProposalTimelock", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "discardCurrentProposal", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getProposal", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "guardianCosign", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "guardianPropose", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "removeGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "removeOwner", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "addGuardian", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "addOwner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "changeProposalTimelock", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "discardCurrentProposal", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getProposal", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianCosign", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianPropose", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "isGuardian", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "removeGuardian", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeOwner", - data: BytesLike - ): Result; - - events: { - "GuardianAdded(address,address)": EventFragment; - "GuardianRemoved(address,address)": EventFragment; - "OwnerAdded(address,address)": EventFragment; - "OwnerRemoved(address,address)": EventFragment; - "ProposalDiscarded(address,uint256,address)": EventFragment; - "ProposalSubmitted(address,uint256,address,address)": EventFragment; - "ProposalTimelockChanged(address,uint256)": EventFragment; - "QuorumNotReached(address,uint256,address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "GuardianAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "GuardianRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalDiscarded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalSubmitted"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalTimelockChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "QuorumNotReached"): EventFragment; -} - -export interface GuardianAddedEventObject { - account: string; - newGuardian: string; -} -export type GuardianAddedEvent = TypedEvent< - [string, string], - GuardianAddedEventObject ->; - -export type GuardianAddedEventFilter = TypedEventFilter; - -export interface GuardianRemovedEventObject { - account: string; - removedGuardian: string; -} -export type GuardianRemovedEvent = TypedEvent< - [string, string], - GuardianRemovedEventObject ->; - -export type GuardianRemovedEventFilter = TypedEventFilter; - -export interface OwnerAddedEventObject { - account: string; - newOwner: string; -} -export type OwnerAddedEvent = TypedEvent< - [string, string], - OwnerAddedEventObject ->; - -export type OwnerAddedEventFilter = TypedEventFilter; - -export interface OwnerRemovedEventObject { - account: string; - removedOwner: string; -} -export type OwnerRemovedEvent = TypedEvent< - [string, string], - OwnerRemovedEventObject ->; - -export type OwnerRemovedEventFilter = TypedEventFilter; - -export interface ProposalDiscardedEventObject { - account: string; - proposalId: BigNumber; - discardedBy: string; -} -export type ProposalDiscardedEvent = TypedEvent< - [string, BigNumber, string], - ProposalDiscardedEventObject ->; - -export type ProposalDiscardedEventFilter = - TypedEventFilter; - -export interface ProposalSubmittedEventObject { - account: string; - proposalId: BigNumber; - newOwnerProposed: string; - proposer: string; -} -export type ProposalSubmittedEvent = TypedEvent< - [string, BigNumber, string, string], - ProposalSubmittedEventObject ->; - -export type ProposalSubmittedEventFilter = - TypedEventFilter; - -export interface ProposalTimelockChangedEventObject { - account: string; - newTimelock: BigNumber; -} -export type ProposalTimelockChangedEvent = TypedEvent< - [string, BigNumber], - ProposalTimelockChangedEventObject ->; - -export type ProposalTimelockChangedEventFilter = - TypedEventFilter; - -export interface QuorumNotReachedEventObject { - account: string; - proposalId: BigNumber; - newOwnerProposed: string; - approvalCount: BigNumber; -} -export type QuorumNotReachedEvent = TypedEvent< - [string, BigNumber, string, BigNumber], - QuorumNotReachedEventObject ->; - -export type QuorumNotReachedEventFilter = - TypedEventFilter; - -export interface IAccessController extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IAccessControllerInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - discardCurrentProposal(overrides?: CallOverrides): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "GuardianAdded(address,address)"( - account?: null, - newGuardian?: null - ): GuardianAddedEventFilter; - GuardianAdded(account?: null, newGuardian?: null): GuardianAddedEventFilter; - - "GuardianRemoved(address,address)"( - account?: null, - removedGuardian?: null - ): GuardianRemovedEventFilter; - GuardianRemoved( - account?: null, - removedGuardian?: null - ): GuardianRemovedEventFilter; - - "OwnerAdded(address,address)"( - account?: null, - newOwner?: null - ): OwnerAddedEventFilter; - OwnerAdded(account?: null, newOwner?: null): OwnerAddedEventFilter; - - "OwnerRemoved(address,address)"( - account?: null, - removedOwner?: null - ): OwnerRemovedEventFilter; - OwnerRemoved(account?: null, removedOwner?: null): OwnerRemovedEventFilter; - - "ProposalDiscarded(address,uint256,address)"( - account?: null, - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - ProposalDiscarded( - account?: null, - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - - "ProposalSubmitted(address,uint256,address,address)"( - account?: null, - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - ProposalSubmitted( - account?: null, - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - - "ProposalTimelockChanged(address,uint256)"( - account?: null, - newTimelock?: null - ): ProposalTimelockChangedEventFilter; - ProposalTimelockChanged( - account?: null, - newTimelock?: null - ): ProposalTimelockChangedEventFilter; - - "QuorumNotReached(address,uint256,address,uint256)"( - account?: null, - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - QuorumNotReached( - account?: null, - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - }; - - estimateGas: { - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig.ts b/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig.ts deleted file mode 100644 index faa61b4..0000000 --- a/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig.ts +++ /dev/null @@ -1,485 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IAccountConfigInterface extends utils.Interface { - functions: { - "installExecutor(address,bytes)": FunctionFragment; - "installFallback(address,bytes)": FunctionFragment; - "installValidator(address,bytes)": FunctionFragment; - "isExecutorInstalled(address)": FunctionFragment; - "isFallbackInstalled(address)": FunctionFragment; - "isValidatorInstalled(address)": FunctionFragment; - "uninstallExecutor(address,bytes)": FunctionFragment; - "uninstallFallback(address,bytes)": FunctionFragment; - "uninstallValidator(address,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "installExecutor" - | "installFallback" - | "installValidator" - | "isExecutorInstalled" - | "isFallbackInstalled" - | "isValidatorInstalled" - | "uninstallExecutor" - | "uninstallFallback" - | "uninstallValidator" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "installExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isExecutorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isFallbackInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidatorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "installExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installValidator", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isExecutorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isFallbackInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isValidatorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallValidator", - data: BytesLike - ): Result; - - events: { - "DisableExecutor(address)": EventFragment; - "DisableValidator(address)": EventFragment; - "EnableExecutor(address)": EventFragment; - "EnableValidator(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "DisableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "DisableValidator"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableValidator"): EventFragment; -} - -export interface DisableExecutorEventObject { - module: string; -} -export type DisableExecutorEvent = TypedEvent< - [string], - DisableExecutorEventObject ->; - -export type DisableExecutorEventFilter = TypedEventFilter; - -export interface DisableValidatorEventObject { - module: string; -} -export type DisableValidatorEvent = TypedEvent< - [string], - DisableValidatorEventObject ->; - -export type DisableValidatorEventFilter = - TypedEventFilter; - -export interface EnableExecutorEventObject { - module: string; -} -export type EnableExecutorEvent = TypedEvent< - [string], - EnableExecutorEventObject ->; - -export type EnableExecutorEventFilter = TypedEventFilter; - -export interface EnableValidatorEventObject { - module: string; -} -export type EnableValidatorEvent = TypedEvent< - [string], - EnableValidatorEventObject ->; - -export type EnableValidatorEventFilter = TypedEventFilter; - -export interface IAccountConfig extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IAccountConfigInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "DisableExecutor(address)"(module?: null): DisableExecutorEventFilter; - DisableExecutor(module?: null): DisableExecutorEventFilter; - - "DisableValidator(address)"(module?: null): DisableValidatorEventFilter; - DisableValidator(module?: null): DisableValidatorEventFilter; - - "EnableExecutor(address)"(module?: null): EnableExecutorEventFilter; - EnableExecutor(module?: null): EnableExecutorEventFilter; - - "EnableValidator(address)"(module?: null): EnableValidatorEventFilter; - EnableValidator(module?: null): EnableValidatorEventFilter; - }; - - estimateGas: { - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig_Hook.ts b/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig_Hook.ts deleted file mode 100644 index ff54a52..0000000 --- a/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IAccountConfig_Hook.ts +++ /dev/null @@ -1,215 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IAccountConfig_HookInterface extends utils.Interface { - functions: { - "installHook(address,bytes)": FunctionFragment; - "isHookInstalled(address)": FunctionFragment; - "uninstallHook(address,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: "installHook" | "isHookInstalled" | "uninstallHook" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "installHook", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isHookInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallHook", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "installHook", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isHookInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallHook", - data: BytesLike - ): Result; - - events: { - "DisableHook(address)": EventFragment; - "EnableHook(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "DisableHook"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableHook"): EventFragment; -} - -export interface DisableHookEventObject { - module: string; -} -export type DisableHookEvent = TypedEvent<[string], DisableHookEventObject>; - -export type DisableHookEventFilter = TypedEventFilter; - -export interface EnableHookEventObject { - module: string; -} -export type EnableHookEvent = TypedEvent<[string], EnableHookEventObject>; - -export type EnableHookEventFilter = TypedEventFilter; - -export interface IAccountConfig_Hook extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IAccountConfig_HookInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - installHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isHookInstalled( - hook: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - uninstallHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - installHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isHookInstalled( - hook: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - installHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isHookInstalled( - hook: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "DisableHook(address)"(module?: null): DisableHookEventFilter; - DisableHook(module?: null): DisableHookEventFilter; - - "EnableHook(address)"(module?: null): EnableHookEventFilter; - EnableHook(module?: null): EnableHookEventFilter; - }; - - estimateGas: { - installHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isHookInstalled( - hook: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - installHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isHookInstalled( - hook: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallHook( - hook: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IEtherspotWallet7579.ts b/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IEtherspotWallet7579.ts deleted file mode 100644 index 44bfc2d..0000000 --- a/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IEtherspotWallet7579.ts +++ /dev/null @@ -1,781 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export declare namespace IExecution { - export type ExecutionStruct = { - target: PromiseOrValue; - value: PromiseOrValue; - callData: PromiseOrValue; - }; - - export type ExecutionStructOutput = [string, BigNumber, string] & { - target: string; - value: BigNumber; - callData: string; - }; -} - -export interface IEtherspotWallet7579Interface extends utils.Interface { - functions: { - "execute(address,uint256,bytes)": FunctionFragment; - "executeBatch((address,uint256,bytes)[])": FunctionFragment; - "executeBatchFromExecutor((address,uint256,bytes)[])": FunctionFragment; - "executeDelegateCall(address,bytes)": FunctionFragment; - "executeDelegateCallFromExecutor(address,bytes)": FunctionFragment; - "executeFromExecutor(address,uint256,bytes)": FunctionFragment; - "initializeAccount(bytes)": FunctionFragment; - "installExecutor(address,bytes)": FunctionFragment; - "installFallback(address,bytes)": FunctionFragment; - "installValidator(address,bytes)": FunctionFragment; - "isExecutorInstalled(address)": FunctionFragment; - "isFallbackInstalled(address)": FunctionFragment; - "isValidatorInstalled(address)": FunctionFragment; - "uninstallExecutor(address,bytes)": FunctionFragment; - "uninstallFallback(address,bytes)": FunctionFragment; - "uninstallValidator(address,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "execute" - | "executeBatch" - | "executeBatchFromExecutor" - | "executeDelegateCall" - | "executeDelegateCallFromExecutor" - | "executeFromExecutor" - | "initializeAccount" - | "installExecutor" - | "installFallback" - | "installValidator" - | "isExecutorInstalled" - | "isFallbackInstalled" - | "isValidatorInstalled" - | "uninstallExecutor" - | "uninstallFallback" - | "uninstallValidator" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "execute", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "executeBatch", - values: [IExecution.ExecutionStruct[]] - ): string; - encodeFunctionData( - functionFragment: "executeBatchFromExecutor", - values: [IExecution.ExecutionStruct[]] - ): string; - encodeFunctionData( - functionFragment: "executeDelegateCall", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "executeDelegateCallFromExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "executeFromExecutor", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "initializeAccount", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isExecutorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isFallbackInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidatorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "executeBatch", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeBatchFromExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeDelegateCall", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeDelegateCallFromExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeFromExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "initializeAccount", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installValidator", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isExecutorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isFallbackInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isValidatorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallValidator", - data: BytesLike - ): Result; - - events: { - "DisableExecutor(address)": EventFragment; - "DisableValidator(address)": EventFragment; - "EnableExecutor(address)": EventFragment; - "EnableValidator(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "DisableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "DisableValidator"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableValidator"): EventFragment; -} - -export interface DisableExecutorEventObject { - module: string; -} -export type DisableExecutorEvent = TypedEvent< - [string], - DisableExecutorEventObject ->; - -export type DisableExecutorEventFilter = TypedEventFilter; - -export interface DisableValidatorEventObject { - module: string; -} -export type DisableValidatorEvent = TypedEvent< - [string], - DisableValidatorEventObject ->; - -export type DisableValidatorEventFilter = - TypedEventFilter; - -export interface EnableExecutorEventObject { - module: string; -} -export type EnableExecutorEvent = TypedEvent< - [string], - EnableExecutorEventObject ->; - -export type EnableExecutorEventFilter = TypedEventFilter; - -export interface EnableValidatorEventObject { - module: string; -} -export type EnableValidatorEvent = TypedEvent< - [string], - EnableValidatorEventObject ->; - -export type EnableValidatorEventFilter = TypedEventFilter; - -export interface IEtherspotWallet7579 extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IEtherspotWallet7579Interface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: CallOverrides - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: CallOverrides - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "DisableExecutor(address)"(module?: null): DisableExecutorEventFilter; - DisableExecutor(module?: null): DisableExecutorEventFilter; - - "DisableValidator(address)"(module?: null): DisableValidatorEventFilter; - DisableValidator(module?: null): DisableValidatorEventFilter; - - "EnableExecutor(address)"(module?: null): EnableExecutorEventFilter; - EnableExecutor(module?: null): EnableExecutorEventFilter; - - "EnableValidator(address)"(module?: null): EnableValidatorEventFilter; - EnableValidator(module?: null): EnableValidatorEventFilter; - }; - - estimateGas: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecution.ts b/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecution.ts deleted file mode 100644 index 13fc3c2..0000000 --- a/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecution.ts +++ /dev/null @@ -1,253 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export declare namespace IExecution { - export type ExecutionStruct = { - target: PromiseOrValue; - value: PromiseOrValue; - callData: PromiseOrValue; - }; - - export type ExecutionStructOutput = [string, BigNumber, string] & { - target: string; - value: BigNumber; - callData: string; - }; -} - -export interface IExecutionInterface extends utils.Interface { - functions: { - "execute(address,uint256,bytes)": FunctionFragment; - "executeBatch((address,uint256,bytes)[])": FunctionFragment; - "executeBatchFromExecutor((address,uint256,bytes)[])": FunctionFragment; - "executeFromExecutor(address,uint256,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "execute" - | "executeBatch" - | "executeBatchFromExecutor" - | "executeFromExecutor" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "execute", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "executeBatch", - values: [IExecution.ExecutionStruct[]] - ): string; - encodeFunctionData( - functionFragment: "executeBatchFromExecutor", - values: [IExecution.ExecutionStruct[]] - ): string; - encodeFunctionData( - functionFragment: "executeFromExecutor", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "executeBatch", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeBatchFromExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeFromExecutor", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IExecution extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IExecutionInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: CallOverrides - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: CallOverrides - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecutionUnsafe.ts b/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecutionUnsafe.ts deleted file mode 100644 index 21a108f..0000000 --- a/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/IExecutionUnsafe.ts +++ /dev/null @@ -1,153 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../../common"; - -export interface IExecutionUnsafeInterface extends utils.Interface { - functions: { - "executeDelegateCall(address,bytes)": FunctionFragment; - "executeDelegateCallFromExecutor(address,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "executeDelegateCall" - | "executeDelegateCallFromExecutor" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "executeDelegateCall", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "executeDelegateCallFromExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "executeDelegateCall", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeDelegateCallFromExecutor", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IExecutionUnsafe extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IExecutionUnsafeInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/index.ts b/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/index.ts deleted file mode 100644 index ceb9610..0000000 --- a/src/sdk/contracts/src/ERC7579/interfaces/IEtherspotWallet7579.sol/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { IAccountConfig } from "./IAccountConfig"; -export type { IAccountConfig_Hook } from "./IAccountConfig_Hook"; -export type { IEtherspotWallet7579 } from "./IEtherspotWallet7579"; -export type { IExecution } from "./IExecution"; -export type { IExecutionUnsafe } from "./IExecutionUnsafe"; diff --git a/src/sdk/contracts/src/ERC7579/interfaces/index.ts b/src/sdk/contracts/src/ERC7579/interfaces/index.ts deleted file mode 100644 index b502ef0..0000000 --- a/src/sdk/contracts/src/ERC7579/interfaces/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as iEtherspotWallet7579Sol from "./IEtherspotWallet7579.sol"; -export type { iEtherspotWallet7579Sol }; -export type { IAccessController } from "./IAccessController"; diff --git a/src/sdk/contracts/src/ERC7579/libraries/ErrorsLib.ts b/src/sdk/contracts/src/ERC7579/libraries/ErrorsLib.ts deleted file mode 100644 index 33e353d..0000000 --- a/src/sdk/contracts/src/ERC7579/libraries/ErrorsLib.ts +++ /dev/null @@ -1,56 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { BaseContract, Signer, utils } from "ethers"; - -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export interface ErrorsLibInterface extends utils.Interface { - functions: {}; - - events: {}; -} - -export interface ErrorsLib extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: ErrorsLibInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: {}; - - callStatic: {}; - - filters: {}; - - estimateGas: {}; - - populateTransaction: {}; -} diff --git a/src/sdk/contracts/src/ERC7579/libraries/index.ts b/src/sdk/contracts/src/ERC7579/libraries/index.ts deleted file mode 100644 index da947a3..0000000 --- a/src/sdk/contracts/src/ERC7579/libraries/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { ErrorsLib } from "./ErrorsLib"; diff --git a/src/sdk/contracts/src/ERC7579/modules/ERC20SessionKeyValidator.ts b/src/sdk/contracts/src/ERC7579/modules/ERC20SessionKeyValidator.ts deleted file mode 100644 index cdddb59..0000000 --- a/src/sdk/contracts/src/ERC7579/modules/ERC20SessionKeyValidator.ts +++ /dev/null @@ -1,925 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export type PackedUserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - accountGasLimits: PromiseOrValue; - preVerificationGas: PromiseOrValue; - gasFees: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; -}; - -export type PackedUserOperationStructOutput = [ - string, - BigNumber, - string, - string, - string, - BigNumber, - string, - string, - string -] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - accountGasLimits: string; - preVerificationGas: BigNumber; - gasFees: string; - paymasterAndData: string; - signature: string; -}; - -export declare namespace IERC20SessionKeyValidator { - export type SessionDataStruct = { - token: PromiseOrValue; - interfaceId: PromiseOrValue; - funcSelector: PromiseOrValue; - spendingLimit: PromiseOrValue; - validAfter: PromiseOrValue; - validUntil: PromiseOrValue; - paused: PromiseOrValue; - }; - - export type SessionDataStructOutput = [ - string, - string, - string, - BigNumber, - number, - number, - boolean - ] & { - token: string; - interfaceId: string; - funcSelector: string; - spendingLimit: BigNumber; - validAfter: number; - validUntil: number; - paused: boolean; - }; -} - -export interface ERC20SessionKeyValidatorInterface extends utils.Interface { - functions: { - "checkSessionKeyPaused(address)": FunctionFragment; - "disableSessionKey(address)": FunctionFragment; - "enableSessionKey(bytes)": FunctionFragment; - "getAssociatedSessionKeys()": FunctionFragment; - "getSessionKeyData(address)": FunctionFragment; - "initialized(address)": FunctionFragment; - "isInitialized(address)": FunctionFragment; - "isModuleType(uint256)": FunctionFragment; - "isValidSignatureWithSender(address,bytes32,bytes)": FunctionFragment; - "onInstall(bytes)": FunctionFragment; - "onUninstall(bytes)": FunctionFragment; - "rotateSessionKey(address,bytes)": FunctionFragment; - "sessionData(address,address)": FunctionFragment; - "toggleSessionKeyPause(address)": FunctionFragment; - "validateSessionKeyParams(address,(address,uint256,bytes,bytes,bytes32,uint256,bytes32,bytes,bytes))": FunctionFragment; - "validateUserOp((address,uint256,bytes,bytes,bytes32,uint256,bytes32,bytes,bytes),bytes32)": FunctionFragment; - "walletSessionKeys(address,uint256)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "checkSessionKeyPaused" - | "disableSessionKey" - | "enableSessionKey" - | "getAssociatedSessionKeys" - | "getSessionKeyData" - | "initialized" - | "isInitialized" - | "isModuleType" - | "isValidSignatureWithSender" - | "onInstall" - | "onUninstall" - | "rotateSessionKey" - | "sessionData" - | "toggleSessionKeyPause" - | "validateSessionKeyParams" - | "validateUserOp" - | "walletSessionKeys" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "checkSessionKeyPaused", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "disableSessionKey", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "enableSessionKey", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getAssociatedSessionKeys", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getSessionKeyData", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "initialized", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isInitialized", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isModuleType", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidSignatureWithSender", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "onInstall", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "onUninstall", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "rotateSessionKey", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "sessionData", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "toggleSessionKeyPause", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "validateSessionKeyParams", - values: [PromiseOrValue, PackedUserOperationStruct] - ): string; - encodeFunctionData( - functionFragment: "validateUserOp", - values: [PackedUserOperationStruct, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "walletSessionKeys", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "checkSessionKeyPaused", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "disableSessionKey", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "enableSessionKey", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getAssociatedSessionKeys", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getSessionKeyData", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "initialized", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isInitialized", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isModuleType", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isValidSignatureWithSender", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "onInstall", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "onUninstall", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rotateSessionKey", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "sessionData", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "toggleSessionKeyPause", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "validateSessionKeyParams", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "validateUserOp", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "walletSessionKeys", - data: BytesLike - ): Result; - - events: { - "ERC20SKV_ModuleInstalled(address)": EventFragment; - "ERC20SKV_ModuleUninstalled(address)": EventFragment; - "ERC20SKV_SessionKeyDisabled(address,address)": EventFragment; - "ERC20SKV_SessionKeyEnabled(address,address)": EventFragment; - "ERC20SKV_SessionKeyPaused(address,address)": EventFragment; - "ERC20SKV_SessionKeyUnpaused(address,address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "ERC20SKV_ModuleInstalled"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ERC20SKV_ModuleUninstalled"): EventFragment; - getEvent( - nameOrSignatureOrTopic: "ERC20SKV_SessionKeyDisabled" - ): EventFragment; - getEvent(nameOrSignatureOrTopic: "ERC20SKV_SessionKeyEnabled"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ERC20SKV_SessionKeyPaused"): EventFragment; - getEvent( - nameOrSignatureOrTopic: "ERC20SKV_SessionKeyUnpaused" - ): EventFragment; -} - -export interface ERC20SKV_ModuleInstalledEventObject { - wallet: string; -} -export type ERC20SKV_ModuleInstalledEvent = TypedEvent< - [string], - ERC20SKV_ModuleInstalledEventObject ->; - -export type ERC20SKV_ModuleInstalledEventFilter = - TypedEventFilter; - -export interface ERC20SKV_ModuleUninstalledEventObject { - wallet: string; -} -export type ERC20SKV_ModuleUninstalledEvent = TypedEvent< - [string], - ERC20SKV_ModuleUninstalledEventObject ->; - -export type ERC20SKV_ModuleUninstalledEventFilter = - TypedEventFilter; - -export interface ERC20SKV_SessionKeyDisabledEventObject { - sessionKey: string; - wallet: string; -} -export type ERC20SKV_SessionKeyDisabledEvent = TypedEvent< - [string, string], - ERC20SKV_SessionKeyDisabledEventObject ->; - -export type ERC20SKV_SessionKeyDisabledEventFilter = - TypedEventFilter; - -export interface ERC20SKV_SessionKeyEnabledEventObject { - sessionKey: string; - wallet: string; -} -export type ERC20SKV_SessionKeyEnabledEvent = TypedEvent< - [string, string], - ERC20SKV_SessionKeyEnabledEventObject ->; - -export type ERC20SKV_SessionKeyEnabledEventFilter = - TypedEventFilter; - -export interface ERC20SKV_SessionKeyPausedEventObject { - sessionKey: string; - wallet: string; -} -export type ERC20SKV_SessionKeyPausedEvent = TypedEvent< - [string, string], - ERC20SKV_SessionKeyPausedEventObject ->; - -export type ERC20SKV_SessionKeyPausedEventFilter = - TypedEventFilter; - -export interface ERC20SKV_SessionKeyUnpausedEventObject { - sessionKey: string; - wallet: string; -} -export type ERC20SKV_SessionKeyUnpausedEvent = TypedEvent< - [string, string], - ERC20SKV_SessionKeyUnpausedEventObject ->; - -export type ERC20SKV_SessionKeyUnpausedEventFilter = - TypedEventFilter; - -export interface ERC20SessionKeyValidator extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: ERC20SessionKeyValidatorInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - checkSessionKeyPaused( - _sessionKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - disableSessionKey( - _session: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - enableSessionKey( - _sessionData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getAssociatedSessionKeys(overrides?: CallOverrides): Promise<[string[]]>; - - getSessionKeyData( - _sessionKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[IERC20SessionKeyValidator.SessionDataStructOutput]>; - - initialized( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isInitialized( - smartAccount: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isModuleType( - moduleTypeId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - rotateSessionKey( - _oldSessionKey: PromiseOrValue, - _newSessionData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - sessionData( - sessionKey: PromiseOrValue, - wallet: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, string, BigNumber, number, number, boolean] & { - token: string; - funcSelector: string; - spendingLimit: BigNumber; - validAfter: number; - validUntil: number; - live: boolean; - } - >; - - toggleSessionKeyPause( - _sessionKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateSessionKeyParams( - _sessionKey: PromiseOrValue, - userOp: PackedUserOperationStruct, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: PackedUserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - walletSessionKeys( - wallet: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string] & { assocSessionKeys: string }>; - }; - - checkSessionKeyPaused( - _sessionKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - disableSessionKey( - _session: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - enableSessionKey( - _sessionData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getAssociatedSessionKeys(overrides?: CallOverrides): Promise; - - getSessionKeyData( - _sessionKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - initialized( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isInitialized( - smartAccount: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isModuleType( - moduleTypeId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - rotateSessionKey( - _oldSessionKey: PromiseOrValue, - _newSessionData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - sessionData( - sessionKey: PromiseOrValue, - wallet: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, string, BigNumber, number, number, boolean] & { - token: string; - funcSelector: string; - spendingLimit: BigNumber; - validAfter: number; - validUntil: number; - live: boolean; - } - >; - - toggleSessionKeyPause( - _sessionKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateSessionKeyParams( - _sessionKey: PromiseOrValue, - userOp: PackedUserOperationStruct, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: PackedUserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - walletSessionKeys( - wallet: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - callStatic: { - checkSessionKeyPaused( - _sessionKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - disableSessionKey( - _session: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - enableSessionKey( - _sessionData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getAssociatedSessionKeys(overrides?: CallOverrides): Promise; - - getSessionKeyData( - _sessionKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - initialized( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isInitialized( - smartAccount: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isModuleType( - moduleTypeId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - rotateSessionKey( - _oldSessionKey: PromiseOrValue, - _newSessionData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - sessionData( - sessionKey: PromiseOrValue, - wallet: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, string, BigNumber, number, number, boolean] & { - token: string; - funcSelector: string; - spendingLimit: BigNumber; - validAfter: number; - validUntil: number; - live: boolean; - } - >; - - toggleSessionKeyPause( - _sessionKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - validateSessionKeyParams( - _sessionKey: PromiseOrValue, - userOp: PackedUserOperationStruct, - overrides?: CallOverrides - ): Promise; - - validateUserOp( - userOp: PackedUserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - walletSessionKeys( - wallet: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "ERC20SKV_ModuleInstalled(address)"( - wallet?: null - ): ERC20SKV_ModuleInstalledEventFilter; - ERC20SKV_ModuleInstalled( - wallet?: null - ): ERC20SKV_ModuleInstalledEventFilter; - - "ERC20SKV_ModuleUninstalled(address)"( - wallet?: null - ): ERC20SKV_ModuleUninstalledEventFilter; - ERC20SKV_ModuleUninstalled( - wallet?: null - ): ERC20SKV_ModuleUninstalledEventFilter; - - "ERC20SKV_SessionKeyDisabled(address,address)"( - sessionKey?: null, - wallet?: null - ): ERC20SKV_SessionKeyDisabledEventFilter; - ERC20SKV_SessionKeyDisabled( - sessionKey?: null, - wallet?: null - ): ERC20SKV_SessionKeyDisabledEventFilter; - - "ERC20SKV_SessionKeyEnabled(address,address)"( - sessionKey?: null, - wallet?: null - ): ERC20SKV_SessionKeyEnabledEventFilter; - ERC20SKV_SessionKeyEnabled( - sessionKey?: null, - wallet?: null - ): ERC20SKV_SessionKeyEnabledEventFilter; - - "ERC20SKV_SessionKeyPaused(address,address)"( - sessionKey?: null, - wallet?: null - ): ERC20SKV_SessionKeyPausedEventFilter; - ERC20SKV_SessionKeyPaused( - sessionKey?: null, - wallet?: null - ): ERC20SKV_SessionKeyPausedEventFilter; - - "ERC20SKV_SessionKeyUnpaused(address,address)"( - sessionKey?: null, - wallet?: null - ): ERC20SKV_SessionKeyUnpausedEventFilter; - ERC20SKV_SessionKeyUnpaused( - sessionKey?: null, - wallet?: null - ): ERC20SKV_SessionKeyUnpausedEventFilter; - }; - - estimateGas: { - checkSessionKeyPaused( - _sessionKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - disableSessionKey( - _session: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - enableSessionKey( - _sessionData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getAssociatedSessionKeys(overrides?: CallOverrides): Promise; - - getSessionKeyData( - _sessionKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - initialized( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isInitialized( - smartAccount: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isModuleType( - moduleTypeId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - rotateSessionKey( - _oldSessionKey: PromiseOrValue, - _newSessionData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - sessionData( - sessionKey: PromiseOrValue, - wallet: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - toggleSessionKeyPause( - _sessionKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateSessionKeyParams( - _sessionKey: PromiseOrValue, - userOp: PackedUserOperationStruct, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: PackedUserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - walletSessionKeys( - wallet: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - checkSessionKeyPaused( - _sessionKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - disableSessionKey( - _session: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - enableSessionKey( - _sessionData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getAssociatedSessionKeys( - overrides?: CallOverrides - ): Promise; - - getSessionKeyData( - _sessionKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - initialized( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isInitialized( - smartAccount: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isModuleType( - moduleTypeId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - rotateSessionKey( - _oldSessionKey: PromiseOrValue, - _newSessionData: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - sessionData( - sessionKey: PromiseOrValue, - wallet: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - toggleSessionKeyPause( - _sessionKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateSessionKeyParams( - _sessionKey: PromiseOrValue, - userOp: PackedUserOperationStruct, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: PackedUserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - walletSessionKeys( - wallet: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; -} \ No newline at end of file diff --git a/src/sdk/contracts/src/ERC7579/modules/MultipleOwnerECDSAValidator.ts b/src/sdk/contracts/src/ERC7579/modules/MultipleOwnerECDSAValidator.ts deleted file mode 100644 index e4e783e..0000000 --- a/src/sdk/contracts/src/ERC7579/modules/MultipleOwnerECDSAValidator.ts +++ /dev/null @@ -1,307 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export declare namespace IERC4337 { - export type UserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - callGasLimit: PromiseOrValue; - verificationGasLimit: PromiseOrValue; - preVerificationGas: PromiseOrValue; - maxFeePerGas: PromiseOrValue; - maxPriorityFeePerGas: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; - }; - - export type UserOperationStructOutput = [ - string, - BigNumber, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - string - ] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - callGasLimit: BigNumber; - verificationGasLimit: BigNumber; - preVerificationGas: BigNumber; - maxFeePerGas: BigNumber; - maxPriorityFeePerGas: BigNumber; - paymasterAndData: string; - signature: string; - }; -} - -export interface MultipleOwnerECDSAValidatorInterface extends utils.Interface { - functions: { - "isModuleType(uint256)": FunctionFragment; - "isValidSignatureWithSender(address,bytes32,bytes)": FunctionFragment; - "onInstall(bytes)": FunctionFragment; - "onUninstall(bytes)": FunctionFragment; - "validateUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "isModuleType" - | "isValidSignatureWithSender" - | "onInstall" - | "onUninstall" - | "validateUserOp" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "isModuleType", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidSignatureWithSender", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "onInstall", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "onUninstall", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "validateUserOp", - values: [IERC4337.UserOperationStruct, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "isModuleType", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isValidSignatureWithSender", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "onInstall", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "onUninstall", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "validateUserOp", - data: BytesLike - ): Result; - - events: {}; -} - -export interface MultipleOwnerECDSAValidator extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: MultipleOwnerECDSAValidatorInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - }; - - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - callStatic: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - isModuleType( - typeID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignatureWithSender( - sender: PromiseOrValue, - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onInstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - onUninstall( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/ERC7579/modules/index.ts b/src/sdk/contracts/src/ERC7579/modules/index.ts deleted file mode 100644 index 6d3f51a..0000000 --- a/src/sdk/contracts/src/ERC7579/modules/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { MultipleOwnerECDSAValidator } from "./MultipleOwnerECDSAValidator"; -export type { ERC20SessionKeyValidator } from "./ERC20SessionKeyValidator"; diff --git a/src/sdk/contracts/src/ERC7579/wallet/EtherspotWallet7579.ts b/src/sdk/contracts/src/ERC7579/wallet/EtherspotWallet7579.ts deleted file mode 100644 index 309c53f..0000000 --- a/src/sdk/contracts/src/ERC7579/wallet/EtherspotWallet7579.ts +++ /dev/null @@ -1,1461 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export type PackedUserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - accountGasLimits: PromiseOrValue; - preVerificationGas: PromiseOrValue; - gasFees: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; -}; - -export type PackedUserOperationStructOutput = [ - string, - BigNumber, - string, - string, - string, - BigNumber, - string, - string, - string -] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - accountGasLimits: string; - preVerificationGas: BigNumber; - gasFees: string; - paymasterAndData: string; - signature: string; -}; - -export declare namespace ModuleManager { - export type FallbackHandlerStruct = { - handler: PromiseOrValue; - calltype: PromiseOrValue; - allowedCallers: PromiseOrValue[]; - }; - - export type FallbackHandlerStructOutput = [string, string, string[]] & { - handler: string; - calltype: string; - allowedCallers: string[]; - }; -} - -export interface ModularEtherspotWalletInterface extends utils.Interface { - functions: { - "accountId()": FunctionFragment; - "addGuardian(address)": FunctionFragment; - "addOwner(address)": FunctionFragment; - "changeProposalTimelock(uint256)": FunctionFragment; - "discardCurrentProposal()": FunctionFragment; - "entryPoint()": FunctionFragment; - "execute(bytes32,bytes)": FunctionFragment; - "executeFromExecutor(bytes32,bytes)": FunctionFragment; - "executeUserOp((address,uint256,bytes,bytes,bytes32,uint256,bytes32,bytes,bytes))": FunctionFragment; - "getActiveFallbackHandler(bytes4)": FunctionFragment; - "getActiveHook()": FunctionFragment; - "getExecutorsPaginated(address,uint256)": FunctionFragment; - "getProposal(uint256)": FunctionFragment; - "getValidatorPaginated(address,uint256)": FunctionFragment; - "guardianCosign()": FunctionFragment; - "guardianCount()": FunctionFragment; - "guardianPropose(address)": FunctionFragment; - "implementation()": FunctionFragment; - "initializeAccount(bytes)": FunctionFragment; - "installModule(uint256,address,bytes)": FunctionFragment; - "isGuardian(address)": FunctionFragment; - "isModuleInstalled(uint256,address,bytes)": FunctionFragment; - "isOwner(address)": FunctionFragment; - "isValidSignature(bytes32,bytes)": FunctionFragment; - "ownerCount()": FunctionFragment; - "proposalId()": FunctionFragment; - "proposalTimelock()": FunctionFragment; - "removeGuardian(address)": FunctionFragment; - "removeOwner(address)": FunctionFragment; - "supportsExecutionMode(bytes32)": FunctionFragment; - "supportsModule(uint256)": FunctionFragment; - "uninstallModule(uint256,address,bytes)": FunctionFragment; - "validateUserOp((address,uint256,bytes,bytes,bytes32,uint256,bytes32,bytes,bytes),bytes32,uint256)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "accountId" - | "addGuardian" - | "addOwner" - | "changeProposalTimelock" - | "discardCurrentProposal" - | "entryPoint" - | "execute" - | "executeFromExecutor" - | "executeUserOp" - | "getActiveFallbackHandler" - | "getActiveHook" - | "getExecutorsPaginated" - | "getProposal" - | "getValidatorPaginated" - | "guardianCosign" - | "guardianCount" - | "guardianPropose" - | "implementation" - | "initializeAccount" - | "installModule" - | "isGuardian" - | "isModuleInstalled" - | "isOwner" - | "isValidSignature" - | "ownerCount" - | "proposalId" - | "proposalTimelock" - | "removeGuardian" - | "removeOwner" - | "supportsExecutionMode" - | "supportsModule" - | "uninstallModule" - | "validateUserOp" - ): FunctionFragment; - - encodeFunctionData(functionFragment: "accountId", values?: undefined): string; - encodeFunctionData( - functionFragment: "addGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "addOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "changeProposalTimelock", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "discardCurrentProposal", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "entryPoint", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "execute", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "executeFromExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "executeUserOp", - values: [PackedUserOperationStruct] - ): string; - encodeFunctionData( - functionFragment: "getActiveFallbackHandler", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getActiveHook", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getExecutorsPaginated", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getProposal", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getValidatorPaginated", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "guardianCosign", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "guardianCount", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "guardianPropose", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "implementation", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "initializeAccount", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installModule", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "isGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isModuleInstalled", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "isOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidSignature", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "ownerCount", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "proposalId", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "proposalTimelock", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "removeGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "removeOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "supportsExecutionMode", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "supportsModule", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallModule", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "validateUserOp", - values: [ - PackedUserOperationStruct, - PromiseOrValue, - PromiseOrValue - ] - ): string; - - decodeFunctionResult(functionFragment: "accountId", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "addGuardian", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "addOwner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "changeProposalTimelock", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "discardCurrentProposal", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "executeFromExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeUserOp", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getActiveFallbackHandler", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getActiveHook", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getExecutorsPaginated", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getProposal", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getValidatorPaginated", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianCosign", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianCount", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianPropose", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "implementation", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "initializeAccount", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installModule", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "isGuardian", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "isModuleInstalled", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "isValidSignature", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "ownerCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "proposalId", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "proposalTimelock", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeGuardian", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "supportsExecutionMode", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "supportsModule", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallModule", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "validateUserOp", - data: BytesLike - ): Result; - - events: { - "GuardianAdded(address,address)": EventFragment; - "GuardianRemoved(address,address)": EventFragment; - "ModuleInstalled(uint256,address)": EventFragment; - "ModuleUninstalled(uint256,address)": EventFragment; - "OwnerAdded(address,address)": EventFragment; - "OwnerRemoved(address,address)": EventFragment; - "ProposalDiscarded(address,uint256,address)": EventFragment; - "ProposalSubmitted(address,uint256,address,address)": EventFragment; - "QuorumNotReached(address,uint256,address,uint256)": EventFragment; - "TryExecuteUnsuccessful(uint256,bytes)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "GuardianAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "GuardianRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ModuleInstalled"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ModuleUninstalled"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalDiscarded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalSubmitted"): EventFragment; - getEvent(nameOrSignatureOrTopic: "QuorumNotReached"): EventFragment; - getEvent(nameOrSignatureOrTopic: "TryExecuteUnsuccessful"): EventFragment; -} - -export interface GuardianAddedEventObject { - account: string; - newGuardian: string; -} -export type GuardianAddedEvent = TypedEvent< - [string, string], - GuardianAddedEventObject ->; - -export type GuardianAddedEventFilter = TypedEventFilter; - -export interface GuardianRemovedEventObject { - account: string; - removedGuardian: string; -} -export type GuardianRemovedEvent = TypedEvent< - [string, string], - GuardianRemovedEventObject ->; - -export type GuardianRemovedEventFilter = TypedEventFilter; - -export interface ModuleInstalledEventObject { - moduleTypeId: BigNumber; - module: string; -} -export type ModuleInstalledEvent = TypedEvent< - [BigNumber, string], - ModuleInstalledEventObject ->; - -export type ModuleInstalledEventFilter = TypedEventFilter; - -export interface ModuleUninstalledEventObject { - moduleTypeId: BigNumber; - module: string; -} -export type ModuleUninstalledEvent = TypedEvent< - [BigNumber, string], - ModuleUninstalledEventObject ->; - -export type ModuleUninstalledEventFilter = - TypedEventFilter; - -export interface OwnerAddedEventObject { - account: string; - newOwner: string; -} -export type OwnerAddedEvent = TypedEvent< - [string, string], - OwnerAddedEventObject ->; - -export type OwnerAddedEventFilter = TypedEventFilter; - -export interface OwnerRemovedEventObject { - account: string; - removedOwner: string; -} -export type OwnerRemovedEvent = TypedEvent< - [string, string], - OwnerRemovedEventObject ->; - -export type OwnerRemovedEventFilter = TypedEventFilter; - -export interface ProposalDiscardedEventObject { - account: string; - proposalId: BigNumber; - discardedBy: string; -} -export type ProposalDiscardedEvent = TypedEvent< - [string, BigNumber, string], - ProposalDiscardedEventObject ->; - -export type ProposalDiscardedEventFilter = - TypedEventFilter; - -export interface ProposalSubmittedEventObject { - account: string; - proposalId: BigNumber; - newOwnerProposed: string; - proposer: string; -} -export type ProposalSubmittedEvent = TypedEvent< - [string, BigNumber, string, string], - ProposalSubmittedEventObject ->; - -export type ProposalSubmittedEventFilter = - TypedEventFilter; - -export interface QuorumNotReachedEventObject { - account: string; - proposalId: BigNumber; - newOwnerProposed: string; - approvalCount: BigNumber; -} -export type QuorumNotReachedEvent = TypedEvent< - [string, BigNumber, string, BigNumber], - QuorumNotReachedEventObject ->; - -export type QuorumNotReachedEventFilter = - TypedEventFilter; - -export interface TryExecuteUnsuccessfulEventObject { - batchExecutionindex: BigNumber; - result: string; -} -export type TryExecuteUnsuccessfulEvent = TypedEvent< - [BigNumber, string], - TryExecuteUnsuccessfulEventObject ->; - -export type TryExecuteUnsuccessfulEventFilter = - TypedEventFilter; - -export interface ModularEtherspotWallet extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: ModularEtherspotWalletInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - accountId(overrides?: CallOverrides): Promise<[string]>; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise<[string]>; - - execute( - mode: PromiseOrValue, - executionCalldata: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - mode: PromiseOrValue, - executionCalldata: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeUserOp( - userOp: PackedUserOperationStruct, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getActiveFallbackHandler( - functionSig: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[ModuleManager.FallbackHandlerStructOutput]>; - - getActiveHook( - overrides?: CallOverrides - ): Promise<[string] & { hook: string }>; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise<[BigNumber]>; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - implementation(overrides?: CallOverrides): Promise<[string]>; - - initializeAccount( - data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - installModule( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - initData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isModuleInstalled( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - additionalContext: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isValidSignature( - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - ownerCount(overrides?: CallOverrides): Promise<[BigNumber]>; - - proposalId(overrides?: CallOverrides): Promise<[BigNumber]>; - - proposalTimelock(overrides?: CallOverrides): Promise<[BigNumber]>; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - supportsExecutionMode( - mode: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean] & { isSupported: boolean }>; - - supportsModule( - modulTypeId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - uninstallModule( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - deInitData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: PackedUserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - accountId(overrides?: CallOverrides): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - execute( - mode: PromiseOrValue, - executionCalldata: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - mode: PromiseOrValue, - executionCalldata: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeUserOp( - userOp: PackedUserOperationStruct, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getActiveFallbackHandler( - functionSig: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getActiveHook(overrides?: CallOverrides): Promise; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - implementation(overrides?: CallOverrides): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - installModule( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - initData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isModuleInstalled( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - additionalContext: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - supportsExecutionMode( - mode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsModule( - modulTypeId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallModule( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - deInitData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: PackedUserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - accountId(overrides?: CallOverrides): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - discardCurrentProposal(overrides?: CallOverrides): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - execute( - mode: PromiseOrValue, - executionCalldata: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeFromExecutor( - mode: PromiseOrValue, - executionCalldata: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeUserOp( - userOp: PackedUserOperationStruct, - overrides?: CallOverrides - ): Promise; - - getActiveFallbackHandler( - functionSig: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getActiveHook(overrides?: CallOverrides): Promise; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - guardianCosign(overrides?: CallOverrides): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - implementation(overrides?: CallOverrides): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installModule( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - initData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isModuleInstalled( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - additionalContext: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsExecutionMode( - mode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsModule( - modulTypeId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallModule( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - deInitData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - validateUserOp( - userOp: PackedUserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "GuardianAdded(address,address)"( - account?: null, - newGuardian?: null - ): GuardianAddedEventFilter; - GuardianAdded(account?: null, newGuardian?: null): GuardianAddedEventFilter; - - "GuardianRemoved(address,address)"( - account?: null, - removedGuardian?: null - ): GuardianRemovedEventFilter; - GuardianRemoved( - account?: null, - removedGuardian?: null - ): GuardianRemovedEventFilter; - - "ModuleInstalled(uint256,address)"( - moduleTypeId?: null, - module?: null - ): ModuleInstalledEventFilter; - ModuleInstalled( - moduleTypeId?: null, - module?: null - ): ModuleInstalledEventFilter; - - "ModuleUninstalled(uint256,address)"( - moduleTypeId?: null, - module?: null - ): ModuleUninstalledEventFilter; - ModuleUninstalled( - moduleTypeId?: null, - module?: null - ): ModuleUninstalledEventFilter; - - "OwnerAdded(address,address)"( - account?: null, - newOwner?: null - ): OwnerAddedEventFilter; - OwnerAdded(account?: null, newOwner?: null): OwnerAddedEventFilter; - - "OwnerRemoved(address,address)"( - account?: null, - removedOwner?: null - ): OwnerRemovedEventFilter; - OwnerRemoved(account?: null, removedOwner?: null): OwnerRemovedEventFilter; - - "ProposalDiscarded(address,uint256,address)"( - account?: null, - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - ProposalDiscarded( - account?: null, - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - - "ProposalSubmitted(address,uint256,address,address)"( - account?: null, - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - ProposalSubmitted( - account?: null, - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - - "QuorumNotReached(address,uint256,address,uint256)"( - account?: null, - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - QuorumNotReached( - account?: null, - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - - "TryExecuteUnsuccessful(uint256,bytes)"( - batchExecutionindex?: null, - result?: null - ): TryExecuteUnsuccessfulEventFilter; - TryExecuteUnsuccessful( - batchExecutionindex?: null, - result?: null - ): TryExecuteUnsuccessfulEventFilter; - }; - - estimateGas: { - accountId(overrides?: CallOverrides): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - execute( - mode: PromiseOrValue, - executionCalldata: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - mode: PromiseOrValue, - executionCalldata: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeUserOp( - userOp: PackedUserOperationStruct, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getActiveFallbackHandler( - functionSig: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getActiveHook(overrides?: CallOverrides): Promise; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - implementation(overrides?: CallOverrides): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - installModule( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - initData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isModuleInstalled( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - additionalContext: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - supportsExecutionMode( - mode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsModule( - modulTypeId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallModule( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - deInitData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: PackedUserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - accountId(overrides?: CallOverrides): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - execute( - mode: PromiseOrValue, - executionCalldata: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - mode: PromiseOrValue, - executionCalldata: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeUserOp( - userOp: PackedUserOperationStruct, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getActiveFallbackHandler( - functionSig: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getActiveHook(overrides?: CallOverrides): Promise; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - implementation(overrides?: CallOverrides): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - installModule( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - initData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isModuleInstalled( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - additionalContext: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - supportsExecutionMode( - mode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsModule( - modulTypeId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallModule( - moduleTypeId: PromiseOrValue, - module: PromiseOrValue, - deInitData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: PackedUserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; -} \ No newline at end of file diff --git a/src/sdk/contracts/src/ERC7579/wallet/EtherspotWallet7579Base.ts b/src/sdk/contracts/src/ERC7579/wallet/EtherspotWallet7579Base.ts deleted file mode 100644 index 36f91ce..0000000 --- a/src/sdk/contracts/src/ERC7579/wallet/EtherspotWallet7579Base.ts +++ /dev/null @@ -1,1062 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export declare namespace IExecution { - export type ExecutionStruct = { - target: PromiseOrValue; - value: PromiseOrValue; - callData: PromiseOrValue; - }; - - export type ExecutionStructOutput = [string, BigNumber, string] & { - target: string; - value: BigNumber; - callData: string; - }; -} - -export declare namespace IERC4337 { - export type UserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - callGasLimit: PromiseOrValue; - verificationGasLimit: PromiseOrValue; - preVerificationGas: PromiseOrValue; - maxFeePerGas: PromiseOrValue; - maxPriorityFeePerGas: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; - }; - - export type UserOperationStructOutput = [ - string, - BigNumber, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - string - ] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - callGasLimit: BigNumber; - verificationGasLimit: BigNumber; - preVerificationGas: BigNumber; - maxFeePerGas: BigNumber; - maxPriorityFeePerGas: BigNumber; - paymasterAndData: string; - signature: string; - }; -} - -export interface EtherspotWallet7579BaseInterface extends utils.Interface { - functions: { - "entryPoint()": FunctionFragment; - "execute(address,uint256,bytes)": FunctionFragment; - "executeBatch((address,uint256,bytes)[])": FunctionFragment; - "executeBatchFromExecutor((address,uint256,bytes)[])": FunctionFragment; - "executeDelegateCall(address,bytes)": FunctionFragment; - "executeDelegateCallFromExecutor(address,bytes)": FunctionFragment; - "executeFromExecutor(address,uint256,bytes)": FunctionFragment; - "getExecutorsPaginated(address,uint256)": FunctionFragment; - "getValidatorPaginated(address,uint256)": FunctionFragment; - "initializeAccount(bytes)": FunctionFragment; - "installExecutor(address,bytes)": FunctionFragment; - "installFallback(address,bytes)": FunctionFragment; - "installValidator(address,bytes)": FunctionFragment; - "isExecutorInstalled(address)": FunctionFragment; - "isFallbackInstalled(address)": FunctionFragment; - "isValidSignature(bytes32,bytes)": FunctionFragment; - "isValidatorInstalled(address)": FunctionFragment; - "supportsInterface(bytes4)": FunctionFragment; - "uninstallExecutor(address,bytes)": FunctionFragment; - "uninstallFallback(address,bytes)": FunctionFragment; - "uninstallValidator(address,bytes)": FunctionFragment; - "validateUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "entryPoint" - | "execute" - | "executeBatch" - | "executeBatchFromExecutor" - | "executeDelegateCall" - | "executeDelegateCallFromExecutor" - | "executeFromExecutor" - | "getExecutorsPaginated" - | "getValidatorPaginated" - | "initializeAccount" - | "installExecutor" - | "installFallback" - | "installValidator" - | "isExecutorInstalled" - | "isFallbackInstalled" - | "isValidSignature" - | "isValidatorInstalled" - | "supportsInterface" - | "uninstallExecutor" - | "uninstallFallback" - | "uninstallValidator" - | "validateUserOp" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "entryPoint", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "execute", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "executeBatch", - values: [IExecution.ExecutionStruct[]] - ): string; - encodeFunctionData( - functionFragment: "executeBatchFromExecutor", - values: [IExecution.ExecutionStruct[]] - ): string; - encodeFunctionData( - functionFragment: "executeDelegateCall", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "executeDelegateCallFromExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "executeFromExecutor", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "getExecutorsPaginated", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getValidatorPaginated", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "initializeAccount", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "installValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isExecutorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isFallbackInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidSignature", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidatorInstalled", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "supportsInterface", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallExecutor", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallFallback", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "uninstallValidator", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "validateUserOp", - values: [ - IERC4337.UserOperationStruct, - PromiseOrValue, - PromiseOrValue - ] - ): string; - - decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "executeBatch", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeBatchFromExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeDelegateCall", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeDelegateCallFromExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeFromExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getExecutorsPaginated", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getValidatorPaginated", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "initializeAccount", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "installValidator", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isExecutorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isFallbackInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isValidSignature", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isValidatorInstalled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "supportsInterface", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallExecutor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallFallback", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uninstallValidator", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "validateUserOp", - data: BytesLike - ): Result; - - events: { - "DisableExecutor(address)": EventFragment; - "DisableValidator(address)": EventFragment; - "EnableExecutor(address)": EventFragment; - "EnableValidator(address)": EventFragment; - "FallbackHandlerChanged(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "DisableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "DisableValidator"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableExecutor"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EnableValidator"): EventFragment; - getEvent(nameOrSignatureOrTopic: "FallbackHandlerChanged"): EventFragment; -} - -export interface DisableExecutorEventObject { - module: string; -} -export type DisableExecutorEvent = TypedEvent< - [string], - DisableExecutorEventObject ->; - -export type DisableExecutorEventFilter = TypedEventFilter; - -export interface DisableValidatorEventObject { - module: string; -} -export type DisableValidatorEvent = TypedEvent< - [string], - DisableValidatorEventObject ->; - -export type DisableValidatorEventFilter = - TypedEventFilter; - -export interface EnableExecutorEventObject { - module: string; -} -export type EnableExecutorEvent = TypedEvent< - [string], - EnableExecutorEventObject ->; - -export type EnableExecutorEventFilter = TypedEventFilter; - -export interface EnableValidatorEventObject { - module: string; -} -export type EnableValidatorEvent = TypedEvent< - [string], - EnableValidatorEventObject ->; - -export type EnableValidatorEventFilter = TypedEventFilter; - -export interface FallbackHandlerChangedEventObject { - handler: string; -} -export type FallbackHandlerChangedEvent = TypedEvent< - [string], - FallbackHandlerChangedEventObject ->; - -export type FallbackHandlerChangedEventFilter = - TypedEventFilter; - -export interface EtherspotWallet7579Base extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: EtherspotWallet7579BaseInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - entryPoint(overrides?: CallOverrides): Promise<[string]>; - - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - initializeAccount( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean] & { enabled: boolean }>; - - isValidSignature( - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - supportsInterface( - interfaceID: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - arg0: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - entryPoint(overrides?: CallOverrides): Promise; - - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - initializeAccount( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - arg0: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - entryPoint(overrides?: CallOverrides): Promise; - - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: CallOverrides - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: CallOverrides - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], string] & { array: string[]; next: string }>; - - initializeAccount( - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallFallback( - arg0: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "DisableExecutor(address)"(module?: null): DisableExecutorEventFilter; - DisableExecutor(module?: null): DisableExecutorEventFilter; - - "DisableValidator(address)"(module?: null): DisableValidatorEventFilter; - DisableValidator(module?: null): DisableValidatorEventFilter; - - "EnableExecutor(address)"(module?: null): EnableExecutorEventFilter; - EnableExecutor(module?: null): EnableExecutorEventFilter; - - "EnableValidator(address)"(module?: null): EnableValidatorEventFilter; - EnableValidator(module?: null): EnableValidatorEventFilter; - - "FallbackHandlerChanged(address)"( - handler?: null - ): FallbackHandlerChangedEventFilter; - FallbackHandlerChanged(handler?: null): FallbackHandlerChangedEventFilter; - }; - - estimateGas: { - entryPoint(overrides?: CallOverrides): Promise; - - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - arg0: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - entryPoint(overrides?: CallOverrides): Promise; - - execute( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeBatchFromExecutor( - executions: IExecution.ExecutionStruct[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCall( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeDelegateCallFromExecutor( - target: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - executeFromExecutor( - target: PromiseOrValue, - value: PromiseOrValue, - callData: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getExecutorsPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getValidatorPaginated( - cursor: PromiseOrValue, - size: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - initializeAccount( - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installFallback( - fallbackHandler: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - installValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isExecutorInstalled( - executor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isFallbackInstalled( - fallbackHandler: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidatorInstalled( - validator: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceID: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - uninstallExecutor( - executor: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallFallback( - arg0: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - uninstallValidator( - validator: PromiseOrValue, - data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: IERC4337.UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/ERC7579/wallet/EtherspotWallet7579Factory.ts b/src/sdk/contracts/src/ERC7579/wallet/EtherspotWallet7579Factory.ts deleted file mode 100644 index d2a9449..0000000 --- a/src/sdk/contracts/src/ERC7579/wallet/EtherspotWallet7579Factory.ts +++ /dev/null @@ -1,207 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export interface EtherspotWallet7579FactoryInterface extends utils.Interface { - functions: { - "_getSalt(bytes32,bytes)": FunctionFragment; - "createAccount(bytes32,bytes)": FunctionFragment; - "getAddress(bytes32,bytes)": FunctionFragment; - "implementation()": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "_getSalt" - | "createAccount" - | "getAddress" - | "implementation" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "_getSalt", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "createAccount", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getAddress", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "implementation", - values?: undefined - ): string; - - decodeFunctionResult(functionFragment: "_getSalt", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "createAccount", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "getAddress", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "implementation", - data: BytesLike - ): Result; - - events: {}; -} - -export interface EtherspotWallet7579Factory extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: EtherspotWallet7579FactoryInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - _getSalt( - _salt: PromiseOrValue, - initCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string] & { salt: string }>; - - createAccount( - salt: PromiseOrValue, - initCode: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getAddress( - salt: PromiseOrValue, - initcode: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - implementation(overrides?: CallOverrides): Promise<[string]>; - }; - - _getSalt( - _salt: PromiseOrValue, - initCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - createAccount( - salt: PromiseOrValue, - initCode: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getAddress( - salt: PromiseOrValue, - initcode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - implementation(overrides?: CallOverrides): Promise; - - callStatic: { - _getSalt( - _salt: PromiseOrValue, - initCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - createAccount( - salt: PromiseOrValue, - initCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getAddress( - salt: PromiseOrValue, - initcode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - implementation(overrides?: CallOverrides): Promise; - }; - - filters: {}; - - estimateGas: { - _getSalt( - _salt: PromiseOrValue, - initCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - createAccount( - salt: PromiseOrValue, - initCode: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getAddress( - salt: PromiseOrValue, - initcode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - implementation(overrides?: CallOverrides): Promise; - }; - - populateTransaction: { - _getSalt( - _salt: PromiseOrValue, - initCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - createAccount( - salt: PromiseOrValue, - initCode: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getAddress( - salt: PromiseOrValue, - initcode: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - implementation(overrides?: CallOverrides): Promise; - }; -} diff --git a/src/sdk/contracts/src/ERC7579/wallet/index.ts b/src/sdk/contracts/src/ERC7579/wallet/index.ts deleted file mode 100644 index 75bff88..0000000 --- a/src/sdk/contracts/src/ERC7579/wallet/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { ModularEtherspotWallet } from "./EtherspotWallet7579"; -export type { EtherspotWallet7579Base } from "./EtherspotWallet7579Base"; -export type { EtherspotWallet7579Factory } from "./EtherspotWallet7579Factory"; diff --git a/src/sdk/contracts/src/access/AccessController.ts b/src/sdk/contracts/src/access/AccessController.ts deleted file mode 100644 index 72b3757..0000000 --- a/src/sdk/contracts/src/access/AccessController.ts +++ /dev/null @@ -1,688 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../common"; - -export interface AccessControllerInterface extends utils.Interface { - functions: { - "addGuardian(address)": FunctionFragment; - "addOwner(address)": FunctionFragment; - "changeProposalTimelock(uint256)": FunctionFragment; - "discardCurrentProposal()": FunctionFragment; - "getProposal(uint256)": FunctionFragment; - "guardianCosign()": FunctionFragment; - "guardianCount()": FunctionFragment; - "guardianPropose(address)": FunctionFragment; - "isGuardian(address)": FunctionFragment; - "isOwner(address)": FunctionFragment; - "ownerCount()": FunctionFragment; - "proposalId()": FunctionFragment; - "proposalTimelock()": FunctionFragment; - "removeGuardian(address)": FunctionFragment; - "removeOwner(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addGuardian" - | "addOwner" - | "changeProposalTimelock" - | "discardCurrentProposal" - | "getProposal" - | "guardianCosign" - | "guardianCount" - | "guardianPropose" - | "isGuardian" - | "isOwner" - | "ownerCount" - | "proposalId" - | "proposalTimelock" - | "removeGuardian" - | "removeOwner" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "addOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "changeProposalTimelock", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "discardCurrentProposal", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getProposal", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "guardianCosign", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "guardianCount", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "guardianPropose", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "ownerCount", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "proposalId", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "proposalTimelock", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "removeGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "removeOwner", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "addGuardian", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "addOwner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "changeProposalTimelock", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "discardCurrentProposal", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getProposal", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianCosign", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianCount", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianPropose", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "isGuardian", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "proposalId", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "proposalTimelock", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeGuardian", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeOwner", - data: BytesLike - ): Result; - - events: { - "GuardianAdded(address)": EventFragment; - "GuardianRemoved(address)": EventFragment; - "OwnerAdded(address)": EventFragment; - "OwnerRemoved(address)": EventFragment; - "ProposalDiscarded(uint256,address)": EventFragment; - "ProposalSubmitted(uint256,address,address)": EventFragment; - "ProposalTimelockChanged(uint256)": EventFragment; - "QuorumNotReached(uint256,address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "GuardianAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "GuardianRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalDiscarded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalSubmitted"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalTimelockChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "QuorumNotReached"): EventFragment; -} - -export interface GuardianAddedEventObject { - newGuardian: string; -} -export type GuardianAddedEvent = TypedEvent<[string], GuardianAddedEventObject>; - -export type GuardianAddedEventFilter = TypedEventFilter; - -export interface GuardianRemovedEventObject { - removedGuardian: string; -} -export type GuardianRemovedEvent = TypedEvent< - [string], - GuardianRemovedEventObject ->; - -export type GuardianRemovedEventFilter = TypedEventFilter; - -export interface OwnerAddedEventObject { - newOwner: string; -} -export type OwnerAddedEvent = TypedEvent<[string], OwnerAddedEventObject>; - -export type OwnerAddedEventFilter = TypedEventFilter; - -export interface OwnerRemovedEventObject { - removedOwner: string; -} -export type OwnerRemovedEvent = TypedEvent<[string], OwnerRemovedEventObject>; - -export type OwnerRemovedEventFilter = TypedEventFilter; - -export interface ProposalDiscardedEventObject { - proposalId: BigNumber; - discardedBy: string; -} -export type ProposalDiscardedEvent = TypedEvent< - [BigNumber, string], - ProposalDiscardedEventObject ->; - -export type ProposalDiscardedEventFilter = - TypedEventFilter; - -export interface ProposalSubmittedEventObject { - proposalId: BigNumber; - newOwnerProposed: string; - proposer: string; -} -export type ProposalSubmittedEvent = TypedEvent< - [BigNumber, string, string], - ProposalSubmittedEventObject ->; - -export type ProposalSubmittedEventFilter = - TypedEventFilter; - -export interface ProposalTimelockChangedEventObject { - newTimelock: BigNumber; -} -export type ProposalTimelockChangedEvent = TypedEvent< - [BigNumber], - ProposalTimelockChangedEventObject ->; - -export type ProposalTimelockChangedEventFilter = - TypedEventFilter; - -export interface QuorumNotReachedEventObject { - proposalId: BigNumber; - newOwnerProposed: string; - approvalCount: BigNumber; -} -export type QuorumNotReachedEvent = TypedEvent< - [BigNumber, string, BigNumber], - QuorumNotReachedEventObject ->; - -export type QuorumNotReachedEventFilter = - TypedEventFilter; - -export interface AccessController extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: AccessControllerInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise<[BigNumber]>; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - ownerCount(overrides?: CallOverrides): Promise<[BigNumber]>; - - proposalId(overrides?: CallOverrides): Promise<[BigNumber]>; - - proposalTimelock(overrides?: CallOverrides): Promise<[BigNumber]>; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - discardCurrentProposal(overrides?: CallOverrides): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign(overrides?: CallOverrides): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "GuardianAdded(address)"(newGuardian?: null): GuardianAddedEventFilter; - GuardianAdded(newGuardian?: null): GuardianAddedEventFilter; - - "GuardianRemoved(address)"( - removedGuardian?: null - ): GuardianRemovedEventFilter; - GuardianRemoved(removedGuardian?: null): GuardianRemovedEventFilter; - - "OwnerAdded(address)"(newOwner?: null): OwnerAddedEventFilter; - OwnerAdded(newOwner?: null): OwnerAddedEventFilter; - - "OwnerRemoved(address)"(removedOwner?: null): OwnerRemovedEventFilter; - OwnerRemoved(removedOwner?: null): OwnerRemovedEventFilter; - - "ProposalDiscarded(uint256,address)"( - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - ProposalDiscarded( - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - - "ProposalSubmitted(uint256,address,address)"( - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - ProposalSubmitted( - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - - "ProposalTimelockChanged(uint256)"( - newTimelock?: null - ): ProposalTimelockChangedEventFilter; - ProposalTimelockChanged( - newTimelock?: null - ): ProposalTimelockChangedEventFilter; - - "QuorumNotReached(uint256,address,uint256)"( - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - QuorumNotReached( - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - }; - - estimateGas: { - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/access/index.ts b/src/sdk/contracts/src/access/index.ts deleted file mode 100644 index bc397b1..0000000 --- a/src/sdk/contracts/src/access/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { AccessController } from "./AccessController"; diff --git a/src/sdk/contracts/src/helpers/UniversalSignatureValidator.sol/UniversalSigValidator.ts b/src/sdk/contracts/src/helpers/UniversalSignatureValidator.sol/UniversalSigValidator.ts deleted file mode 100644 index 858e345..0000000 --- a/src/sdk/contracts/src/helpers/UniversalSignatureValidator.sol/UniversalSigValidator.ts +++ /dev/null @@ -1,223 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export interface UniversalSigValidatorInterface extends utils.Interface { - functions: { - "isValidSig(address,bytes32,bytes)": FunctionFragment; - "isValidSigImpl(address,bytes32,bytes,bool)": FunctionFragment; - "isValidSigWithSideEffects(address,bytes32,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "isValidSig" - | "isValidSigImpl" - | "isValidSigWithSideEffects" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "isValidSig", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "isValidSigImpl", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "isValidSigWithSideEffects", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - - decodeFunctionResult(functionFragment: "isValidSig", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "isValidSigImpl", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isValidSigWithSideEffects", - data: BytesLike - ): Result; - - events: {}; -} - -export interface UniversalSigValidator extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: UniversalSigValidatorInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - isValidSig( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isValidSigImpl( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - allowSideEffects: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isValidSigWithSideEffects( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - isValidSig( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isValidSigImpl( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - allowSideEffects: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isValidSigWithSideEffects( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - isValidSig( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSigImpl( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - allowSideEffects: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSigWithSideEffects( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - isValidSig( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isValidSigImpl( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - allowSideEffects: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isValidSigWithSideEffects( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - isValidSig( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isValidSigImpl( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - allowSideEffects: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isValidSigWithSideEffects( - _signer: PromiseOrValue, - _hash: PromiseOrValue, - _signature: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/helpers/UniversalSignatureValidator.sol/ValidateSigOffchain.ts b/src/sdk/contracts/src/helpers/UniversalSignatureValidator.sol/ValidateSigOffchain.ts deleted file mode 100644 index f1b46aa..0000000 --- a/src/sdk/contracts/src/helpers/UniversalSignatureValidator.sol/ValidateSigOffchain.ts +++ /dev/null @@ -1,56 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { BaseContract, Signer, utils } from "ethers"; - -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export interface ValidateSigOffchainInterface extends utils.Interface { - functions: {}; - - events: {}; -} - -export interface ValidateSigOffchain extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: ValidateSigOffchainInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: {}; - - callStatic: {}; - - filters: {}; - - estimateGas: {}; - - populateTransaction: {}; -} diff --git a/src/sdk/contracts/src/helpers/UniversalSignatureValidator.sol/index.ts b/src/sdk/contracts/src/helpers/UniversalSignatureValidator.sol/index.ts deleted file mode 100644 index b6f6b4b..0000000 --- a/src/sdk/contracts/src/helpers/UniversalSignatureValidator.sol/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { UniversalSigValidator } from "./UniversalSigValidator"; -export type { ValidateSigOffchain } from "./ValidateSigOffchain"; diff --git a/src/sdk/contracts/src/helpers/index.ts b/src/sdk/contracts/src/helpers/index.ts deleted file mode 100644 index 523206a..0000000 --- a/src/sdk/contracts/src/helpers/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as universalSignatureValidatorSol from "./UniversalSignatureValidator.sol"; -export type { universalSignatureValidatorSol }; diff --git a/src/sdk/contracts/src/index.ts b/src/sdk/contracts/src/index.ts deleted file mode 100644 index 109e668..0000000 --- a/src/sdk/contracts/src/index.ts +++ /dev/null @@ -1,13 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type * as access from "./access"; -export type { access }; -import type * as helpers from "./helpers"; -export type { helpers }; -import type * as interfaces from "./interfaces"; -export type { interfaces }; -import type * as paymaster from "./paymaster"; -export type { paymaster }; -import type * as wallet from "./wallet"; -export type { wallet }; diff --git a/src/sdk/contracts/src/interfaces/IAccessController.ts b/src/sdk/contracts/src/interfaces/IAccessController.ts deleted file mode 100644 index a26df34..0000000 --- a/src/sdk/contracts/src/interfaces/IAccessController.ts +++ /dev/null @@ -1,614 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../common"; - -export interface IAccessControllerInterface extends utils.Interface { - functions: { - "addGuardian(address)": FunctionFragment; - "addOwner(address)": FunctionFragment; - "changeProposalTimelock(uint256)": FunctionFragment; - "discardCurrentProposal()": FunctionFragment; - "getProposal(uint256)": FunctionFragment; - "guardianCosign()": FunctionFragment; - "guardianPropose(address)": FunctionFragment; - "isGuardian(address)": FunctionFragment; - "isOwner(address)": FunctionFragment; - "removeGuardian(address)": FunctionFragment; - "removeOwner(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addGuardian" - | "addOwner" - | "changeProposalTimelock" - | "discardCurrentProposal" - | "getProposal" - | "guardianCosign" - | "guardianPropose" - | "isGuardian" - | "isOwner" - | "removeGuardian" - | "removeOwner" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "addOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "changeProposalTimelock", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "discardCurrentProposal", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getProposal", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "guardianCosign", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "guardianPropose", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "removeGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "removeOwner", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "addGuardian", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "addOwner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "changeProposalTimelock", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "discardCurrentProposal", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getProposal", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianCosign", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianPropose", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "isGuardian", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "removeGuardian", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeOwner", - data: BytesLike - ): Result; - - events: { - "GuardianAdded(address)": EventFragment; - "GuardianRemoved(address)": EventFragment; - "OwnerAdded(address)": EventFragment; - "OwnerRemoved(address)": EventFragment; - "ProposalDiscarded(uint256,address)": EventFragment; - "ProposalSubmitted(uint256,address,address)": EventFragment; - "ProposalTimelockChanged(uint256)": EventFragment; - "QuorumNotReached(uint256,address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "GuardianAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "GuardianRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalDiscarded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalSubmitted"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalTimelockChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "QuorumNotReached"): EventFragment; -} - -export interface GuardianAddedEventObject { - newGuardian: string; -} -export type GuardianAddedEvent = TypedEvent<[string], GuardianAddedEventObject>; - -export type GuardianAddedEventFilter = TypedEventFilter; - -export interface GuardianRemovedEventObject { - removedGuardian: string; -} -export type GuardianRemovedEvent = TypedEvent< - [string], - GuardianRemovedEventObject ->; - -export type GuardianRemovedEventFilter = TypedEventFilter; - -export interface OwnerAddedEventObject { - newOwner: string; -} -export type OwnerAddedEvent = TypedEvent<[string], OwnerAddedEventObject>; - -export type OwnerAddedEventFilter = TypedEventFilter; - -export interface OwnerRemovedEventObject { - removedOwner: string; -} -export type OwnerRemovedEvent = TypedEvent<[string], OwnerRemovedEventObject>; - -export type OwnerRemovedEventFilter = TypedEventFilter; - -export interface ProposalDiscardedEventObject { - proposalId: BigNumber; - discardedBy: string; -} -export type ProposalDiscardedEvent = TypedEvent< - [BigNumber, string], - ProposalDiscardedEventObject ->; - -export type ProposalDiscardedEventFilter = - TypedEventFilter; - -export interface ProposalSubmittedEventObject { - proposalId: BigNumber; - newOwnerProposed: string; - proposer: string; -} -export type ProposalSubmittedEvent = TypedEvent< - [BigNumber, string, string], - ProposalSubmittedEventObject ->; - -export type ProposalSubmittedEventFilter = - TypedEventFilter; - -export interface ProposalTimelockChangedEventObject { - newTimelock: BigNumber; -} -export type ProposalTimelockChangedEvent = TypedEvent< - [BigNumber], - ProposalTimelockChangedEventObject ->; - -export type ProposalTimelockChangedEventFilter = - TypedEventFilter; - -export interface QuorumNotReachedEventObject { - proposalId: BigNumber; - newOwnerProposed: string; - approvalCount: BigNumber; -} -export type QuorumNotReachedEvent = TypedEvent< - [BigNumber, string, BigNumber], - QuorumNotReachedEventObject ->; - -export type QuorumNotReachedEventFilter = - TypedEventFilter; - -export interface IAccessController extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IAccessControllerInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - discardCurrentProposal(overrides?: CallOverrides): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "GuardianAdded(address)"(newGuardian?: null): GuardianAddedEventFilter; - GuardianAdded(newGuardian?: null): GuardianAddedEventFilter; - - "GuardianRemoved(address)"( - removedGuardian?: null - ): GuardianRemovedEventFilter; - GuardianRemoved(removedGuardian?: null): GuardianRemovedEventFilter; - - "OwnerAdded(address)"(newOwner?: null): OwnerAddedEventFilter; - OwnerAdded(newOwner?: null): OwnerAddedEventFilter; - - "OwnerRemoved(address)"(removedOwner?: null): OwnerRemovedEventFilter; - OwnerRemoved(removedOwner?: null): OwnerRemovedEventFilter; - - "ProposalDiscarded(uint256,address)"( - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - ProposalDiscarded( - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - - "ProposalSubmitted(uint256,address,address)"( - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - ProposalSubmitted( - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - - "ProposalTimelockChanged(uint256)"( - newTimelock?: null - ): ProposalTimelockChangedEventFilter; - ProposalTimelockChanged( - newTimelock?: null - ): ProposalTimelockChangedEventFilter; - - "QuorumNotReached(uint256,address,uint256)"( - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - QuorumNotReached( - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - }; - - estimateGas: { - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/interfaces/IERC1271Wallet.ts b/src/sdk/contracts/src/interfaces/IERC1271Wallet.ts deleted file mode 100644 index 88edd66..0000000 --- a/src/sdk/contracts/src/interfaces/IERC1271Wallet.ts +++ /dev/null @@ -1,108 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../common"; - -export interface IERC1271WalletInterface extends utils.Interface { - functions: { - "isValidSignature(bytes32,bytes)": FunctionFragment; - }; - - getFunction(nameOrSignatureOrTopic: "isValidSignature"): FunctionFragment; - - encodeFunctionData( - functionFragment: "isValidSignature", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "isValidSignature", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IERC1271Wallet extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IERC1271WalletInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string] & { magicValue: string }>; - }; - - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - callStatic: { - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/interfaces/IERC721Wallet.sol/IERC1271Wallet.ts b/src/sdk/contracts/src/interfaces/IERC721Wallet.sol/IERC1271Wallet.ts deleted file mode 100644 index e12128e..0000000 --- a/src/sdk/contracts/src/interfaces/IERC721Wallet.sol/IERC1271Wallet.ts +++ /dev/null @@ -1,108 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../../common"; - -export interface IERC1271WalletInterface extends utils.Interface { - functions: { - "isValidSignature(bytes32,bytes)": FunctionFragment; - }; - - getFunction(nameOrSignatureOrTopic: "isValidSignature"): FunctionFragment; - - encodeFunctionData( - functionFragment: "isValidSignature", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "isValidSignature", - data: BytesLike - ): Result; - - events: {}; -} - -export interface IERC1271Wallet extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IERC1271WalletInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string] & { magicValue: string }>; - }; - - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - callStatic: { - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/interfaces/IERC721Wallet.sol/index.ts b/src/sdk/contracts/src/interfaces/IERC721Wallet.sol/index.ts deleted file mode 100644 index d22b4f1..0000000 --- a/src/sdk/contracts/src/interfaces/IERC721Wallet.sol/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { IERC1271Wallet } from "./IERC1271Wallet"; diff --git a/src/sdk/contracts/src/interfaces/IEtherspotPaymaster.ts b/src/sdk/contracts/src/interfaces/IEtherspotPaymaster.ts deleted file mode 100644 index 57d169e..0000000 --- a/src/sdk/contracts/src/interfaces/IEtherspotPaymaster.ts +++ /dev/null @@ -1,824 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../common"; - -export type UserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - callGasLimit: PromiseOrValue; - verificationGasLimit: PromiseOrValue; - preVerificationGas: PromiseOrValue; - maxFeePerGas: PromiseOrValue; - maxPriorityFeePerGas: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; -}; - -export type UserOperationStructOutput = [ - string, - BigNumber, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - string -] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - callGasLimit: BigNumber; - verificationGasLimit: BigNumber; - preVerificationGas: BigNumber; - maxFeePerGas: BigNumber; - maxPriorityFeePerGas: BigNumber; - paymasterAndData: string; - signature: string; -}; - -export interface IEtherspotPaymasterInterface extends utils.Interface { - functions: { - "addBatchToWhitelist(address[])": FunctionFragment; - "addStake(uint32)": FunctionFragment; - "addToWhitelist(address)": FunctionFragment; - "check(address,address)": FunctionFragment; - "depositFunds()": FunctionFragment; - "getDeposit()": FunctionFragment; - "getHash((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),uint48,uint48)": FunctionFragment; - "getSponsorBalance(address)": FunctionFragment; - "parsePaymasterAndData(bytes)": FunctionFragment; - "postOp(uint8,bytes,uint256)": FunctionFragment; - "removeBatchFromWhitelist(address[])": FunctionFragment; - "removeFromWhitelist(address)": FunctionFragment; - "unlockStake()": FunctionFragment; - "validatePaymasterUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)": FunctionFragment; - "withdrawFunds(address,uint256)": FunctionFragment; - "withdrawStake(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addBatchToWhitelist" - | "addStake" - | "addToWhitelist" - | "check" - | "depositFunds" - | "getDeposit" - | "getHash" - | "getSponsorBalance" - | "parsePaymasterAndData" - | "postOp" - | "removeBatchFromWhitelist" - | "removeFromWhitelist" - | "unlockStake" - | "validatePaymasterUserOp" - | "withdrawFunds" - | "withdrawStake" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addBatchToWhitelist", - values: [PromiseOrValue[]] - ): string; - encodeFunctionData( - functionFragment: "addStake", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "addToWhitelist", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "check", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "depositFunds", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getDeposit", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getHash", - values: [ - UserOperationStruct, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "getSponsorBalance", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "parsePaymasterAndData", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "postOp", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "removeBatchFromWhitelist", - values: [PromiseOrValue[]] - ): string; - encodeFunctionData( - functionFragment: "removeFromWhitelist", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "unlockStake", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "validatePaymasterUserOp", - values: [ - UserOperationStruct, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "withdrawFunds", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "withdrawStake", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "addBatchToWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "addStake", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "addToWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "check", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "depositFunds", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "getDeposit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getHash", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getSponsorBalance", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "parsePaymasterAndData", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "postOp", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "removeBatchFromWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeFromWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "unlockStake", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "validatePaymasterUserOp", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "withdrawFunds", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "withdrawStake", - data: BytesLike - ): Result; - - events: { - "AddedBatchToWhitelist(address,address[])": EventFragment; - "AddedToWhitelist(address,address)": EventFragment; - "RemovedBatchFromWhitelist(address,address[])": EventFragment; - "RemovedFromWhitelist(address,address)": EventFragment; - "SponsorSuccessful(address,address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AddedBatchToWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "AddedToWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RemovedBatchFromWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RemovedFromWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SponsorSuccessful"): EventFragment; -} - -export interface AddedBatchToWhitelistEventObject { - paymaster: string; - accounts: string[]; -} -export type AddedBatchToWhitelistEvent = TypedEvent< - [string, string[]], - AddedBatchToWhitelistEventObject ->; - -export type AddedBatchToWhitelistEventFilter = - TypedEventFilter; - -export interface AddedToWhitelistEventObject { - paymaster: string; - account: string; -} -export type AddedToWhitelistEvent = TypedEvent< - [string, string], - AddedToWhitelistEventObject ->; - -export type AddedToWhitelistEventFilter = - TypedEventFilter; - -export interface RemovedBatchFromWhitelistEventObject { - paymaster: string; - accounts: string[]; -} -export type RemovedBatchFromWhitelistEvent = TypedEvent< - [string, string[]], - RemovedBatchFromWhitelistEventObject ->; - -export type RemovedBatchFromWhitelistEventFilter = - TypedEventFilter; - -export interface RemovedFromWhitelistEventObject { - paymaster: string; - account: string; -} -export type RemovedFromWhitelistEvent = TypedEvent< - [string, string], - RemovedFromWhitelistEventObject ->; - -export type RemovedFromWhitelistEventFilter = - TypedEventFilter; - -export interface SponsorSuccessfulEventObject { - paymaster: string; - sender: string; -} -export type SponsorSuccessfulEvent = TypedEvent< - [string, string], - SponsorSuccessfulEventObject ->; - -export type SponsorSuccessfulEventFilter = - TypedEventFilter; - -export interface IEtherspotPaymaster extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IEtherspotPaymasterInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - depositFunds( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise<[BigNumber]>; - - getHash( - userOp: UserOperationStruct, - validUntil: PromiseOrValue, - validAfter: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - getSponsorBalance( - _sponsor: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - parsePaymasterAndData( - paymasterAndData: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [number, number, string] & { - validUntil: number; - validAfter: number; - signature: string; - } - >; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawFunds( - _sponsor: PromiseOrValue, - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositFunds( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getHash( - userOp: UserOperationStruct, - validUntil: PromiseOrValue, - validAfter: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSponsorBalance( - _sponsor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - parsePaymasterAndData( - paymasterAndData: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [number, number, string] & { - validUntil: number; - validAfter: number; - signature: string; - } - >; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawFunds( - _sponsor: PromiseOrValue, - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: CallOverrides - ): Promise; - - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositFunds(overrides?: CallOverrides): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getHash( - userOp: UserOperationStruct, - validUntil: PromiseOrValue, - validAfter: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSponsorBalance( - _sponsor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - parsePaymasterAndData( - paymasterAndData: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [number, number, string] & { - validUntil: number; - validAfter: number; - signature: string; - } - >; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: CallOverrides - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - unlockStake(overrides?: CallOverrides): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber] & { context: string; validationData: BigNumber } - >; - - withdrawFunds( - _sponsor: PromiseOrValue, - _amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AddedBatchToWhitelist(address,address[])"( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): AddedBatchToWhitelistEventFilter; - AddedBatchToWhitelist( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): AddedBatchToWhitelistEventFilter; - - "AddedToWhitelist(address,address)"( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): AddedToWhitelistEventFilter; - AddedToWhitelist( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): AddedToWhitelistEventFilter; - - "RemovedBatchFromWhitelist(address,address[])"( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): RemovedBatchFromWhitelistEventFilter; - RemovedBatchFromWhitelist( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): RemovedBatchFromWhitelistEventFilter; - - "RemovedFromWhitelist(address,address)"( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): RemovedFromWhitelistEventFilter; - RemovedFromWhitelist( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): RemovedFromWhitelistEventFilter; - - "SponsorSuccessful(address,address)"( - paymaster?: null, - sender?: null - ): SponsorSuccessfulEventFilter; - SponsorSuccessful( - paymaster?: null, - sender?: null - ): SponsorSuccessfulEventFilter; - }; - - estimateGas: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositFunds( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getHash( - userOp: UserOperationStruct, - validUntil: PromiseOrValue, - validAfter: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSponsorBalance( - _sponsor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - parsePaymasterAndData( - paymasterAndData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawFunds( - _sponsor: PromiseOrValue, - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositFunds( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getHash( - userOp: UserOperationStruct, - validUntil: PromiseOrValue, - validAfter: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSponsorBalance( - _sponsor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - parsePaymasterAndData( - paymasterAndData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawFunds( - _sponsor: PromiseOrValue, - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/interfaces/IEtherspotWallet.ts b/src/sdk/contracts/src/interfaces/IEtherspotWallet.ts deleted file mode 100644 index 6d5456a..0000000 --- a/src/sdk/contracts/src/interfaces/IEtherspotWallet.ts +++ /dev/null @@ -1,895 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../common"; - -export interface IEtherspotWalletInterface extends utils.Interface { - functions: { - "addDeposit()": FunctionFragment; - "addGuardian(address)": FunctionFragment; - "addOwner(address)": FunctionFragment; - "changeProposalTimelock(uint256)": FunctionFragment; - "discardCurrentProposal()": FunctionFragment; - "entryPoint()": FunctionFragment; - "execute(address,uint256,bytes)": FunctionFragment; - "executeBatch(address[],uint256[],bytes[])": FunctionFragment; - "getDeposit()": FunctionFragment; - "getProposal(uint256)": FunctionFragment; - "guardianCosign()": FunctionFragment; - "guardianPropose(address)": FunctionFragment; - "isGuardian(address)": FunctionFragment; - "isOwner(address)": FunctionFragment; - "isValidSignature(bytes32,bytes)": FunctionFragment; - "removeGuardian(address)": FunctionFragment; - "removeOwner(address)": FunctionFragment; - "withdrawDepositTo(address,uint256)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addDeposit" - | "addGuardian" - | "addOwner" - | "changeProposalTimelock" - | "discardCurrentProposal" - | "entryPoint" - | "execute" - | "executeBatch" - | "getDeposit" - | "getProposal" - | "guardianCosign" - | "guardianPropose" - | "isGuardian" - | "isOwner" - | "isValidSignature" - | "removeGuardian" - | "removeOwner" - | "withdrawDepositTo" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addDeposit", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "addGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "addOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "changeProposalTimelock", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "discardCurrentProposal", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "entryPoint", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "execute", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "executeBatch", - values: [ - PromiseOrValue[], - PromiseOrValue[], - PromiseOrValue[] - ] - ): string; - encodeFunctionData( - functionFragment: "getDeposit", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getProposal", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "guardianCosign", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "guardianPropose", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidSignature", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "removeGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "removeOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "withdrawDepositTo", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult(functionFragment: "addDeposit", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "addGuardian", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "addOwner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "changeProposalTimelock", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "discardCurrentProposal", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "executeBatch", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "getDeposit", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getProposal", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianCosign", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianPropose", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "isGuardian", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "isValidSignature", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeGuardian", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "withdrawDepositTo", - data: BytesLike - ): Result; - - events: { - "EtherspotWalletInitialized(address,address)": EventFragment; - "EtherspotWalletReceived(address,uint256)": EventFragment; - "GuardianAdded(address)": EventFragment; - "GuardianRemoved(address)": EventFragment; - "OwnerAdded(address)": EventFragment; - "OwnerRemoved(address)": EventFragment; - "ProposalDiscarded(uint256,address)": EventFragment; - "ProposalSubmitted(uint256,address,address)": EventFragment; - "ProposalTimelockChanged(uint256)": EventFragment; - "QuorumNotReached(uint256,address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "EtherspotWalletInitialized"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EtherspotWalletReceived"): EventFragment; - getEvent(nameOrSignatureOrTopic: "GuardianAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "GuardianRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalDiscarded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalSubmitted"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalTimelockChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "QuorumNotReached"): EventFragment; -} - -export interface EtherspotWalletInitializedEventObject { - entryPoint: string; - owner: string; -} -export type EtherspotWalletInitializedEvent = TypedEvent< - [string, string], - EtherspotWalletInitializedEventObject ->; - -export type EtherspotWalletInitializedEventFilter = - TypedEventFilter; - -export interface EtherspotWalletReceivedEventObject { - from: string; - amount: BigNumber; -} -export type EtherspotWalletReceivedEvent = TypedEvent< - [string, BigNumber], - EtherspotWalletReceivedEventObject ->; - -export type EtherspotWalletReceivedEventFilter = - TypedEventFilter; - -export interface GuardianAddedEventObject { - newGuardian: string; -} -export type GuardianAddedEvent = TypedEvent<[string], GuardianAddedEventObject>; - -export type GuardianAddedEventFilter = TypedEventFilter; - -export interface GuardianRemovedEventObject { - removedGuardian: string; -} -export type GuardianRemovedEvent = TypedEvent< - [string], - GuardianRemovedEventObject ->; - -export type GuardianRemovedEventFilter = TypedEventFilter; - -export interface OwnerAddedEventObject { - newOwner: string; -} -export type OwnerAddedEvent = TypedEvent<[string], OwnerAddedEventObject>; - -export type OwnerAddedEventFilter = TypedEventFilter; - -export interface OwnerRemovedEventObject { - removedOwner: string; -} -export type OwnerRemovedEvent = TypedEvent<[string], OwnerRemovedEventObject>; - -export type OwnerRemovedEventFilter = TypedEventFilter; - -export interface ProposalDiscardedEventObject { - proposalId: BigNumber; - discardedBy: string; -} -export type ProposalDiscardedEvent = TypedEvent< - [BigNumber, string], - ProposalDiscardedEventObject ->; - -export type ProposalDiscardedEventFilter = - TypedEventFilter; - -export interface ProposalSubmittedEventObject { - proposalId: BigNumber; - newOwnerProposed: string; - proposer: string; -} -export type ProposalSubmittedEvent = TypedEvent< - [BigNumber, string, string], - ProposalSubmittedEventObject ->; - -export type ProposalSubmittedEventFilter = - TypedEventFilter; - -export interface ProposalTimelockChangedEventObject { - newTimelock: BigNumber; -} -export type ProposalTimelockChangedEvent = TypedEvent< - [BigNumber], - ProposalTimelockChangedEventObject ->; - -export type ProposalTimelockChangedEventFilter = - TypedEventFilter; - -export interface QuorumNotReachedEventObject { - proposalId: BigNumber; - newOwnerProposed: string; - approvalCount: BigNumber; -} -export type QuorumNotReachedEvent = TypedEvent< - [BigNumber, string, BigNumber], - QuorumNotReachedEventObject ->; - -export type QuorumNotReachedEventFilter = - TypedEventFilter; - -export interface IEtherspotWallet extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IEtherspotWalletInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addDeposit( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise<[string]>; - - execute( - dest: PromiseOrValue, - value: PromiseOrValue, - func: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - dest: PromiseOrValue[], - value: PromiseOrValue[], - func: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise<[BigNumber]>; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string] & { magicValue: string }>; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawDepositTo( - withdrawAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - addDeposit( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - execute( - dest: PromiseOrValue, - value: PromiseOrValue, - func: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - dest: PromiseOrValue[], - value: PromiseOrValue[], - func: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawDepositTo( - withdrawAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - addDeposit(overrides?: CallOverrides): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - discardCurrentProposal(overrides?: CallOverrides): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - execute( - dest: PromiseOrValue, - value: PromiseOrValue, - func: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeBatch( - dest: PromiseOrValue[], - value: PromiseOrValue[], - func: PromiseOrValue[], - overrides?: CallOverrides - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - withdrawDepositTo( - withdrawAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "EtherspotWalletInitialized(address,address)"( - entryPoint?: PromiseOrValue | null, - owner?: PromiseOrValue | null - ): EtherspotWalletInitializedEventFilter; - EtherspotWalletInitialized( - entryPoint?: PromiseOrValue | null, - owner?: PromiseOrValue | null - ): EtherspotWalletInitializedEventFilter; - - "EtherspotWalletReceived(address,uint256)"( - from?: PromiseOrValue | null, - amount?: PromiseOrValue | null - ): EtherspotWalletReceivedEventFilter; - EtherspotWalletReceived( - from?: PromiseOrValue | null, - amount?: PromiseOrValue | null - ): EtherspotWalletReceivedEventFilter; - - "GuardianAdded(address)"(newGuardian?: null): GuardianAddedEventFilter; - GuardianAdded(newGuardian?: null): GuardianAddedEventFilter; - - "GuardianRemoved(address)"( - removedGuardian?: null - ): GuardianRemovedEventFilter; - GuardianRemoved(removedGuardian?: null): GuardianRemovedEventFilter; - - "OwnerAdded(address)"(newOwner?: null): OwnerAddedEventFilter; - OwnerAdded(newOwner?: null): OwnerAddedEventFilter; - - "OwnerRemoved(address)"(removedOwner?: null): OwnerRemovedEventFilter; - OwnerRemoved(removedOwner?: null): OwnerRemovedEventFilter; - - "ProposalDiscarded(uint256,address)"( - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - ProposalDiscarded( - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - - "ProposalSubmitted(uint256,address,address)"( - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - ProposalSubmitted( - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - - "ProposalTimelockChanged(uint256)"( - newTimelock?: null - ): ProposalTimelockChangedEventFilter; - ProposalTimelockChanged( - newTimelock?: null - ): ProposalTimelockChangedEventFilter; - - "QuorumNotReached(uint256,address,uint256)"( - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - QuorumNotReached( - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - }; - - estimateGas: { - addDeposit( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - execute( - dest: PromiseOrValue, - value: PromiseOrValue, - func: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - dest: PromiseOrValue[], - value: PromiseOrValue[], - func: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawDepositTo( - withdrawAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - addDeposit( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - execute( - dest: PromiseOrValue, - value: PromiseOrValue, - func: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - dest: PromiseOrValue[], - value: PromiseOrValue[], - func: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawDepositTo( - withdrawAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/interfaces/IEtherspotWalletFactory.ts b/src/sdk/contracts/src/interfaces/IEtherspotWalletFactory.ts deleted file mode 100644 index a866f91..0000000 --- a/src/sdk/contracts/src/interfaces/IEtherspotWalletFactory.ts +++ /dev/null @@ -1,257 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../common"; - -export interface IEtherspotWalletFactoryInterface extends utils.Interface { - functions: { - "accountCreationCode()": FunctionFragment; - "checkImplementation(address)": FunctionFragment; - "createAccount(address,uint256)": FunctionFragment; - "getAddress(address,uint256)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "accountCreationCode" - | "checkImplementation" - | "createAccount" - | "getAddress" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "accountCreationCode", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "checkImplementation", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "createAccount", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getAddress", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "accountCreationCode", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "checkImplementation", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "createAccount", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "getAddress", data: BytesLike): Result; - - events: { - "AccountCreation(address,address,uint256)": EventFragment; - "ImplementationSet(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AccountCreation"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ImplementationSet"): EventFragment; -} - -export interface AccountCreationEventObject { - wallet: string; - owner: string; - index: BigNumber; -} -export type AccountCreationEvent = TypedEvent< - [string, string, BigNumber], - AccountCreationEventObject ->; - -export type AccountCreationEventFilter = TypedEventFilter; - -export interface ImplementationSetEventObject { - newImplementation: string; -} -export type ImplementationSetEvent = TypedEvent< - [string], - ImplementationSetEventObject ->; - -export type ImplementationSetEventFilter = - TypedEventFilter; - -export interface IEtherspotWalletFactory extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IEtherspotWalletFactoryInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - accountCreationCode(overrides?: CallOverrides): Promise<[string]>; - - checkImplementation( - _impl: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - createAccount( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getAddress( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string] & { proxy: string }>; - }; - - accountCreationCode(overrides?: CallOverrides): Promise; - - checkImplementation( - _impl: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - createAccount( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getAddress( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - callStatic: { - accountCreationCode(overrides?: CallOverrides): Promise; - - checkImplementation( - _impl: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - createAccount( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getAddress( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AccountCreation(address,address,uint256)"( - wallet?: PromiseOrValue | null, - owner?: PromiseOrValue | null, - index?: null - ): AccountCreationEventFilter; - AccountCreation( - wallet?: PromiseOrValue | null, - owner?: PromiseOrValue | null, - index?: null - ): AccountCreationEventFilter; - - "ImplementationSet(address)"( - newImplementation?: null - ): ImplementationSetEventFilter; - ImplementationSet(newImplementation?: null): ImplementationSetEventFilter; - }; - - estimateGas: { - accountCreationCode(overrides?: CallOverrides): Promise; - - checkImplementation( - _impl: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - createAccount( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getAddress( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - accountCreationCode( - overrides?: CallOverrides - ): Promise; - - checkImplementation( - _impl: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - createAccount( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getAddress( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/interfaces/IWhitelist.ts b/src/sdk/contracts/src/interfaces/IWhitelist.ts deleted file mode 100644 index d6739c6..0000000 --- a/src/sdk/contracts/src/interfaces/IWhitelist.ts +++ /dev/null @@ -1,348 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../common"; - -export interface IWhitelistInterface extends utils.Interface { - functions: { - "addBatchToWhitelist(address[])": FunctionFragment; - "addToWhitelist(address)": FunctionFragment; - "check(address,address)": FunctionFragment; - "removeBatchFromWhitelist(address[])": FunctionFragment; - "removeFromWhitelist(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addBatchToWhitelist" - | "addToWhitelist" - | "check" - | "removeBatchFromWhitelist" - | "removeFromWhitelist" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addBatchToWhitelist", - values: [PromiseOrValue[]] - ): string; - encodeFunctionData( - functionFragment: "addToWhitelist", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "check", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "removeBatchFromWhitelist", - values: [PromiseOrValue[]] - ): string; - encodeFunctionData( - functionFragment: "removeFromWhitelist", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "addBatchToWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "addToWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "check", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "removeBatchFromWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeFromWhitelist", - data: BytesLike - ): Result; - - events: { - "AddedBatchToWhitelist(address,address[])": EventFragment; - "AddedToWhitelist(address,address)": EventFragment; - "RemovedBatchFromWhitelist(address,address[])": EventFragment; - "RemovedFromWhitelist(address,address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AddedBatchToWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "AddedToWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RemovedBatchFromWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RemovedFromWhitelist"): EventFragment; -} - -export interface AddedBatchToWhitelistEventObject { - paymaster: string; - accounts: string[]; -} -export type AddedBatchToWhitelistEvent = TypedEvent< - [string, string[]], - AddedBatchToWhitelistEventObject ->; - -export type AddedBatchToWhitelistEventFilter = - TypedEventFilter; - -export interface AddedToWhitelistEventObject { - paymaster: string; - account: string; -} -export type AddedToWhitelistEvent = TypedEvent< - [string, string], - AddedToWhitelistEventObject ->; - -export type AddedToWhitelistEventFilter = - TypedEventFilter; - -export interface RemovedBatchFromWhitelistEventObject { - paymaster: string; - accounts: string[]; -} -export type RemovedBatchFromWhitelistEvent = TypedEvent< - [string, string[]], - RemovedBatchFromWhitelistEventObject ->; - -export type RemovedBatchFromWhitelistEventFilter = - TypedEventFilter; - -export interface RemovedFromWhitelistEventObject { - paymaster: string; - account: string; -} -export type RemovedFromWhitelistEvent = TypedEvent< - [string, string], - RemovedFromWhitelistEventObject ->; - -export type RemovedFromWhitelistEventFilter = - TypedEventFilter; - -export interface IWhitelist extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: IWhitelistInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: CallOverrides - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: CallOverrides - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AddedBatchToWhitelist(address,address[])"( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): AddedBatchToWhitelistEventFilter; - AddedBatchToWhitelist( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): AddedBatchToWhitelistEventFilter; - - "AddedToWhitelist(address,address)"( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): AddedToWhitelistEventFilter; - AddedToWhitelist( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): AddedToWhitelistEventFilter; - - "RemovedBatchFromWhitelist(address,address[])"( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): RemovedBatchFromWhitelistEventFilter; - RemovedBatchFromWhitelist( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): RemovedBatchFromWhitelistEventFilter; - - "RemovedFromWhitelist(address,address)"( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): RemovedFromWhitelistEventFilter; - RemovedFromWhitelist( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): RemovedFromWhitelistEventFilter; - }; - - estimateGas: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/interfaces/index.ts b/src/sdk/contracts/src/interfaces/index.ts deleted file mode 100644 index e80dc54..0000000 --- a/src/sdk/contracts/src/interfaces/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { IAccessController } from "./IAccessController"; -export type { IERC1271Wallet } from "./IERC1271Wallet"; -export type { IEtherspotPaymaster } from "./IEtherspotPaymaster"; -export type { IEtherspotWallet } from "./IEtherspotWallet"; -export type { IEtherspotWalletFactory } from "./IEtherspotWalletFactory"; -export type { IWhitelist } from "./IWhitelist"; diff --git a/src/sdk/contracts/src/paymaster/BasePaymaster.ts b/src/sdk/contracts/src/paymaster/BasePaymaster.ts deleted file mode 100644 index 08de643..0000000 --- a/src/sdk/contracts/src/paymaster/BasePaymaster.ts +++ /dev/null @@ -1,447 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../common"; - -export type UserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - callGasLimit: PromiseOrValue; - verificationGasLimit: PromiseOrValue; - preVerificationGas: PromiseOrValue; - maxFeePerGas: PromiseOrValue; - maxPriorityFeePerGas: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; -}; - -export type UserOperationStructOutput = [ - string, - BigNumber, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - string -] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - callGasLimit: BigNumber; - verificationGasLimit: BigNumber; - preVerificationGas: BigNumber; - maxFeePerGas: BigNumber; - maxPriorityFeePerGas: BigNumber; - paymasterAndData: string; - signature: string; -}; - -export interface BasePaymasterInterface extends utils.Interface { - functions: { - "addStake(uint32)": FunctionFragment; - "entryPoint()": FunctionFragment; - "getDeposit()": FunctionFragment; - "owner()": FunctionFragment; - "postOp(uint8,bytes,uint256)": FunctionFragment; - "renounceOwnership()": FunctionFragment; - "transferOwnership(address)": FunctionFragment; - "unlockStake()": FunctionFragment; - "validatePaymasterUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)": FunctionFragment; - "withdrawStake(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addStake" - | "entryPoint" - | "getDeposit" - | "owner" - | "postOp" - | "renounceOwnership" - | "transferOwnership" - | "unlockStake" - | "validatePaymasterUserOp" - | "withdrawStake" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addStake", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "entryPoint", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getDeposit", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "postOp", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "renounceOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "transferOwnership", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "unlockStake", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "validatePaymasterUserOp", - values: [ - UserOperationStruct, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "withdrawStake", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult(functionFragment: "addStake", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDeposit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "postOp", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "renounceOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "transferOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "unlockStake", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "validatePaymasterUserOp", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "withdrawStake", - data: BytesLike - ): Result; - - events: { - "OwnershipTransferred(address,address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; -} - -export interface OwnershipTransferredEventObject { - previousOwner: string; - newOwner: string; -} -export type OwnershipTransferredEvent = TypedEvent< - [string, string], - OwnershipTransferredEventObject ->; - -export type OwnershipTransferredEventFilter = - TypedEventFilter; - -export interface BasePaymaster extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: BasePaymasterInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise<[string]>; - - getDeposit(overrides?: CallOverrides): Promise<[BigNumber]>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - renounceOwnership(overrides?: CallOverrides): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - unlockStake(overrides?: CallOverrides): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber] & { context: string; validationData: BigNumber } - >; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "OwnershipTransferred(address,address)"( - previousOwner?: PromiseOrValue | null, - newOwner?: PromiseOrValue | null - ): OwnershipTransferredEventFilter; - OwnershipTransferred( - previousOwner?: PromiseOrValue | null, - newOwner?: PromiseOrValue | null - ): OwnershipTransferredEventFilter; - }; - - estimateGas: { - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/paymaster/EtherspotPaymaster.ts b/src/sdk/contracts/src/paymaster/EtherspotPaymaster.ts deleted file mode 100644 index 74fa130..0000000 --- a/src/sdk/contracts/src/paymaster/EtherspotPaymaster.ts +++ /dev/null @@ -1,936 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../common"; - -export type UserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - callGasLimit: PromiseOrValue; - verificationGasLimit: PromiseOrValue; - preVerificationGas: PromiseOrValue; - maxFeePerGas: PromiseOrValue; - maxPriorityFeePerGas: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; -}; - -export type UserOperationStructOutput = [ - string, - BigNumber, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - string -] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - callGasLimit: BigNumber; - verificationGasLimit: BigNumber; - preVerificationGas: BigNumber; - maxFeePerGas: BigNumber; - maxPriorityFeePerGas: BigNumber; - paymasterAndData: string; - signature: string; -}; - -export interface EtherspotPaymasterInterface extends utils.Interface { - functions: { - "addBatchToWhitelist(address[])": FunctionFragment; - "addStake(uint32)": FunctionFragment; - "addToWhitelist(address)": FunctionFragment; - "check(address,address)": FunctionFragment; - "depositFunds()": FunctionFragment; - "entryPoint()": FunctionFragment; - "getDeposit()": FunctionFragment; - "getHash((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),uint48,uint48)": FunctionFragment; - "getSponsorBalance(address)": FunctionFragment; - "owner()": FunctionFragment; - "parsePaymasterAndData(bytes)": FunctionFragment; - "postOp(uint8,bytes,uint256)": FunctionFragment; - "removeBatchFromWhitelist(address[])": FunctionFragment; - "removeFromWhitelist(address)": FunctionFragment; - "renounceOwnership()": FunctionFragment; - "transferOwnership(address)": FunctionFragment; - "unlockStake()": FunctionFragment; - "validatePaymasterUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)": FunctionFragment; - "withdrawFunds(uint256)": FunctionFragment; - "withdrawStake(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addBatchToWhitelist" - | "addStake" - | "addToWhitelist" - | "check" - | "depositFunds" - | "entryPoint" - | "getDeposit" - | "getHash" - | "getSponsorBalance" - | "owner" - | "parsePaymasterAndData" - | "postOp" - | "removeBatchFromWhitelist" - | "removeFromWhitelist" - | "renounceOwnership" - | "transferOwnership" - | "unlockStake" - | "validatePaymasterUserOp" - | "withdrawFunds" - | "withdrawStake" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addBatchToWhitelist", - values: [PromiseOrValue[]] - ): string; - encodeFunctionData( - functionFragment: "addStake", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "addToWhitelist", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "check", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "depositFunds", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "entryPoint", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getDeposit", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getHash", - values: [ - UserOperationStruct, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "getSponsorBalance", - values: [PromiseOrValue] - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "parsePaymasterAndData", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "postOp", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "removeBatchFromWhitelist", - values: [PromiseOrValue[]] - ): string; - encodeFunctionData( - functionFragment: "removeFromWhitelist", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "renounceOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "transferOwnership", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "unlockStake", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "validatePaymasterUserOp", - values: [ - UserOperationStruct, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "withdrawFunds", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "withdrawStake", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "addBatchToWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "addStake", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "addToWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "check", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "depositFunds", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDeposit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getHash", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getSponsorBalance", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "parsePaymasterAndData", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "postOp", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "removeBatchFromWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeFromWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "renounceOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "transferOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "unlockStake", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "validatePaymasterUserOp", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "withdrawFunds", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "withdrawStake", - data: BytesLike - ): Result; - - events: { - "AddedBatchToWhitelist(address,address[])": EventFragment; - "AddedToWhitelist(address,address)": EventFragment; - "OwnershipTransferred(address,address)": EventFragment; - "RemovedBatchFromWhitelist(address,address[])": EventFragment; - "RemovedFromWhitelist(address,address)": EventFragment; - "SponsorSuccessful(address,address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AddedBatchToWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "AddedToWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RemovedBatchFromWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RemovedFromWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SponsorSuccessful"): EventFragment; -} - -export interface AddedBatchToWhitelistEventObject { - paymaster: string; - accounts: string[]; -} -export type AddedBatchToWhitelistEvent = TypedEvent< - [string, string[]], - AddedBatchToWhitelistEventObject ->; - -export type AddedBatchToWhitelistEventFilter = - TypedEventFilter; - -export interface AddedToWhitelistEventObject { - paymaster: string; - account: string; -} -export type AddedToWhitelistEvent = TypedEvent< - [string, string], - AddedToWhitelistEventObject ->; - -export type AddedToWhitelistEventFilter = - TypedEventFilter; - -export interface OwnershipTransferredEventObject { - previousOwner: string; - newOwner: string; -} -export type OwnershipTransferredEvent = TypedEvent< - [string, string], - OwnershipTransferredEventObject ->; - -export type OwnershipTransferredEventFilter = - TypedEventFilter; - -export interface RemovedBatchFromWhitelistEventObject { - paymaster: string; - accounts: string[]; -} -export type RemovedBatchFromWhitelistEvent = TypedEvent< - [string, string[]], - RemovedBatchFromWhitelistEventObject ->; - -export type RemovedBatchFromWhitelistEventFilter = - TypedEventFilter; - -export interface RemovedFromWhitelistEventObject { - paymaster: string; - account: string; -} -export type RemovedFromWhitelistEvent = TypedEvent< - [string, string], - RemovedFromWhitelistEventObject ->; - -export type RemovedFromWhitelistEventFilter = - TypedEventFilter; - -export interface SponsorSuccessfulEventObject { - paymaster: string; - sender: string; -} -export type SponsorSuccessfulEvent = TypedEvent< - [string, string], - SponsorSuccessfulEventObject ->; - -export type SponsorSuccessfulEventFilter = - TypedEventFilter; - -export interface EtherspotPaymaster extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: EtherspotPaymasterInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - depositFunds( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise<[string]>; - - getDeposit(overrides?: CallOverrides): Promise<[BigNumber]>; - - getHash( - userOp: UserOperationStruct, - validUntil: PromiseOrValue, - validAfter: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - getSponsorBalance( - _sponsor: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - parsePaymasterAndData( - paymasterAndData: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [number, number, string] & { - validUntil: number; - validAfter: number; - signature: string; - } - >; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawFunds( - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositFunds( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getHash( - userOp: UserOperationStruct, - validUntil: PromiseOrValue, - validAfter: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSponsorBalance( - _sponsor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - owner(overrides?: CallOverrides): Promise; - - parsePaymasterAndData( - paymasterAndData: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [number, number, string] & { - validUntil: number; - validAfter: number; - signature: string; - } - >; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawFunds( - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: CallOverrides - ): Promise; - - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositFunds(overrides?: CallOverrides): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getHash( - userOp: UserOperationStruct, - validUntil: PromiseOrValue, - validAfter: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSponsorBalance( - _sponsor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - owner(overrides?: CallOverrides): Promise; - - parsePaymasterAndData( - paymasterAndData: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [number, number, string] & { - validUntil: number; - validAfter: number; - signature: string; - } - >; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: CallOverrides - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - renounceOwnership(overrides?: CallOverrides): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - unlockStake(overrides?: CallOverrides): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber] & { context: string; validationData: BigNumber } - >; - - withdrawFunds( - _amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AddedBatchToWhitelist(address,address[])"( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): AddedBatchToWhitelistEventFilter; - AddedBatchToWhitelist( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): AddedBatchToWhitelistEventFilter; - - "AddedToWhitelist(address,address)"( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): AddedToWhitelistEventFilter; - AddedToWhitelist( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): AddedToWhitelistEventFilter; - - "OwnershipTransferred(address,address)"( - previousOwner?: PromiseOrValue | null, - newOwner?: PromiseOrValue | null - ): OwnershipTransferredEventFilter; - OwnershipTransferred( - previousOwner?: PromiseOrValue | null, - newOwner?: PromiseOrValue | null - ): OwnershipTransferredEventFilter; - - "RemovedBatchFromWhitelist(address,address[])"( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): RemovedBatchFromWhitelistEventFilter; - RemovedBatchFromWhitelist( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): RemovedBatchFromWhitelistEventFilter; - - "RemovedFromWhitelist(address,address)"( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): RemovedFromWhitelistEventFilter; - RemovedFromWhitelist( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): RemovedFromWhitelistEventFilter; - - "SponsorSuccessful(address,address)"( - paymaster?: null, - sender?: null - ): SponsorSuccessfulEventFilter; - SponsorSuccessful( - paymaster?: null, - sender?: null - ): SponsorSuccessfulEventFilter; - }; - - estimateGas: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositFunds( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getHash( - userOp: UserOperationStruct, - validUntil: PromiseOrValue, - validAfter: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSponsorBalance( - _sponsor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - owner(overrides?: CallOverrides): Promise; - - parsePaymasterAndData( - paymasterAndData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawFunds( - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addStake( - unstakeDelaySec: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - depositFunds( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getHash( - userOp: UserOperationStruct, - validUntil: PromiseOrValue, - validAfter: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getSponsorBalance( - _sponsor: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - owner(overrides?: CallOverrides): Promise; - - parsePaymasterAndData( - paymasterAndData: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - postOp( - mode: PromiseOrValue, - context: PromiseOrValue, - actualGasCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - unlockStake( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - validatePaymasterUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - maxCost: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawFunds( - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawStake( - withdrawAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/paymaster/Whitelist.ts b/src/sdk/contracts/src/paymaster/Whitelist.ts deleted file mode 100644 index 81db1ad..0000000 --- a/src/sdk/contracts/src/paymaster/Whitelist.ts +++ /dev/null @@ -1,348 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../common"; - -export interface WhitelistInterface extends utils.Interface { - functions: { - "addBatchToWhitelist(address[])": FunctionFragment; - "addToWhitelist(address)": FunctionFragment; - "check(address,address)": FunctionFragment; - "removeBatchFromWhitelist(address[])": FunctionFragment; - "removeFromWhitelist(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addBatchToWhitelist" - | "addToWhitelist" - | "check" - | "removeBatchFromWhitelist" - | "removeFromWhitelist" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addBatchToWhitelist", - values: [PromiseOrValue[]] - ): string; - encodeFunctionData( - functionFragment: "addToWhitelist", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "check", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "removeBatchFromWhitelist", - values: [PromiseOrValue[]] - ): string; - encodeFunctionData( - functionFragment: "removeFromWhitelist", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "addBatchToWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "addToWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "check", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "removeBatchFromWhitelist", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeFromWhitelist", - data: BytesLike - ): Result; - - events: { - "AddedBatchToWhitelist(address,address[])": EventFragment; - "AddedToWhitelist(address,address)": EventFragment; - "RemovedBatchFromWhitelist(address,address[])": EventFragment; - "RemovedFromWhitelist(address,address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AddedBatchToWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "AddedToWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RemovedBatchFromWhitelist"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RemovedFromWhitelist"): EventFragment; -} - -export interface AddedBatchToWhitelistEventObject { - paymaster: string; - accounts: string[]; -} -export type AddedBatchToWhitelistEvent = TypedEvent< - [string, string[]], - AddedBatchToWhitelistEventObject ->; - -export type AddedBatchToWhitelistEventFilter = - TypedEventFilter; - -export interface AddedToWhitelistEventObject { - paymaster: string; - account: string; -} -export type AddedToWhitelistEvent = TypedEvent< - [string, string], - AddedToWhitelistEventObject ->; - -export type AddedToWhitelistEventFilter = - TypedEventFilter; - -export interface RemovedBatchFromWhitelistEventObject { - paymaster: string; - accounts: string[]; -} -export type RemovedBatchFromWhitelistEvent = TypedEvent< - [string, string[]], - RemovedBatchFromWhitelistEventObject ->; - -export type RemovedBatchFromWhitelistEventFilter = - TypedEventFilter; - -export interface RemovedFromWhitelistEventObject { - paymaster: string; - account: string; -} -export type RemovedFromWhitelistEvent = TypedEvent< - [string, string], - RemovedFromWhitelistEventObject ->; - -export type RemovedFromWhitelistEventFilter = - TypedEventFilter; - -export interface Whitelist extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: WhitelistInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: CallOverrides - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: CallOverrides - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AddedBatchToWhitelist(address,address[])"( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): AddedBatchToWhitelistEventFilter; - AddedBatchToWhitelist( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): AddedBatchToWhitelistEventFilter; - - "AddedToWhitelist(address,address)"( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): AddedToWhitelistEventFilter; - AddedToWhitelist( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): AddedToWhitelistEventFilter; - - "RemovedBatchFromWhitelist(address,address[])"( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): RemovedBatchFromWhitelistEventFilter; - RemovedBatchFromWhitelist( - paymaster?: PromiseOrValue | null, - accounts?: PromiseOrValue[] | null - ): RemovedBatchFromWhitelistEventFilter; - - "RemovedFromWhitelist(address,address)"( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): RemovedFromWhitelistEventFilter; - RemovedFromWhitelist( - paymaster?: PromiseOrValue | null, - account?: PromiseOrValue | null - ): RemovedFromWhitelistEventFilter; - }; - - estimateGas: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - addBatchToWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addToWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - check( - _sponsor: PromiseOrValue, - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeBatchFromWhitelist( - _accounts: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeFromWhitelist( - _account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/paymaster/index.ts b/src/sdk/contracts/src/paymaster/index.ts deleted file mode 100644 index ef2af2f..0000000 --- a/src/sdk/contracts/src/paymaster/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { BasePaymaster } from "./BasePaymaster"; -export type { EtherspotPaymaster } from "./EtherspotPaymaster"; -export type { Whitelist } from "./Whitelist"; diff --git a/src/sdk/contracts/src/wallet/EtherspotWallet.ts b/src/sdk/contracts/src/wallet/EtherspotWallet.ts deleted file mode 100644 index ebbae73..0000000 --- a/src/sdk/contracts/src/wallet/EtherspotWallet.ts +++ /dev/null @@ -1,1544 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../common"; - -export type UserOperationStruct = { - sender: PromiseOrValue; - nonce: PromiseOrValue; - initCode: PromiseOrValue; - callData: PromiseOrValue; - callGasLimit: PromiseOrValue; - verificationGasLimit: PromiseOrValue; - preVerificationGas: PromiseOrValue; - maxFeePerGas: PromiseOrValue; - maxPriorityFeePerGas: PromiseOrValue; - paymasterAndData: PromiseOrValue; - signature: PromiseOrValue; -}; - -export type UserOperationStructOutput = [ - string, - BigNumber, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - string -] & { - sender: string; - nonce: BigNumber; - initCode: string; - callData: string; - callGasLimit: BigNumber; - verificationGasLimit: BigNumber; - preVerificationGas: BigNumber; - maxFeePerGas: BigNumber; - maxPriorityFeePerGas: BigNumber; - paymasterAndData: string; - signature: string; -}; - -export interface EtherspotWalletInterface extends utils.Interface { - functions: { - "addDeposit()": FunctionFragment; - "addGuardian(address)": FunctionFragment; - "addOwner(address)": FunctionFragment; - "changeProposalTimelock(uint256)": FunctionFragment; - "discardCurrentProposal()": FunctionFragment; - "entryPoint()": FunctionFragment; - "execute(address,uint256,bytes)": FunctionFragment; - "executeBatch(address[],uint256[],bytes[])": FunctionFragment; - "getDeposit()": FunctionFragment; - "getNonce()": FunctionFragment; - "getProposal(uint256)": FunctionFragment; - "guardianCosign()": FunctionFragment; - "guardianCount()": FunctionFragment; - "guardianPropose(address)": FunctionFragment; - "initialize(address)": FunctionFragment; - "isGuardian(address)": FunctionFragment; - "isOwner(address)": FunctionFragment; - "isValidSignature(bytes32,bytes)": FunctionFragment; - "onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)": FunctionFragment; - "onERC1155Received(address,address,uint256,uint256,bytes)": FunctionFragment; - "onERC721Received(address,address,uint256,bytes)": FunctionFragment; - "ownerCount()": FunctionFragment; - "proposalId()": FunctionFragment; - "proposalTimelock()": FunctionFragment; - "proxiableUUID()": FunctionFragment; - "removeGuardian(address)": FunctionFragment; - "removeOwner(address)": FunctionFragment; - "supportsInterface(bytes4)": FunctionFragment; - "tokensReceived(address,address,address,uint256,bytes,bytes)": FunctionFragment; - "upgradeTo(address)": FunctionFragment; - "upgradeToAndCall(address,bytes)": FunctionFragment; - "validateUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)": FunctionFragment; - "withdrawDepositTo(address,uint256)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addDeposit" - | "addGuardian" - | "addOwner" - | "changeProposalTimelock" - | "discardCurrentProposal" - | "entryPoint" - | "execute" - | "executeBatch" - | "getDeposit" - | "getNonce" - | "getProposal" - | "guardianCosign" - | "guardianCount" - | "guardianPropose" - | "initialize" - | "isGuardian" - | "isOwner" - | "isValidSignature" - | "onERC1155BatchReceived" - | "onERC1155Received" - | "onERC721Received" - | "ownerCount" - | "proposalId" - | "proposalTimelock" - | "proxiableUUID" - | "removeGuardian" - | "removeOwner" - | "supportsInterface" - | "tokensReceived" - | "upgradeTo" - | "upgradeToAndCall" - | "validateUserOp" - | "withdrawDepositTo" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addDeposit", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "addGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "addOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "changeProposalTimelock", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "discardCurrentProposal", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "entryPoint", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "execute", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "executeBatch", - values: [ - PromiseOrValue[], - PromiseOrValue[], - PromiseOrValue[] - ] - ): string; - encodeFunctionData( - functionFragment: "getDeposit", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "getNonce", values?: undefined): string; - encodeFunctionData( - functionFragment: "getProposal", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "guardianCosign", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "guardianCount", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "guardianPropose", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "initialize", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "isValidSignature", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "onERC1155BatchReceived", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue[], - PromiseOrValue[], - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "onERC1155Received", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "onERC721Received", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "ownerCount", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "proposalId", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "proposalTimelock", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "proxiableUUID", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "removeGuardian", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "removeOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "supportsInterface", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "tokensReceived", - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "upgradeTo", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "upgradeToAndCall", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "validateUserOp", - values: [ - UserOperationStruct, - PromiseOrValue, - PromiseOrValue - ] - ): string; - encodeFunctionData( - functionFragment: "withdrawDepositTo", - values: [PromiseOrValue, PromiseOrValue] - ): string; - - decodeFunctionResult(functionFragment: "addDeposit", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "addGuardian", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "addOwner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "changeProposalTimelock", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "discardCurrentProposal", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "executeBatch", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "getDeposit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getNonce", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getProposal", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianCosign", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianCount", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "guardianPropose", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isGuardian", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "isValidSignature", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "onERC1155BatchReceived", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "onERC1155Received", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "onERC721Received", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "ownerCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "proposalId", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "proposalTimelock", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "proxiableUUID", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeGuardian", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "supportsInterface", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "tokensReceived", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "upgradeTo", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "upgradeToAndCall", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "validateUserOp", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "withdrawDepositTo", - data: BytesLike - ): Result; - - events: { - "AdminChanged(address,address)": EventFragment; - "BeaconUpgraded(address)": EventFragment; - "EtherspotWalletInitialized(address,address)": EventFragment; - "EtherspotWalletReceived(address,uint256)": EventFragment; - "GuardianAdded(address)": EventFragment; - "GuardianRemoved(address)": EventFragment; - "Initialized(uint8)": EventFragment; - "OwnerAdded(address)": EventFragment; - "OwnerRemoved(address)": EventFragment; - "ProposalDiscarded(uint256,address)": EventFragment; - "ProposalSubmitted(uint256,address,address)": EventFragment; - "ProposalTimelockChanged(uint256)": EventFragment; - "QuorumNotReached(uint256,address,uint256)": EventFragment; - "Upgraded(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AdminChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "BeaconUpgraded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EtherspotWalletInitialized"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EtherspotWalletReceived"): EventFragment; - getEvent(nameOrSignatureOrTopic: "GuardianAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "GuardianRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalDiscarded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalSubmitted"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProposalTimelockChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "QuorumNotReached"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment; -} - -export interface AdminChangedEventObject { - previousAdmin: string; - newAdmin: string; -} -export type AdminChangedEvent = TypedEvent< - [string, string], - AdminChangedEventObject ->; - -export type AdminChangedEventFilter = TypedEventFilter; - -export interface BeaconUpgradedEventObject { - beacon: string; -} -export type BeaconUpgradedEvent = TypedEvent< - [string], - BeaconUpgradedEventObject ->; - -export type BeaconUpgradedEventFilter = TypedEventFilter; - -export interface EtherspotWalletInitializedEventObject { - entryPoint: string; - owner: string; -} -export type EtherspotWalletInitializedEvent = TypedEvent< - [string, string], - EtherspotWalletInitializedEventObject ->; - -export type EtherspotWalletInitializedEventFilter = - TypedEventFilter; - -export interface EtherspotWalletReceivedEventObject { - from: string; - amount: BigNumber; -} -export type EtherspotWalletReceivedEvent = TypedEvent< - [string, BigNumber], - EtherspotWalletReceivedEventObject ->; - -export type EtherspotWalletReceivedEventFilter = - TypedEventFilter; - -export interface GuardianAddedEventObject { - newGuardian: string; -} -export type GuardianAddedEvent = TypedEvent<[string], GuardianAddedEventObject>; - -export type GuardianAddedEventFilter = TypedEventFilter; - -export interface GuardianRemovedEventObject { - removedGuardian: string; -} -export type GuardianRemovedEvent = TypedEvent< - [string], - GuardianRemovedEventObject ->; - -export type GuardianRemovedEventFilter = TypedEventFilter; - -export interface InitializedEventObject { - version: number; -} -export type InitializedEvent = TypedEvent<[number], InitializedEventObject>; - -export type InitializedEventFilter = TypedEventFilter; - -export interface OwnerAddedEventObject { - newOwner: string; -} -export type OwnerAddedEvent = TypedEvent<[string], OwnerAddedEventObject>; - -export type OwnerAddedEventFilter = TypedEventFilter; - -export interface OwnerRemovedEventObject { - removedOwner: string; -} -export type OwnerRemovedEvent = TypedEvent<[string], OwnerRemovedEventObject>; - -export type OwnerRemovedEventFilter = TypedEventFilter; - -export interface ProposalDiscardedEventObject { - proposalId: BigNumber; - discardedBy: string; -} -export type ProposalDiscardedEvent = TypedEvent< - [BigNumber, string], - ProposalDiscardedEventObject ->; - -export type ProposalDiscardedEventFilter = - TypedEventFilter; - -export interface ProposalSubmittedEventObject { - proposalId: BigNumber; - newOwnerProposed: string; - proposer: string; -} -export type ProposalSubmittedEvent = TypedEvent< - [BigNumber, string, string], - ProposalSubmittedEventObject ->; - -export type ProposalSubmittedEventFilter = - TypedEventFilter; - -export interface ProposalTimelockChangedEventObject { - newTimelock: BigNumber; -} -export type ProposalTimelockChangedEvent = TypedEvent< - [BigNumber], - ProposalTimelockChangedEventObject ->; - -export type ProposalTimelockChangedEventFilter = - TypedEventFilter; - -export interface QuorumNotReachedEventObject { - proposalId: BigNumber; - newOwnerProposed: string; - approvalCount: BigNumber; -} -export type QuorumNotReachedEvent = TypedEvent< - [BigNumber, string, BigNumber], - QuorumNotReachedEventObject ->; - -export type QuorumNotReachedEventFilter = - TypedEventFilter; - -export interface UpgradedEventObject { - implementation: string; -} -export type UpgradedEvent = TypedEvent<[string], UpgradedEventObject>; - -export type UpgradedEventFilter = TypedEventFilter; - -export interface EtherspotWallet extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: EtherspotWalletInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addDeposit( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise<[string]>; - - execute( - dest: PromiseOrValue, - value: PromiseOrValue, - func: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - dest: PromiseOrValue[], - value: PromiseOrValue[], - func: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise<[BigNumber]>; - - getNonce(overrides?: CallOverrides): Promise<[BigNumber]>; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise<[BigNumber]>; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - initialize( - anOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - onERC1155BatchReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue[], - arg3: PromiseOrValue[], - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - onERC1155Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - onERC721Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]>; - - ownerCount(overrides?: CallOverrides): Promise<[BigNumber]>; - - proposalId(overrides?: CallOverrides): Promise<[BigNumber]>; - - proposalTimelock(overrides?: CallOverrides): Promise<[BigNumber]>; - - proxiableUUID(overrides?: CallOverrides): Promise<[string]>; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - tokensReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[void]>; - - upgradeTo( - newImplementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - upgradeToAndCall( - newImplementation: PromiseOrValue, - data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawDepositTo( - withdrawAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - addDeposit( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - execute( - dest: PromiseOrValue, - value: PromiseOrValue, - func: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - dest: PromiseOrValue[], - value: PromiseOrValue[], - func: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getNonce(overrides?: CallOverrides): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - initialize( - anOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC1155BatchReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue[], - arg3: PromiseOrValue[], - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC1155Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC721Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - proxiableUUID(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - tokensReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - upgradeTo( - newImplementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - upgradeToAndCall( - newImplementation: PromiseOrValue, - data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawDepositTo( - withdrawAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - addDeposit(overrides?: CallOverrides): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - discardCurrentProposal(overrides?: CallOverrides): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - execute( - dest: PromiseOrValue, - value: PromiseOrValue, - func: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - executeBatch( - dest: PromiseOrValue[], - value: PromiseOrValue[], - func: PromiseOrValue[], - overrides?: CallOverrides - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getNonce(overrides?: CallOverrides): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [string, BigNumber, string[], boolean, BigNumber] & { - ownerProposed_: string; - approvalCount_: BigNumber; - guardiansApproved_: string[]; - resolved_: boolean; - proposedAt_: BigNumber; - } - >; - - guardianCosign(overrides?: CallOverrides): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - initialize( - anOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC1155BatchReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue[], - arg3: PromiseOrValue[], - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC1155Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC721Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - proxiableUUID(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - tokensReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - upgradeTo( - newImplementation: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - upgradeToAndCall( - newImplementation: PromiseOrValue, - data: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - withdrawDepositTo( - withdrawAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AdminChanged(address,address)"( - previousAdmin?: null, - newAdmin?: null - ): AdminChangedEventFilter; - AdminChanged( - previousAdmin?: null, - newAdmin?: null - ): AdminChangedEventFilter; - - "BeaconUpgraded(address)"( - beacon?: PromiseOrValue | null - ): BeaconUpgradedEventFilter; - BeaconUpgraded( - beacon?: PromiseOrValue | null - ): BeaconUpgradedEventFilter; - - "EtherspotWalletInitialized(address,address)"( - entryPoint?: PromiseOrValue | null, - owner?: PromiseOrValue | null - ): EtherspotWalletInitializedEventFilter; - EtherspotWalletInitialized( - entryPoint?: PromiseOrValue | null, - owner?: PromiseOrValue | null - ): EtherspotWalletInitializedEventFilter; - - "EtherspotWalletReceived(address,uint256)"( - from?: PromiseOrValue | null, - amount?: PromiseOrValue | null - ): EtherspotWalletReceivedEventFilter; - EtherspotWalletReceived( - from?: PromiseOrValue | null, - amount?: PromiseOrValue | null - ): EtherspotWalletReceivedEventFilter; - - "GuardianAdded(address)"(newGuardian?: null): GuardianAddedEventFilter; - GuardianAdded(newGuardian?: null): GuardianAddedEventFilter; - - "GuardianRemoved(address)"( - removedGuardian?: null - ): GuardianRemovedEventFilter; - GuardianRemoved(removedGuardian?: null): GuardianRemovedEventFilter; - - "Initialized(uint8)"(version?: null): InitializedEventFilter; - Initialized(version?: null): InitializedEventFilter; - - "OwnerAdded(address)"(newOwner?: null): OwnerAddedEventFilter; - OwnerAdded(newOwner?: null): OwnerAddedEventFilter; - - "OwnerRemoved(address)"(removedOwner?: null): OwnerRemovedEventFilter; - OwnerRemoved(removedOwner?: null): OwnerRemovedEventFilter; - - "ProposalDiscarded(uint256,address)"( - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - ProposalDiscarded( - proposalId?: null, - discardedBy?: null - ): ProposalDiscardedEventFilter; - - "ProposalSubmitted(uint256,address,address)"( - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - ProposalSubmitted( - proposalId?: null, - newOwnerProposed?: null, - proposer?: null - ): ProposalSubmittedEventFilter; - - "ProposalTimelockChanged(uint256)"( - newTimelock?: null - ): ProposalTimelockChangedEventFilter; - ProposalTimelockChanged( - newTimelock?: null - ): ProposalTimelockChangedEventFilter; - - "QuorumNotReached(uint256,address,uint256)"( - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - QuorumNotReached( - proposalId?: null, - newOwnerProposed?: null, - approvalCount?: null - ): QuorumNotReachedEventFilter; - - "Upgraded(address)"( - implementation?: PromiseOrValue | null - ): UpgradedEventFilter; - Upgraded( - implementation?: PromiseOrValue | null - ): UpgradedEventFilter; - }; - - estimateGas: { - addDeposit( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - execute( - dest: PromiseOrValue, - value: PromiseOrValue, - func: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - dest: PromiseOrValue[], - value: PromiseOrValue[], - func: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getNonce(overrides?: CallOverrides): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - initialize( - anOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC1155BatchReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue[], - arg3: PromiseOrValue[], - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC1155Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC721Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - proxiableUUID(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - tokensReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - upgradeTo( - newImplementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - upgradeToAndCall( - newImplementation: PromiseOrValue, - data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawDepositTo( - withdrawAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - addDeposit( - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - addGuardian( - _newGuardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - addOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - changeProposalTimelock( - _newTimelock: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - discardCurrentProposal( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - entryPoint(overrides?: CallOverrides): Promise; - - execute( - dest: PromiseOrValue, - value: PromiseOrValue, - func: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - executeBatch( - dest: PromiseOrValue[], - value: PromiseOrValue[], - func: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getDeposit(overrides?: CallOverrides): Promise; - - getNonce(overrides?: CallOverrides): Promise; - - getProposal( - _proposalId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - guardianCosign( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - guardianCount(overrides?: CallOverrides): Promise; - - guardianPropose( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - initialize( - anOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - isGuardian( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isOwner( - _address: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - isValidSignature( - hash: PromiseOrValue, - signature: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC1155BatchReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue[], - arg3: PromiseOrValue[], - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC1155Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - onERC721Received( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - ownerCount(overrides?: CallOverrides): Promise; - - proposalId(overrides?: CallOverrides): Promise; - - proposalTimelock(overrides?: CallOverrides): Promise; - - proxiableUUID(overrides?: CallOverrides): Promise; - - removeGuardian( - _guardian: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - removeOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - supportsInterface( - interfaceId: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - tokensReceived( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - upgradeTo( - newImplementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - upgradeToAndCall( - newImplementation: PromiseOrValue, - data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise; - - validateUserOp( - userOp: UserOperationStruct, - userOpHash: PromiseOrValue, - missingAccountFunds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - withdrawDepositTo( - withdrawAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/wallet/EtherspotWalletFactory.ts b/src/sdk/contracts/src/wallet/EtherspotWalletFactory.ts deleted file mode 100644 index 4723ec2..0000000 --- a/src/sdk/contracts/src/wallet/EtherspotWalletFactory.ts +++ /dev/null @@ -1,375 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../common"; - -export interface EtherspotWalletFactoryInterface extends utils.Interface { - functions: { - "accountCreationCode()": FunctionFragment; - "accountImplementation()": FunctionFragment; - "changeOwner(address)": FunctionFragment; - "checkImplementation(address)": FunctionFragment; - "createAccount(address,uint256)": FunctionFragment; - "getAddress(address,uint256)": FunctionFragment; - "owner()": FunctionFragment; - "setImplementation(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "accountCreationCode" - | "accountImplementation" - | "changeOwner" - | "checkImplementation" - | "createAccount" - | "getAddress" - | "owner" - | "setImplementation" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "accountCreationCode", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "accountImplementation", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "changeOwner", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "checkImplementation", - values: [PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "createAccount", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData( - functionFragment: "getAddress", - values: [PromiseOrValue, PromiseOrValue] - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "setImplementation", - values: [PromiseOrValue] - ): string; - - decodeFunctionResult( - functionFragment: "accountCreationCode", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "accountImplementation", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "changeOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "checkImplementation", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "createAccount", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "getAddress", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "setImplementation", - data: BytesLike - ): Result; - - events: { - "AccountCreation(address,address,uint256)": EventFragment; - "ImplementationSet(address)": EventFragment; - "OwnerChanged(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AccountCreation"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ImplementationSet"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; -} - -export interface AccountCreationEventObject { - wallet: string; - owner: string; - index: BigNumber; -} -export type AccountCreationEvent = TypedEvent< - [string, string, BigNumber], - AccountCreationEventObject ->; - -export type AccountCreationEventFilter = TypedEventFilter; - -export interface ImplementationSetEventObject { - newImplementation: string; -} -export type ImplementationSetEvent = TypedEvent< - [string], - ImplementationSetEventObject ->; - -export type ImplementationSetEventFilter = - TypedEventFilter; - -export interface OwnerChangedEventObject { - newOwner: string; -} -export type OwnerChangedEvent = TypedEvent<[string], OwnerChangedEventObject>; - -export type OwnerChangedEventFilter = TypedEventFilter; - -export interface EtherspotWalletFactory extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: EtherspotWalletFactoryInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - accountCreationCode(overrides?: CallOverrides): Promise<[string]>; - - accountImplementation(overrides?: CallOverrides): Promise<[string]>; - - changeOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - checkImplementation( - _impl: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]>; - - createAccount( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getAddress( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string] & { proxy: string }>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - setImplementation( - _newImpl: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - accountCreationCode(overrides?: CallOverrides): Promise; - - accountImplementation(overrides?: CallOverrides): Promise; - - changeOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - checkImplementation( - _impl: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - createAccount( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getAddress( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - owner(overrides?: CallOverrides): Promise; - - setImplementation( - _newImpl: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - callStatic: { - accountCreationCode(overrides?: CallOverrides): Promise; - - accountImplementation(overrides?: CallOverrides): Promise; - - changeOwner( - _newOwner: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - checkImplementation( - _impl: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - createAccount( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - getAddress( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - owner(overrides?: CallOverrides): Promise; - - setImplementation( - _newImpl: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AccountCreation(address,address,uint256)"( - wallet?: PromiseOrValue | null, - owner?: PromiseOrValue | null, - index?: null - ): AccountCreationEventFilter; - AccountCreation( - wallet?: PromiseOrValue | null, - owner?: PromiseOrValue | null, - index?: null - ): AccountCreationEventFilter; - - "ImplementationSet(address)"( - newImplementation?: null - ): ImplementationSetEventFilter; - ImplementationSet(newImplementation?: null): ImplementationSetEventFilter; - - "OwnerChanged(address)"(newOwner?: null): OwnerChangedEventFilter; - OwnerChanged(newOwner?: null): OwnerChangedEventFilter; - }; - - estimateGas: { - accountCreationCode(overrides?: CallOverrides): Promise; - - accountImplementation(overrides?: CallOverrides): Promise; - - changeOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - checkImplementation( - _impl: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - createAccount( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getAddress( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - owner(overrides?: CallOverrides): Promise; - - setImplementation( - _newImpl: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; - - populateTransaction: { - accountCreationCode( - overrides?: CallOverrides - ): Promise; - - accountImplementation( - overrides?: CallOverrides - ): Promise; - - changeOwner( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - checkImplementation( - _impl: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - createAccount( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - - getAddress( - _owner: PromiseOrValue, - _index: PromiseOrValue, - overrides?: CallOverrides - ): Promise; - - owner(overrides?: CallOverrides): Promise; - - setImplementation( - _newImpl: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise; - }; -} diff --git a/src/sdk/contracts/src/wallet/Proxy.ts b/src/sdk/contracts/src/wallet/Proxy.ts deleted file mode 100644 index a33d16e..0000000 --- a/src/sdk/contracts/src/wallet/Proxy.ts +++ /dev/null @@ -1,56 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -import type { BaseContract, Signer, utils } from "ethers"; - -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, - PromiseOrValue, -} from "../../common"; - -export interface ProxyInterface extends utils.Interface { - functions: {}; - - events: {}; -} - -export interface Proxy extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: ProxyInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: {}; - - callStatic: {}; - - filters: {}; - - estimateGas: {}; - - populateTransaction: {}; -} diff --git a/src/sdk/contracts/src/wallet/index.ts b/src/sdk/contracts/src/wallet/index.ts deleted file mode 100644 index 571fe66..0000000 --- a/src/sdk/contracts/src/wallet/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ -export type { EtherspotWallet } from "./EtherspotWallet"; -export type { EtherspotWalletFactory } from "./EtherspotWalletFactory"; -export type { Proxy } from "./Proxy"; diff --git a/src/sdk/dto/sign-message.dto.ts b/src/sdk/dto/sign-message.dto.ts index 8b28114..130120d 100644 --- a/src/sdk/dto/sign-message.dto.ts +++ b/src/sdk/dto/sign-message.dto.ts @@ -1,4 +1,4 @@ -import { BytesLike } from 'ethers'; +import { BytesLike } from '../common/types'; import { IsBytesLike } from './validators'; export class SignMessageDto { diff --git a/src/sdk/dto/validators/is-big-numberish.validator.ts b/src/sdk/dto/validators/is-big-numberish.validator.ts index d5dd7f3..8c01ba6 100644 --- a/src/sdk/dto/validators/is-big-numberish.validator.ts +++ b/src/sdk/dto/validators/is-big-numberish.validator.ts @@ -1,4 +1,4 @@ -import { BigNumber } from 'ethers'; +import { BigNumber } from '../../types/bignumber'; import { registerDecorator, ValidationOptions } from 'class-validator'; export function IsBigNumberish( diff --git a/src/sdk/dto/validators/is-bytes-like.validator.ts b/src/sdk/dto/validators/is-bytes-like.validator.ts index 6d439c8..7c4f3c2 100644 --- a/src/sdk/dto/validators/is-bytes-like.validator.ts +++ b/src/sdk/dto/validators/is-bytes-like.validator.ts @@ -1,5 +1,5 @@ -import { utils } from 'ethers'; import { registerDecorator, ValidationOptions } from 'class-validator'; +import { isHex } from 'viem'; export function IsBytesLike(options: ValidationOptions & { acceptText?: boolean } = {}) { return (object: any, propertyName: string) => { @@ -10,7 +10,7 @@ export function IsBytesLike(options: ValidationOptions & { acceptText?: boolean ...options, }, name: 'IsBytesLike', - target: object.constructor, + target: object ? object.constructor : undefined, constraints: [], validator: { validate(value: any): boolean { @@ -23,7 +23,7 @@ export function IsBytesLike(options: ValidationOptions & { acceptText?: boolean if (options.acceptText) { result = true; } else { - result = utils.isHexString(value) && value.length % 2 === 0; + result = isHex(value) && value.length % 2 === 0; } break; diff --git a/src/sdk/dto/validators/is-hex.validator.ts b/src/sdk/dto/validators/is-hex.validator.ts index d89eac6..0b068d1 100644 --- a/src/sdk/dto/validators/is-hex.validator.ts +++ b/src/sdk/dto/validators/is-hex.validator.ts @@ -1,5 +1,5 @@ import { registerDecorator, ValidationOptions } from 'class-validator'; -import { utils } from 'ethers'; +import { isHex } from '../../common'; export function IsHex( options: { @@ -26,7 +26,7 @@ export function IsHex( constraints: [], validator: { validate(value: string): boolean { - let result = utils.isHexString(value); + let result = isHex(value); if (result && size > 0) { result = value.length === size * 2 + 2; diff --git a/src/sdk/index.ts b/src/sdk/index.ts index 8682f97..d44a2db 100644 --- a/src/sdk/index.ts +++ b/src/sdk/index.ts @@ -4,9 +4,8 @@ import { ModularSdk } from './sdk'; export * from './dto'; export * from './interfaces'; export * from './network'; -export * from './state'; -export * from './wallet'; export * from './bundler'; +export * from './common'; export { ModularSdk, SessionKeyValidator }; export default ModularSdk; \ No newline at end of file diff --git a/src/sdk/interfaces.ts b/src/sdk/interfaces.ts index af21320..6182cd6 100644 --- a/src/sdk/interfaces.ts +++ b/src/sdk/interfaces.ts @@ -1,5 +1,4 @@ import { BundlerProviderLike } from './bundler'; -import { StateStorage } from './state'; export interface PaymasterApi { url: string; @@ -13,7 +12,6 @@ export enum Factory { export interface SdkOptions { chainId: number; bundlerProvider?: BundlerProviderLike; - stateStorage?: StateStorage; rpcProviderUrl?: string; factoryWallet?: Factory; walletFactoryAddress?: string; diff --git a/src/sdk/network/ViemChainConfig.ts b/src/sdk/network/ViemChainConfig.ts new file mode 100644 index 0000000..6bec4cd --- /dev/null +++ b/src/sdk/network/ViemChainConfig.ts @@ -0,0 +1,214 @@ +import { defineChain } from "viem" + +let sourceId = 1 // mainnet + +export const optimism = /*#__PURE__*/ defineChain({ + id: 10, + name: 'OP Mainnet', + nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 }, + rpcUrls: { + default: { + http: ['https://mainnet.optimism.io'], + }, + }, + blockExplorers: { + default: { + name: 'Optimism Explorer', + url: 'https://optimistic.etherscan.io', + apiUrl: 'https://api-optimistic.etherscan.io/api', + }, + }, + contracts: { + disputeGameFactory: { + [sourceId]: { + address: '0xe5965Ab5962eDc7477C8520243A95517CD252fA9', + }, + }, + l2OutputOracle: { + [sourceId]: { + address: '0xdfe97868233d1aa22e815a266982f2cf17685a27', + }, + }, + multicall3: { + address: '0xca11bde05977b3631167028862be2a173976ca11', + blockCreated: 4286263, + }, + portal: { + [sourceId]: { + address: '0xbEb5Fc579115071764c7423A4f12eDde41f106Ed', + }, + }, + l1StandardBridge: { + [sourceId]: { + address: '0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1', + }, + }, + }, + sourceId, + }) + +export const base = /*#__PURE__*/ defineChain({ + id: 8453, + name: 'Base', + nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 }, + rpcUrls: { + default: { + http: ['https://mainnet.base.org'], + }, + }, + blockExplorers: { + default: { + name: 'Basescan', + url: 'https://basescan.org', + apiUrl: 'https://api.basescan.org/api', + }, + }, + contracts: { + l2OutputOracle: { + [sourceId]: { + address: '0x56315b90c40730925ec5485cf004d835058518A0', + }, + }, + multicall3: { + address: '0xca11bde05977b3631167028862be2a173976ca11', + blockCreated: 5022, + }, + portal: { + [sourceId]: { + address: '0x49048044D57e1C92A77f79988d21Fa8fAF74E97e', + blockCreated: 17482143, + }, + }, + l1StandardBridge: { + [sourceId]: { + address: '0x3154Cf16ccdb4C6d922629664174b904d80F2C35', + blockCreated: 17482143, + }, + }, + }, + sourceId, + }) + + export const ancient8 = /*#__PURE__*/ defineChain({ + id: 888888888, + name: 'Ancient8', + nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 }, + rpcUrls: { + default: { + http: ['https://rpc.ancient8.gg'], + }, + }, + blockExplorers: { + default: { + name: 'Ancient8 explorer', + url: 'https://scan.ancient8.gg', + apiUrl: 'https://scan.ancient8.gg/api', + }, + }, + contracts: { + l2OutputOracle: { + [sourceId]: { + address: '0xB09DC08428C8b4EFB4ff9C0827386CDF34277996', + }, + }, + portal: { + [sourceId]: { + address: '0x639F2AECE398Aa76b07e59eF6abe2cFe32bacb68', + blockCreated: 19070571, + }, + }, + l1StandardBridge: { + [sourceId]: { + address: '0xd5e3eDf5b68135D559D572E26bF863FBC1950033', + blockCreated: 19070571, + }, + }, + }, + sourceId, + }) + +sourceId = 11_155_111 // sepolia + +export const optimismSepolia = /*#__PURE__*/ defineChain({ + id: 11155420, + name: 'OP Sepolia', + nativeCurrency: { name: 'Sepolia Ether', symbol: 'ETH', decimals: 18 }, + rpcUrls: { + default: { + http: ['https://sepolia.optimism.io'], + }, + }, + blockExplorers: { + default: { + name: 'Blockscout', + url: 'https://optimism-sepolia.blockscout.com', + apiUrl: 'https://optimism-sepolia.blockscout.com/api', + }, + }, + contracts: { + disputeGameFactory: { + [sourceId]: { + address: '0x05F9613aDB30026FFd634f38e5C4dFd30a197Fa1', + }, + }, + l2OutputOracle: { + [sourceId]: { + address: '0x90E9c4f8a994a250F6aEfd61CAFb4F2e895D458F', + }, + }, + multicall3: { + address: '0xca11bde05977b3631167028862be2a173976ca11', + blockCreated: 1620204, + }, + portal: { + [sourceId]: { + address: '0x16Fc5058F25648194471939df75CF27A2fdC48BC', + }, + }, + l1StandardBridge: { + [sourceId]: { + address: '0xFBb0621E0B23b5478B630BD55a5f21f67730B0F1', + }, + }, + }, + testnet: true, + sourceId, + }) + + export const ancient8Sepolia = /*#__PURE__*/ defineChain({ + id: 28122024, + name: 'Ancient8 Testnet', + nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 }, + rpcUrls: { + default: { + http: ['https://rpcv2-testnet.ancient8.gg'], + }, + }, + blockExplorers: { + default: { + name: 'Ancient8 Celestia Testnet explorer', + url: 'https://scanv2-testnet.ancient8.gg', + apiUrl: 'https://scanv2-testnet.ancient8.gg/api', + }, + }, + contracts: { + l2OutputOracle: { + [sourceId]: { + address: '0x942fD5017c0F60575930D8574Eaca13BEcD6e1bB', + }, + }, + portal: { + [sourceId]: { + address: '0xfa1d9E26A6aCD7b22115D27572c1221B9803c960', + blockCreated: 4972908, + }, + }, + l1StandardBridge: { + [sourceId]: { + address: '0xF6Bc0146d3c74D48306e79Ae134A260E418C9335', + blockCreated: 4972908, + }, + }, + }, + sourceId, + }) \ No newline at end of file diff --git a/src/sdk/network/__mocks__/network.service.ts b/src/sdk/network/__mocks__/network.service.ts deleted file mode 100644 index ee9c364..0000000 --- a/src/sdk/network/__mocks__/network.service.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { mockService } from '../../../testing'; -import { ObjectSubject } from '../../common'; -import { NetworkNames } from '../constants'; -import { Network } from '../interfaces'; - -const network$ = new ObjectSubject(null); -const chainId$ = network$.observeKey('chainId'); -const defaultNetwork: Network = { - name: NetworkNames.LocalA, - chainId: 9999, -}; - -const supportedNetworks = [defaultNetwork]; - -const mocked = { - network$, - chainId$, - defaultNetwork, - supportedNetworks, - useDefaultNetwork: jest.fn(), - switchNetwork: jest.fn(), - isNetworkNameSupported: jest.fn(), - getContractAddress: jest.fn(), - getAccountByteCodeHash: jest.fn(), -}; - -Object.defineProperty(mocked, 'network', { - get: jest.fn(() => network$.value), -}); - -Object.defineProperty(mocked, 'chainId', { - get: jest.fn(() => network$?.value?.chainId), -}); - -export const NetworkService = mockService(mocked); diff --git a/src/sdk/network/constants.ts b/src/sdk/network/constants.ts index 1121c80..fc187bd 100644 --- a/src/sdk/network/constants.ts +++ b/src/sdk/network/constants.ts @@ -1,4 +1,7 @@ +import { bsc, gnosis } from "viem/chains"; import { NetworkConfig } from "."; +import * as Chain from "viem/chains"; +import { ancient8, base, optimism, optimismSepolia, ancient8Sepolia } from "./ViemChainConfig"; export enum NetworkNames { BaseSepolia = 'baseSepolia', @@ -33,12 +36,13 @@ export enum NetworkNames { Ancient8 = 'ancient8', Amoy = 'amoy', XDCTestnet = 'xdcTestnet', - XDCMainnet = 'xdcMainnet' + XDCMainnet = 'xdcMainnet', } export const SupportedNetworks = [1, 10, 14, 30, 31, 50, 51, 56, 97, 100, 114, 122, 123, 137, 2357, 5000, 5003, 8453, 10200, 42161, 43113, 43114, 59140, 59144, 80002, 84532, 421614, 534351, 534352, 11155111, 11155420, 28122024, 888888888] + export const NETWORK_NAME_TO_CHAIN_ID: { [key: string]: number; } = { @@ -84,6 +88,8 @@ export const Networks: { } = { [84532]: { chainId: 84532, + // TODO fix to identify this chainId + chain: null, bundler: 'https://testnet-rpc.etherspot.io/v2/84532', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -95,6 +101,7 @@ export const Networks: { }, [11155111]: { chainId: 11155111, + chain: Chain.sepolia, bundler: 'https://testnet-rpc.etherspot.io/v2/11155111', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -106,6 +113,8 @@ export const Networks: { }, [10]: { chainId: 10, + // compilation issue for optimism mainnet, using custom config + chain: optimism, bundler: 'https://rpc.etherspot.io/v2/10', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -117,6 +126,7 @@ export const Networks: { }, [137]: { chainId: 137, + chain: Chain.polygon, bundler: 'https://rpc.etherspot.io/v2/137', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -128,6 +138,7 @@ export const Networks: { }, [42161]: { chainId: 42161, + chain: Chain.arbitrum, bundler: 'https://rpc.etherspot.io/v2/42161', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -139,6 +150,7 @@ export const Networks: { }, [1]: { chainId: 1, + chain: Chain.mainnet, bundler: 'https://rpc.etherspot.io/v2/1', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -150,6 +162,7 @@ export const Networks: { }, [10200]: { chainId: 10200, + chain: null, bundler: '', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -161,6 +174,7 @@ export const Networks: { }, [122]: { chainId: 122, + chain: Chain.fuse, bundler: 'https://rpc.etherspot.io/v2/122', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -172,6 +186,8 @@ export const Networks: { }, [123]: { chainId: 123, + // TODO no-support for ultron mainnet + chain: null, bundler: 'https://testnet-rpc.etherspot.io/v2/123', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -183,6 +199,7 @@ export const Networks: { }, [100]: { chainId: 100, + chain: gnosis, bundler: 'https://rpc.etherspot.io/v2/100', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -194,6 +211,7 @@ export const Networks: { }, [2357]: { chainId: 2357, + chain: null, bundler: '', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -205,6 +223,7 @@ export const Networks: { }, [30]: { chainId: 30, + chain: Chain.rootstock, bundler: 'https://rpc.etherspot.io/v2/30', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -216,6 +235,7 @@ export const Networks: { }, [31]: { chainId: 31, + chain: Chain.rootstockTestnet, bundler: 'https://testnet-rpc.etherspot.io/v2/31', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -227,6 +247,7 @@ export const Networks: { }, [5000]: { chainId: 5000, + chain: Chain.mantle, bundler: 'https://rpc.etherspot.io/v2/5000', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -238,6 +259,7 @@ export const Networks: { }, [5003]: { chainId: 5003, + chain: Chain.mantleSepoliaTestnet, bundler: 'https://testnet-rpc.etherspot.io/v2/5003', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -249,6 +271,7 @@ export const Networks: { }, [43114]: { chainId: 43114, + chain: Chain.avalanche, bundler: 'https://rpc.etherspot.io/v2/43114', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -260,6 +283,7 @@ export const Networks: { }, [8453]: { chainId: 8453, + chain: base, bundler: 'https://rpc.etherspot.io/v2/8453', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -271,6 +295,7 @@ export const Networks: { }, [56]: { chainId: 56, + chain: bsc, bundler: 'https://rpc.etherspot.io/v2/56', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -282,6 +307,7 @@ export const Networks: { }, [97]: { chainId: 97, + chain: Chain.bscTestnet, bundler: 'https://testnet-rpc.etherspot.io/v2/97', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -293,6 +319,7 @@ export const Networks: { }, [43113]: { chainId: 43113, + chain: Chain.avalancheFuji, bundler: '', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -304,6 +331,7 @@ export const Networks: { }, [59144]: { chainId: 59144, + chain: Chain.linea, bundler: 'https://rpc.etherspot.io/v2/59144', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -315,6 +343,7 @@ export const Networks: { }, [59140]: { chainId: 59140, + chain: Chain.lineaGoerli, bundler: '', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -326,6 +355,7 @@ export const Networks: { }, [114]: { chainId: 114, + chain: Chain.flareTestnet, bundler: 'https://testnet-rpc.etherspot.io/v2/114', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -337,6 +367,7 @@ export const Networks: { }, [14]: { chainId: 14, + chain: Chain.flare, bundler: 'https://rpc.etherspot.io/v2/14', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -348,6 +379,7 @@ export const Networks: { }, [534351]: { chainId: 534351, + chain: Chain.scrollSepolia, bundler: 'https://testnet-rpc.etherspot.io/v2/534351', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -359,6 +391,7 @@ export const Networks: { }, [534352]: { chainId: 534352, + chain: Chain.scroll, bundler: 'https://rpc.etherspot.io/v2/534352', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -370,6 +403,8 @@ export const Networks: { }, [11155420]: { chainId: 11155420, + // TODO check compilation issue + chain: optimismSepolia, bundler: 'https://testnet-rpc.etherspot.io/v2/11155420', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -381,6 +416,7 @@ export const Networks: { }, [28122024]: { chainId: 28122024, + chain: ancient8Sepolia, bundler: 'https://testnet-rpc.etherspot.io/v2/28122024', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -392,6 +428,7 @@ export const Networks: { }, [888888888]: { chainId: 888888888, + chain: ancient8, bundler: 'https://rpc.etherspot.io/v2/888888888', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -403,6 +440,7 @@ export const Networks: { }, [80002]: { chainId: 80002, + chain: Chain.polygonAmoy, bundler: 'https://testnet-rpc.etherspot.io/v2/80002', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -414,6 +452,7 @@ export const Networks: { }, [421614]: { chainId: 421614, + chain: Chain.arbitrumSepolia, bundler: 'https://testnet-rpc.etherspot.io/v2/421614', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -425,6 +464,7 @@ export const Networks: { }, [51]: { chainId: 51, + chain: Chain.xdcTestnet, bundler: 'https://testnet-rpc.etherspot.io/v2/51', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -436,6 +476,7 @@ export const Networks: { }, [50]: { chainId: 50, + chain: Chain.xdc, bundler: 'https://rpc.etherspot.io/v2/50', contracts: { entryPoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', @@ -447,7 +488,7 @@ export const Networks: { } }; -export const DEFAULT_ERC20_SESSION_KEY_VALIDATOR_ADDRESS = "0xF4CDE8B11500ca9Ea108c5838DD26Ff1a4257a0c"; +export const DEFAULT_ERC20_SESSION_KEY_VALIDATOR_ADDRESS = "0x22A55192a663591586241D42E603221eac49ed09"; export const DEFAULT_BOOTSTRAP_ADDRESS = "0x1baCB2F1ef4fD02f02e32cCF70888D9Caeb5f066"; export const DEFAULT_MULTIPLE_OWNER_ECDSA_VALIDATOR_ADDRESS = "0x609d3ED5F7D1707806327D198Cb480B93dD6E6b9"; export const DEFAULT_QUERY_PAGE_SIZE = 50; diff --git a/src/sdk/network/interfaces.ts b/src/sdk/network/interfaces.ts index 1c00161..df1f4fd 100644 --- a/src/sdk/network/interfaces.ts +++ b/src/sdk/network/interfaces.ts @@ -1,3 +1,4 @@ +import { Chain } from 'viem/chains'; import { NetworkNames } from './constants'; export interface Network { @@ -7,6 +8,7 @@ export interface Network { export interface NetworkConfig { chainId: number; + chain: Chain; bundler: string; contracts: { entryPoint: string; diff --git a/src/sdk/sdk.ts b/src/sdk/sdk.ts index 1213e56..6fed865 100644 --- a/src/sdk/sdk.ts +++ b/src/sdk/sdk.ts @@ -1,24 +1,16 @@ -import { BehaviorSubject } from 'rxjs'; -import { State, StateService } from './state'; -import { - EthereumProvider, - isWalletConnectProvider, - isWalletProvider, - WalletConnect2WalletProvider, - WalletProviderLike -} from './wallet'; import { Factory, PaymasterApi, SdkOptions } from './interfaces'; import { Network } from "./network"; -import { BatchUserOpsRequest, Exception, getGasFee, MODULE_TYPE, onRampApiKey, openUrl, UserOperation, UserOpsRequest } from "./common"; -import { BigNumber, BigNumberish, Contract, TypedDataField, ethers, providers } from 'ethers'; +import { BatchUserOpsRequest, Exception, getGasFee, getViemAccount, getViemAddress, MODULE_TYPE, onRampApiKey, openUrl, UserOperation, UserOpsRequest } from "./common"; import { DEFAULT_QUERY_PAGE_SIZE, Networks, onRamperAllNetworks } from './network/constants'; import { EtherspotWalletAPI, HttpRpcClient, VerifyingPaymasterAPI } from './base'; import { TransactionDetailsForUserOp, TransactionGasInfoForUserOp } from './base/TransactionDetailsForUserOp'; import { OnRamperDto, SignMessageDto, validateDto } from './dto'; import { ErrorHandler } from './errorHandler/errorHandler.service'; import { EtherspotBundler } from './bundler'; -import { ModularEtherspotWallet } from './contracts/src/ERC7579/wallet'; import { ModuleInfo } from './base/EtherspotWalletAPI'; +import { Account, formatEther, Hex, http, TypedDataParameter, type PublicClient, type WalletClient } from 'viem'; +import { getPublicClient, getWalletClientFromAccount } from './common/utils/viem-utils'; +import { BigNumber, BigNumberish } from './types/bignumber'; /** * Modular-Sdk @@ -32,18 +24,14 @@ export class ModularSdk { private chainId: number; private factoryUsed: Factory; private index: number; + private walletClient: WalletClient; + private publicClient: PublicClient; + private account: Account; + private providerUrl: string; private userOpsBatch: BatchUserOpsRequest = { to: [], data: [], value: [] }; - constructor(walletProvider: WalletProviderLike, optionsLike: SdkOptions) { - - let walletConnectProvider; - if (isWalletConnectProvider(walletProvider)) { - walletConnectProvider = new WalletConnect2WalletProvider(walletProvider as EthereumProvider); - } else if (!isWalletProvider(walletProvider)) { - throw new Exception('Invalid wallet provider'); - } - + constructor({ privateKey } : {privateKey: string}, optionsLike: SdkOptions) { const { index, chainId, @@ -51,6 +39,9 @@ export class ModularSdk { accountAddress, } = optionsLike; + if (!privateKey) throw new Exception('privateKey is required'); + + this.account = getViemAccount(privateKey); this.chainId = chainId; this.index = index ?? 0; @@ -59,12 +50,28 @@ export class ModularSdk { } this.factoryUsed = optionsLike.factoryWallet ?? Factory.ETHERSPOT; - - let provider; + let viemClientUrl = ''; if (rpcProviderUrl) { - provider = new providers.JsonRpcProvider(rpcProviderUrl); - } else provider = new providers.JsonRpcProvider(optionsLike.bundlerProvider.url); + viemClientUrl = rpcProviderUrl; + } else { + viemClientUrl = optionsLike.bundlerProvider.url; + } + + this.providerUrl = viemClientUrl; + + this.walletClient = getWalletClientFromAccount({ + rpcUrl: viemClientUrl, + chainId: chainId, + account: this.account + }); + + this.publicClient = getPublicClient({ + chainId: chainId, + transport: http( + viemClientUrl + ) + }) as PublicClient; let entryPointAddress = '', walletFactoryAddress = ''; if (Networks[chainId]) { @@ -78,26 +85,18 @@ export class ModularSdk { if (entryPointAddress == '') throw new Exception('entryPointAddress not set on the given chain_id') if (walletFactoryAddress == '') throw new Exception('walletFactoryAddress not set on the given chain_id') + this.account = this.account; this.etherspotWallet = new EtherspotWalletAPI({ - provider, - walletProvider: walletConnectProvider ?? walletProvider, optionsLike, entryPointAddress, factoryAddress: walletFactoryAddress, predefinedAccountAddress: accountAddress, index: this.index, + account: this.account, + walletClient: this.walletClient, + publicClient: this.publicClient, }) - this.bundler = new HttpRpcClient(optionsLike.bundlerProvider.url, entryPointAddress, chainId); - } - - - // exposes - get state(): StateService { - return this.etherspotWallet.services.stateService; - } - - get state$(): BehaviorSubject { - return this.etherspotWallet.services.stateService.state$; + this.bundler = new HttpRpcClient(optionsLike.bundlerProvider.url, entryPointAddress, chainId, this.walletClient, this.publicClient); } get supportedNetworks(): Network[] { @@ -111,6 +110,18 @@ export class ModularSdk { this.etherspotWallet.context.destroy(); } + getWalletClient(): WalletClient { + return this.walletClient; + } + + getPublicClient(): PublicClient { + return this.publicClient; + } + + getProviderUrl(): string { + return this.providerUrl; + } + // wallet /** @@ -125,7 +136,14 @@ export class ModularSdk { network: false, }); - return this.etherspotWallet.services.walletService.signMessage(message); + return this.walletClient.signMessage({ + message: message as Hex, + account: this.account + }); + } + + getEOAAddress(): Hex { + return this.etherspotWallet.getEOAAddress(); } async getCounterFactualAddress(): Promise { @@ -152,13 +170,13 @@ export class ModularSdk { const tx: TransactionDetailsForUserOp = { target: this.userOpsBatch.to, - values: this.userOpsBatch.value, + values: this.userOpsBatch.value, data: this.userOpsBatch.data, dummySignature: dummySignature, ...gasDetails, } - const gasInfo = await this.getGasFee() + const gasInfo = await this.getGasFee(); const partialtx = await this.etherspotWallet.createUnsignedUserOp({ ...tx, @@ -198,7 +216,7 @@ export class ModularSdk { if (!callGasLimit) partialtx.callGasLimit = expectedCallGasLimit; else if (BigNumber.from(callGasLimit).lt(expectedCallGasLimit)) - throw new ErrorHandler(`CallGasLimit is too low. Expected atleast ${expectedCallGasLimit.toString()}`); + throw new ErrorHandler(`CallGasLimit is too low. Expected atleast ${expectedCallGasLimit.toString()}`); } return partialtx; @@ -209,7 +227,7 @@ export class ModularSdk { const version = await this.bundler.getBundlerVersion(); if (version && version.includes('skandha')) return this.bundler.getSkandhaGasPrice(); - return getGasFee(this.etherspotWallet.provider as providers.JsonRpcProvider); + return getGasFee(this.publicClient); } async send(userOp: any, isUserOpAlreadySigned = false) { @@ -218,22 +236,24 @@ export class ModularSdk { } async signTypedData( - DataFields: TypedDataField[], + domain: any, + DataFields: TypedDataParameter[], message: any ) { - return this.etherspotWallet.signTypedData(DataFields, message); + return this.etherspotWallet.signTypedData(domain, DataFields, message); } async getNativeBalance() { if (!this.etherspotWallet.accountAddress) { await this.getCounterFactualAddress(); } - const balance = await this.etherspotWallet.provider.getBalance(this.etherspotWallet.accountAddress); - return ethers.utils.formatEther(balance); + const balance = await this.publicClient.getBalance({ address: getViemAddress(this.etherspotWallet.accountAddress) }); + return formatEther(balance); } async getUserOpReceipt(userOpHash: string) { - return this.bundler.getUserOpsReceipt(userOpHash); + //return this.bundler.getUserOpsReceipt(userOpHash); + return await this.etherspotWallet.getUserOpReceipt(userOpHash); } async getUserOpHash(userOp: UserOperation) { @@ -256,10 +276,6 @@ export class ModularSdk { this.userOpsBatch.value = []; } - async getAccountContract(): Promise { - return this.etherspotWallet._getAccountContract(); - } - async isModuleInstalled(moduleTypeId: MODULE_TYPE, module: string): Promise { return this.etherspotWallet.isModuleInstalled(moduleTypeId, module); } @@ -318,6 +334,11 @@ export class ModularSdk { return callGasLimit.add(verificationGasLimit).add(preVerificationGas); } + async getNonce(key: BigNumber = BigNumber.from(0)): Promise { + const nonce = await this.etherspotWallet.getNonce(key); + return nonce; + } + async getFiatOnRamp(params: OnRamperDto = {}) { if (!params.onlyCryptoNetworks) params.onlyCryptoNetworks = onRamperAllNetworks.join(','); else { diff --git a/src/sdk/state/classes/index.ts b/src/sdk/state/classes/index.ts deleted file mode 100644 index da88543..0000000 --- a/src/sdk/state/classes/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './state'; diff --git a/src/sdk/state/classes/state.ts b/src/sdk/state/classes/state.ts deleted file mode 100644 index 72993e0..0000000 --- a/src/sdk/state/classes/state.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { Network } from '../../network'; -import { Wallet } from '../../wallet'; - -export class State { - wallet: Wallet; - - network: Network; - -} diff --git a/src/sdk/state/index.ts b/src/sdk/state/index.ts deleted file mode 100644 index 1c7944f..0000000 --- a/src/sdk/state/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './classes'; -export * from './interfaces'; -export * from './state.service'; diff --git a/src/sdk/state/interfaces.ts b/src/sdk/state/interfaces.ts deleted file mode 100644 index 53a84fc..0000000 --- a/src/sdk/state/interfaces.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { NetworkNames } from '../network'; -import { State } from './classes'; - -export type StateStorageState = Omit; - -export interface StateStorage { - setState(EOAAddress: string, networkName: NetworkNames, state: StateStorageState): Promise; - getState(EOAAddress: string, networkName: NetworkNames): Promise; -} - -export interface StateOptions { - storage?: StateStorage; -} diff --git a/src/sdk/state/state.service.ts b/src/sdk/state/state.service.ts deleted file mode 100644 index e16aebe..0000000 --- a/src/sdk/state/state.service.ts +++ /dev/null @@ -1,124 +0,0 @@ -import { plainToClass } from 'class-transformer'; -import { BehaviorSubject, Observable, combineLatest } from 'rxjs'; -import { filter, map, tap } from 'rxjs/operators'; -import { Service } from '../common'; -import { Wallet } from '../wallet'; -import { State } from './classes'; -import { StateOptions, StateStorageState } from './interfaces'; -import { Network } from '../network'; - -export class StateService extends Service implements State { - readonly state$ = new BehaviorSubject(null); - - constructor(private options: StateOptions = {}) { - super(); - } - - get state(): State { - return this.state$.value; - } - - get wallet$(): BehaviorSubject { - return this.services.walletService.wallet$; - } - - get wallet(): Wallet { - return this.services.walletService.wallet; - } - - get EOAAddress$(): Observable { - return this.services.walletService.EOAAddress$; - } - - get EOAAddress(): string { - return this.services.walletService.EOAAddress; - } - - get network(): Network { - return this.services.networkService.network; - } - - get network$(): BehaviorSubject { - return this.services.networkService.network$; - } - - restore(state: StateStorageState): this { - - if (state) { - state = plainToClass(State, state); - } - - return this; - } - - protected onInit() { - const { storage } = this.options || {}; - - const { - walletService: { wallet$, wallet }, - networkService: { network$, network }, - } = this.services; - - const callback = () => { - this.addSubscriptions( - combineLatest([ - wallet$, // - network$, - ]) - .pipe( - map( - ([ - wallet, // - network, - ]: [ - State['wallet'], // - State['network'], - ]) => ({ - wallet, // - network, - }), - ), - ) - .subscribe(this.state$), - - !storage - ? null - : this.state$ - .pipe( - filter( - (state) => - state && // - state.wallet && - state.wallet.address && - state.network && - state.network.name && - true, - ), - tap((state) => { - const { wallet, network, ...storageState } = state; - - this.error$.catch( - () => storage.setState(wallet.address, network.name, storageState), // - ); - }), - ) - .subscribe(), - ); - }; - - if (storage) { - this.error$.catch(async () => { - const EOAAddress = wallet && wallet.address ? wallet.address : null; - const networkName = network && network.name ? network.name : null; - - if (EOAAddress && networkName) { - const state = await storage.getState(EOAAddress, networkName); - - this.restore(state); - } - }, callback); - } else { - callback(); - } - } -} diff --git a/src/sdk/types/bignumber-logger.ts b/src/sdk/types/bignumber-logger.ts new file mode 100644 index 0000000..259c057 --- /dev/null +++ b/src/sdk/types/bignumber-logger.ts @@ -0,0 +1,407 @@ +"use strict"; + +let _permanentCensorErrors = false; +let _censorErrors = false; + +const LogLevels: { [ name: string ]: number } = { debug: 1, "default": 2, info: 2, warning: 3, error: 4, off: 5 }; +let _logLevel = LogLevels["default"]; + +export const version = "logger/5.7.0"; + +let _globalLogger: Logger = null; + +function _checkNormalize(): string { + try { + const missing: Array = [ ]; + + // Make sure all forms of normalization are supported + ["NFD", "NFC", "NFKD", "NFKC"].forEach((form) => { + try { + if ("test".normalize(form) !== "test") { + throw new Error("bad normalize"); + }; + } catch(error) { + missing.push(form); + } + }); + + if (missing.length) { + throw new Error("missing " + missing.join(", ")); + } + + if (String.fromCharCode(0xe9).normalize("NFD") !== String.fromCharCode(0x65, 0x0301)) { + throw new Error("broken implementation") + } + } catch (error) { + return error.message; + } + + return null; +} + +const _normalizeError = _checkNormalize(); + +export enum LogLevel { + DEBUG = "DEBUG", + INFO = "INFO", + WARNING = "WARNING", + ERROR = "ERROR", + OFF = "OFF" +} + + +export enum ErrorCode { + + /////////////////// + // Generic Errors + + // Unknown Error + UNKNOWN_ERROR = "UNKNOWN_ERROR", + + // Not Implemented + NOT_IMPLEMENTED = "NOT_IMPLEMENTED", + + // Unsupported Operation + // - operation + UNSUPPORTED_OPERATION = "UNSUPPORTED_OPERATION", + + // Network Error (i.e. Ethereum Network, such as an invalid chain ID) + // - event ("noNetwork" is not re-thrown in provider.ready; otherwise thrown) + NETWORK_ERROR = "NETWORK_ERROR", + + // Some sort of bad response from the server + SERVER_ERROR = "SERVER_ERROR", + + // Timeout + TIMEOUT = "TIMEOUT", + + /////////////////// + // Operational Errors + + // Buffer Overrun + BUFFER_OVERRUN = "BUFFER_OVERRUN", + + // Numeric Fault + // - operation: the operation being executed + // - fault: the reason this faulted + NUMERIC_FAULT = "NUMERIC_FAULT", + + + /////////////////// + // Argument Errors + + // Missing new operator to an object + // - name: The name of the class + MISSING_NEW = "MISSING_NEW", + + // Invalid argument (e.g. value is incompatible with type) to a function: + // - argument: The argument name that was invalid + // - value: The value of the argument + INVALID_ARGUMENT = "INVALID_ARGUMENT", + + // Missing argument to a function: + // - count: The number of arguments received + // - expectedCount: The number of arguments expected + MISSING_ARGUMENT = "MISSING_ARGUMENT", + + // Too many arguments + // - count: The number of arguments received + // - expectedCount: The number of arguments expected + UNEXPECTED_ARGUMENT = "UNEXPECTED_ARGUMENT", + + + /////////////////// + // Blockchain Errors + + // Call exception + // - transaction: the transaction + // - address?: the contract address + // - args?: The arguments passed into the function + // - method?: The Solidity method signature + // - errorSignature?: The EIP848 error signature + // - errorArgs?: The EIP848 error parameters + // - reason: The reason (only for EIP848 "Error(string)") + CALL_EXCEPTION = "CALL_EXCEPTION", + + // Insufficient funds (< value + gasLimit * gasPrice) + // - transaction: the transaction attempted + INSUFFICIENT_FUNDS = "INSUFFICIENT_FUNDS", + + // Nonce has already been used + // - transaction: the transaction attempted + NONCE_EXPIRED = "NONCE_EXPIRED", + + // The replacement fee for the transaction is too low + // - transaction: the transaction attempted + REPLACEMENT_UNDERPRICED = "REPLACEMENT_UNDERPRICED", + + // The gas limit could not be estimated + // - transaction: the transaction passed to estimateGas + UNPREDICTABLE_GAS_LIMIT = "UNPREDICTABLE_GAS_LIMIT", + + // The transaction was replaced by one with a higher gas price + // - reason: "cancelled", "replaced" or "repriced" + // - cancelled: true if reason == "cancelled" or reason == "replaced") + // - hash: original transaction hash + // - replacement: the full TransactionsResponse for the replacement + // - receipt: the receipt of the replacement + TRANSACTION_REPLACED = "TRANSACTION_REPLACED", + + + /////////////////// + // Interaction Errors + + // The user rejected the action, such as signing a message or sending + // a transaction + ACTION_REJECTED = "ACTION_REJECTED", +}; + +const HEX = "0123456789abcdef"; + +export class Logger { + readonly version: string; + + static errors = ErrorCode; + + static levels = LogLevel; + + constructor(version: string) { + Object.defineProperty(this, "version", { + enumerable: true, + value: version, + writable: false + }); + } + + _log(logLevel: LogLevel, args: Array): void { + const level = logLevel.toLowerCase(); + if (LogLevels[level] == null) { + this.throwArgumentError("invalid log level name", "logLevel", logLevel); + } + if (_logLevel > LogLevels[level]) { return; } + console.log.apply(console, args); + } + + debug(...args: Array): void { + this._log(Logger.levels.DEBUG, args); + } + + info(...args: Array): void { + this._log(Logger.levels.INFO, args); + } + + warn(...args: Array): void { + this._log(Logger.levels.WARNING, args); + } + + makeError(message: string, code?: ErrorCode, params?: any): Error { + // Errors are being censored + if (_censorErrors) { + return this.makeError("censored error", code, { }); + } + + if (!code) { code = Logger.errors.UNKNOWN_ERROR; } + if (!params) { params = {}; } + + const messageDetails: Array = []; + Object.keys(params).forEach((key) => { + const value = params[key]; + try { + if (value instanceof Uint8Array) { + let hex = ""; + for (let i = 0; i < value.length; i++) { + hex += HEX[value[i] >> 4]; + hex += HEX[value[i] & 0x0f]; + } + messageDetails.push(key + "=Uint8Array(0x" + hex + ")"); + } else { + messageDetails.push(key + "=" + JSON.stringify(value)); + } + } catch (error) { + messageDetails.push(key + "=" + JSON.stringify(params[key].toString())); + } + }); + messageDetails.push(`code=${ code }`); + messageDetails.push(`version=${ this.version }`); + + const reason = message; + + let url = ""; + + switch (code) { + case ErrorCode.NUMERIC_FAULT: { + url = "NUMERIC_FAULT"; + const fault = message; + + switch (fault) { + case "overflow": case "underflow": case "division-by-zero": + url += "-" + fault; + break; + case "negative-power": case "negative-width": + url += "-unsupported"; + break; + case "unbound-bitwise-result": + url += "-unbound-result"; + break; + } + break; + } + case ErrorCode.CALL_EXCEPTION: + case ErrorCode.INSUFFICIENT_FUNDS: + case ErrorCode.MISSING_NEW: + case ErrorCode.NONCE_EXPIRED: + case ErrorCode.REPLACEMENT_UNDERPRICED: + case ErrorCode.TRANSACTION_REPLACED: + case ErrorCode.UNPREDICTABLE_GAS_LIMIT: + url = code; + break; + } + + if (url) { + message += " [ See: https:/\/links.ethers.org/v5-errors-" + url + " ]"; + } + + if (messageDetails.length) { + message += " (" + messageDetails.join(", ") + ")"; + } + + // @TODO: Any?? + const error: any = new Error(message); + error.reason = reason; + error.code = code + + Object.keys(params).forEach(function(key) { + error[key] = params[key]; + }); + + return error; + } + + throwError(message: string, code?: ErrorCode, params?: any): never { + throw this.makeError(message, code, params); + } + + throwArgumentError(message: string, name: string, value: any): never { + return this.throwError(message, Logger.errors.INVALID_ARGUMENT, { + argument: name, + value: value + }); + } + + assert(condition: any, message: string, code?: ErrorCode, params?: any): void { + if (!!condition) { return; } + this.throwError(message, code, params); + } + + assertArgument(condition: any, message: string, name: string, value: any): void { + if (!!condition) { return; } + this.throwArgumentError(message, name, value); + } + + checkNormalize(message?: string): void { + if (message == null) { message = "platform missing String.prototype.normalize"; } + if (_normalizeError) { + this.throwError("platform missing String.prototype.normalize", Logger.errors.UNSUPPORTED_OPERATION, { + operation: "String.prototype.normalize", form: _normalizeError + }); + } + } + + checkSafeUint53(value: number, message?: string): void { + if (typeof(value) !== "number") { return; } + + if (message == null) { message = "value not safe"; } + + if (value < 0 || value >= 0x1fffffffffffff) { + this.throwError(message, Logger.errors.NUMERIC_FAULT, { + operation: "checkSafeInteger", + fault: "out-of-safe-range", + value: value + }); + } + + if (value % 1) { + this.throwError(message, Logger.errors.NUMERIC_FAULT, { + operation: "checkSafeInteger", + fault: "non-integer", + value: value + }); + } + } + + checkArgumentCount(count: number, expectedCount: number, message?: string): void { + if (message) { + message = ": " + message; + } else { + message = ""; + } + + if (count < expectedCount) { + this.throwError("missing argument" + message, Logger.errors.MISSING_ARGUMENT, { + count: count, + expectedCount: expectedCount + }); + } + + if (count > expectedCount) { + this.throwError("too many arguments" + message, Logger.errors.UNEXPECTED_ARGUMENT, { + count: count, + expectedCount: expectedCount + }); + } + } + + checkNew(target: any, kind: any): void { + if (target === Object || target == null) { + this.throwError("missing new", Logger.errors.MISSING_NEW, { name: kind.name }); + } + } + + checkAbstract(target: any, kind: any): void { + if (target === kind) { + this.throwError( + "cannot instantiate abstract class " + JSON.stringify(kind.name) + " directly; use a sub-class", + Logger.errors.UNSUPPORTED_OPERATION, + { name: target.name, operation: "new" } + ); + } else if (target === Object || target == null) { + this.throwError("missing new", Logger.errors.MISSING_NEW, { name: kind.name }); + } + } + + static globalLogger(): Logger { + if (!_globalLogger) { _globalLogger = new Logger(version); } + return _globalLogger; + } + + static setCensorship(censorship: boolean, permanent?: boolean): void { + if (!censorship && permanent) { + this.globalLogger().throwError("cannot permanently disable censorship", Logger.errors.UNSUPPORTED_OPERATION, { + operation: "setCensorship" + }); + } + + if (_permanentCensorErrors) { + if (!censorship) { return; } + this.globalLogger().throwError("error censorship permanent", Logger.errors.UNSUPPORTED_OPERATION, { + operation: "setCensorship" + }); + } + + _censorErrors = !!censorship; + _permanentCensorErrors = !!permanent; + } + + static setLogLevel(logLevel: LogLevel): void { + const level = LogLevels[logLevel.toLowerCase()]; + if (level == null) { + Logger.globalLogger().warn("invalid log level - " + logLevel); + return; + } + _logLevel = level; + } + + static from(version: string): Logger { + return new Logger(version); + } +} diff --git a/src/sdk/types/bignumber.ts b/src/sdk/types/bignumber.ts new file mode 100644 index 0000000..2b3d58f --- /dev/null +++ b/src/sdk/types/bignumber.ts @@ -0,0 +1,378 @@ +"use strict"; + +/** + * BigNumber + * + * A wrapper around the BN.js object. We use the BN.js library + * because it is used by elliptic, so it is required regardless. + * + */ + +import _BN from "bn.js"; +import BN = _BN.BN; + +export type Bytes = ArrayLike; +export const version = "logger/5.7.0"; + +export interface Hexable { + toHexString(): string; +} + +import { isHex, isBytes } from "viem"; +import { Logger } from "./bignumber-logger"; +import { hexlifyValue } from "../common/utils/hexlify"; + +const logger = new Logger(version); + +const _constructorGuard = { }; + +const MAX_SAFE = 0x1fffffffffffff; + + +export type BigNumberish = BigNumber | Bytes | bigint | string | number; + +export function isBigNumberish(value: any): value is BigNumberish { + return (value != null) && ( + BigNumber.isBigNumber(value) || + (typeof(value) === "number" && (value % 1) === 0) || + (typeof(value) === "string" && !!value.match(/^-?[0-9]+$/)) || + isHex(value) || + (typeof(value) === "bigint") || + isBytes(value) + ); +} + +// Only warn about passing 10 into radix once +let _warnedToStringRadix = false; + +export class BigNumber implements Hexable { + readonly _hex: string; + readonly _isBigNumber: boolean; + + constructor(constructorGuard: any, hex: string) { + if (constructorGuard !== _constructorGuard) { + logger.throwError("cannot call constructor directly; use BigNumber.from", Logger.errors.UNSUPPORTED_OPERATION, { + operation: "new (BigNumber)" + }); + } + + this._hex = hex; + this._isBigNumber = true; + + Object.freeze(this); + } + + fromTwos(value: number): BigNumber { + return toBigNumber(toBN(this).fromTwos(value)); + } + + toTwos(value: number): BigNumber { + return toBigNumber(toBN(this).toTwos(value)); + } + + abs(): BigNumber { + if (this._hex[0] === "-") { + return BigNumber.from(this._hex.substring(1)); + } + return this; + } + + add(other: BigNumberish): BigNumber { + return toBigNumber(toBN(this).add(toBN(other))); + } + + sub(other: BigNumberish): BigNumber { + return toBigNumber(toBN(this).sub(toBN(other))); + } + + div(other: BigNumberish): BigNumber { + const o = BigNumber.from(other); + if (o.isZero()) { + throwFault("division-by-zero", "div"); + } + return toBigNumber(toBN(this).div(toBN(other))); + } + + mul(other: BigNumberish): BigNumber { + return toBigNumber(toBN(this).mul(toBN(other))); + } + + mod(other: BigNumberish): BigNumber { + const value = toBN(other); + if (value.isNeg()) { + throwFault("division-by-zero", "mod"); + } + return toBigNumber(toBN(this).umod(value)); + } + + pow(other: BigNumberish): BigNumber { + const value = toBN(other); + if (value.isNeg()) { + throwFault("negative-power", "pow"); + } + return toBigNumber(toBN(this).pow(value)); + } + + and(other: BigNumberish): BigNumber { + const value = toBN(other); + if (this.isNegative() || value.isNeg()) { + throwFault("unbound-bitwise-result", "and"); + } + return toBigNumber(toBN(this).and(value)); + } + + or(other: BigNumberish): BigNumber { + const value = toBN(other); + if (this.isNegative() || value.isNeg()) { + throwFault("unbound-bitwise-result", "or"); + } + return toBigNumber(toBN(this).or(value)); + } + + xor(other: BigNumberish): BigNumber { + const value = toBN(other); + if (this.isNegative() || value.isNeg()) { + throwFault("unbound-bitwise-result", "xor"); + } + return toBigNumber(toBN(this).xor(value)); + } + + mask(value: number): BigNumber { + if (this.isNegative() || value < 0) { + throwFault("negative-width", "mask"); + } + return toBigNumber(toBN(this).maskn(value)); + } + + shl(value: number): BigNumber { + if (this.isNegative() || value < 0) { + throwFault("negative-width", "shl"); + } + return toBigNumber(toBN(this).shln(value)); + } + + shr(value: number): BigNumber { + if (this.isNegative() || value < 0) { + throwFault("negative-width", "shr"); + } + return toBigNumber(toBN(this).shrn(value)); + } + + eq(other: BigNumberish): boolean { + return toBN(this).eq(toBN(other)); + } + + lt(other: BigNumberish): boolean { + return toBN(this).lt(toBN(other)); + } + + lte(other: BigNumberish): boolean { + return toBN(this).lte(toBN(other)); + } + + gt(other: BigNumberish): boolean { + return toBN(this).gt(toBN(other)); + } + + gte(other: BigNumberish): boolean { + return toBN(this).gte(toBN(other)); + } + + isNegative(): boolean { + return (this._hex[0] === "-"); + } + + isZero(): boolean { + return toBN(this).isZero(); + } + + toNumber(): number { + try { + return toBN(this).toNumber(); + } catch (error) { + throwFault("overflow", "toNumber", this.toString()); + } + return null; + } + + toBigInt(): bigint { + try { + return BigInt(this.toString()); + } catch (e) { } + + return logger.throwError("this platform does not support BigInt", Logger.errors.UNSUPPORTED_OPERATION, { + value: this.toString() + }); + } + + toString(): string { + // Lots of people expect this, which we do not support, so check (See: #889) + if (arguments.length > 0) { + if (arguments[0] === 10) { + if (!_warnedToStringRadix) { + _warnedToStringRadix = true; + logger.warn("BigNumber.toString does not accept any parameters; base-10 is assumed"); + } + } else if (arguments[0] === 16) { + logger.throwError("BigNumber.toString does not accept any parameters; use bigNumber.toHexString()", Logger.errors.UNEXPECTED_ARGUMENT, { }); + } else { + logger.throwError("BigNumber.toString does not accept parameters", Logger.errors.UNEXPECTED_ARGUMENT, { }); + } + } + return toBN(this).toString(10); + } + + toHexString(): string { + return this._hex; + } + + toJSON(key?: string): any { + return { type: "BigNumber", hex: this.toHexString() }; + } + + static from(value: any): BigNumber { + if (value instanceof BigNumber) { return value; } + + if (typeof(value) === "string") { + if (value.match(/^-?0x[0-9a-f]+$/i)) { + return new BigNumber(_constructorGuard, toHex(value)); + } + + if (value.match(/^-?[0-9]+$/)) { + return new BigNumber(_constructorGuard, toHex(new BN(value))); + } + + return logger.throwArgumentError("invalid BigNumber string", "value", value); + } + + if (typeof(value) === "number") { + if (value % 1) { + throwFault("underflow", "BigNumber.from", value); + } + + if (value >= MAX_SAFE || value <= -MAX_SAFE) { + throwFault("overflow", "BigNumber.from", value); + } + + return BigNumber.from(String(value)); + } + + const anyValue = value; + + if (typeof(anyValue) === "bigint") { + return BigNumber.from(anyValue.toString()); + } + + if (isBytes(anyValue)) { + return BigNumber.from(hexlifyValue(anyValue)); + } + + if (anyValue) { + + // Hexable interface (takes priority) + if (anyValue.toHexString) { + const hex = anyValue.toHexString(); + if (typeof(hex) === "string") { + return BigNumber.from(hex); + } + + } else { + // For now, handle legacy JSON-ified values (goes away in v6) + let hex = anyValue._hex; + + // New-form JSON + if (hex == null && anyValue.type === "BigNumber") { + hex = anyValue.hex; + } + + if (typeof(hex) === "string") { + if (isHex(hex) || (hex[0] === "-" && isHex(hex.substring(1)))) { + return BigNumber.from(hex); + } + } + } + } + + return logger.throwArgumentError("invalid BigNumber value", "value", value); + + } + + static isBigNumber(value: any): value is BigNumber { + return !!(value && value._isBigNumber); + } +} + +// Normalize the hex string +function toHex(value: string | BN): string { + + // For BN, call on the hex string + if (typeof(value) !== "string") { + return toHex(value.toString(16)); + } + + // If negative, prepend the negative sign to the normalized positive value + if (value[0] === "-") { + // Strip off the negative sign + value = value.substring(1); + + // Cannot have multiple negative signs (e.g. "--0x04") + if (value[0] === "-") { + throw new Error(`invalid hex value: ${value}`); + } + + // Call toHex on the positive component + value = toHex(value); + + // Do not allow "-0x00" + if (value === "0x00") { return value; } + + // Negate the value + return "-" + value; + } + + // Add a "0x" prefix if missing + if (value.substring(0, 2) !== "0x") { value = "0x" + value; } + + // Normalize zero + if (value === "0x") { return "0x00"; } + + // Make the string even length + if (value.length % 2) { value = "0x0" + value.substring(2); } + + // Trim to smallest even-length string + while (value.length > 4 && value.substring(0, 4) === "0x00") { + value = "0x" + value.substring(4); + } + + return value; +} + +function toBigNumber(value: BN): BigNumber { + return BigNumber.from(toHex(value)); +} + +function toBN(value: BigNumberish): BN { + const hex = BigNumber.from(value).toHexString(); + if (hex[0] === "-") { + return (new BN("-" + hex.substring(3), 16)); + } + return new BN(hex.substring(2), 16); +} + +// value should have no prefix +export function _base36To16(value: string): string { + return (new BN(value, 36)).toString(16); +} + +// value should have no prefix +export function _base16To36(value: string): string { + return (new BN(value, 16)).toString(36); +} + + +export function throwFault(fault: string, operation: string, value?: any): never { + const params: any = { fault: fault, operation: operation }; + if (value != null) { params.value = value; } + + return logger.throwError(fault, Logger.errors.NUMERIC_FAULT, params); +} \ No newline at end of file diff --git a/src/sdk/types/user-operation-types.ts b/src/sdk/types/user-operation-types.ts new file mode 100644 index 0000000..e44a34d --- /dev/null +++ b/src/sdk/types/user-operation-types.ts @@ -0,0 +1,42 @@ +import { BytesLike } from "../common/types"; +import { BigNumber, BigNumberish } from "./bignumber"; + +export type PromiseOrValue = T | Promise; + +export type BaseAccountUserOperationStruct = { + sender: PromiseOrValue; + nonce: PromiseOrValue; + initCode: PromiseOrValue; + callData: PromiseOrValue; + accountGasLimits: PromiseOrValue; + preVerificationGas: PromiseOrValue; + gasFees: PromiseOrValue; + paymasterAndData: PromiseOrValue; + signature: PromiseOrValue; +}; + +export type UserOperationStruct = { + sender: PromiseOrValue; + nonce: PromiseOrValue; + initCode: PromiseOrValue; + callData: PromiseOrValue; + callGasLimit: PromiseOrValue; + verificationGasLimit: PromiseOrValue; + preVerificationGas: PromiseOrValue; + maxFeePerGas: PromiseOrValue; + maxPriorityFeePerGas: PromiseOrValue; + paymasterAndData: PromiseOrValue; + signature: PromiseOrValue; +}; + +export interface TypedDataField { + name: string; + type: string; +}; + +export interface FeeData { + lastBaseFeePerGas: null | BigNumber; + maxFeePerGas: null | BigNumber; + maxPriorityFeePerGas: null | BigNumber; + gasPrice: null | BigNumber; +} \ No newline at end of file diff --git a/src/sdk/types/viem-rpc.ts b/src/sdk/types/viem-rpc.ts new file mode 100644 index 0000000..f38177d --- /dev/null +++ b/src/sdk/types/viem-rpc.ts @@ -0,0 +1,14 @@ + +export interface ViemRpcRequestError { + details: string; + metaMessages: string[]; + shortMessage: string; + name: string; + version: string; + message: string; + cause: { + message: string; + code: number; + }; + code: number; + } \ No newline at end of file diff --git a/src/sdk/wallet/index.ts b/src/sdk/wallet/index.ts deleted file mode 100644 index 49fdfbc..0000000 --- a/src/sdk/wallet/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './interfaces'; -export * from './providers'; -export * from './wallet.service'; diff --git a/src/sdk/wallet/interfaces.ts b/src/sdk/wallet/interfaces.ts deleted file mode 100644 index 70e1f37..0000000 --- a/src/sdk/wallet/interfaces.ts +++ /dev/null @@ -1,8 +0,0 @@ -export interface Wallet { - address: string; - providerType: string; -} - -export interface WalletOptions { - provider?: string; -} diff --git a/src/sdk/wallet/providers/dynamic.wallet-provider.ts b/src/sdk/wallet/providers/dynamic.wallet-provider.ts deleted file mode 100644 index 4c73eed..0000000 --- a/src/sdk/wallet/providers/dynamic.wallet-provider.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { NetworkNames, prepareNetworkName } from '../../network'; -import { prepareAddress, UniqueSubject } from '../../common'; -import { WalletProvider } from './interfaces'; -import { TypedDataField } from 'ethers'; - -export abstract class DynamicWalletProvider implements WalletProvider { - readonly address$ = new UniqueSubject(); - readonly networkName$ = new UniqueSubject(); - - protected constructor(readonly type: string) { - // - } - - get address(): string { - return this.address$.value; - } - - get networkName(): NetworkNames { - return this.networkName$.value; - } - - abstract signMessage(message: any): Promise; - - abstract signTypedData(typedData: TypedDataField[], message: any, accountAddress: string): Promise; - - protected setAddress(address: string): void { - this.address$.next(prepareAddress(address)); - } - - protected setNetworkName(networkNameOrChainId: string | number): void { - this.networkName$.next(prepareNetworkName(networkNameOrChainId)); - } -} diff --git a/src/sdk/wallet/providers/index.ts b/src/sdk/wallet/providers/index.ts deleted file mode 100644 index 2cad33e..0000000 --- a/src/sdk/wallet/providers/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -export * from './dynamic.wallet-provider'; -export * from './interfaces'; -export * from './key.wallet-provider'; -export * from './meta-mask.wallet-provider'; -export * from './utils'; -export * from './wallet-connect.wallet-provider'; -export * from './wallet-connect-2.wallet-provider'; -export * from './web3.wallet-provider'; -export * from './web3eip1193.wallet-provider'; diff --git a/src/sdk/wallet/providers/interfaces.ts b/src/sdk/wallet/providers/interfaces.ts deleted file mode 100644 index 5d01514..0000000 --- a/src/sdk/wallet/providers/interfaces.ts +++ /dev/null @@ -1,55 +0,0 @@ -import { BytesLike, TypedDataField, Wallet } from 'ethers'; -import type UniversalProvider from '@walletconnect/universal-provider'; -import { UniqueSubject } from '../../common'; -import { NetworkNames } from '../../network'; - -export interface WalletProvider { - readonly type?: string; - readonly wallet?: Wallet; - readonly address: string; - readonly address$?: UniqueSubject; - readonly networkName?: NetworkNames; - readonly networkName$?: UniqueSubject; - - signMessage(message: BytesLike): Promise; - signTypedData(typedData: TypedDataField[], message: any, accountAddress: string): Promise; -} - -export interface Web3Provider { - send(payload: any, callback: (err: any, response?: any) => any): any; -} - -export interface RequestArguments { - method: string; - params?: unknown[] | object; -} -export interface Web3eip1193Provider { - request(args: RequestArguments): any; -} - -export interface WalletConnectConnector { - accounts: string[]; - chainId: number; - signPersonalMessage(params: any[]): Promise; - on(event: string, callback: (error: Error | null, payload: any | null) => void): void; -} - -export interface WalletLike { - privateKey: string; -} - -export declare class EthereumProvider { - accounts: string[]; - signer: InstanceType; - chainId: number; - request(args: RequestArguments): Promise; - sendAsync(args: RequestArguments, callback: (error: Error | null, response: any) => void): void; - disconnect(): Promise; - on(event: string, callback: (error: Error | null, payload: any | null) => void): void; - once(event: string, callback: (error: Error | null, payload: any | null) => void): void; - removeListener(event: string, callback: (error: Error | null, payload: any | null) => void): void; - off(event: string, callback: (error: Error | null, payload: any | null) => void): void; - readonly isWalletConnect?: boolean; -} - -export type WalletProviderLike = string | WalletLike | WalletProvider | EthereumProvider; diff --git a/src/sdk/wallet/providers/key.wallet-provider.ts b/src/sdk/wallet/providers/key.wallet-provider.ts deleted file mode 100644 index e7b1d1c..0000000 --- a/src/sdk/wallet/providers/key.wallet-provider.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { Wallet, BytesLike, TypedDataField } from 'ethers'; -import { WalletProvider } from './interfaces'; - -export class KeyWalletProvider implements WalletProvider { - readonly type = 'Key'; - readonly address: string; - - readonly wallet: Wallet; - - constructor(privateKey: string) { - this.wallet = new Wallet(privateKey); - - const { address } = this.wallet; - - this.address = address; - } - - async signMessage(message: BytesLike): Promise { - return this.wallet.signMessage(message); - } - - // eslint-disable-next-line @typescript-eslint/no-unused-vars - async signTypedData(typedData: TypedDataField[], message: any, accountAddress: string): Promise { - throw new Error('Not supported in this connectedProvider'); - } -} diff --git a/src/sdk/wallet/providers/meta-mask.wallet-provider.ts b/src/sdk/wallet/providers/meta-mask.wallet-provider.ts deleted file mode 100644 index aa1db20..0000000 --- a/src/sdk/wallet/providers/meta-mask.wallet-provider.ts +++ /dev/null @@ -1,130 +0,0 @@ -import { BytesLike, TypedDataField } from 'ethers'; -import { toHex } from '../../common'; -import { DynamicWalletProvider } from './dynamic.wallet-provider'; - -declare const window: Window & { - ethereum: { - isMetaMask: boolean; - autoRefreshOnNetworkChange: boolean; - networkVersion: string; - selectedAddress: string; - - enable(): Promise; - - on(event: string, callback: (data: T) => any): void; - - request(args: { method: string; params?: any[] }): Promise; - }; -}; - -export class MetaMaskWalletProvider extends DynamicWalletProvider { - static get ethereum(): typeof window['ethereum'] { - return this.detect() ? window.ethereum : null; - } - - static detect(): boolean { - return !!window?.ethereum?.isMetaMask; - } - - static async connect(): Promise { - if (!this.instance) { - if (!this.detect()) { - throw new Error('MetaMask not found'); - } - - this.instance = new MetaMaskWalletProvider(); - - await this.instance.connect(); - } - - if (!this.instance.address) { - throw new Error('Can not connect to MetaMask'); - } - - return this.instance; - } - - private static instance: MetaMaskWalletProvider; - - protected constructor() { - super('MetaMask'); - } - - async signMessage(message: BytesLike): Promise { - return this.sendRequest('personal_sign', [ - toHex(message), - this.address, // - ]); - } - - async signTypedData(typedData: TypedDataField[], message: any, accountAddress: string): Promise { - const chainId = await this.sendRequest('eth_chainId'); - const domainSeparator = { - name: "EtherspotWallet", - version: "2.0.0", - chainId: chainId, - verifyingContract: accountAddress - }; - const signature = await this.sendRequest('eth_signTypedData_v4', [ - this.address, - { - "types": { - "EIP712Domain": [ - { - "name": "name", - "type": "string" - }, - { - "name": "version", - "type": "string" - }, - { - "name": "chainId", - "type": "uint256" - }, - { - "name": "verifyingContract", - "type": "address" - } - ], - "message": typedData - }, - "primaryType": "message", - "domain": domainSeparator, - "message": message - } - ]) - return signature; - } - - protected async connect(): Promise { - const { ethereum } = window; - - ethereum.autoRefreshOnNetworkChange = false; - ethereum.on('accountsChanged', ([address]) => this.setAddress(address)); - ethereum.on('chainChanged', () => { - window.location.reload(); - }); - - try { - const chainId = await this.sendRequest('eth_chainId'); - - this.setNetworkName(chainId); - - const [address] = await this.sendRequest('eth_requestAccounts'); - - this.setAddress(address); - } catch (err) { - // - } - } - - protected async sendRequest(method: string, params?: any): Promise { - const { ethereum } = window; - - return ethereum.request({ - method, - params, - }); - } -} diff --git a/src/sdk/wallet/providers/utils/index.ts b/src/sdk/wallet/providers/utils/index.ts deleted file mode 100644 index 883feb7..0000000 --- a/src/sdk/wallet/providers/utils/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './is-wallet-provider'; -export * from './is-wallet-connect-provider'; diff --git a/src/sdk/wallet/providers/utils/is-wallet-connect-provider.ts b/src/sdk/wallet/providers/utils/is-wallet-connect-provider.ts deleted file mode 100644 index 8c83a42..0000000 --- a/src/sdk/wallet/providers/utils/is-wallet-connect-provider.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { EthereumProvider, WalletProviderLike } from '../interfaces'; - -export function isWalletConnectProvider(provider: WalletProviderLike): boolean { - return typeof provider === 'object' && (provider as EthereumProvider)?.isWalletConnect; -} diff --git a/src/sdk/wallet/providers/utils/is-wallet-provider.ts b/src/sdk/wallet/providers/utils/is-wallet-provider.ts deleted file mode 100644 index 908d474..0000000 --- a/src/sdk/wallet/providers/utils/is-wallet-provider.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { utils } from 'ethers'; -import { WalletLike, WalletProvider, WalletProviderLike } from '../interfaces'; - -export function isWalletProvider(provider: WalletProviderLike): boolean { - let result = false; - - if (provider) { - switch (typeof provider) { - case 'string': - result = utils.isHexString(provider, 32); - break; - - case 'object': - const { privateKey } = provider as WalletLike; - if (utils.isHexString(privateKey, 32)) { - result = true; - } else { - const { type, signMessage } = provider as WalletProvider; - - result = !!type && typeof signMessage === 'function'; - } - break; - } - } - - return result; -} diff --git a/src/sdk/wallet/providers/wallet-connect-2.wallet-provider.ts b/src/sdk/wallet/providers/wallet-connect-2.wallet-provider.ts deleted file mode 100644 index f6809b7..0000000 --- a/src/sdk/wallet/providers/wallet-connect-2.wallet-provider.ts +++ /dev/null @@ -1,103 +0,0 @@ -import { BytesLike, TypedDataField } from 'ethers'; -import { toHex } from '../../common'; -import { DynamicWalletProvider } from './dynamic.wallet-provider'; -import { EthereumProvider } from './interfaces'; - -export class WalletConnect2WalletProvider extends DynamicWalletProvider { - constructor(readonly provider: EthereumProvider) { - super('WalletConnect2'); - - try { - const { - accounts: [address], - chainId, - } = provider; - - this.setAddress(address); - this.setNetworkName(chainId); - } catch (err) { - // - } - - this.updateSessionHandler = this.updateSessionHandler.bind(this); - - provider.on('connect', this.updateSessionHandler); - provider.on('session_event', this.updateSessionHandler); - provider.on('disconnect', () => { - this.setAddress(null); - this.setNetworkName(null); - }); - } - - async signMessage(message: BytesLike): Promise { - const response = await this.provider.signer.request({ - method: 'personal_sign', - params: [toHex(message), this.address], - }); - - return typeof response === 'string' ? response : null; - } - - async signTypedData(typedData: TypedDataField[], message: any, accountAddress: string): Promise { - - const domainSeparator = { - name: "EtherspotWallet", - version: "2.0.0", - chainId: this.provider.chainId, - verifyingContract: accountAddress - }; - const signature = await this.provider.signer.request({ - method: 'eth_signTypedData_v4', - params: [ - this.address, - { - "types": { - "EIP712Domain": [ - { - "name": "name", - "type": "string" - }, - { - "name": "version", - "type": "string" - }, - { - "name": "chainId", - "type": "uint256" - }, - { - "name": "verifyingContract", - "type": "address" - } - ], - "message": typedData - }, - "primaryType": "message", - "domain": domainSeparator, - "message": message - } - ] - }) - return typeof signature === 'string' ? signature : null; - } - - protected updateSessionHandler(error: Error, payload: { params: { accounts: string[]; chainId: number } }): void { - let address: string = null; - let chainId: number = null; - - if (!error) { - try { - ({ - accounts: [address], - chainId, - } = payload.params[0]); - } catch (err) { - address = null; - chainId = null; - } - } - - this.setAddress(address); - this.setNetworkName(chainId); - } -} diff --git a/src/sdk/wallet/providers/wallet-connect.wallet-provider.ts b/src/sdk/wallet/providers/wallet-connect.wallet-provider.ts deleted file mode 100644 index 9cc53e0..0000000 --- a/src/sdk/wallet/providers/wallet-connect.wallet-provider.ts +++ /dev/null @@ -1,69 +0,0 @@ -import { BytesLike, TypedDataField } from 'ethers'; -import { toHex } from '../../common'; -import { DynamicWalletProvider } from './dynamic.wallet-provider'; -import { WalletConnectConnector } from './interfaces'; - -export class WalletConnectWalletProvider extends DynamicWalletProvider { - static connect(connector: WalletConnectConnector): WalletConnectWalletProvider { - return new WalletConnectWalletProvider(connector); - } - - protected constructor(readonly connector: WalletConnectConnector) { - super('WalletConnect'); - - try { - const { - accounts: [address], - chainId, - } = connector; - - this.setAddress(address); - this.setNetworkName(chainId); - } catch (err) { - // - } - - this.updateSessionHandler = this.updateSessionHandler.bind(this); - - connector.on('connect', this.updateSessionHandler); - connector.on('session_update', this.updateSessionHandler); - connector.on('disconnect', () => { - this.setAddress(null); - this.setNetworkName(null); - }); - } - - async signMessage(message: BytesLike): Promise { - const response = await this.connector.signPersonalMessage([ - toHex(message), // - this.address, - ]); - - return response || null; - } - - // eslint-disable-next-line @typescript-eslint/no-unused-vars - async signTypedData(typedData: TypedDataField[], message: any, accountAddress: string): Promise { - throw new Error('Not supported on this provider') - } - - protected updateSessionHandler(error: Error, payload: { params: { accounts: string[]; chainId: number } }): void { - let address: string = null; - let chainId: number = null; - - if (!error) { - try { - ({ - accounts: [address], - chainId, - } = payload.params[0]); - } catch (err) { - address = null; - chainId = null; - } - } - - this.setAddress(address); - this.setNetworkName(chainId); - } -} diff --git a/src/sdk/wallet/providers/web3.wallet-provider.ts b/src/sdk/wallet/providers/web3.wallet-provider.ts deleted file mode 100644 index 072c89d..0000000 --- a/src/sdk/wallet/providers/web3.wallet-provider.ts +++ /dev/null @@ -1,132 +0,0 @@ -import { BytesLike, TypedDataField } from 'ethers'; -import { prepareAddress, toHex } from '../../common'; -import { NetworkNames, prepareNetworkName } from '../../network'; -import { Web3Provider } from './interfaces'; -import { DynamicWalletProvider } from './dynamic.wallet-provider'; - -export class Web3WalletProvider extends DynamicWalletProvider { - static async connect(provider: Web3Provider, type = 'Web3'): Promise { - const result = new Web3WalletProvider(provider, type); - const connected = await result.refresh(); - return connected ? result : null; - } - - constructor(readonly web3: Web3Provider, type = 'Web3') { - super(type); - } - - get address(): string { - return this.address$.value; - } - - get networkName(): NetworkNames { - return this.networkName$.value; - } - - async refresh(): Promise { - let result = false; - - const chainId = await this.sendRequest('eth_chainId'); - const networkName = prepareNetworkName(chainId); - - if (networkName) { - const accounts = await this.sendRequest('eth_accounts'); - - if (Array.isArray(accounts) && accounts.length) { - const address = prepareAddress(accounts[0]); - - if (address) { - this.setAddress(address); - this.setNetworkName(networkName); - - result = true; - } - } - } - - return result; - } - - async signMessage(message: BytesLike): Promise { - return this.sendRequest( - 'personal_sign', - [ - toHex(message), - this.address, // - ], - this.address, - ); - } - - async signTypedData(typedData: TypedDataField[], message: any, accountAddress: string): Promise { - const chainId = await this.sendRequest('eth_chainId'); - const domainSeparator = { - name: "EtherspotWallet", - version: "2.0.0", - chainId: chainId, - verifyingContract: accountAddress - }; - const signature = await this.sendRequest('eth_signTypedData_v4', [ - this.address, - { - "types": { - "EIP712Domain": [ - { - "name": "name", - "type": "string" - }, - { - "name": "version", - "type": "string" - }, - { - "name": "chainId", - "type": "uint256" - }, - { - "name": "verifyingContract", - "type": "address" - } - ], - "message": typedData - }, - "primaryType": "message", - "domain": domainSeparator, - "message": message - } - ]) - return signature; - } - - protected async sendRequest(method: string, params: any[] = [], from?: string): Promise { - return new Promise((resolve, reject) => { - const id = Date.now(); - - this.web3.send( - { - jsonrpc: '2.0', - method, - params, - id, - from, - }, - (err: Error, response: { result: T }) => { - if (err) { - reject(err); - return; - } - - let result: T; - - try { - ({ result } = response); - } catch (err) { - result = null; - } - - resolve(result || null); - }, - ); - }); - } -} diff --git a/src/sdk/wallet/providers/web3eip1193.wallet-provider.ts b/src/sdk/wallet/providers/web3eip1193.wallet-provider.ts deleted file mode 100644 index 0328f6d..0000000 --- a/src/sdk/wallet/providers/web3eip1193.wallet-provider.ts +++ /dev/null @@ -1,105 +0,0 @@ -import { BytesLike, TypedDataField } from 'ethers'; -import { prepareAddress, toHex } from '../../common'; -import { NetworkNames, prepareNetworkName } from '../../network'; -import { Web3eip1193Provider } from './interfaces'; -import { DynamicWalletProvider } from './dynamic.wallet-provider'; - -export class Web3eip1193WalletProvider extends DynamicWalletProvider { - static async connect(provider: Web3eip1193Provider, type = 'Web3'): Promise { - const result = new Web3eip1193WalletProvider(provider, type); - const connected = await result.refresh(); - return connected ? result : null; - } - - constructor(readonly web3: Web3eip1193Provider, type = 'Web3') { - super(type); - } - - get address(): string { - return this.address$.value; - } - - get networkName(): NetworkNames { - return this.networkName$.value; - } - - async refresh(): Promise { - let result = false; - const chainId = await this.sendRequest('eth_chainId'); - const networkName = prepareNetworkName(chainId); - - if (networkName) { - const accounts = await this.sendRequest('eth_accounts'); - - if (Array.isArray(accounts) && accounts.length) { - const address = prepareAddress(accounts[0]); - - if (address) { - this.setAddress(address); - this.setNetworkName(networkName); - - result = true; - } - } - } - - return result; - } - - async signMessage(message: BytesLike): Promise { - return this.sendRequest('personal_sign', [toHex(message), this.address]); - } - - async signTypedData(typedData: TypedDataField[], message: any, accountAddress: string): Promise { - const chainId = await this.sendRequest('eth_chainId'); - const domainSeparator = { - name: "EtherspotWallet", - version: "2.0.0", - chainId: chainId, - verifyingContract: accountAddress - }; - const signature = await this.sendRequest('eth_signTypedData_v4', [ - this.address, - { - "types": { - "EIP712Domain": [ - { - "name": "name", - "type": "string" - }, - { - "name": "version", - "type": "string" - }, - { - "name": "chainId", - "type": "uint256" - }, - { - "name": "verifyingContract", - "type": "address" - } - ], - "message": typedData - }, - "primaryType": "message", - "domain": domainSeparator, - "message": message - } - ]) - return signature; - } - - protected async sendRequest(method: string, params: any[] = []): Promise { - try { - const result = await this.web3.request({ - method, - params, - }); - - return result || null; - } catch (error) { - return error; - } - } -} diff --git a/src/sdk/wallet/wallet.service.ts b/src/sdk/wallet/wallet.service.ts deleted file mode 100644 index 8642338..0000000 --- a/src/sdk/wallet/wallet.service.ts +++ /dev/null @@ -1,119 +0,0 @@ -import { Observable, Subscription } from 'rxjs'; -import { map } from 'rxjs/operators'; -import { BytesLike, ethers, providers, Wallet as EtherWallet, TypedDataField } from 'ethers'; -import { Service, ObjectSubject } from '../common'; -import { WalletProvider, WalletProviderLike, KeyWalletProvider, WalletLike } from './providers'; -import { Wallet, WalletOptions } from './interfaces'; - -export class WalletService extends Service { - readonly wallet$ = new ObjectSubject(); - readonly EOAAddress$: Observable; - readonly rpcBundlerUrl: string; - readonly chainId: number; - - provider: WalletProvider; - - constructor(private providerLike: WalletProviderLike, private options: WalletOptions, public rpcUrl: string, public chain: number) { - super(); - this.rpcBundlerUrl = rpcUrl; - this.chainId = chain; - this.EOAAddress$ = this.wallet$.observeKey('address'); - } - - get wallet(): Wallet { - return this.wallet$.value; - } - - get etherWallet(): Partial { - return this.wallet$.value; - } - - get EOAAddress(): string { - return this.wallet ? this.wallet.address : null; - } - - get walletProvider(): WalletProvider { - return this.provider ? this.provider : null; - } - - getWalletProvider(): providers.JsonRpcProvider { - if (this.rpcUrl) return new ethers.providers.JsonRpcProvider(this.rpcUrl) - return new ethers.providers.JsonRpcProvider(this.rpcBundlerUrl) - } - - async signMessage(message: BytesLike): Promise { - return this.provider ? this.provider.signMessage(message) : null; - } - - async signTypedData(types: TypedDataField[], message: any, accountAddress: string): Promise { - return this.provider ? this.provider.signTypedData(types, message, accountAddress) : null; - } - - protected switchWalletProvider(providerLike: WalletProviderLike): void { - let provider: WalletProvider = null; - if (providerLike) { - switch (typeof providerLike) { - case 'object': { - const { privateKey } = providerLike as WalletLike; - const walletLike = providerLike as EtherWallet; - const isNotJsonRpcProvider = walletLike.provider?.constructor.name !== 'JsonRpcProvider'; - if (privateKey && isNotJsonRpcProvider) { - provider = new KeyWalletProvider(privateKey); - } else { - provider = providerLike as WalletProvider; - } - break; - } - - case 'string': - provider = new KeyWalletProvider(providerLike); - break; - } - } - - if (!provider) { - this.wallet$.next(null); - - this.removeSubscriptions(); - } else { - const { networkService } = this.services; - const { type: providerType } = provider; - - const subscriptions: Subscription[] = []; - const { address, address$ } = provider; - - if (typeof address$ !== 'undefined') { - subscriptions.push( - address$ - .pipe( - map((address) => ({ - address, - providerType, - })), - ) - .subscribe((wallet) => this.wallet$.next(wallet)), - ); - } else if (typeof address !== 'undefined') { - this.wallet$.next({ - address, - providerType, - }); - } else { - throw new Error('Invalid wallet address'); - } - - networkService.useDefaultNetwork(); - - this.replaceSubscriptions(...subscriptions); - } - - this.provider = provider; - } - - protected onInit() { - if (this.providerLike) { - this.switchWalletProvider(this.providerLike); - this.providerLike = null; - } - } -} diff --git a/tsconfig.json b/tsconfig.json index be82388..ab80ac4 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,18 +1,20 @@ { "compilerOptions": { - "module": "commonjs", + "resolveJsonModule": true, + "module": "NodeNext", "declaration": true, "removeComments": true, "emitDecoratorMetadata": true, "experimentalDecorators": true, "esModuleInterop": true, - "target": "es2017", + "target": "ES2020", "sourceMap": false, "baseUrl": "./", "rootDir": "./", "strict": false, "downlevelIteration": true, - "resolveJsonModule": true, + "moduleResolution": "NodeNext", + "skipLibCheck": true, "lib": [ "DOM", "ES5", diff --git a/tsup.config.ts b/tsup.config.ts new file mode 100644 index 0000000..b8f3277 --- /dev/null +++ b/tsup.config.ts @@ -0,0 +1,19 @@ +import { defineConfig } from 'tsup'; + +export default defineConfig([ + { + entry: ['src/**/*.ts'], + format: 'cjs', + outDir: 'dist/cjs', + dts: true, // Output types to a common directory + sourcemap: true, + clean: true, // Cleans the output directory + }, + { + entry: ['src/**/*.ts'], + format: 'esm', + outDir: 'dist/esm', + dts: false, // Only generate .d.ts once (in the CJS build) + sourcemap: true, + } +]); \ No newline at end of file