clanker-sdk / v4
Classes
Clanker
Defined in: src/v4/index.ts:30 Clanker v4Constructors
Clanker
Properties
Methods
Promise<bigint>
Amount of rewards for the token and rewardRecipient
Promise<
| {
error: undefined;
txHash: `0x${string}`;
}
| {
error: ClankerError;
txHash: undefined;
}>
Transaction hash of the claim or error
View full generated declaration (593 lines)
Defined in: src/v4/index.ts:74
Simulate claiming rewards. Will use the wallet account on the Clanker class or
the passed-in account.
Promise<
| SimulateContractReturnType<readonly [{
inputs: readonly [{
internalType: "address";
name: "owner_";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "ClaimAmountTooHigh";
type: "error";
}, {
inputs: readonly [];
name: "InvalidRecipient";
type: "error";
}, {
inputs: readonly [];
name: "NoFeesToClaim";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "OwnableInvalidOwner";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "OwnableUnauthorizedAccount";
type: "error";
}, {
inputs: readonly [];
name: "ReentrancyGuardReentrantCall";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "SafeERC20FailedOperation";
type: "error";
}, {
inputs: readonly [];
name: "TransferFailed";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "depositor";
type: "address";
}];
name: "AddDepositor";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "feeOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountClaimed";
type: "uint256";
}];
name: "ClaimTokens";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "feeOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "recipient";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountClaimed";
type: "uint256";
}];
name: "ClaimTokensPermissioned";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "previousOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransferred";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "feeOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "balance";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}];
name: "StoreTokens";
type: "event";
}, {
inputs: readonly [{
internalType: "address";
name: "depositor";
type: "address";
}];
name: "addDepositor";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "depositor";
type: "address";
}];
name: "allowedDepositors";
outputs: readonly [{
internalType: "bool";
name: "isAllowed";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "availableFees";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "claim";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "feesToClaim";
outputs: readonly [{
internalType: "uint256";
name: "balance";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "renounceOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "amount";
type: "uint256";
}];
name: "storeFees";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}],
| "renounceOwnership"
| "transferOwnership"
| "claim"
| "addDepositor"
| "storeFees"> & {
error?: undefined;
}
| UndefinedValues<SimulateContractReturnType<readonly [{
inputs: readonly [{
internalType: "address";
name: "owner_";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "ClaimAmountTooHigh";
type: "error";
}, {
inputs: readonly [];
name: "InvalidRecipient";
type: "error";
}, {
inputs: readonly [];
name: "NoFeesToClaim";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "OwnableInvalidOwner";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "OwnableUnauthorizedAccount";
type: "error";
}, {
inputs: readonly [];
name: "ReentrancyGuardReentrantCall";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "SafeERC20FailedOperation";
type: "error";
}, {
inputs: readonly [];
name: "TransferFailed";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "depositor";
type: "address";
}];
name: "AddDepositor";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "feeOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountClaimed";
type: "uint256";
}];
name: "ClaimTokens";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "feeOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "recipient";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountClaimed";
type: "uint256";
}];
name: "ClaimTokensPermissioned";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "previousOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransferred";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "feeOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "balance";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}];
name: "StoreTokens";
type: "event";
}, {
inputs: readonly [{
internalType: "address";
name: "depositor";
type: "address";
}];
name: "addDepositor";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "depositor";
type: "address";
}];
name: "allowedDepositors";
outputs: readonly [{
internalType: "bool";
name: "isAllowed";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "availableFees";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "claim";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "feesToClaim";
outputs: readonly [{
internalType: "uint256";
name: "balance";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "renounceOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "amount";
type: "uint256";
}];
name: "storeFees";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}],
| "renounceOwnership"
| "transferOwnership"
| "claim"
| "addDepositor"
| "storeFees">> & {
error: ClankerError;
}>
The simulated output
Promise<
| {
txHash: `0x${string}`;
} & {
error?: undefined;
}
| UndefinedValues<{
txHash: `0x${string}`;
}> & {
error: ClankerError;
}>
Transaction hash of the claim or error
Promise<
| {
txHash: `0x${string}`;
waitForTransaction: () => ClankerResult<{
address: `0x${string}`;
}>;
} & {
error?: undefined;
}
| UndefinedValues<{
txHash: `0x${string}`;
waitForTransaction: () => ClankerResult<{
address: `0x${string}`;
}>;
}> & {
error: ClankerError;
}>
Transaction hash and awaitable function for full deployment
Promise<
| SimulateContractReturnType<ClankerFactory,
| "claimTeamFees"
| "deployToken"
| "deployTokenZeroSupply"
| "initialize"
| "renounceOwnership"
| "setAdmin"
| "setDeprecated"
| "setExtension"
| "setHook"
| "setLocker"
| "setMevModule"
| "setTeamFeeRecipient"
| "transferOwnership"
| "updateLiquidityLocker"
| "claimRewards"
| "deployTokenWithCustomTeamRewardRecipient"
| "updateVault"> & {
error?: undefined;
}
| UndefinedValues<SimulateContractReturnType<ClankerFactory,
| "claimTeamFees"
| "deployToken"
| "deployTokenZeroSupply"
| "initialize"
| "renounceOwnership"
| "setAdmin"
| "setDeprecated"
| "setExtension"
| "setHook"
| "setLocker"
| "setMevModule"
| "setTeamFeeRecipient"
| "transferOwnership"
| "updateLiquidityLocker"
| "claimRewards"
| "deployTokenWithCustomTeamRewardRecipient"
| "updateVault">> & {
error: ClankerError;
}>
Abi transaction
View full generated declaration (294 lines)
Defined in: src/v4/index.ts:124
Get an abi-typed transaction for checking rewards on a token.
Promise<{
abi: readonly [{
inputs: readonly [{
internalType: "address";
name: "owner_";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "ClaimAmountTooHigh";
type: "error";
}, {
inputs: readonly [];
name: "InvalidRecipient";
type: "error";
}, {
inputs: readonly [];
name: "NoFeesToClaim";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "OwnableInvalidOwner";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "OwnableUnauthorizedAccount";
type: "error";
}, {
inputs: readonly [];
name: "ReentrancyGuardReentrantCall";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "SafeERC20FailedOperation";
type: "error";
}, {
inputs: readonly [];
name: "TransferFailed";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "depositor";
type: "address";
}];
name: "AddDepositor";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "feeOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountClaimed";
type: "uint256";
}];
name: "ClaimTokens";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "feeOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "recipient";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountClaimed";
type: "uint256";
}];
name: "ClaimTokensPermissioned";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "previousOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransferred";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "feeOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "balance";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}];
name: "StoreTokens";
type: "event";
}, {
inputs: readonly [{
internalType: "address";
name: "depositor";
type: "address";
}];
name: "addDepositor";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "depositor";
type: "address";
}];
name: "allowedDepositors";
outputs: readonly [{
internalType: "bool";
name: "isAllowed";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "availableFees";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "claim";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "feesToClaim";
outputs: readonly [{
internalType: "uint256";
name: "balance";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "renounceOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "amount";
type: "uint256";
}];
name: "storeFees";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}];
address: `0x${string}`;
args: readonly [`0x${string}`, `0x${string}`];
functionName: "availableFees";
}>
Abi transaction
View full generated declaration (289 lines)
Defined in: src/v4/index.ts:46
Get an abi-typed transaction for claiming rewards on a token.
Promise<ClankerTransactionConfig<readonly [{
inputs: readonly [{
internalType: "address";
name: "owner_";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "ClaimAmountTooHigh";
type: "error";
}, {
inputs: readonly [];
name: "InvalidRecipient";
type: "error";
}, {
inputs: readonly [];
name: "NoFeesToClaim";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "OwnableInvalidOwner";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "OwnableUnauthorizedAccount";
type: "error";
}, {
inputs: readonly [];
name: "ReentrancyGuardReentrantCall";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "SafeERC20FailedOperation";
type: "error";
}, {
inputs: readonly [];
name: "TransferFailed";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "depositor";
type: "address";
}];
name: "AddDepositor";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "feeOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountClaimed";
type: "uint256";
}];
name: "ClaimTokens";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "feeOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "recipient";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountClaimed";
type: "uint256";
}];
name: "ClaimTokensPermissioned";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "previousOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransferred";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "feeOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "balance";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}];
name: "StoreTokens";
type: "event";
}, {
inputs: readonly [{
internalType: "address";
name: "depositor";
type: "address";
}];
name: "addDepositor";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "depositor";
type: "address";
}];
name: "allowedDepositors";
outputs: readonly [{
internalType: "bool";
name: "isAllowed";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "availableFees";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "claim";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "feesToClaim";
outputs: readonly [{
internalType: "uint256";
name: "balance";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "renounceOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "feeOwner";
type: "address";
}, {
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "amount";
type: "uint256";
}];
name: "storeFees";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}]>>
Abi transaction
View full generated declaration (820 lines)
Defined in: src/v4/index.ts:175
Get an abi-typed transaction for deploying a clanker.
Promise<ClankerTransactionConfig<readonly [{
inputs: readonly [{
internalType: "address";
name: "owner_";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "Deprecated";
type: "error";
}, {
inputs: readonly [];
name: "ExtensionMsgValueMismatch";
type: "error";
}, {
inputs: readonly [];
name: "ExtensionNotEnabled";
type: "error";
}, {
inputs: readonly [];
name: "HookNotEnabled";
type: "error";
}, {
inputs: readonly [];
name: "InvalidExtension";
type: "error";
}, {
inputs: readonly [];
name: "InvalidHook";
type: "error";
}, {
inputs: readonly [];
name: "InvalidLocker";
type: "error";
}, {
inputs: readonly [];
name: "InvalidMevModule";
type: "error";
}, {
inputs: readonly [];
name: "LockerNotEnabled";
type: "error";
}, {
inputs: readonly [];
name: "MaxExtensionBpsExceeded";
type: "error";
}, {
inputs: readonly [];
name: "MaxExtensionsExceeded";
type: "error";
}, {
inputs: readonly [];
name: "MevModuleNotEnabled";
type: "error";
}, {
inputs: readonly [];
name: "NotFound";
type: "error";
}, {
inputs: readonly [];
name: "OnlyNonOriginatingChains";
type: "error";
}, {
inputs: readonly [];
name: "OnlyOriginatingChain";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "OwnableInvalidOwner";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "OwnableUnauthorizedAccount";
type: "error";
}, {
inputs: readonly [];
name: "ReentrancyGuardReentrantCall";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "recipient";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}];
name: "ClaimTeamFees";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "extension";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "extensionSupply";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "msgValue";
type: "uint256";
}];
name: "ExtensionTriggered";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "previousOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransferred";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "admin";
type: "address";
}, {
indexed: false;
internalType: "bool";
name: "enabled";
type: "bool";
}];
name: "SetAdmin";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "bool";
name: "deprecated";
type: "bool";
}];
name: "SetDeprecated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "extension";
type: "address";
}, {
indexed: false;
internalType: "bool";
name: "enabled";
type: "bool";
}];
name: "SetExtension";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "hook";
type: "address";
}, {
indexed: false;
internalType: "bool";
name: "enabled";
type: "bool";
}];
name: "SetHook";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "locker";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "pool";
type: "address";
}, {
indexed: false;
internalType: "bool";
name: "enabled";
type: "bool";
}];
name: "SetLocker";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "mevModule";
type: "address";
}, {
indexed: false;
internalType: "bool";
name: "enabled";
type: "bool";
}];
name: "SetMevModule";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "oldTeamFeeRecipient";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newTeamFeeRecipient";
type: "address";
}];
name: "SetTeamFeeRecipient";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "msgSender";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "tokenAddress";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "tokenAdmin";
type: "address";
}, {
indexed: false;
internalType: "string";
name: "tokenImage";
type: "string";
}, {
indexed: false;
internalType: "string";
name: "tokenName";
type: "string";
}, {
indexed: false;
internalType: "string";
name: "tokenSymbol";
type: "string";
}, {
indexed: false;
internalType: "string";
name: "tokenMetadata";
type: "string";
}, {
indexed: false;
internalType: "string";
name: "tokenContext";
type: "string";
}, {
indexed: false;
internalType: "int24";
name: "startingTick";
type: "int24";
}, {
indexed: false;
internalType: "address";
name: "poolHook";
type: "address";
}, {
indexed: false;
internalType: "PoolId";
name: "poolId";
type: "bytes32";
}, {
indexed: false;
internalType: "address";
name: "pairedToken";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "locker";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "mevModule";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "extensionsSupply";
type: "uint256";
}, {
indexed: false;
internalType: "address[]";
name: "extensions";
type: "address[]";
}];
name: "TokenCreated";
type: "event";
}, {
inputs: readonly [];
name: "BPS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_EXTENSIONS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_EXTENSION_BPS";
outputs: readonly [{
internalType: "uint16";
name: "";
type: "uint16";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "TOKEN_SUPPLY";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
name: "admins";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "claimTeamFees";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
components: readonly [{
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct IClanker.TokenConfig";
name: "tokenConfig";
type: "tuple";
}, {
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct IClanker.PoolConfig";
name: "poolConfig";
type: "tuple";
}, {
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct IClanker.LockerConfig";
name: "lockerConfig";
type: "tuple";
}, {
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct IClanker.MevModuleConfig";
name: "mevModuleConfig";
type: "tuple";
}, {
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct IClanker.ExtensionConfig[]";
name: "extensionConfigs";
type: "tuple[]";
}];
internalType: "struct IClanker.DeploymentConfig";
name: "deploymentConfig";
type: "tuple";
}];
name: "deployToken";
outputs: readonly [{
internalType: "address";
name: "tokenAddress";
type: "address";
}];
stateMutability: "payable";
type: "function";
}, {
inputs: readonly [{
components: readonly [{
internalType: "address";
name: "tokenAdmin";
type: "address";
}, {
internalType: "string";
name: "name";
type: "string";
}, {
internalType: "string";
name: "symbol";
type: "string";
}, {
internalType: "bytes32";
name: "salt";
type: "bytes32";
}, {
internalType: "string";
name: "image";
type: "string";
}, {
internalType: "string";
name: "metadata";
type: "string";
}, {
internalType: "string";
name: "context";
type: "string";
}, {
internalType: "uint256";
name: "originatingChainId";
type: "uint256";
}];
internalType: "struct IClanker.TokenConfig";
name: "tokenConfig";
type: "tuple";
}];
name: "deployTokenZeroSupply";
outputs: readonly [{
internalType: "address";
name: "tokenAddress";
type: "address";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "deploymentInfoForToken";
outputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "address";
name: "hook";
type: "address";
}, {
internalType: "address";
name: "locker";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "deprecated";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "locker";
type: "address";
}, {
internalType: "address";
name: "pool";
type: "address";
}];
name: "enabledLockers";
outputs: readonly [{
internalType: "bool";
name: "enabled";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "teamFeeRecipient_";
type: "address";
}];
name: "initialize";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "renounceOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "admin";
type: "address";
}, {
internalType: "bool";
name: "enabled";
type: "bool";
}];
name: "setAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bool";
name: "deprecated_";
type: "bool";
}];
name: "setDeprecated";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "extension";
type: "address";
}, {
internalType: "bool";
name: "enabled";
type: "bool";
}];
name: "setExtension";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "hook";
type: "address";
}, {
internalType: "bool";
name: "enabled";
type: "bool";
}];
name: "setHook";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "locker";
type: "address";
}, {
internalType: "address";
name: "pool";
type: "address";
}, {
internalType: "bool";
name: "enabled";
type: "bool";
}];
name: "setLocker";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "mevModule";
type: "address";
}, {
internalType: "bool";
name: "enabled";
type: "bool";
}];
name: "setMevModule";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "teamFeeRecipient_";
type: "address";
}];
name: "setTeamFeeRecipient";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "teamFeeRecipient";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "tokenDeploymentInfo";
outputs: readonly [{
components: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "address";
name: "hook";
type: "address";
}, {
internalType: "address";
name: "locker";
type: "address";
}, {
internalType: "address[]";
name: "extensions";
type: "address[]";
}];
internalType: "struct IClanker.DeploymentInfo";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}], "deployToken"> & {
expectedAddress?: `0x${string}`;
}>
Abi transaction
- token: The token address
- poolKey: The Uniswap V4 pool key
- positionId: The LP position ID
- numPositions: Number of LP positions
- rewardBps: Array of reward basis points for each recipient
- rewardAdmins: Array of admin addresses (index = rewardIndex)
- rewardRecipients: Array of recipient addresses (index = rewardIndex)
Promise<{
numPositions: bigint;
poolKey: {
currency0: `0x${string}`;
currency1: `0x${string}`;
fee: number;
hooks: `0x${string}`;
tickSpacing: number;
};
positionId: bigint;
rewardAdmins: readonly `0x${string}`[];
rewardBps: readonly number[];
rewardRecipients: readonly `0x${string}`[];
token: `0x${string}`;
}>
Token rewards information including rewardAdmins and rewardRecipients arrays
View full generated declaration (842 lines)
Defined in: src/v4/index.ts:708
Get the transaction config for reading token rewards information from the locker contract.
Promise<{
abi: readonly [{
inputs: readonly [{
internalType: "address";
name: "owner_";
type: "address";
}, {
internalType: "address";
name: "factory_";
type: "address";
}, {
internalType: "address";
name: "feeLocker_";
type: "address";
}, {
internalType: "address";
name: "positionManager_";
type: "address";
}, {
internalType: "address";
name: "permit2_";
type: "address";
}, {
internalType: "address";
name: "universalRouter_";
type: "address";
}, {
internalType: "address";
name: "poolManager_";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "BASIS_POINTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_LP_POSITIONS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_REWARD_PARTICIPANTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewards";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewardsWithoutUnlock";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "factory";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "feeLocker";
outputs: readonly [{
internalType: "contract IClankerFeeLocker";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "";
type: "uint256";
}];
name: "feePreferences";
outputs: readonly [{
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "feePreference";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "";
type: "address";
}, {
internalType: "address";
name: "from";
type: "address";
}, {
internalType: "uint256";
name: "id";
type: "uint256";
}, {
internalType: "bytes";
name: "";
type: "bytes";
}];
name: "onERC721Received";
outputs: readonly [{
internalType: "bytes4";
name: "";
type: "bytes4";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "permit2";
outputs: readonly [{
internalType: "contract IPermit2";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
components: readonly [{
internalType: "address";
name: "locker";
type: "address";
}, {
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}, {
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
internalType: "int24[]";
name: "tickLower";
type: "int24[]";
}, {
internalType: "int24[]";
name: "tickUpper";
type: "int24[]";
}, {
internalType: "uint16[]";
name: "positionBps";
type: "uint16[]";
}, {
internalType: "bytes";
name: "lockerData";
type: "bytes";
}];
internalType: "struct IClanker.LockerConfig";
name: "lockerConfig";
type: "tuple";
}, {
components: readonly [{
internalType: "address";
name: "hook";
type: "address";
}, {
internalType: "address";
name: "pairedToken";
type: "address";
}, {
internalType: "int24";
name: "tickIfToken0IsClanker";
type: "int24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "bytes";
name: "poolData";
type: "bytes";
}];
internalType: "struct IClanker.PoolConfig";
name: "poolConfig";
type: "tuple";
}, {
components: readonly [{
internalType: "Currency";
name: "currency0";
type: "address";
}, {
internalType: "Currency";
name: "currency1";
type: "address";
}, {
internalType: "uint24";
name: "fee";
type: "uint24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "contract IHooks";
name: "hooks";
type: "address";
}];
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "placeLiquidity";
outputs: readonly [{
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "poolManager";
outputs: readonly [{
internalType: "contract IPoolManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "positionManager";
outputs: readonly [{
internalType: "contract IPositionManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "renounceOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "tokenRewards";
outputs: readonly [{
components: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
components: readonly [{
internalType: "Currency";
name: "currency0";
type: "address";
}, {
internalType: "Currency";
name: "currency1";
type: "address";
}, {
internalType: "uint24";
name: "fee";
type: "uint24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "contract IHooks";
name: "hooks";
type: "address";
}];
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
internalType: "uint256";
name: "positionId";
type: "uint256";
}, {
internalType: "uint256";
name: "numPositions";
type: "uint256";
}, {
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}];
internalType: "struct IClankerLpLocker.TokenRewardInfo";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "universalRouter";
outputs: readonly [{
internalType: "contract IUniversalRouter";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "updateFeePreference";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "updateRewardAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "updateRewardRecipient";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "version";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawERC20";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawETH";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount0";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "amount1";
type: "uint256";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards0";
type: "uint256[]";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards1";
type: "uint256[]";
}];
name: "ClaimedRewards";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "oldFeePreference";
type: "uint8";
}, {
indexed: true;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "FeePreferenceUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "rewardToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountSwapped";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "swappedToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountOut";
type: "uint256";
}];
name: "FeesSwapped";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn[]";
name: "feePreference";
type: "uint8[]";
}];
name: "InitialFeePreferences";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "previousOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransferred";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
name: "Received";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldAdmin";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "RewardAdminUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldRecipient";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "RewardRecipientUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "token";
type: "address";
}, {
components: readonly [{
internalType: "Currency";
name: "currency0";
type: "address";
}, {
internalType: "Currency";
name: "currency1";
type: "address";
}, {
internalType: "uint24";
name: "fee";
type: "uint24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "contract IHooks";
name: "hooks";
type: "address";
}];
indexed: false;
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
indexed: false;
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "numPositions";
type: "uint256";
}, {
indexed: false;
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickLower";
type: "int24[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickUpper";
type: "int24[]";
}, {
indexed: false;
internalType: "uint16[]";
name: "positionBps";
type: "uint16[]";
}];
name: "TokenRewardAdded";
type: "event";
}, {
inputs: readonly [];
name: "InvalidPositionBps";
type: "error";
}, {
inputs: readonly [];
name: "InvalidRewardBps";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedPositionInfos";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedRewardArrays";
type: "error";
}, {
inputs: readonly [];
name: "NoPositions";
type: "error";
}, {
inputs: readonly [];
name: "NoRewardRecipients";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "OwnableInvalidOwner";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "OwnableUnauthorizedAccount";
type: "error";
}, {
inputs: readonly [];
name: "ReentrancyGuardReentrantCall";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "SafeERC20FailedOperation";
type: "error";
}, {
inputs: readonly [];
name: "TickRangeLowerThanStartingTick";
type: "error";
}, {
inputs: readonly [];
name: "TicksBackwards";
type: "error";
}, {
inputs: readonly [];
name: "TicksNotMultipleOfTickSpacing";
type: "error";
}, {
inputs: readonly [];
name: "TicksOutOfTickBounds";
type: "error";
}, {
inputs: readonly [];
name: "TokenAlreadyHasRewards";
type: "error";
}, {
inputs: readonly [];
name: "TooManyPositions";
type: "error";
}, {
inputs: readonly [];
name: "TooManyRewardParticipants";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAddress";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAmount";
type: "error";
}];
address: `0x${string}`;
args: readonly [`0x${string}`];
functionName: "tokenRewards";
}>
Abi transaction config for reading token rewards
View full generated declaration (979 lines)
Defined in: src/v4/index.ts:563
Get an abi-typed transaction for updating the token image.
Promise<ClankerTransactionConfig<readonly [{
inputs: readonly [{
internalType: "string";
name: "name_";
type: "string";
}, {
internalType: "string";
name: "symbol_";
type: "string";
}, {
internalType: "uint256";
name: "maxSupply_";
type: "uint256";
}, {
internalType: "address";
name: "admin_";
type: "address";
}, {
internalType: "string";
name: "image_";
type: "string";
}, {
internalType: "string";
name: "metadata_";
type: "string";
}, {
internalType: "string";
name: "context_";
type: "string";
}, {
internalType: "uint256";
name: "initialSupplyChainId_";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "CLOCK_MODE";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "DOMAIN_SEPARATOR";
outputs: readonly [{
internalType: "bytes32";
name: "";
type: "bytes32";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "admin";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "allData";
outputs: readonly [{
internalType: "address";
name: "originalAdmin";
type: "address";
}, {
internalType: "address";
name: "admin";
type: "address";
}, {
internalType: "string";
name: "image";
type: "string";
}, {
internalType: "string";
name: "metadata";
type: "string";
}, {
internalType: "string";
name: "context";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}, {
internalType: "address";
name: "spender";
type: "address";
}];
name: "allowance";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "approve";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "balanceOf";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "burn";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "burnFrom";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint32";
name: "pos";
type: "uint32";
}];
name: "checkpoints";
outputs: readonly [{
components: readonly [{
internalType: "uint48";
name: "_key";
type: "uint48";
}, {
internalType: "uint208";
name: "_value";
type: "uint208";
}];
internalType: "struct Checkpoints.Checkpoint208";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "clock";
outputs: readonly [{
internalType: "uint48";
name: "";
type: "uint48";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "context";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "_from";
type: "address";
}, {
internalType: "uint256";
name: "_amount";
type: "uint256";
}];
name: "crosschainBurn";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "_to";
type: "address";
}, {
internalType: "uint256";
name: "_amount";
type: "uint256";
}];
name: "crosschainMint";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "decimals";
outputs: readonly [{
internalType: "uint8";
name: "";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "delegatee";
type: "address";
}];
name: "delegate";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "delegatee";
type: "address";
}, {
internalType: "uint256";
name: "nonce";
type: "uint256";
}, {
internalType: "uint256";
name: "expiry";
type: "uint256";
}, {
internalType: "uint8";
name: "v";
type: "uint8";
}, {
internalType: "bytes32";
name: "r";
type: "bytes32";
}, {
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "delegateBySig";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "delegates";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "eip712Domain";
outputs: readonly [{
internalType: "bytes1";
name: "fields";
type: "bytes1";
}, {
internalType: "string";
name: "name";
type: "string";
}, {
internalType: "string";
name: "version";
type: "string";
}, {
internalType: "uint256";
name: "chainId";
type: "uint256";
}, {
internalType: "address";
name: "verifyingContract";
type: "address";
}, {
internalType: "bytes32";
name: "salt";
type: "bytes32";
}, {
internalType: "uint256[]";
name: "extensions";
type: "uint256[]";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "timepoint";
type: "uint256";
}];
name: "getPastTotalSupply";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "timepoint";
type: "uint256";
}];
name: "getPastVotes";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "getVotes";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "imageUrl";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "isVerified";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "metadata";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "name";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "nonces";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "numCheckpoints";
outputs: readonly [{
internalType: "uint32";
name: "";
type: "uint32";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "originalAdmin";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}, {
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}, {
internalType: "uint256";
name: "deadline";
type: "uint256";
}, {
internalType: "uint8";
name: "v";
type: "uint8";
}, {
internalType: "bytes32";
name: "r";
type: "bytes32";
}, {
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "permit";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "_interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [];
name: "symbol";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "totalSupply";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "transfer";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "from";
type: "address";
}, {
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "transferFrom";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "admin_";
type: "address";
}];
name: "updateAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "string";
name: "image_";
type: "string";
}];
name: "updateImage";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "string";
name: "metadata_";
type: "string";
}];
name: "updateMetadata";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "verify";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "owner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "spender";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "Approval";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}];
name: "CrosschainBurn";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "to";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}];
name: "CrosschainMint";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "delegator";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "fromDelegate";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "toDelegate";
type: "address";
}];
name: "DelegateChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "delegate";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "previousVotes";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "newVotes";
type: "uint256";
}];
name: "DelegateVotesChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [];
name: "EIP712DomainChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "to";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "Transfer";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "oldAdmin";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "UpdateAdmin";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "string";
name: "image";
type: "string";
}];
name: "UpdateImage";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "string";
name: "metadata";
type: "string";
}];
name: "UpdateMetadata";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "admin";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}];
name: "Verified";
type: "event";
}, {
inputs: readonly [];
name: "AlreadyVerified";
type: "error";
}, {
inputs: readonly [];
name: "CheckpointUnorderedInsertion";
type: "error";
}, {
inputs: readonly [];
name: "ECDSAInvalidSignature";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "length";
type: "uint256";
}];
name: "ECDSAInvalidSignatureLength";
type: "error";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "ECDSAInvalidSignatureS";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "increasedSupply";
type: "uint256";
}, {
internalType: "uint256";
name: "cap";
type: "uint256";
}];
name: "ERC20ExceededSafeSupply";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "allowance";
type: "uint256";
}, {
internalType: "uint256";
name: "needed";
type: "uint256";
}];
name: "ERC20InsufficientAllowance";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "sender";
type: "address";
}, {
internalType: "uint256";
name: "balance";
type: "uint256";
}, {
internalType: "uint256";
name: "needed";
type: "uint256";
}];
name: "ERC20InsufficientBalance";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "approver";
type: "address";
}];
name: "ERC20InvalidApprover";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "receiver";
type: "address";
}];
name: "ERC20InvalidReceiver";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "sender";
type: "address";
}];
name: "ERC20InvalidSender";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}];
name: "ERC20InvalidSpender";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "deadline";
type: "uint256";
}];
name: "ERC2612ExpiredSignature";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "signer";
type: "address";
}, {
internalType: "address";
name: "owner";
type: "address";
}];
name: "ERC2612InvalidSigner";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "timepoint";
type: "uint256";
}, {
internalType: "uint48";
name: "clock";
type: "uint48";
}];
name: "ERC5805FutureLookup";
type: "error";
}, {
inputs: readonly [];
name: "ERC6372InconsistentClock";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "currentNonce";
type: "uint256";
}];
name: "InvalidAccountNonce";
type: "error";
}, {
inputs: readonly [];
name: "InvalidShortString";
type: "error";
}, {
inputs: readonly [];
name: "NotAdmin";
type: "error";
}, {
inputs: readonly [];
name: "NotOriginalAdmin";
type: "error";
}, {
inputs: readonly [{
internalType: "uint8";
name: "bits";
type: "uint8";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "SafeCastOverflowedUintDowncast";
type: "error";
}, {
inputs: readonly [{
internalType: "string";
name: "str";
type: "string";
}];
name: "StringTooLong";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "expiry";
type: "uint256";
}];
name: "VotesExpiredSignature";
type: "error";
}]>>
Abi transaction
View full generated declaration (979 lines)
Defined in: src/v4/index.ts:590
Get an abi-typed transaction for updating the token metadata.
Promise<ClankerTransactionConfig<readonly [{
inputs: readonly [{
internalType: "string";
name: "name_";
type: "string";
}, {
internalType: "string";
name: "symbol_";
type: "string";
}, {
internalType: "uint256";
name: "maxSupply_";
type: "uint256";
}, {
internalType: "address";
name: "admin_";
type: "address";
}, {
internalType: "string";
name: "image_";
type: "string";
}, {
internalType: "string";
name: "metadata_";
type: "string";
}, {
internalType: "string";
name: "context_";
type: "string";
}, {
internalType: "uint256";
name: "initialSupplyChainId_";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "CLOCK_MODE";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "DOMAIN_SEPARATOR";
outputs: readonly [{
internalType: "bytes32";
name: "";
type: "bytes32";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "admin";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "allData";
outputs: readonly [{
internalType: "address";
name: "originalAdmin";
type: "address";
}, {
internalType: "address";
name: "admin";
type: "address";
}, {
internalType: "string";
name: "image";
type: "string";
}, {
internalType: "string";
name: "metadata";
type: "string";
}, {
internalType: "string";
name: "context";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}, {
internalType: "address";
name: "spender";
type: "address";
}];
name: "allowance";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "approve";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "balanceOf";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "burn";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "burnFrom";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint32";
name: "pos";
type: "uint32";
}];
name: "checkpoints";
outputs: readonly [{
components: readonly [{
internalType: "uint48";
name: "_key";
type: "uint48";
}, {
internalType: "uint208";
name: "_value";
type: "uint208";
}];
internalType: "struct Checkpoints.Checkpoint208";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "clock";
outputs: readonly [{
internalType: "uint48";
name: "";
type: "uint48";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "context";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "_from";
type: "address";
}, {
internalType: "uint256";
name: "_amount";
type: "uint256";
}];
name: "crosschainBurn";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "_to";
type: "address";
}, {
internalType: "uint256";
name: "_amount";
type: "uint256";
}];
name: "crosschainMint";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "decimals";
outputs: readonly [{
internalType: "uint8";
name: "";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "delegatee";
type: "address";
}];
name: "delegate";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "delegatee";
type: "address";
}, {
internalType: "uint256";
name: "nonce";
type: "uint256";
}, {
internalType: "uint256";
name: "expiry";
type: "uint256";
}, {
internalType: "uint8";
name: "v";
type: "uint8";
}, {
internalType: "bytes32";
name: "r";
type: "bytes32";
}, {
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "delegateBySig";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "delegates";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "eip712Domain";
outputs: readonly [{
internalType: "bytes1";
name: "fields";
type: "bytes1";
}, {
internalType: "string";
name: "name";
type: "string";
}, {
internalType: "string";
name: "version";
type: "string";
}, {
internalType: "uint256";
name: "chainId";
type: "uint256";
}, {
internalType: "address";
name: "verifyingContract";
type: "address";
}, {
internalType: "bytes32";
name: "salt";
type: "bytes32";
}, {
internalType: "uint256[]";
name: "extensions";
type: "uint256[]";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "timepoint";
type: "uint256";
}];
name: "getPastTotalSupply";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "timepoint";
type: "uint256";
}];
name: "getPastVotes";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "getVotes";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "imageUrl";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "isVerified";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "metadata";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "name";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "nonces";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "numCheckpoints";
outputs: readonly [{
internalType: "uint32";
name: "";
type: "uint32";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "originalAdmin";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}, {
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}, {
internalType: "uint256";
name: "deadline";
type: "uint256";
}, {
internalType: "uint8";
name: "v";
type: "uint8";
}, {
internalType: "bytes32";
name: "r";
type: "bytes32";
}, {
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "permit";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "_interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [];
name: "symbol";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "totalSupply";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "transfer";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "from";
type: "address";
}, {
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "transferFrom";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "admin_";
type: "address";
}];
name: "updateAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "string";
name: "image_";
type: "string";
}];
name: "updateImage";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "string";
name: "metadata_";
type: "string";
}];
name: "updateMetadata";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "verify";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "owner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "spender";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "Approval";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}];
name: "CrosschainBurn";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "to";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}];
name: "CrosschainMint";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "delegator";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "fromDelegate";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "toDelegate";
type: "address";
}];
name: "DelegateChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "delegate";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "previousVotes";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "newVotes";
type: "uint256";
}];
name: "DelegateVotesChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [];
name: "EIP712DomainChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "to";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "Transfer";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "oldAdmin";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "UpdateAdmin";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "string";
name: "image";
type: "string";
}];
name: "UpdateImage";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "string";
name: "metadata";
type: "string";
}];
name: "UpdateMetadata";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "admin";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}];
name: "Verified";
type: "event";
}, {
inputs: readonly [];
name: "AlreadyVerified";
type: "error";
}, {
inputs: readonly [];
name: "CheckpointUnorderedInsertion";
type: "error";
}, {
inputs: readonly [];
name: "ECDSAInvalidSignature";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "length";
type: "uint256";
}];
name: "ECDSAInvalidSignatureLength";
type: "error";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "ECDSAInvalidSignatureS";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "increasedSupply";
type: "uint256";
}, {
internalType: "uint256";
name: "cap";
type: "uint256";
}];
name: "ERC20ExceededSafeSupply";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "allowance";
type: "uint256";
}, {
internalType: "uint256";
name: "needed";
type: "uint256";
}];
name: "ERC20InsufficientAllowance";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "sender";
type: "address";
}, {
internalType: "uint256";
name: "balance";
type: "uint256";
}, {
internalType: "uint256";
name: "needed";
type: "uint256";
}];
name: "ERC20InsufficientBalance";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "approver";
type: "address";
}];
name: "ERC20InvalidApprover";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "receiver";
type: "address";
}];
name: "ERC20InvalidReceiver";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "sender";
type: "address";
}];
name: "ERC20InvalidSender";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}];
name: "ERC20InvalidSpender";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "deadline";
type: "uint256";
}];
name: "ERC2612ExpiredSignature";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "signer";
type: "address";
}, {
internalType: "address";
name: "owner";
type: "address";
}];
name: "ERC2612InvalidSigner";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "timepoint";
type: "uint256";
}, {
internalType: "uint48";
name: "clock";
type: "uint48";
}];
name: "ERC5805FutureLookup";
type: "error";
}, {
inputs: readonly [];
name: "ERC6372InconsistentClock";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "currentNonce";
type: "uint256";
}];
name: "InvalidAccountNonce";
type: "error";
}, {
inputs: readonly [];
name: "InvalidShortString";
type: "error";
}, {
inputs: readonly [];
name: "NotAdmin";
type: "error";
}, {
inputs: readonly [];
name: "NotOriginalAdmin";
type: "error";
}, {
inputs: readonly [{
internalType: "uint8";
name: "bits";
type: "uint8";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "SafeCastOverflowedUintDowncast";
type: "error";
}, {
inputs: readonly [{
internalType: "string";
name: "str";
type: "string";
}];
name: "StringTooLong";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "expiry";
type: "uint256";
}];
name: "VotesExpiredSignature";
type: "error";
}]>>
Abi transaction
View full generated declaration (837 lines)
Defined in: src/v4/index.ts:258
Get an abi-typed transaction for updating the reward admin.
Promise<ClankerTransactionConfig<readonly [{
inputs: readonly [{
internalType: "address";
name: "owner_";
type: "address";
}, {
internalType: "address";
name: "factory_";
type: "address";
}, {
internalType: "address";
name: "feeLocker_";
type: "address";
}, {
internalType: "address";
name: "positionManager_";
type: "address";
}, {
internalType: "address";
name: "permit2_";
type: "address";
}, {
internalType: "address";
name: "universalRouter_";
type: "address";
}, {
internalType: "address";
name: "poolManager_";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "BASIS_POINTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_LP_POSITIONS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_REWARD_PARTICIPANTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewards";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewardsWithoutUnlock";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "factory";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "feeLocker";
outputs: readonly [{
internalType: "contract IClankerFeeLocker";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "";
type: "uint256";
}];
name: "feePreferences";
outputs: readonly [{
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "feePreference";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "";
type: "address";
}, {
internalType: "address";
name: "from";
type: "address";
}, {
internalType: "uint256";
name: "id";
type: "uint256";
}, {
internalType: "bytes";
name: "";
type: "bytes";
}];
name: "onERC721Received";
outputs: readonly [{
internalType: "bytes4";
name: "";
type: "bytes4";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "permit2";
outputs: readonly [{
internalType: "contract IPermit2";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
components: readonly [{
internalType: "address";
name: "locker";
type: "address";
}, {
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}, {
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
internalType: "int24[]";
name: "tickLower";
type: "int24[]";
}, {
internalType: "int24[]";
name: "tickUpper";
type: "int24[]";
}, {
internalType: "uint16[]";
name: "positionBps";
type: "uint16[]";
}, {
internalType: "bytes";
name: "lockerData";
type: "bytes";
}];
internalType: "struct IClanker.LockerConfig";
name: "lockerConfig";
type: "tuple";
}, {
components: readonly [{
internalType: "address";
name: "hook";
type: "address";
}, {
internalType: "address";
name: "pairedToken";
type: "address";
}, {
internalType: "int24";
name: "tickIfToken0IsClanker";
type: "int24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "bytes";
name: "poolData";
type: "bytes";
}];
internalType: "struct IClanker.PoolConfig";
name: "poolConfig";
type: "tuple";
}, {
components: readonly [{
internalType: "Currency";
name: "currency0";
type: "address";
}, {
internalType: "Currency";
name: "currency1";
type: "address";
}, {
internalType: "uint24";
name: "fee";
type: "uint24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "contract IHooks";
name: "hooks";
type: "address";
}];
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "placeLiquidity";
outputs: readonly [{
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "poolManager";
outputs: readonly [{
internalType: "contract IPoolManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "positionManager";
outputs: readonly [{
internalType: "contract IPositionManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "renounceOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "tokenRewards";
outputs: readonly [{
components: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
components: readonly [{
internalType: "Currency";
name: "currency0";
type: "address";
}, {
internalType: "Currency";
name: "currency1";
type: "address";
}, {
internalType: "uint24";
name: "fee";
type: "uint24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "contract IHooks";
name: "hooks";
type: "address";
}];
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
internalType: "uint256";
name: "positionId";
type: "uint256";
}, {
internalType: "uint256";
name: "numPositions";
type: "uint256";
}, {
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}];
internalType: "struct IClankerLpLocker.TokenRewardInfo";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "universalRouter";
outputs: readonly [{
internalType: "contract IUniversalRouter";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "updateFeePreference";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "updateRewardAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "updateRewardRecipient";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "version";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawERC20";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawETH";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount0";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "amount1";
type: "uint256";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards0";
type: "uint256[]";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards1";
type: "uint256[]";
}];
name: "ClaimedRewards";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "oldFeePreference";
type: "uint8";
}, {
indexed: true;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "FeePreferenceUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "rewardToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountSwapped";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "swappedToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountOut";
type: "uint256";
}];
name: "FeesSwapped";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn[]";
name: "feePreference";
type: "uint8[]";
}];
name: "InitialFeePreferences";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "previousOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransferred";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
name: "Received";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldAdmin";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "RewardAdminUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldRecipient";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "RewardRecipientUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "token";
type: "address";
}, {
components: readonly [{
internalType: "Currency";
name: "currency0";
type: "address";
}, {
internalType: "Currency";
name: "currency1";
type: "address";
}, {
internalType: "uint24";
name: "fee";
type: "uint24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "contract IHooks";
name: "hooks";
type: "address";
}];
indexed: false;
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
indexed: false;
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "numPositions";
type: "uint256";
}, {
indexed: false;
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickLower";
type: "int24[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickUpper";
type: "int24[]";
}, {
indexed: false;
internalType: "uint16[]";
name: "positionBps";
type: "uint16[]";
}];
name: "TokenRewardAdded";
type: "event";
}, {
inputs: readonly [];
name: "InvalidPositionBps";
type: "error";
}, {
inputs: readonly [];
name: "InvalidRewardBps";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedPositionInfos";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedRewardArrays";
type: "error";
}, {
inputs: readonly [];
name: "NoPositions";
type: "error";
}, {
inputs: readonly [];
name: "NoRewardRecipients";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "OwnableInvalidOwner";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "OwnableUnauthorizedAccount";
type: "error";
}, {
inputs: readonly [];
name: "ReentrancyGuardReentrantCall";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "SafeERC20FailedOperation";
type: "error";
}, {
inputs: readonly [];
name: "TickRangeLowerThanStartingTick";
type: "error";
}, {
inputs: readonly [];
name: "TicksBackwards";
type: "error";
}, {
inputs: readonly [];
name: "TicksNotMultipleOfTickSpacing";
type: "error";
}, {
inputs: readonly [];
name: "TicksOutOfTickBounds";
type: "error";
}, {
inputs: readonly [];
name: "TokenAlreadyHasRewards";
type: "error";
}, {
inputs: readonly [];
name: "TooManyPositions";
type: "error";
}, {
inputs: readonly [];
name: "TooManyRewardParticipants";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAddress";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAmount";
type: "error";
}]>>
Abi transaction
View full generated declaration (837 lines)
Defined in: src/v4/index.ts:222
Get an abi-typed transaction for updating the reward recipient.
Promise<ClankerTransactionConfig<readonly [{
inputs: readonly [{
internalType: "address";
name: "owner_";
type: "address";
}, {
internalType: "address";
name: "factory_";
type: "address";
}, {
internalType: "address";
name: "feeLocker_";
type: "address";
}, {
internalType: "address";
name: "positionManager_";
type: "address";
}, {
internalType: "address";
name: "permit2_";
type: "address";
}, {
internalType: "address";
name: "universalRouter_";
type: "address";
}, {
internalType: "address";
name: "poolManager_";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "BASIS_POINTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_LP_POSITIONS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_REWARD_PARTICIPANTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewards";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewardsWithoutUnlock";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "factory";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "feeLocker";
outputs: readonly [{
internalType: "contract IClankerFeeLocker";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "";
type: "uint256";
}];
name: "feePreferences";
outputs: readonly [{
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "feePreference";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "";
type: "address";
}, {
internalType: "address";
name: "from";
type: "address";
}, {
internalType: "uint256";
name: "id";
type: "uint256";
}, {
internalType: "bytes";
name: "";
type: "bytes";
}];
name: "onERC721Received";
outputs: readonly [{
internalType: "bytes4";
name: "";
type: "bytes4";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "permit2";
outputs: readonly [{
internalType: "contract IPermit2";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
components: readonly [{
internalType: "address";
name: "locker";
type: "address";
}, {
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}, {
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
internalType: "int24[]";
name: "tickLower";
type: "int24[]";
}, {
internalType: "int24[]";
name: "tickUpper";
type: "int24[]";
}, {
internalType: "uint16[]";
name: "positionBps";
type: "uint16[]";
}, {
internalType: "bytes";
name: "lockerData";
type: "bytes";
}];
internalType: "struct IClanker.LockerConfig";
name: "lockerConfig";
type: "tuple";
}, {
components: readonly [{
internalType: "address";
name: "hook";
type: "address";
}, {
internalType: "address";
name: "pairedToken";
type: "address";
}, {
internalType: "int24";
name: "tickIfToken0IsClanker";
type: "int24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "bytes";
name: "poolData";
type: "bytes";
}];
internalType: "struct IClanker.PoolConfig";
name: "poolConfig";
type: "tuple";
}, {
components: readonly [{
internalType: "Currency";
name: "currency0";
type: "address";
}, {
internalType: "Currency";
name: "currency1";
type: "address";
}, {
internalType: "uint24";
name: "fee";
type: "uint24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "contract IHooks";
name: "hooks";
type: "address";
}];
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "placeLiquidity";
outputs: readonly [{
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "poolManager";
outputs: readonly [{
internalType: "contract IPoolManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "positionManager";
outputs: readonly [{
internalType: "contract IPositionManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "renounceOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "tokenRewards";
outputs: readonly [{
components: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
components: readonly [{
internalType: "Currency";
name: "currency0";
type: "address";
}, {
internalType: "Currency";
name: "currency1";
type: "address";
}, {
internalType: "uint24";
name: "fee";
type: "uint24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "contract IHooks";
name: "hooks";
type: "address";
}];
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
internalType: "uint256";
name: "positionId";
type: "uint256";
}, {
internalType: "uint256";
name: "numPositions";
type: "uint256";
}, {
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}];
internalType: "struct IClankerLpLocker.TokenRewardInfo";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "universalRouter";
outputs: readonly [{
internalType: "contract IUniversalRouter";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "updateFeePreference";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "updateRewardAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "updateRewardRecipient";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "version";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawERC20";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawETH";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount0";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "amount1";
type: "uint256";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards0";
type: "uint256[]";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards1";
type: "uint256[]";
}];
name: "ClaimedRewards";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "oldFeePreference";
type: "uint8";
}, {
indexed: true;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "FeePreferenceUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "rewardToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountSwapped";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "swappedToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountOut";
type: "uint256";
}];
name: "FeesSwapped";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn[]";
name: "feePreference";
type: "uint8[]";
}];
name: "InitialFeePreferences";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "previousOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransferred";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
name: "Received";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldAdmin";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "RewardAdminUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldRecipient";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "RewardRecipientUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "token";
type: "address";
}, {
components: readonly [{
internalType: "Currency";
name: "currency0";
type: "address";
}, {
internalType: "Currency";
name: "currency1";
type: "address";
}, {
internalType: "uint24";
name: "fee";
type: "uint24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "contract IHooks";
name: "hooks";
type: "address";
}];
indexed: false;
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
indexed: false;
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "numPositions";
type: "uint256";
}, {
indexed: false;
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickLower";
type: "int24[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickUpper";
type: "int24[]";
}, {
indexed: false;
internalType: "uint16[]";
name: "positionBps";
type: "uint16[]";
}];
name: "TokenRewardAdded";
type: "event";
}, {
inputs: readonly [];
name: "InvalidPositionBps";
type: "error";
}, {
inputs: readonly [];
name: "InvalidRewardBps";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedPositionInfos";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedRewardArrays";
type: "error";
}, {
inputs: readonly [];
name: "NoPositions";
type: "error";
}, {
inputs: readonly [];
name: "NoRewardRecipients";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "OwnableInvalidOwner";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "OwnableUnauthorizedAccount";
type: "error";
}, {
inputs: readonly [];
name: "ReentrancyGuardReentrantCall";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "SafeERC20FailedOperation";
type: "error";
}, {
inputs: readonly [];
name: "TickRangeLowerThanStartingTick";
type: "error";
}, {
inputs: readonly [];
name: "TicksBackwards";
type: "error";
}, {
inputs: readonly [];
name: "TicksNotMultipleOfTickSpacing";
type: "error";
}, {
inputs: readonly [];
name: "TicksOutOfTickBounds";
type: "error";
}, {
inputs: readonly [];
name: "TokenAlreadyHasRewards";
type: "error";
}, {
inputs: readonly [];
name: "TooManyPositions";
type: "error";
}, {
inputs: readonly [];
name: "TooManyRewardParticipants";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAddress";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAmount";
type: "error";
}]>>
Abi transaction
Promise<bigint>
Amount of tokens available to claim
Promise<any>
Abi transaction
Promise<
| {
error: undefined;
txHash: `0x${string}`;
}
| {
error: ClankerError;
txHash: undefined;
}>
Transaction hash of the update or error
View full generated declaration (1,991 lines)
Defined in: src/v4/index.ts:618
Simulate updating the token image. Will use the wallet account on the Clanker class or
the passed-in account.
Promise<
| SimulateContractReturnType<readonly [{
inputs: readonly [{
internalType: "string";
name: "name_";
type: "string";
}, {
internalType: "string";
name: "symbol_";
type: "string";
}, {
internalType: "uint256";
name: "maxSupply_";
type: "uint256";
}, {
internalType: "address";
name: "admin_";
type: "address";
}, {
internalType: "string";
name: "image_";
type: "string";
}, {
internalType: "string";
name: "metadata_";
type: "string";
}, {
internalType: "string";
name: "context_";
type: "string";
}, {
internalType: "uint256";
name: "initialSupplyChainId_";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "CLOCK_MODE";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "DOMAIN_SEPARATOR";
outputs: readonly [{
internalType: "bytes32";
name: "";
type: "bytes32";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "admin";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "allData";
outputs: readonly [{
internalType: "address";
name: "originalAdmin";
type: "address";
}, {
internalType: "address";
name: "admin";
type: "address";
}, {
internalType: "string";
name: "image";
type: "string";
}, {
internalType: "string";
name: "metadata";
type: "string";
}, {
internalType: "string";
name: "context";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}, {
internalType: "address";
name: "spender";
type: "address";
}];
name: "allowance";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "approve";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "balanceOf";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "burn";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "burnFrom";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint32";
name: "pos";
type: "uint32";
}];
name: "checkpoints";
outputs: readonly [{
components: readonly [{
internalType: "uint48";
name: "_key";
type: "uint48";
}, {
internalType: "uint208";
name: "_value";
type: "uint208";
}];
internalType: "struct Checkpoints.Checkpoint208";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "clock";
outputs: readonly [{
internalType: "uint48";
name: "";
type: "uint48";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "context";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "_from";
type: "address";
}, {
internalType: "uint256";
name: "_amount";
type: "uint256";
}];
name: "crosschainBurn";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "_to";
type: "address";
}, {
internalType: "uint256";
name: "_amount";
type: "uint256";
}];
name: "crosschainMint";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "decimals";
outputs: readonly [{
internalType: "uint8";
name: "";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "delegatee";
type: "address";
}];
name: "delegate";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "delegatee";
type: "address";
}, {
internalType: "uint256";
name: "nonce";
type: "uint256";
}, {
internalType: "uint256";
name: "expiry";
type: "uint256";
}, {
internalType: "uint8";
name: "v";
type: "uint8";
}, {
internalType: "bytes32";
name: "r";
type: "bytes32";
}, {
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "delegateBySig";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "delegates";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "eip712Domain";
outputs: readonly [{
internalType: "bytes1";
name: "fields";
type: "bytes1";
}, {
internalType: "string";
name: "name";
type: "string";
}, {
internalType: "string";
name: "version";
type: "string";
}, {
internalType: "uint256";
name: "chainId";
type: "uint256";
}, {
internalType: "address";
name: "verifyingContract";
type: "address";
}, {
internalType: "bytes32";
name: "salt";
type: "bytes32";
}, {
internalType: "uint256[]";
name: "extensions";
type: "uint256[]";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "timepoint";
type: "uint256";
}];
name: "getPastTotalSupply";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "timepoint";
type: "uint256";
}];
name: "getPastVotes";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "getVotes";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "imageUrl";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "isVerified";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "metadata";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "name";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "nonces";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "numCheckpoints";
outputs: readonly [{
internalType: "uint32";
name: "";
type: "uint32";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "originalAdmin";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}, {
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}, {
internalType: "uint256";
name: "deadline";
type: "uint256";
}, {
internalType: "uint8";
name: "v";
type: "uint8";
}, {
internalType: "bytes32";
name: "r";
type: "bytes32";
}, {
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "permit";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "_interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [];
name: "symbol";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "totalSupply";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "transfer";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "from";
type: "address";
}, {
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "transferFrom";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "admin_";
type: "address";
}];
name: "updateAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "string";
name: "image_";
type: "string";
}];
name: "updateImage";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "string";
name: "metadata_";
type: "string";
}];
name: "updateMetadata";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "verify";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "owner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "spender";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "Approval";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}];
name: "CrosschainBurn";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "to";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}];
name: "CrosschainMint";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "delegator";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "fromDelegate";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "toDelegate";
type: "address";
}];
name: "DelegateChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "delegate";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "previousVotes";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "newVotes";
type: "uint256";
}];
name: "DelegateVotesChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [];
name: "EIP712DomainChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "to";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "Transfer";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "oldAdmin";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "UpdateAdmin";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "string";
name: "image";
type: "string";
}];
name: "UpdateImage";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "string";
name: "metadata";
type: "string";
}];
name: "UpdateMetadata";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "admin";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}];
name: "Verified";
type: "event";
}, {
inputs: readonly [];
name: "AlreadyVerified";
type: "error";
}, {
inputs: readonly [];
name: "CheckpointUnorderedInsertion";
type: "error";
}, {
inputs: readonly [];
name: "ECDSAInvalidSignature";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "length";
type: "uint256";
}];
name: "ECDSAInvalidSignatureLength";
type: "error";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "ECDSAInvalidSignatureS";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "increasedSupply";
type: "uint256";
}, {
internalType: "uint256";
name: "cap";
type: "uint256";
}];
name: "ERC20ExceededSafeSupply";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "allowance";
type: "uint256";
}, {
internalType: "uint256";
name: "needed";
type: "uint256";
}];
name: "ERC20InsufficientAllowance";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "sender";
type: "address";
}, {
internalType: "uint256";
name: "balance";
type: "uint256";
}, {
internalType: "uint256";
name: "needed";
type: "uint256";
}];
name: "ERC20InsufficientBalance";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "approver";
type: "address";
}];
name: "ERC20InvalidApprover";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "receiver";
type: "address";
}];
name: "ERC20InvalidReceiver";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "sender";
type: "address";
}];
name: "ERC20InvalidSender";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}];
name: "ERC20InvalidSpender";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "deadline";
type: "uint256";
}];
name: "ERC2612ExpiredSignature";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "signer";
type: "address";
}, {
internalType: "address";
name: "owner";
type: "address";
}];
name: "ERC2612InvalidSigner";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "timepoint";
type: "uint256";
}, {
internalType: "uint48";
name: "clock";
type: "uint48";
}];
name: "ERC5805FutureLookup";
type: "error";
}, {
inputs: readonly [];
name: "ERC6372InconsistentClock";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "currentNonce";
type: "uint256";
}];
name: "InvalidAccountNonce";
type: "error";
}, {
inputs: readonly [];
name: "InvalidShortString";
type: "error";
}, {
inputs: readonly [];
name: "NotAdmin";
type: "error";
}, {
inputs: readonly [];
name: "NotOriginalAdmin";
type: "error";
}, {
inputs: readonly [{
internalType: "uint8";
name: "bits";
type: "uint8";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "SafeCastOverflowedUintDowncast";
type: "error";
}, {
inputs: readonly [{
internalType: "string";
name: "str";
type: "string";
}];
name: "StringTooLong";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "expiry";
type: "uint256";
}];
name: "VotesExpiredSignature";
type: "error";
}],
| "updateAdmin"
| "approve"
| "burn"
| "burnFrom"
| "crosschainBurn"
| "crosschainMint"
| "delegate"
| "delegateBySig"
| "permit"
| "transfer"
| "transferFrom"
| "updateImage"
| "updateMetadata"
| "verify"> & {
error?: undefined;
}
| UndefinedValues<SimulateContractReturnType<readonly [{
inputs: readonly [{
internalType: "string";
name: "name_";
type: "string";
}, {
internalType: "string";
name: "symbol_";
type: "string";
}, {
internalType: "uint256";
name: "maxSupply_";
type: "uint256";
}, {
internalType: "address";
name: "admin_";
type: "address";
}, {
internalType: "string";
name: "image_";
type: "string";
}, {
internalType: "string";
name: "metadata_";
type: "string";
}, {
internalType: "string";
name: "context_";
type: "string";
}, {
internalType: "uint256";
name: "initialSupplyChainId_";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "CLOCK_MODE";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "DOMAIN_SEPARATOR";
outputs: readonly [{
internalType: "bytes32";
name: "";
type: "bytes32";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "admin";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "allData";
outputs: readonly [{
internalType: "address";
name: "originalAdmin";
type: "address";
}, {
internalType: "address";
name: "admin";
type: "address";
}, {
internalType: "string";
name: "image";
type: "string";
}, {
internalType: "string";
name: "metadata";
type: "string";
}, {
internalType: "string";
name: "context";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}, {
internalType: "address";
name: "spender";
type: "address";
}];
name: "allowance";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "approve";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "balanceOf";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "burn";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "burnFrom";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint32";
name: "pos";
type: "uint32";
}];
name: "checkpoints";
outputs: readonly [{
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct Checkpoints.Checkpoint208";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "clock";
outputs: readonly [{
internalType: "uint48";
name: "";
type: "uint48";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "context";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "_from";
type: "address";
}, {
internalType: "uint256";
name: "_amount";
type: "uint256";
}];
name: "crosschainBurn";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "_to";
type: "address";
}, {
internalType: "uint256";
name: "_amount";
type: "uint256";
}];
name: "crosschainMint";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "decimals";
outputs: readonly [{
internalType: "uint8";
name: "";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "delegatee";
type: "address";
}];
name: "delegate";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "delegatee";
type: "address";
}, {
internalType: "uint256";
name: "nonce";
type: "uint256";
}, {
internalType: "uint256";
name: "expiry";
type: "uint256";
}, {
internalType: "uint8";
name: "v";
type: "uint8";
}, {
internalType: "bytes32";
name: "r";
type: "bytes32";
}, {
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "delegateBySig";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "delegates";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "eip712Domain";
outputs: readonly [{
internalType: "bytes1";
name: "fields";
type: "bytes1";
}, {
internalType: "string";
name: "name";
type: "string";
}, {
internalType: "string";
name: "version";
type: "string";
}, {
internalType: "uint256";
name: "chainId";
type: "uint256";
}, {
internalType: "address";
name: "verifyingContract";
type: "address";
}, {
internalType: "bytes32";
name: "salt";
type: "bytes32";
}, {
internalType: "uint256[]";
name: "extensions";
type: "uint256[]";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "timepoint";
type: "uint256";
}];
name: "getPastTotalSupply";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "timepoint";
type: "uint256";
}];
name: "getPastVotes";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "getVotes";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "imageUrl";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "isVerified";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "metadata";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "name";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "nonces";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "numCheckpoints";
outputs: readonly [{
internalType: "uint32";
name: "";
type: "uint32";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "originalAdmin";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}, {
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}, {
internalType: "uint256";
name: "deadline";
type: "uint256";
}, {
internalType: "uint8";
name: "v";
type: "uint8";
}, {
internalType: "bytes32";
name: "r";
type: "bytes32";
}, {
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "permit";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "_interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [];
name: "symbol";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "totalSupply";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "transfer";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "from";
type: "address";
}, {
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "transferFrom";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "admin_";
type: "address";
}];
name: "updateAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "string";
name: "image_";
type: "string";
}];
name: "updateImage";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "string";
name: "metadata_";
type: "string";
}];
name: "updateMetadata";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "verify";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "owner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "spender";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "Approval";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}];
name: "CrosschainBurn";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "to";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}];
name: "CrosschainMint";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "delegator";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "fromDelegate";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "toDelegate";
type: "address";
}];
name: "DelegateChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "delegate";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "previousVotes";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "newVotes";
type: "uint256";
}];
name: "DelegateVotesChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [];
name: "EIP712DomainChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "to";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "Transfer";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "oldAdmin";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "UpdateAdmin";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "string";
name: "image";
type: "string";
}];
name: "UpdateImage";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "string";
name: "metadata";
type: "string";
}];
name: "UpdateMetadata";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "admin";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}];
name: "Verified";
type: "event";
}, {
inputs: readonly [];
name: "AlreadyVerified";
type: "error";
}, {
inputs: readonly [];
name: "CheckpointUnorderedInsertion";
type: "error";
}, {
inputs: readonly [];
name: "ECDSAInvalidSignature";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "length";
type: "uint256";
}];
name: "ECDSAInvalidSignatureLength";
type: "error";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "ECDSAInvalidSignatureS";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "increasedSupply";
type: "uint256";
}, {
internalType: "uint256";
name: "cap";
type: "uint256";
}];
name: "ERC20ExceededSafeSupply";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "allowance";
type: "uint256";
}, {
internalType: "uint256";
name: "needed";
type: "uint256";
}];
name: "ERC20InsufficientAllowance";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "sender";
type: "address";
}, {
internalType: "uint256";
name: "balance";
type: "uint256";
}, {
internalType: "uint256";
name: "needed";
type: "uint256";
}];
name: "ERC20InsufficientBalance";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "approver";
type: "address";
}];
name: "ERC20InvalidApprover";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "receiver";
type: "address";
}];
name: "ERC20InvalidReceiver";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "sender";
type: "address";
}];
name: "ERC20InvalidSender";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}];
name: "ERC20InvalidSpender";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "deadline";
type: "uint256";
}];
name: "ERC2612ExpiredSignature";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "signer";
type: "address";
}, {
internalType: "address";
name: "owner";
type: "address";
}];
name: "ERC2612InvalidSigner";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "timepoint";
type: "uint256";
}, {
internalType: "uint48";
name: "clock";
type: "uint48";
}];
name: "ERC5805FutureLookup";
type: "error";
}, {
inputs: readonly [];
name: "ERC6372InconsistentClock";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "currentNonce";
type: "uint256";
}];
name: "InvalidAccountNonce";
type: "error";
}, {
inputs: readonly [];
name: "InvalidShortString";
type: "error";
}, {
inputs: readonly [];
name: "NotAdmin";
type: "error";
}, {
inputs: readonly [];
name: "NotOriginalAdmin";
type: "error";
}, {
inputs: readonly [{
internalType: "uint8";
name: "bits";
type: "uint8";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "SafeCastOverflowedUintDowncast";
type: "error";
}, {
inputs: readonly [{
internalType: "string";
name: "str";
type: "string";
}];
name: "StringTooLong";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "expiry";
type: "uint256";
}];
name: "VotesExpiredSignature";
type: "error";
}],
| "updateAdmin"
| "approve"
| "burn"
| "burnFrom"
| "crosschainBurn"
| "crosschainMint"
| "delegate"
| "delegateBySig"
| "permit"
| "transfer"
| "transferFrom"
| "updateImage"
| "updateMetadata"
| "verify">> & {
error: ClankerError;
}>
The simulated output
Promise<
| {
error: undefined;
txHash: `0x${string}`;
}
| {
error: ClankerError;
txHash: undefined;
}>
Transaction hash of the update or error
View full generated declaration (1,991 lines)
Defined in: src/v4/index.ts:640
Simulate updating the token metadata. Will use the wallet account on the Clanker class or
the passed-in account.
Promise<
| SimulateContractReturnType<readonly [{
inputs: readonly [{
internalType: "string";
name: "name_";
type: "string";
}, {
internalType: "string";
name: "symbol_";
type: "string";
}, {
internalType: "uint256";
name: "maxSupply_";
type: "uint256";
}, {
internalType: "address";
name: "admin_";
type: "address";
}, {
internalType: "string";
name: "image_";
type: "string";
}, {
internalType: "string";
name: "metadata_";
type: "string";
}, {
internalType: "string";
name: "context_";
type: "string";
}, {
internalType: "uint256";
name: "initialSupplyChainId_";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "CLOCK_MODE";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "DOMAIN_SEPARATOR";
outputs: readonly [{
internalType: "bytes32";
name: "";
type: "bytes32";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "admin";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "allData";
outputs: readonly [{
internalType: "address";
name: "originalAdmin";
type: "address";
}, {
internalType: "address";
name: "admin";
type: "address";
}, {
internalType: "string";
name: "image";
type: "string";
}, {
internalType: "string";
name: "metadata";
type: "string";
}, {
internalType: "string";
name: "context";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}, {
internalType: "address";
name: "spender";
type: "address";
}];
name: "allowance";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "approve";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "balanceOf";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "burn";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "burnFrom";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint32";
name: "pos";
type: "uint32";
}];
name: "checkpoints";
outputs: readonly [{
components: readonly [{
internalType: "uint48";
name: "_key";
type: "uint48";
}, {
internalType: "uint208";
name: "_value";
type: "uint208";
}];
internalType: "struct Checkpoints.Checkpoint208";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "clock";
outputs: readonly [{
internalType: "uint48";
name: "";
type: "uint48";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "context";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "_from";
type: "address";
}, {
internalType: "uint256";
name: "_amount";
type: "uint256";
}];
name: "crosschainBurn";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "_to";
type: "address";
}, {
internalType: "uint256";
name: "_amount";
type: "uint256";
}];
name: "crosschainMint";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "decimals";
outputs: readonly [{
internalType: "uint8";
name: "";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "delegatee";
type: "address";
}];
name: "delegate";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "delegatee";
type: "address";
}, {
internalType: "uint256";
name: "nonce";
type: "uint256";
}, {
internalType: "uint256";
name: "expiry";
type: "uint256";
}, {
internalType: "uint8";
name: "v";
type: "uint8";
}, {
internalType: "bytes32";
name: "r";
type: "bytes32";
}, {
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "delegateBySig";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "delegates";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "eip712Domain";
outputs: readonly [{
internalType: "bytes1";
name: "fields";
type: "bytes1";
}, {
internalType: "string";
name: "name";
type: "string";
}, {
internalType: "string";
name: "version";
type: "string";
}, {
internalType: "uint256";
name: "chainId";
type: "uint256";
}, {
internalType: "address";
name: "verifyingContract";
type: "address";
}, {
internalType: "bytes32";
name: "salt";
type: "bytes32";
}, {
internalType: "uint256[]";
name: "extensions";
type: "uint256[]";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "timepoint";
type: "uint256";
}];
name: "getPastTotalSupply";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "timepoint";
type: "uint256";
}];
name: "getPastVotes";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "getVotes";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "imageUrl";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "isVerified";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "metadata";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "name";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "nonces";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "numCheckpoints";
outputs: readonly [{
internalType: "uint32";
name: "";
type: "uint32";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "originalAdmin";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}, {
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}, {
internalType: "uint256";
name: "deadline";
type: "uint256";
}, {
internalType: "uint8";
name: "v";
type: "uint8";
}, {
internalType: "bytes32";
name: "r";
type: "bytes32";
}, {
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "permit";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "_interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [];
name: "symbol";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "totalSupply";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "transfer";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "from";
type: "address";
}, {
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "transferFrom";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "admin_";
type: "address";
}];
name: "updateAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "string";
name: "image_";
type: "string";
}];
name: "updateImage";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "string";
name: "metadata_";
type: "string";
}];
name: "updateMetadata";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "verify";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "owner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "spender";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "Approval";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}];
name: "CrosschainBurn";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "to";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}];
name: "CrosschainMint";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "delegator";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "fromDelegate";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "toDelegate";
type: "address";
}];
name: "DelegateChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "delegate";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "previousVotes";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "newVotes";
type: "uint256";
}];
name: "DelegateVotesChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [];
name: "EIP712DomainChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "to";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "Transfer";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "oldAdmin";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "UpdateAdmin";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "string";
name: "image";
type: "string";
}];
name: "UpdateImage";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "string";
name: "metadata";
type: "string";
}];
name: "UpdateMetadata";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "admin";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}];
name: "Verified";
type: "event";
}, {
inputs: readonly [];
name: "AlreadyVerified";
type: "error";
}, {
inputs: readonly [];
name: "CheckpointUnorderedInsertion";
type: "error";
}, {
inputs: readonly [];
name: "ECDSAInvalidSignature";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "length";
type: "uint256";
}];
name: "ECDSAInvalidSignatureLength";
type: "error";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "ECDSAInvalidSignatureS";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "increasedSupply";
type: "uint256";
}, {
internalType: "uint256";
name: "cap";
type: "uint256";
}];
name: "ERC20ExceededSafeSupply";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "allowance";
type: "uint256";
}, {
internalType: "uint256";
name: "needed";
type: "uint256";
}];
name: "ERC20InsufficientAllowance";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "sender";
type: "address";
}, {
internalType: "uint256";
name: "balance";
type: "uint256";
}, {
internalType: "uint256";
name: "needed";
type: "uint256";
}];
name: "ERC20InsufficientBalance";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "approver";
type: "address";
}];
name: "ERC20InvalidApprover";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "receiver";
type: "address";
}];
name: "ERC20InvalidReceiver";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "sender";
type: "address";
}];
name: "ERC20InvalidSender";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}];
name: "ERC20InvalidSpender";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "deadline";
type: "uint256";
}];
name: "ERC2612ExpiredSignature";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "signer";
type: "address";
}, {
internalType: "address";
name: "owner";
type: "address";
}];
name: "ERC2612InvalidSigner";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "timepoint";
type: "uint256";
}, {
internalType: "uint48";
name: "clock";
type: "uint48";
}];
name: "ERC5805FutureLookup";
type: "error";
}, {
inputs: readonly [];
name: "ERC6372InconsistentClock";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "currentNonce";
type: "uint256";
}];
name: "InvalidAccountNonce";
type: "error";
}, {
inputs: readonly [];
name: "InvalidShortString";
type: "error";
}, {
inputs: readonly [];
name: "NotAdmin";
type: "error";
}, {
inputs: readonly [];
name: "NotOriginalAdmin";
type: "error";
}, {
inputs: readonly [{
internalType: "uint8";
name: "bits";
type: "uint8";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "SafeCastOverflowedUintDowncast";
type: "error";
}, {
inputs: readonly [{
internalType: "string";
name: "str";
type: "string";
}];
name: "StringTooLong";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "expiry";
type: "uint256";
}];
name: "VotesExpiredSignature";
type: "error";
}],
| "updateAdmin"
| "approve"
| "burn"
| "burnFrom"
| "crosschainBurn"
| "crosschainMint"
| "delegate"
| "delegateBySig"
| "permit"
| "transfer"
| "transferFrom"
| "updateImage"
| "updateMetadata"
| "verify"> & {
error?: undefined;
}
| UndefinedValues<SimulateContractReturnType<readonly [{
inputs: readonly [{
internalType: "string";
name: "name_";
type: "string";
}, {
internalType: "string";
name: "symbol_";
type: "string";
}, {
internalType: "uint256";
name: "maxSupply_";
type: "uint256";
}, {
internalType: "address";
name: "admin_";
type: "address";
}, {
internalType: "string";
name: "image_";
type: "string";
}, {
internalType: "string";
name: "metadata_";
type: "string";
}, {
internalType: "string";
name: "context_";
type: "string";
}, {
internalType: "uint256";
name: "initialSupplyChainId_";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "CLOCK_MODE";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "DOMAIN_SEPARATOR";
outputs: readonly [{
internalType: "bytes32";
name: "";
type: "bytes32";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "admin";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "allData";
outputs: readonly [{
internalType: "address";
name: "originalAdmin";
type: "address";
}, {
internalType: "address";
name: "admin";
type: "address";
}, {
internalType: "string";
name: "image";
type: "string";
}, {
internalType: "string";
name: "metadata";
type: "string";
}, {
internalType: "string";
name: "context";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}, {
internalType: "address";
name: "spender";
type: "address";
}];
name: "allowance";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "approve";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "balanceOf";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "burn";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "burnFrom";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint32";
name: "pos";
type: "uint32";
}];
name: "checkpoints";
outputs: readonly [{
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct Checkpoints.Checkpoint208";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "clock";
outputs: readonly [{
internalType: "uint48";
name: "";
type: "uint48";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "context";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "_from";
type: "address";
}, {
internalType: "uint256";
name: "_amount";
type: "uint256";
}];
name: "crosschainBurn";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "_to";
type: "address";
}, {
internalType: "uint256";
name: "_amount";
type: "uint256";
}];
name: "crosschainMint";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "decimals";
outputs: readonly [{
internalType: "uint8";
name: "";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "delegatee";
type: "address";
}];
name: "delegate";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "delegatee";
type: "address";
}, {
internalType: "uint256";
name: "nonce";
type: "uint256";
}, {
internalType: "uint256";
name: "expiry";
type: "uint256";
}, {
internalType: "uint8";
name: "v";
type: "uint8";
}, {
internalType: "bytes32";
name: "r";
type: "bytes32";
}, {
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "delegateBySig";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "delegates";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "eip712Domain";
outputs: readonly [{
internalType: "bytes1";
name: "fields";
type: "bytes1";
}, {
internalType: "string";
name: "name";
type: "string";
}, {
internalType: "string";
name: "version";
type: "string";
}, {
internalType: "uint256";
name: "chainId";
type: "uint256";
}, {
internalType: "address";
name: "verifyingContract";
type: "address";
}, {
internalType: "bytes32";
name: "salt";
type: "bytes32";
}, {
internalType: "uint256[]";
name: "extensions";
type: "uint256[]";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "timepoint";
type: "uint256";
}];
name: "getPastTotalSupply";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "timepoint";
type: "uint256";
}];
name: "getPastVotes";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "getVotes";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "imageUrl";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "isVerified";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "metadata";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "name";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "nonces";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "numCheckpoints";
outputs: readonly [{
internalType: "uint32";
name: "";
type: "uint32";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "originalAdmin";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}, {
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}, {
internalType: "uint256";
name: "deadline";
type: "uint256";
}, {
internalType: "uint8";
name: "v";
type: "uint8";
}, {
internalType: "bytes32";
name: "r";
type: "bytes32";
}, {
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "permit";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "_interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [];
name: "symbol";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "totalSupply";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "transfer";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "from";
type: "address";
}, {
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "transferFrom";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "admin_";
type: "address";
}];
name: "updateAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "string";
name: "image_";
type: "string";
}];
name: "updateImage";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "string";
name: "metadata_";
type: "string";
}];
name: "updateMetadata";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "verify";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "owner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "spender";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "Approval";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}];
name: "CrosschainBurn";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "to";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "sender";
type: "address";
}];
name: "CrosschainMint";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "delegator";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "fromDelegate";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "toDelegate";
type: "address";
}];
name: "DelegateChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "delegate";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "previousVotes";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "newVotes";
type: "uint256";
}];
name: "DelegateVotesChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [];
name: "EIP712DomainChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "to";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "Transfer";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "oldAdmin";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "UpdateAdmin";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "string";
name: "image";
type: "string";
}];
name: "UpdateImage";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "string";
name: "metadata";
type: "string";
}];
name: "UpdateMetadata";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "admin";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}];
name: "Verified";
type: "event";
}, {
inputs: readonly [];
name: "AlreadyVerified";
type: "error";
}, {
inputs: readonly [];
name: "CheckpointUnorderedInsertion";
type: "error";
}, {
inputs: readonly [];
name: "ECDSAInvalidSignature";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "length";
type: "uint256";
}];
name: "ECDSAInvalidSignatureLength";
type: "error";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "s";
type: "bytes32";
}];
name: "ECDSAInvalidSignatureS";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "increasedSupply";
type: "uint256";
}, {
internalType: "uint256";
name: "cap";
type: "uint256";
}];
name: "ERC20ExceededSafeSupply";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}, {
internalType: "uint256";
name: "allowance";
type: "uint256";
}, {
internalType: "uint256";
name: "needed";
type: "uint256";
}];
name: "ERC20InsufficientAllowance";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "sender";
type: "address";
}, {
internalType: "uint256";
name: "balance";
type: "uint256";
}, {
internalType: "uint256";
name: "needed";
type: "uint256";
}];
name: "ERC20InsufficientBalance";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "approver";
type: "address";
}];
name: "ERC20InvalidApprover";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "receiver";
type: "address";
}];
name: "ERC20InvalidReceiver";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "sender";
type: "address";
}];
name: "ERC20InvalidSender";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "spender";
type: "address";
}];
name: "ERC20InvalidSpender";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "deadline";
type: "uint256";
}];
name: "ERC2612ExpiredSignature";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "signer";
type: "address";
}, {
internalType: "address";
name: "owner";
type: "address";
}];
name: "ERC2612InvalidSigner";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "timepoint";
type: "uint256";
}, {
internalType: "uint48";
name: "clock";
type: "uint48";
}];
name: "ERC5805FutureLookup";
type: "error";
}, {
inputs: readonly [];
name: "ERC6372InconsistentClock";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "currentNonce";
type: "uint256";
}];
name: "InvalidAccountNonce";
type: "error";
}, {
inputs: readonly [];
name: "InvalidShortString";
type: "error";
}, {
inputs: readonly [];
name: "NotAdmin";
type: "error";
}, {
inputs: readonly [];
name: "NotOriginalAdmin";
type: "error";
}, {
inputs: readonly [{
internalType: "uint8";
name: "bits";
type: "uint8";
}, {
internalType: "uint256";
name: "value";
type: "uint256";
}];
name: "SafeCastOverflowedUintDowncast";
type: "error";
}, {
inputs: readonly [{
internalType: "string";
name: "str";
type: "string";
}];
name: "StringTooLong";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
inputs: readonly [{
internalType: "uint256";
name: "expiry";
type: "uint256";
}];
name: "VotesExpiredSignature";
type: "error";
}],
| "updateAdmin"
| "approve"
| "burn"
| "burnFrom"
| "crosschainBurn"
| "crosschainMint"
| "delegate"
| "delegateBySig"
| "permit"
| "transfer"
| "transferFrom"
| "updateImage"
| "updateMetadata"
| "verify">> & {
error: ClankerError;
}>
The simulated output
Promise<
| {
error: undefined;
txHash: `0x${string}`;
}
| {
error: ClankerError;
txHash: undefined;
}>
Transaction hash of the update or error
View full generated declaration (1,661 lines)
Defined in: src/v4/index.ts:338
Simulate updating the reward admin. Will use the wallet account on the Clanker class or
the passed-in account.
Promise<
| SimulateContractReturnType<readonly [{
inputs: readonly [{
internalType: "address";
name: "owner_";
type: "address";
}, {
internalType: "address";
name: "factory_";
type: "address";
}, {
internalType: "address";
name: "feeLocker_";
type: "address";
}, {
internalType: "address";
name: "positionManager_";
type: "address";
}, {
internalType: "address";
name: "permit2_";
type: "address";
}, {
internalType: "address";
name: "universalRouter_";
type: "address";
}, {
internalType: "address";
name: "poolManager_";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "BASIS_POINTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_LP_POSITIONS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_REWARD_PARTICIPANTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewards";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewardsWithoutUnlock";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "factory";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "feeLocker";
outputs: readonly [{
internalType: "contract IClankerFeeLocker";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "";
type: "uint256";
}];
name: "feePreferences";
outputs: readonly [{
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "feePreference";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "";
type: "address";
}, {
internalType: "address";
name: "from";
type: "address";
}, {
internalType: "uint256";
name: "id";
type: "uint256";
}, {
internalType: "bytes";
name: "";
type: "bytes";
}];
name: "onERC721Received";
outputs: readonly [{
internalType: "bytes4";
name: "";
type: "bytes4";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "permit2";
outputs: readonly [{
internalType: "contract IPermit2";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
components: readonly [{
internalType: "address";
name: "locker";
type: "address";
}, {
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}, {
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
internalType: "int24[]";
name: "tickLower";
type: "int24[]";
}, {
internalType: "int24[]";
name: "tickUpper";
type: "int24[]";
}, {
internalType: "uint16[]";
name: "positionBps";
type: "uint16[]";
}, {
internalType: "bytes";
name: "lockerData";
type: "bytes";
}];
internalType: "struct IClanker.LockerConfig";
name: "lockerConfig";
type: "tuple";
}, {
components: readonly [{
internalType: "address";
name: "hook";
type: "address";
}, {
internalType: "address";
name: "pairedToken";
type: "address";
}, {
internalType: "int24";
name: "tickIfToken0IsClanker";
type: "int24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "bytes";
name: "poolData";
type: "bytes";
}];
internalType: "struct IClanker.PoolConfig";
name: "poolConfig";
type: "tuple";
}, {
components: readonly [{
internalType: "Currency";
name: "currency0";
type: "address";
}, {
internalType: "Currency";
name: "currency1";
type: "address";
}, {
internalType: "uint24";
name: "fee";
type: "uint24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "contract IHooks";
name: "hooks";
type: "address";
}];
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "placeLiquidity";
outputs: readonly [{
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "poolManager";
outputs: readonly [{
internalType: "contract IPoolManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "positionManager";
outputs: readonly [{
internalType: "contract IPositionManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "renounceOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "tokenRewards";
outputs: readonly [{
components: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
components: readonly […, …, …, …, …];
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
internalType: "uint256";
name: "positionId";
type: "uint256";
}, {
internalType: "uint256";
name: "numPositions";
type: "uint256";
}, {
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}];
internalType: "struct IClankerLpLocker.TokenRewardInfo";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "universalRouter";
outputs: readonly [{
internalType: "contract IUniversalRouter";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "updateFeePreference";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "updateRewardAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "updateRewardRecipient";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "version";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawERC20";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawETH";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount0";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "amount1";
type: "uint256";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards0";
type: "uint256[]";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards1";
type: "uint256[]";
}];
name: "ClaimedRewards";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "oldFeePreference";
type: "uint8";
}, {
indexed: true;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "FeePreferenceUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "rewardToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountSwapped";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "swappedToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountOut";
type: "uint256";
}];
name: "FeesSwapped";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn[]";
name: "feePreference";
type: "uint8[]";
}];
name: "InitialFeePreferences";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "previousOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransferred";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
name: "Received";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldAdmin";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "RewardAdminUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldRecipient";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "RewardRecipientUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "token";
type: "address";
}, {
components: readonly [{
internalType: "Currency";
name: "currency0";
type: "address";
}, {
internalType: "Currency";
name: "currency1";
type: "address";
}, {
internalType: "uint24";
name: "fee";
type: "uint24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "contract IHooks";
name: "hooks";
type: "address";
}];
indexed: false;
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
indexed: false;
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "numPositions";
type: "uint256";
}, {
indexed: false;
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickLower";
type: "int24[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickUpper";
type: "int24[]";
}, {
indexed: false;
internalType: "uint16[]";
name: "positionBps";
type: "uint16[]";
}];
name: "TokenRewardAdded";
type: "event";
}, {
inputs: readonly [];
name: "InvalidPositionBps";
type: "error";
}, {
inputs: readonly [];
name: "InvalidRewardBps";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedPositionInfos";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedRewardArrays";
type: "error";
}, {
inputs: readonly [];
name: "NoPositions";
type: "error";
}, {
inputs: readonly [];
name: "NoRewardRecipients";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "OwnableInvalidOwner";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "OwnableUnauthorizedAccount";
type: "error";
}, {
inputs: readonly [];
name: "ReentrancyGuardReentrantCall";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "SafeERC20FailedOperation";
type: "error";
}, {
inputs: readonly [];
name: "TickRangeLowerThanStartingTick";
type: "error";
}, {
inputs: readonly [];
name: "TicksBackwards";
type: "error";
}, {
inputs: readonly [];
name: "TicksNotMultipleOfTickSpacing";
type: "error";
}, {
inputs: readonly [];
name: "TicksOutOfTickBounds";
type: "error";
}, {
inputs: readonly [];
name: "TokenAlreadyHasRewards";
type: "error";
}, {
inputs: readonly [];
name: "TooManyPositions";
type: "error";
}, {
inputs: readonly [];
name: "TooManyRewardParticipants";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAddress";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAmount";
type: "error";
}],
| "renounceOwnership"
| "transferOwnership"
| "collectRewards"
| "collectRewardsWithoutUnlock"
| "onERC721Received"
| "placeLiquidity"
| "updateFeePreference"
| "updateRewardAdmin"
| "updateRewardRecipient"
| "withdrawERC20"
| "withdrawETH"> & {
error?: undefined;
}
| UndefinedValues<SimulateContractReturnType<readonly [{
inputs: readonly [{
internalType: "address";
name: "owner_";
type: "address";
}, {
internalType: "address";
name: "factory_";
type: "address";
}, {
internalType: "address";
name: "feeLocker_";
type: "address";
}, {
internalType: "address";
name: "positionManager_";
type: "address";
}, {
internalType: "address";
name: "permit2_";
type: "address";
}, {
internalType: "address";
name: "universalRouter_";
type: "address";
}, {
internalType: "address";
name: "poolManager_";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "BASIS_POINTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_LP_POSITIONS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_REWARD_PARTICIPANTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewards";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewardsWithoutUnlock";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "factory";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "feeLocker";
outputs: readonly [{
internalType: "contract IClankerFeeLocker";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "";
type: "uint256";
}];
name: "feePreferences";
outputs: readonly [{
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "feePreference";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "";
type: "address";
}, {
internalType: "address";
name: "from";
type: "address";
}, {
internalType: "uint256";
name: "id";
type: "uint256";
}, {
internalType: "bytes";
name: "";
type: "bytes";
}];
name: "onERC721Received";
outputs: readonly [{
internalType: "bytes4";
name: "";
type: "bytes4";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "permit2";
outputs: readonly [{
internalType: "contract IPermit2";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct IClanker.LockerConfig";
name: "lockerConfig";
type: "tuple";
}, {
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct IClanker.PoolConfig";
name: "poolConfig";
type: "tuple";
}, {
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "placeLiquidity";
outputs: readonly [{
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "poolManager";
outputs: readonly [{
internalType: "contract IPoolManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "positionManager";
outputs: readonly [{
internalType: "contract IPositionManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "renounceOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "tokenRewards";
outputs: readonly [{
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
components: …;
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct IClankerLpLocker.TokenRewardInfo";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "universalRouter";
outputs: readonly [{
internalType: "contract IUniversalRouter";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "updateFeePreference";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "updateRewardAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "updateRewardRecipient";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "version";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawERC20";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawETH";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount0";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "amount1";
type: "uint256";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards0";
type: "uint256[]";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards1";
type: "uint256[]";
}];
name: "ClaimedRewards";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "oldFeePreference";
type: "uint8";
}, {
indexed: true;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "FeePreferenceUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "rewardToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountSwapped";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "swappedToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountOut";
type: "uint256";
}];
name: "FeesSwapped";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn[]";
name: "feePreference";
type: "uint8[]";
}];
name: "InitialFeePreferences";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "previousOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransferred";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
name: "Received";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldAdmin";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "RewardAdminUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldRecipient";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "RewardRecipientUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "token";
type: "address";
}, {
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
indexed: false;
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
indexed: false;
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "numPositions";
type: "uint256";
}, {
indexed: false;
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickLower";
type: "int24[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickUpper";
type: "int24[]";
}, {
indexed: false;
internalType: "uint16[]";
name: "positionBps";
type: "uint16[]";
}];
name: "TokenRewardAdded";
type: "event";
}, {
inputs: readonly [];
name: "InvalidPositionBps";
type: "error";
}, {
inputs: readonly [];
name: "InvalidRewardBps";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedPositionInfos";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedRewardArrays";
type: "error";
}, {
inputs: readonly [];
name: "NoPositions";
type: "error";
}, {
inputs: readonly [];
name: "NoRewardRecipients";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "OwnableInvalidOwner";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "OwnableUnauthorizedAccount";
type: "error";
}, {
inputs: readonly [];
name: "ReentrancyGuardReentrantCall";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "SafeERC20FailedOperation";
type: "error";
}, {
inputs: readonly [];
name: "TickRangeLowerThanStartingTick";
type: "error";
}, {
inputs: readonly [];
name: "TicksBackwards";
type: "error";
}, {
inputs: readonly [];
name: "TicksNotMultipleOfTickSpacing";
type: "error";
}, {
inputs: readonly [];
name: "TicksOutOfTickBounds";
type: "error";
}, {
inputs: readonly [];
name: "TokenAlreadyHasRewards";
type: "error";
}, {
inputs: readonly [];
name: "TooManyPositions";
type: "error";
}, {
inputs: readonly [];
name: "TooManyRewardParticipants";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAddress";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAmount";
type: "error";
}],
| "renounceOwnership"
| "transferOwnership"
| "collectRewards"
| "collectRewardsWithoutUnlock"
| "onERC721Received"
| "placeLiquidity"
| "updateFeePreference"
| "updateRewardAdmin"
| "updateRewardRecipient"
| "withdrawERC20"
| "withdrawETH">> & {
error: ClankerError;
}>
The simulated output
Promise<
| {
error: undefined;
txHash: `0x${string}`;
}
| {
error: ClankerError;
txHash: undefined;
}>
Transaction hash of the update or error
View full generated declaration (1,661 lines)
Defined in: src/v4/index.ts:295
Simulate updating the reward recipient. Will use the wallet account on the Clanker class or
the passed-in account.
Promise<
| SimulateContractReturnType<readonly [{
inputs: readonly [{
internalType: "address";
name: "owner_";
type: "address";
}, {
internalType: "address";
name: "factory_";
type: "address";
}, {
internalType: "address";
name: "feeLocker_";
type: "address";
}, {
internalType: "address";
name: "positionManager_";
type: "address";
}, {
internalType: "address";
name: "permit2_";
type: "address";
}, {
internalType: "address";
name: "universalRouter_";
type: "address";
}, {
internalType: "address";
name: "poolManager_";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "BASIS_POINTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_LP_POSITIONS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_REWARD_PARTICIPANTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewards";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewardsWithoutUnlock";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "factory";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "feeLocker";
outputs: readonly [{
internalType: "contract IClankerFeeLocker";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "";
type: "uint256";
}];
name: "feePreferences";
outputs: readonly [{
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "feePreference";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "";
type: "address";
}, {
internalType: "address";
name: "from";
type: "address";
}, {
internalType: "uint256";
name: "id";
type: "uint256";
}, {
internalType: "bytes";
name: "";
type: "bytes";
}];
name: "onERC721Received";
outputs: readonly [{
internalType: "bytes4";
name: "";
type: "bytes4";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "permit2";
outputs: readonly [{
internalType: "contract IPermit2";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
components: readonly [{
internalType: "address";
name: "locker";
type: "address";
}, {
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}, {
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
internalType: "int24[]";
name: "tickLower";
type: "int24[]";
}, {
internalType: "int24[]";
name: "tickUpper";
type: "int24[]";
}, {
internalType: "uint16[]";
name: "positionBps";
type: "uint16[]";
}, {
internalType: "bytes";
name: "lockerData";
type: "bytes";
}];
internalType: "struct IClanker.LockerConfig";
name: "lockerConfig";
type: "tuple";
}, {
components: readonly [{
internalType: "address";
name: "hook";
type: "address";
}, {
internalType: "address";
name: "pairedToken";
type: "address";
}, {
internalType: "int24";
name: "tickIfToken0IsClanker";
type: "int24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "bytes";
name: "poolData";
type: "bytes";
}];
internalType: "struct IClanker.PoolConfig";
name: "poolConfig";
type: "tuple";
}, {
components: readonly [{
internalType: "Currency";
name: "currency0";
type: "address";
}, {
internalType: "Currency";
name: "currency1";
type: "address";
}, {
internalType: "uint24";
name: "fee";
type: "uint24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "contract IHooks";
name: "hooks";
type: "address";
}];
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "placeLiquidity";
outputs: readonly [{
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "poolManager";
outputs: readonly [{
internalType: "contract IPoolManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "positionManager";
outputs: readonly [{
internalType: "contract IPositionManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "renounceOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "tokenRewards";
outputs: readonly [{
components: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
components: readonly […, …, …, …, …];
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
internalType: "uint256";
name: "positionId";
type: "uint256";
}, {
internalType: "uint256";
name: "numPositions";
type: "uint256";
}, {
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}];
internalType: "struct IClankerLpLocker.TokenRewardInfo";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "universalRouter";
outputs: readonly [{
internalType: "contract IUniversalRouter";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "updateFeePreference";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "updateRewardAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "updateRewardRecipient";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "version";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawERC20";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawETH";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount0";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "amount1";
type: "uint256";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards0";
type: "uint256[]";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards1";
type: "uint256[]";
}];
name: "ClaimedRewards";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "oldFeePreference";
type: "uint8";
}, {
indexed: true;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "FeePreferenceUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "rewardToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountSwapped";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "swappedToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountOut";
type: "uint256";
}];
name: "FeesSwapped";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn[]";
name: "feePreference";
type: "uint8[]";
}];
name: "InitialFeePreferences";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "previousOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransferred";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
name: "Received";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldAdmin";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "RewardAdminUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldRecipient";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "RewardRecipientUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "token";
type: "address";
}, {
components: readonly [{
internalType: "Currency";
name: "currency0";
type: "address";
}, {
internalType: "Currency";
name: "currency1";
type: "address";
}, {
internalType: "uint24";
name: "fee";
type: "uint24";
}, {
internalType: "int24";
name: "tickSpacing";
type: "int24";
}, {
internalType: "contract IHooks";
name: "hooks";
type: "address";
}];
indexed: false;
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
indexed: false;
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "numPositions";
type: "uint256";
}, {
indexed: false;
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickLower";
type: "int24[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickUpper";
type: "int24[]";
}, {
indexed: false;
internalType: "uint16[]";
name: "positionBps";
type: "uint16[]";
}];
name: "TokenRewardAdded";
type: "event";
}, {
inputs: readonly [];
name: "InvalidPositionBps";
type: "error";
}, {
inputs: readonly [];
name: "InvalidRewardBps";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedPositionInfos";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedRewardArrays";
type: "error";
}, {
inputs: readonly [];
name: "NoPositions";
type: "error";
}, {
inputs: readonly [];
name: "NoRewardRecipients";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "OwnableInvalidOwner";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "OwnableUnauthorizedAccount";
type: "error";
}, {
inputs: readonly [];
name: "ReentrancyGuardReentrantCall";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "SafeERC20FailedOperation";
type: "error";
}, {
inputs: readonly [];
name: "TickRangeLowerThanStartingTick";
type: "error";
}, {
inputs: readonly [];
name: "TicksBackwards";
type: "error";
}, {
inputs: readonly [];
name: "TicksNotMultipleOfTickSpacing";
type: "error";
}, {
inputs: readonly [];
name: "TicksOutOfTickBounds";
type: "error";
}, {
inputs: readonly [];
name: "TokenAlreadyHasRewards";
type: "error";
}, {
inputs: readonly [];
name: "TooManyPositions";
type: "error";
}, {
inputs: readonly [];
name: "TooManyRewardParticipants";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAddress";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAmount";
type: "error";
}],
| "renounceOwnership"
| "transferOwnership"
| "collectRewards"
| "collectRewardsWithoutUnlock"
| "onERC721Received"
| "placeLiquidity"
| "updateFeePreference"
| "updateRewardAdmin"
| "updateRewardRecipient"
| "withdrawERC20"
| "withdrawETH"> & {
error?: undefined;
}
| UndefinedValues<SimulateContractReturnType<readonly [{
inputs: readonly [{
internalType: "address";
name: "owner_";
type: "address";
}, {
internalType: "address";
name: "factory_";
type: "address";
}, {
internalType: "address";
name: "feeLocker_";
type: "address";
}, {
internalType: "address";
name: "positionManager_";
type: "address";
}, {
internalType: "address";
name: "permit2_";
type: "address";
}, {
internalType: "address";
name: "universalRouter_";
type: "address";
}, {
internalType: "address";
name: "poolManager_";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
inputs: readonly [];
name: "BASIS_POINTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_LP_POSITIONS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "MAX_REWARD_PARTICIPANTS";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewards";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "collectRewardsWithoutUnlock";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "factory";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "feeLocker";
outputs: readonly [{
internalType: "contract IClankerFeeLocker";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "";
type: "uint256";
}];
name: "feePreferences";
outputs: readonly [{
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "feePreference";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "";
type: "address";
}, {
internalType: "address";
name: "from";
type: "address";
}, {
internalType: "uint256";
name: "id";
type: "uint256";
}, {
internalType: "bytes";
name: "";
type: "bytes";
}];
name: "onERC721Received";
outputs: readonly [{
internalType: "bytes4";
name: "";
type: "bytes4";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "permit2";
outputs: readonly [{
internalType: "contract IPermit2";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct IClanker.LockerConfig";
name: "lockerConfig";
type: "tuple";
}, {
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct IClanker.PoolConfig";
name: "poolConfig";
type: "tuple";
}, {
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "placeLiquidity";
outputs: readonly [{
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "poolManager";
outputs: readonly [{
internalType: "contract IPoolManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "positionManager";
outputs: readonly [{
internalType: "contract IPositionManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "renounceOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes4";
name: "interfaceId";
type: "bytes4";
}];
name: "supportsInterface";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "tokenRewards";
outputs: readonly [{
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
components: …;
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
internalType: "struct IClankerLpLocker.TokenRewardInfo";
name: "";
type: "tuple";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "universalRouter";
outputs: readonly [{
internalType: "contract IUniversalRouter";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "updateFeePreference";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "updateRewardAdmin";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "updateRewardRecipient";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "version";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawERC20";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "recipient";
type: "address";
}];
name: "withdrawETH";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amount0";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "amount1";
type: "uint256";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards0";
type: "uint256[]";
}, {
indexed: false;
internalType: "uint256[]";
name: "rewards1";
type: "uint256[]";
}];
name: "ClaimedRewards";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "oldFeePreference";
type: "uint8";
}, {
indexed: true;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn";
name: "newFeePreference";
type: "uint8";
}];
name: "FeePreferenceUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "rewardToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountSwapped";
type: "uint256";
}, {
indexed: true;
internalType: "address";
name: "swappedToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "amountOut";
type: "uint256";
}];
name: "FeesSwapped";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "enum IClankerLpLockerFeeConversion.FeeIn[]";
name: "feePreference";
type: "uint8[]";
}];
name: "InitialFeePreferences";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "previousOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransferred";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "from";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}];
name: "Received";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldAdmin";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "RewardAdminUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "rewardIndex";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "oldRecipient";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "RewardRecipientUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "token";
type: "address";
}, {
components: readonly [{
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}, {
internalType: …;
name: …;
type: …;
}];
indexed: false;
internalType: "struct PoolKey";
name: "poolKey";
type: "tuple";
}, {
indexed: false;
internalType: "uint256";
name: "poolSupply";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "positionId";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "numPositions";
type: "uint256";
}, {
indexed: false;
internalType: "uint16[]";
name: "rewardBps";
type: "uint16[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardAdmins";
type: "address[]";
}, {
indexed: false;
internalType: "address[]";
name: "rewardRecipients";
type: "address[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickLower";
type: "int24[]";
}, {
indexed: false;
internalType: "int24[]";
name: "tickUpper";
type: "int24[]";
}, {
indexed: false;
internalType: "uint16[]";
name: "positionBps";
type: "uint16[]";
}];
name: "TokenRewardAdded";
type: "event";
}, {
inputs: readonly [];
name: "InvalidPositionBps";
type: "error";
}, {
inputs: readonly [];
name: "InvalidRewardBps";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedPositionInfos";
type: "error";
}, {
inputs: readonly [];
name: "MismatchedRewardArrays";
type: "error";
}, {
inputs: readonly [];
name: "NoPositions";
type: "error";
}, {
inputs: readonly [];
name: "NoRewardRecipients";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "owner";
type: "address";
}];
name: "OwnableInvalidOwner";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "account";
type: "address";
}];
name: "OwnableUnauthorizedAccount";
type: "error";
}, {
inputs: readonly [];
name: "ReentrancyGuardReentrantCall";
type: "error";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "SafeERC20FailedOperation";
type: "error";
}, {
inputs: readonly [];
name: "TickRangeLowerThanStartingTick";
type: "error";
}, {
inputs: readonly [];
name: "TicksBackwards";
type: "error";
}, {
inputs: readonly [];
name: "TicksNotMultipleOfTickSpacing";
type: "error";
}, {
inputs: readonly [];
name: "TicksOutOfTickBounds";
type: "error";
}, {
inputs: readonly [];
name: "TokenAlreadyHasRewards";
type: "error";
}, {
inputs: readonly [];
name: "TooManyPositions";
type: "error";
}, {
inputs: readonly [];
name: "TooManyRewardParticipants";
type: "error";
}, {
inputs: readonly [];
name: "Unauthorized";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAddress";
type: "error";
}, {
inputs: readonly [];
name: "ZeroRewardAmount";
type: "error";
}],
| "renounceOwnership"
| "transferOwnership"
| "collectRewards"
| "collectRewardsWithoutUnlock"
| "onERC721Received"
| "placeLiquidity"
| "updateFeePreference"
| "updateRewardAdmin"
| "updateRewardRecipient"
| "withdrawERC20"
| "withdrawETH">> & {
error: ClankerError;
}>
The simulated output
View full generated declaration (412 lines)
Defined in: src/v4/index.ts:534
Get the transaction object for claiming vaulted tokens (for offline signing or inspection).
View full generated declaration (412 lines)
Transaction object for claiming vaulted tokens