UNPKG

@alchemy/aa-core

Version:

viem based SDK that enables interactions with ERC-4337 Smart Accounts. ABIs are based off the definitions generated in @account-abstraction/contracts

23 lines 1.27 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.estimateUserOperationGas = void 0; const isSmartAccountClient_js_1 = require("../../client/isSmartAccountClient.js"); const account_js_1 = require("../../errors/account.js"); const client_js_1 = require("../../errors/client.js"); const index_js_1 = require("../../utils/index.js"); const initUserOperation_js_1 = require("./internal/initUserOperation.js"); async function estimateUserOperationGas(client, args) { const { account = client.account, overrides } = args; if (!account) { throw new account_js_1.AccountNotFoundError(); } if (!(0, isSmartAccountClient_js_1.isBaseSmartAccountClient)(client)) { throw new client_js_1.IncompatibleClientError("BaseSmartAccountClient", "estimateUserOperationGas", client); } return (0, initUserOperation_js_1._initUserOperation)(client, args).then(async (struct) => { const request = (0, index_js_1.deepHexlify)(await (0, index_js_1.resolveProperties)(struct)); return client.estimateUserOperationGas(request, account.getEntryPoint().address, overrides?.stateOverride); }); } exports.estimateUserOperationGas = estimateUserOperationGas; //# sourceMappingURL=estimateUserOperationGas.js.map