@lidofinance/lido-ethereum-sdk
Version:
<div style="display: flex;" align="center"> <h1 align="center">Lido Ethereum SDK</h1> </div>
1,453 lines (1,452 loc) • 125 kB
TypeScript
import { type Address } from 'viem';
import { TransactionResult } from '../core/index.js';
import { LidoSDKModule } from '../common/class-primitives/sdk-module.js';
import type { AccountValue, NoTxOptions, PopulatedTransaction } from '../core/types.js';
import type { UnstethNFT, UnstethApproveAllProps, UnstethApproveProps, UnstethApprovedForProps, UnstethIsApprovedForAllProps, UnstethTransferProps, UnstethContractType } from './types.js';
export declare class LidoSDKUnstETH extends LidoSDKModule {
contractAddress(): Promise<Address>;
getContract(): Promise<UnstethContractType>;
getNFTsByAccount(account?: AccountValue): Promise<UnstethNFT[]>;
getAccountByNFT(id: bigint): Promise<Address>;
transfer(props: UnstethTransferProps): Promise<TransactionResult>;
transferSimulateTx(props: NoTxOptions<UnstethTransferProps>): Promise<import("viem").SimulateContractReturnType<readonly [{
readonly inputs: readonly [];
readonly name: "AdminZeroAddress";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ApprovalToOwner";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ApproveToCaller";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_firstArrayLength";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "_secondArrayLength";
readonly type: "uint256";
}];
readonly name: "ArraysLengthMismatch";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "BatchesAreNotSorted";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "CantSendValueRecipientMayHaveReverted";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "EmptyBatches";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidContractVersionIncrement";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_hint";
readonly type: "uint256";
}];
readonly name: "InvalidHint";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly name: "InvalidOwnerAddress";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidReportTimestamp";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}];
readonly name: "InvalidRequestId";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "startId";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "endId";
readonly type: "uint256";
}];
readonly name: "InvalidRequestIdRange";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidState";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "NonZeroContractVersionOnInit";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "NotEnoughEther";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "_sender";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "_owner";
readonly type: "address";
}];
readonly name: "NotOwner";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "sender";
readonly type: "address";
}];
readonly name: "NotOwnerOrApproved";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "sender";
readonly type: "address";
}];
readonly name: "NotOwnerOrApprovedForAll";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "PauseUntilMustBeInFuture";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "PausedExpected";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}];
readonly name: "RequestAlreadyClaimed";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_amountOfStETH";
readonly type: "uint256";
}];
readonly name: "RequestAmountTooLarge";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_amountOfStETH";
readonly type: "uint256";
}];
readonly name: "RequestAmountTooSmall";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "RequestIdsNotSorted";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}];
readonly name: "RequestNotFoundOrNotFinalized";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ResumedExpected";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "string";
readonly name: "str";
readonly type: "string";
}];
readonly name: "StringTooLong";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "sent";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "maxExpected";
readonly type: "uint256";
}];
readonly name: "TooMuchEtherToFinalize";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "from";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "realOwner";
readonly type: "address";
}];
readonly name: "TransferFromIncorrectOwner";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "TransferFromZeroAddress";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly name: "TransferToNonIERC721Receiver";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "TransferToThemselves";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "TransferToZeroAddress";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "expected";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "received";
readonly type: "uint256";
}];
readonly name: "UnexpectedContractVersion";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ZeroAmountOfETH";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ZeroMetadata";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ZeroPauseDuration";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ZeroRecipient";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ZeroShareRate";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ZeroTimestamp";
readonly type: "error";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "owner";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "approved";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "uint256";
readonly name: "tokenId";
readonly type: "uint256";
}];
readonly name: "Approval";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "owner";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "operator";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "bool";
readonly name: "approved";
readonly type: "bool";
}];
readonly name: "ApprovalForAll";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "string";
readonly name: "baseURI";
readonly type: "string";
}];
readonly name: "BaseURISet";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "_fromTokenId";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "_toTokenId";
readonly type: "uint256";
}];
readonly name: "BatchMetadataUpdate";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [];
readonly name: "BunkerModeDisabled";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "_sinceTimestamp";
readonly type: "uint256";
}];
readonly name: "BunkerModeEnabled";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "version";
readonly type: "uint256";
}];
readonly name: "ContractVersionSet";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "address";
readonly name: "_admin";
readonly type: "address";
}];
readonly name: "InitializedV1";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "_tokenId";
readonly type: "uint256";
}];
readonly name: "MetadataUpdate";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "address";
readonly name: "nftDescriptorAddress";
readonly type: "address";
}];
readonly name: "NftDescriptorAddressSet";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "duration";
readonly type: "uint256";
}];
readonly name: "Paused";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [];
readonly name: "Resumed";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}, {
readonly indexed: true;
readonly internalType: "bytes32";
readonly name: "previousAdminRole";
readonly type: "bytes32";
}, {
readonly indexed: true;
readonly internalType: "bytes32";
readonly name: "newAdminRole";
readonly type: "bytes32";
}];
readonly name: "RoleAdminChanged";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "account";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "sender";
readonly type: "address";
}];
readonly name: "RoleGranted";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "account";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "sender";
readonly type: "address";
}];
readonly name: "RoleRevoked";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "from";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "to";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "uint256";
readonly name: "tokenId";
readonly type: "uint256";
}];
readonly name: "Transfer";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "uint256";
readonly name: "requestId";
readonly type: "uint256";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "owner";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "receiver";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "amountOfETH";
readonly type: "uint256";
}];
readonly name: "WithdrawalClaimed";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "uint256";
readonly name: "requestId";
readonly type: "uint256";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "requestor";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "owner";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "amountOfStETH";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "amountOfShares";
readonly type: "uint256";
}];
readonly name: "WithdrawalRequested";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "uint256";
readonly name: "from";
readonly type: "uint256";
}, {
readonly indexed: true;
readonly internalType: "uint256";
readonly name: "to";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "amountOfETHLocked";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "sharesToBurn";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "timestamp";
readonly type: "uint256";
}];
readonly name: "WithdrawalsFinalized";
readonly type: "event";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "_to";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}];
readonly name: "approve";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "_owner";
readonly type: "address";
}];
readonly name: "balanceOf";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_maxShareRate";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "_maxTimestamp";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "_maxRequestsPerCall";
readonly type: "uint256";
}, {
readonly components: readonly [{
readonly internalType: "uint256";
readonly name: "remainingEthBudget";
readonly type: "uint256";
}, {
readonly internalType: "bool";
readonly name: "finished";
readonly type: "bool";
}, {
readonly internalType: "uint256[36]";
readonly name: "batches";
readonly type: "uint256[36]";
}, {
readonly internalType: "uint256";
readonly name: "batchesLength";
readonly type: "uint256";
}];
readonly internalType: "struct WithdrawalQueueBase.BatchesCalculationState";
readonly name: "_state";
readonly type: "tuple";
}];
readonly name: "calculateFinalizationBatches";
readonly outputs: readonly [{
readonly components: readonly [{
readonly internalType: "uint256";
readonly name: "remainingEthBudget";
readonly type: "uint256";
}, {
readonly internalType: "bool";
readonly name: "finished";
readonly type: "bool";
}, {
readonly internalType: "uint256[36]";
readonly name: "batches";
readonly type: "uint256[36]";
}, {
readonly internalType: "uint256";
readonly name: "batchesLength";
readonly type: "uint256";
}];
readonly internalType: "struct WithdrawalQueueBase.BatchesCalculationState";
readonly name: "";
readonly type: "tuple";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}];
readonly name: "claimWithdrawal";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "_requestIds";
readonly type: "uint256[]";
}, {
readonly internalType: "uint256[]";
readonly name: "_hints";
readonly type: "uint256[]";
}];
readonly name: "claimWithdrawals";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "_requestIds";
readonly type: "uint256[]";
}, {
readonly internalType: "uint256[]";
readonly name: "_hints";
readonly type: "uint256[]";
}, {
readonly internalType: "address";
readonly name: "_recipient";
readonly type: "address";
}];
readonly name: "claimWithdrawalsTo";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_lastRequestIdToBeFinalized";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "_maxShareRate";
readonly type: "uint256";
}];
readonly name: "finalize";
readonly outputs: readonly [];
readonly stateMutability: "payable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}];
readonly name: "getApproved";
readonly outputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getBaseURI";
readonly outputs: readonly [{
readonly internalType: "string";
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "_requestIds";
readonly type: "uint256[]";
}, {
readonly internalType: "uint256[]";
readonly name: "_hints";
readonly type: "uint256[]";
}];
readonly name: "getClaimableEther";
readonly outputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "claimableEthValues";
readonly type: "uint256[]";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getContractVersion";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getLastCheckpointIndex";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getLastFinalizedRequestId";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getLastRequestId";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getLockedEtherAmount";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getNFTDescriptorAddress";
readonly outputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getResumeSinceTimestamp";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}];
readonly name: "getRoleAdmin";
readonly outputs: readonly [{
readonly internalType: "bytes32";
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "_owner";
readonly type: "address";
}];
readonly name: "getWithdrawalRequests";
readonly outputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "requestsIds";
readonly type: "uint256[]";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "_requestIds";
readonly type: "uint256[]";
}];
readonly name: "getWithdrawalStatus";
readonly outputs: readonly [{
readonly components: readonly [{
readonly internalType: "uint256";
readonly name: "amountOfStETH";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "amountOfShares";
readonly type: "uint256";
}, {
readonly internalType: "address";
readonly name: "owner";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "timestamp";
readonly type: "uint256";
}, {
readonly internalType: "bool";
readonly name: "isFinalized";
readonly type: "bool";
}, {
readonly internalType: "bool";
readonly name: "isClaimed";
readonly type: "bool";
}];
readonly internalType: "struct WithdrawalQueueBase.WithdrawalRequestStatus[]";
readonly name: "statuses";
readonly type: "tuple[]";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "_owner";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "_operator";
readonly type: "address";
}];
readonly name: "isApprovedForAll";
readonly outputs: readonly [{
readonly internalType: "bool";
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "isBunkerModeActive";
readonly outputs: readonly [{
readonly internalType: "bool";
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "isPaused";
readonly outputs: readonly [{
readonly internalType: "bool";
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "name";
readonly outputs: readonly [{
readonly internalType: "string";
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}];
readonly name: "ownerOf";
readonly outputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "_amounts";
readonly type: "uint256[]";
}, {
readonly internalType: "address";
readonly name: "_owner";
readonly type: "address";
}];
readonly name: "requestWithdrawals";
readonly outputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "requestIds";
readonly type: "uint256[]";
}];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "_amounts";
readonly type: "uint256[]";
}, {
readonly internalType: "address";
readonly name: "_owner";
readonly type: "address";
}, {
readonly components: readonly [{
readonly internalType: "uint256";
readonly name: "value";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "deadline";
readonly type: "uint256";
}, {
readonly internalType: "uint8";
readonly name: "v";
readonly type: "uint8";
}, {
readonly internalType: "bytes32";
readonly name: "r";
readonly type: "bytes32";
}, {
readonly internalType: "bytes32";
readonly name: "s";
readonly type: "bytes32";
}];
readonly internalType: "struct WithdrawalQueue.PermitInput";
readonly name: "_permit";
readonly type: "tuple";
}];
readonly name: "requestWithdrawalsWithPermit";
readonly outputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "requestIds";
readonly type: "uint256[]";
}];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "_amounts";
readonly type: "uint256[]";
}, {
readonly internalType: "address";
readonly name: "_owner";
readonly type: "address";
}];
readonly name: "requestWithdrawalsWstETH";
readonly outputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "requestIds";
readonly type: "uint256[]";
}];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "_amounts";
readonly type: "uint256[]";
}, {
readonly internalType: "address";
readonly name: "_owner";
readonly type: "address";
}, {
readonly components: readonly [{
readonly internalType: "uint256";
readonly name: "value";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "deadline";
readonly type: "uint256";
}, {
readonly internalType: "uint8";
readonly name: "v";
readonly type: "uint8";
}, {
readonly internalType: "bytes32";
readonly name: "r";
readonly type: "bytes32";
}, {
readonly internalType: "bytes32";
readonly name: "s";
readonly type: "bytes32";
}];
readonly internalType: "struct WithdrawalQueue.PermitInput";
readonly name: "_permit";
readonly type: "tuple";
}];
readonly name: "requestWithdrawalsWstETHWithPermit";
readonly outputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "requestIds";
readonly type: "uint256[]";
}];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "_from";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "_to";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}];
readonly name: "safeTransferFrom";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "_from";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "_to";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}, {
readonly internalType: "bytes";
readonly name: "_data";
readonly type: "bytes";
}];
readonly name: "safeTransferFrom";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "_operator";
readonly type: "address";
}, {
readonly internalType: "bool";
readonly name: "_approved";
readonly type: "bool";
}];
readonly name: "setApprovalForAll";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "string";
readonly name: "_baseURI";
readonly type: "string";
}];
readonly name: "setBaseURI";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes4";
readonly name: "interfaceId";
readonly type: "bytes4";
}];
readonly name: "supportsInterface";
readonly outputs: readonly [{
readonly internalType: "bool";
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "symbol";
readonly outputs: readonly [{
readonly internalType: "string";
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}];
readonly name: "tokenURI";
readonly outputs: readonly [{
readonly internalType: "string";
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "_from";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "_to";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}];
readonly name: "transferFrom";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "unfinalizedRequestNumber";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "unfinalizedStETH";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}], "safeTransferFrom", readonly [_from: `0x${string}`, _to: `0x${string}`, _requestId: bigint] | readonly [_from: `0x${string}`, _to: `0x${string}`, _requestId: bigint, _data: `0x${string}`], import("viem").Chain | undefined, import("viem").Account | undefined, undefined, import("viem").JsonRpcAccount>>;
transferPopulateTx(props: NoTxOptions<UnstethTransferProps>): Promise<PopulatedTransaction>;
getSingleTokenApproval({ id, account: accountProp, }: UnstethApprovedForProps): Promise<`0x${string}`>;
setSingleTokenApproval(props: UnstethApproveProps): Promise<TransactionResult>;
setSingleTokenApprovalPopulateTx(props: NoTxOptions<UnstethApproveProps>): Promise<PopulatedTransaction>;
setSingleTokenApprovalSimulateTx(props: NoTxOptions<UnstethApproveProps>): Promise<import("viem").SimulateContractReturnType<readonly [{
readonly inputs: readonly [];
readonly name: "AdminZeroAddress";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ApprovalToOwner";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ApproveToCaller";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_firstArrayLength";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "_secondArrayLength";
readonly type: "uint256";
}];
readonly name: "ArraysLengthMismatch";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "BatchesAreNotSorted";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "CantSendValueRecipientMayHaveReverted";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "EmptyBatches";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidContractVersionIncrement";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_hint";
readonly type: "uint256";
}];
readonly name: "InvalidHint";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly name: "InvalidOwnerAddress";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidReportTimestamp";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}];
readonly name: "InvalidRequestId";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "startId";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "endId";
readonly type: "uint256";
}];
readonly name: "InvalidRequestIdRange";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidState";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "NonZeroContractVersionOnInit";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "NotEnoughEther";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "_sender";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "_owner";
readonly type: "address";
}];
readonly name: "NotOwner";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "sender";
readonly type: "address";
}];
readonly name: "NotOwnerOrApproved";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "sender";
readonly type: "address";
}];
readonly name: "NotOwnerOrApprovedForAll";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "PauseUntilMustBeInFuture";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "PausedExpected";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}];
readonly name: "RequestAlreadyClaimed";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_amountOfStETH";
readonly type: "uint256";
}];
readonly name: "RequestAmountTooLarge";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_amountOfStETH";
readonly type: "uint256";
}];
readonly name: "RequestAmountTooSmall";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "RequestIdsNotSorted";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "_requestId";
readonly type: "uint256";
}];
readonly name: "RequestNotFoundOrNotFinalized";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ResumedExpected";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "string";
readonly name: "str";
readonly type: "string";
}];
readonly name: "StringTooLong";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "sent";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "maxExpected";
readonly type: "uint256";
}];
readonly name: "TooMuchEtherToFinalize";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "from";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "realOwner";
readonly type: "address";
}];
readonly name: "TransferFromIncorrectOwner";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "TransferFromZeroAddress";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly name: "TransferToNonIERC721Receiver";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "TransferToThemselves";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "TransferToZeroAddress";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "expected";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "received";
readonly type: "uint256";
}];
readonly name: "UnexpectedContractVersion";
readonly type: "error";
}, {