UNPKG

@sfpro/sdk

Version:

TypeScript SDK for Superfluid Protocol - stream money every second

1,854 lines (1,840 loc) 214 kB
import { createUseReadContract, createUseWriteContract, createUseSimulateContract, createUseWatchContractEvent, } from 'wagmi/codegen' ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // fontaine ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// export const fontaineAbi = [ { type: 'constructor', inputs: [ { name: 'fluid', internalType: 'contract ISuperToken', type: 'address' }, { name: 'taxDistributionPool', internalType: 'contract ISuperfluidPool', type: 'address', }, ], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'EARLY_END', outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'FLUID', outputs: [ { name: '', internalType: 'contract ISuperToken', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'TAX_DISTRIBUTION_POOL', outputs: [ { name: '', internalType: 'contract ISuperfluidPool', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'endDate', outputs: [{ name: '', internalType: 'uint128', type: 'uint128' }], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'unlockRecipient', internalType: 'address', type: 'address' }, { name: 'targetUnlockFlowRate', internalType: 'int96', type: 'int96' }, { name: 'targetTaxFlowRate', internalType: 'int96', type: 'int96' }, { name: 'unlockPeriod', internalType: 'uint128', type: 'uint128' }, ], name: 'initialize', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'recipient', outputs: [{ name: '', internalType: 'address', type: 'address' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'taxFlowRate', outputs: [{ name: '', internalType: 'uint96', type: 'uint96' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'terminateUnlock', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'unlockFlowRate', outputs: [{ name: '', internalType: 'uint96', type: 'uint96' }], stateMutability: 'view', }, { type: 'event', anonymous: false, inputs: [ { name: 'version', internalType: 'uint64', type: 'uint64', indexed: false, }, ], name: 'Initialized', }, { type: 'error', inputs: [], name: 'CANNOT_UNLOCK_TO_SUPERAPP' }, { type: 'error', inputs: [], name: 'CFA_INVALID_FLOW_RATE' }, { type: 'error', inputs: [], name: 'InvalidInitialization' }, { type: 'error', inputs: [], name: 'NOT_CONNECTED_LOCKER' }, { type: 'error', inputs: [], name: 'NO_ACTIVE_UNLOCK' }, { type: 'error', inputs: [], name: 'NotInitializing' }, { type: 'error', inputs: [], name: 'TOO_EARLY_TO_TERMINATE_UNLOCK' }, ] as const ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // locker ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// export const lockerAbi = [ { type: 'constructor', inputs: [ { name: 'fluid', internalType: 'contract ISuperToken', type: 'address' }, { name: 'programManager', internalType: 'contract IEPProgramManager', type: 'address', }, { name: 'stakingRewardController', internalType: 'contract IStakingRewardController', type: 'address', }, { name: 'fontaineBeacon', internalType: 'address', type: 'address' }, { name: 'isUnlockAvailable', internalType: 'bool', type: 'bool' }, { name: 'nonfungiblePositionManager', internalType: 'contract INonfungiblePositionManager', type: 'address', }, { name: 'ethSupPool', internalType: 'contract IUniswapV3Pool', type: 'address', }, { name: 'swapRouter', internalType: 'contract IV3SwapRouter', type: 'address', }, { name: 'daoTreasury', internalType: 'address', type: 'address' }, ], stateMutability: 'nonpayable', }, { type: 'fallback', stateMutability: 'payable' }, { type: 'receive', stateMutability: 'payable' }, { type: 'function', inputs: [], name: 'BP_PUMP_RATIO', outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'BP_SLIPPAGE_TOLERANCE', outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'DAO_TREASURY', outputs: [{ name: '', internalType: 'address', type: 'address' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'EP_PROGRAM_MANAGER', outputs: [ { name: '', internalType: 'contract IEPProgramManager', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'ETH_SUP_POOL', outputs: [ { name: '', internalType: 'contract IUniswapV3Pool', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'FLUID', outputs: [ { name: '', internalType: 'contract ISuperToken', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'FONTAINE_BEACON', outputs: [ { name: '', internalType: 'contract UpgradeableBeacon', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'LP_DISTRIBUTION_POOL', outputs: [ { name: '', internalType: 'contract ISuperfluidPool', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'LP_OPERATION_DEADLINE', outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'MIN_UNLOCK_AMOUNT', outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'NONFUNGIBLE_POSITION_MANAGER', outputs: [ { name: '', internalType: 'contract INonfungiblePositionManager', type: 'address', }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'STAKER_DISTRIBUTION_POOL', outputs: [ { name: '', internalType: 'contract ISuperfluidPool', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'STAKING_REWARD_CONTROLLER', outputs: [ { name: '', internalType: 'contract IStakingRewardController', type: 'address', }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'SWAP_ROUTER', outputs: [ { name: '', internalType: 'contract IV3SwapRouter', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'TAX_FREE_WITHDRAW_DELAY', outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'UNLOCKING_FEE', outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'UNLOCK_AVAILABLE', outputs: [{ name: '', internalType: 'bool', type: 'bool' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'activePositionCount', outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256' }, { name: 'totalProgramUnits', internalType: 'uint256', type: 'uint256' }, { name: 'nonce', internalType: 'uint256', type: 'uint256' }, { name: 'stackSignature', internalType: 'bytes', type: 'bytes' }, ], name: 'claim', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'programIds', internalType: 'uint256[]', type: 'uint256[]' }, { name: 'totalProgramUnits', internalType: 'uint256[]', type: 'uint256[]', }, { name: 'nonce', internalType: 'uint256', type: 'uint256' }, { name: 'stackSignature', internalType: 'bytes', type: 'bytes' }, ], name: 'claim', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256' }, { name: 'totalProgramUnits', internalType: 'uint256', type: 'uint256' }, { name: 'nonce', internalType: 'uint256', type: 'uint256' }, { name: 'stackSignature', internalType: 'bytes', type: 'bytes' }, ], name: 'claimAndStake', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'programIds', internalType: 'uint256[]', type: 'uint256[]' }, { name: 'totalProgramUnits', internalType: 'uint256[]', type: 'uint256[]', }, { name: 'nonce', internalType: 'uint256', type: 'uint256' }, { name: 'stackSignature', internalType: 'bytes', type: 'bytes' }, ], name: 'claimAndStake', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [{ name: 'tokenId', internalType: 'uint256', type: 'uint256' }], name: 'collectFees', outputs: [ { name: 'collectedEthx', internalType: 'uint256', type: 'uint256' }, { name: 'collectedSup', internalType: 'uint256', type: 'uint256' }, ], stateMutability: 'nonpayable', }, { type: 'function', inputs: [{ name: 'programId', internalType: 'uint256', type: 'uint256' }], name: 'connect', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'programIds', internalType: 'uint256[]', type: 'uint256[]' }, ], name: 'disconnect', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [{ name: 'programId', internalType: 'uint256', type: 'uint256' }], name: 'disconnect', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'programIdsToDisconnect', internalType: 'uint256[]', type: 'uint256[]', }, { name: 'programIdsToClaim', internalType: 'uint256[]', type: 'uint256[]', }, { name: 'totalProgramUnits', internalType: 'uint256[]', type: 'uint256[]', }, { name: 'nonce', internalType: 'uint256', type: 'uint256' }, { name: 'stackSignature', internalType: 'bytes', type: 'bytes' }, ], name: 'disconnectAndClaim', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'programIdsToDisconnect', internalType: 'uint256[]', type: 'uint256[]', }, { name: 'programIdsToClaim', internalType: 'uint256[]', type: 'uint256[]', }, { name: 'totalProgramUnits', internalType: 'uint256[]', type: 'uint256[]', }, { name: 'nonce', internalType: 'uint256', type: 'uint256' }, { name: 'stackSignature', internalType: 'bytes', type: 'bytes' }, ], name: 'disconnectAndClaimAndStake', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'fontaineCount', outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'unlockId', internalType: 'uint256', type: 'uint256' }], name: 'fontaines', outputs: [ { name: 'fontaine', internalType: 'contract IFontaine', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'getAvailableBalance', outputs: [{ name: 'aBalance', internalType: 'uint256', type: 'uint256' }], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'programIds', internalType: 'uint256[]', type: 'uint256[]' }, ], name: 'getFlowRatePerProgram', outputs: [{ name: 'flowRates', internalType: 'int96[]', type: 'int96[]' }], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'programId', internalType: 'uint256', type: 'uint256' }], name: 'getFlowRatePerProgram', outputs: [{ name: 'flowRate', internalType: 'int96', type: 'int96' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'getFontaineBeaconImplementation', outputs: [ { name: 'fontaineBeaconImpl', internalType: 'address', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'getLiquidityBalance', outputs: [{ name: 'lBalance', internalType: 'uint256', type: 'uint256' }], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'tokenId', internalType: 'uint256', type: 'uint256' }], name: 'getPositionLiquidity', outputs: [{ name: 'liquidity', internalType: 'uint128', type: 'uint128' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'getStakedBalance', outputs: [{ name: 'sBalance', internalType: 'uint256', type: 'uint256' }], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'programId', internalType: 'uint256', type: 'uint256' }], name: 'getUnitsPerProgram', outputs: [{ name: 'units', internalType: 'uint128', type: 'uint128' }], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'programIds', internalType: 'uint256[]', type: 'uint256[]' }, ], name: 'getUnitsPerProgram', outputs: [{ name: 'units', internalType: 'uint128[]', type: 'uint128[]' }], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'owner', internalType: 'address', type: 'address' }], name: 'initialize', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [{ name: 'amount', internalType: 'uint256', type: 'uint256' }], name: 'lock', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'lockerOwner', outputs: [{ name: '', internalType: 'address', type: 'address' }], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'positionTokenId', internalType: 'uint256', type: 'uint256' }, ], name: 'lpCooldownTimestamps', outputs: [ { name: 'lpCooldownTimestamp', internalType: 'uint256', type: 'uint256' }, ], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'supAmount', internalType: 'uint256', type: 'uint256' }], name: 'provideLiquidity', outputs: [ { name: 'positionTokenId', internalType: 'uint256', type: 'uint256' }, ], stateMutability: 'payable', }, { type: 'function', inputs: [ { name: 'amountToStake', internalType: 'uint256', type: 'uint256' }, ], name: 'stake', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'stakingUnlocksAt', outputs: [{ name: '', internalType: 'uint80', type: 'uint80' }], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'positionTokenId', internalType: 'uint256', type: 'uint256' }, ], name: 'taxFreeExitTimestamps', outputs: [ { name: 'taxFreeWithdrawTimestamp', internalType: 'uint256', type: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'unlockAmount', internalType: 'uint256', type: 'uint256' }, { name: 'unlockPeriod', internalType: 'uint128', type: 'uint128' }, { name: 'recipient', internalType: 'address', type: 'address' }, ], name: 'unlock', outputs: [], stateMutability: 'payable', }, { type: 'function', inputs: [ { name: 'amountToUnstake', internalType: 'uint256', type: 'uint256' }, ], name: 'unstake', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'withdrawDustETH', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'tokenId', internalType: 'uint256', type: 'uint256' }, { name: 'liquidityToRemove', internalType: 'uint128', type: 'uint128' }, { name: 'amount0ToRemove', internalType: 'uint256', type: 'uint256' }, { name: 'amount1ToRemove', internalType: 'uint256', type: 'uint256' }, ], name: 'withdrawLiquidity', outputs: [], stateMutability: 'nonpayable', }, { type: 'event', anonymous: false, inputs: [ { name: 'amount', internalType: 'uint256', type: 'uint256', indexed: true, }, ], name: 'FluidLocked', }, { type: 'event', anonymous: false, inputs: [ { name: 'newTotalStakedBalance', internalType: 'uint256', type: 'uint256', indexed: true, }, { name: 'addedAmount', internalType: 'uint256', type: 'uint256', indexed: true, }, ], name: 'FluidStaked', }, { type: 'event', anonymous: false, inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256', indexed: true, }, { name: 'totalProgramUnits', internalType: 'uint256', type: 'uint256', indexed: true, }, ], name: 'FluidStreamClaimed', }, { type: 'event', anonymous: false, inputs: [ { name: 'programId', internalType: 'uint256[]', type: 'uint256[]', indexed: true, }, { name: 'totalProgramUnits', internalType: 'uint256[]', type: 'uint256[]', indexed: true, }, ], name: 'FluidStreamsClaimed', }, { type: 'event', anonymous: false, inputs: [ { name: 'unlockPeriod', internalType: 'uint128', type: 'uint128', indexed: true, }, { name: 'availableBalance', internalType: 'uint256', type: 'uint256', indexed: true, }, { name: 'recipient', internalType: 'address', type: 'address', indexed: false, }, { name: 'fontaine', internalType: 'address', type: 'address', indexed: true, }, ], name: 'FluidUnlocked', }, { type: 'event', anonymous: false, inputs: [ { name: 'newTotalStakedBalance', internalType: 'uint256', type: 'uint256', indexed: true, }, { name: 'removedAmount', internalType: 'uint256', type: 'uint256', indexed: true, }, ], name: 'FluidUnstaked', }, { type: 'event', anonymous: false, inputs: [ { name: 'version', internalType: 'uint64', type: 'uint64', indexed: false, }, ], name: 'Initialized', }, { type: 'event', anonymous: false, inputs: [ { name: 'tokenId', internalType: 'uint256', type: 'uint256', indexed: true, }, ], name: 'LiquidityPositionBurned', }, { type: 'event', anonymous: false, inputs: [ { name: 'tokenId', internalType: 'uint256', type: 'uint256', indexed: true, }, ], name: 'LiquidityPositionCreated', }, { type: 'error', inputs: [], name: 'FORBIDDEN' }, { type: 'error', inputs: [], name: 'INSUFFICIENT_AVAILABLE_BALANCE' }, { type: 'error', inputs: [], name: 'INSUFFICIENT_BALANCE' }, { type: 'error', inputs: [], name: 'INSUFFICIENT_ETH_SENT' }, { type: 'error', inputs: [], name: 'INSUFFICIENT_STAKED_BALANCE' }, { type: 'error', inputs: [], name: 'INSUFFICIENT_UNLOCK_AMOUNT' }, { type: 'error', inputs: [], name: 'INVALID_UNLOCKING_FEE' }, { type: 'error', inputs: [], name: 'INVALID_UNLOCK_PERIOD' }, { type: 'error', inputs: [], name: 'InvalidInitialization' }, { type: 'error', inputs: [], name: 'LIQUIDITY_POOL_NOT_APPROVED' }, { type: 'error', inputs: [], name: 'LOCKER_HAS_NO_POSITION' }, { type: 'error', inputs: [], name: 'LP_COOLDOWN_NOT_ELAPSED' }, { type: 'error', inputs: [], name: 'LP_DISTRIBUTION_POOL_HAS_NO_UNITS' }, { type: 'error', inputs: [], name: 'MathOverflowedMulDiv' }, { type: 'error', inputs: [], name: 'NOT_LOCKER_OWNER' }, { type: 'error', inputs: [], name: 'NO_FLUID_TO_UNLOCK' }, { type: 'error', inputs: [], name: 'NO_FLUID_TO_UNSTAKE' }, { type: 'error', inputs: [], name: 'NotInitializing' }, { type: 'error', inputs: [], name: 'Reentrancy' }, { type: 'error', inputs: [], name: 'STAKER_DISTRIBUTION_POOL_HAS_NO_UNITS' }, { type: 'error', inputs: [], name: 'STAKING_COOLDOWN_NOT_ELAPSED' }, { type: 'error', inputs: [ { name: 'bits', internalType: 'uint8', type: 'uint8' }, { name: 'value', internalType: 'int256', type: 'int256' }, ], name: 'SafeCastOverflowedIntDowncast', }, { type: 'error', inputs: [], name: 'TTE_NOT_ACTIVATED' }, ] as const ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // lockerFactory ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /** * - [__View Contract on Base Basescan__](https://basescan.org/address/0xA6694cAB43713287F7735dADc940b555db9d39D9) * - [__View Contract on Base Sepolia Basescan__](https://sepolia.basescan.org/address/0x897D343D24Ac5b84838B976Cf37036EDEfe3E967) */ export const lockerFactoryAbi = [ { type: 'constructor', inputs: [ { name: 'lockerBeacon', internalType: 'address', type: 'address' }, { name: 'stakingRewardController', internalType: 'contract IStakingRewardController', type: 'address', }, { name: 'pauseStatus', internalType: 'bool', type: 'bool' }, ], stateMutability: 'nonpayable', }, { type: 'error', inputs: [{ name: 'target', internalType: 'address', type: 'address' }], name: 'AddressEmptyCode', }, { type: 'error', inputs: [ { name: 'implementation', internalType: 'address', type: 'address' }, ], name: 'ERC1967InvalidImplementation', }, { type: 'error', inputs: [], name: 'ERC1967NonPayable' }, { type: 'error', inputs: [], name: 'FailedInnerCall' }, { type: 'error', inputs: [], name: 'InvalidInitialization' }, { type: 'error', inputs: [], name: 'LOCKER_CREATION_PAUSED' }, { type: 'error', inputs: [], name: 'NOT_GOVERNOR' }, { type: 'error', inputs: [], name: 'NotInitializing' }, { type: 'event', anonymous: false, inputs: [ { name: 'newGovernor', internalType: 'address', type: 'address', indexed: false, }, ], name: 'GovernorUpdated', }, { type: 'event', anonymous: false, inputs: [ { name: 'version', internalType: 'uint64', type: 'uint64', indexed: false, }, ], name: 'Initialized', }, { type: 'event', anonymous: false, inputs: [ { name: 'lockerOwner', internalType: 'address', type: 'address', indexed: false, }, { name: 'lockerAddress', internalType: 'address', type: 'address', indexed: false, }, ], name: 'LockerCreated', }, { type: 'event', anonymous: false, inputs: [ { name: 'implementation', internalType: 'address', type: 'address', indexed: true, }, ], name: 'Upgraded', }, { type: 'function', inputs: [], name: 'IS_PAUSED', outputs: [{ name: '', internalType: 'bool', type: 'bool' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'LOCKER_BEACON', outputs: [ { name: '', internalType: 'contract UpgradeableBeacon', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'STAKING_REWARD_CONTROLLER', outputs: [ { name: '', internalType: 'contract IStakingRewardController', type: 'address', }, ], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'user', internalType: 'address', type: 'address' }], name: 'createLockerContract', outputs: [ { name: 'lockerInstance', internalType: 'address', type: 'address' }, ], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'createLockerContract', outputs: [ { name: 'lockerInstance', internalType: 'address', type: 'address' }, ], stateMutability: 'nonpayable', }, { type: 'function', inputs: [{ name: 'user', internalType: 'address', type: 'address' }], name: 'getLockerAddress', outputs: [ { name: 'lockerAddress', internalType: 'address', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'getLockerBeaconImplementation', outputs: [ { name: 'lockerBeaconImpl', internalType: 'address', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'user', internalType: 'address', type: 'address' }], name: 'getUserLocker', outputs: [ { name: 'isCreated', internalType: 'bool', type: 'bool' }, { name: 'lockerAddress', internalType: 'address', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'governor', outputs: [{ name: '', internalType: 'address', type: 'address' }], stateMutability: 'view', }, { type: 'function', inputs: [{ name: '_governor', internalType: 'address', type: 'address' }], name: 'initialize', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [{ name: 'newGovernor', internalType: 'address', type: 'address' }], name: 'setGovernor', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'newImplementation', internalType: 'address', type: 'address' }, { name: 'data', internalType: 'bytes', type: 'bytes' }, ], name: 'upgradeTo', outputs: [], stateMutability: 'nonpayable', }, ] as const /** * - [__View Contract on Base Basescan__](https://basescan.org/address/0xA6694cAB43713287F7735dADc940b555db9d39D9) * - [__View Contract on Base Sepolia Basescan__](https://sepolia.basescan.org/address/0x897D343D24Ac5b84838B976Cf37036EDEfe3E967) */ export const lockerFactoryAddress = { 8453: '0xA6694cAB43713287F7735dADc940b555db9d39D9', 84532: '0x897D343D24Ac5b84838B976Cf37036EDEfe3E967', } as const /** * - [__View Contract on Base Basescan__](https://basescan.org/address/0xA6694cAB43713287F7735dADc940b555db9d39D9) * - [__View Contract on Base Sepolia Basescan__](https://sepolia.basescan.org/address/0x897D343D24Ac5b84838B976Cf37036EDEfe3E967) */ export const lockerFactoryConfig = { address: lockerFactoryAddress, abi: lockerFactoryAbi, } as const ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // programManager ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /** * - [__View Contract on Base Basescan__](https://basescan.org/address/0x1e32cf099992E9D3b17eDdDFFfeb2D07AED95C6a) * - [__View Contract on Base Sepolia Basescan__](https://sepolia.basescan.org/address/0x71a1975A1009e48E0BF2f621B6835db5Ea1f7706) */ export const programManagerAbi = [ { type: 'constructor', inputs: [ { name: 'taxDistributionPool', internalType: 'contract ISuperfluidPool', type: 'address', }, ], stateMutability: 'nonpayable', }, { type: 'error', inputs: [{ name: 'target', internalType: 'address', type: 'address' }], name: 'AddressEmptyCode', }, { type: 'error', inputs: [], name: 'CFA_INVALID_FLOW_RATE' }, { type: 'error', inputs: [ { name: 'implementation', internalType: 'address', type: 'address' }, ], name: 'ERC1967InvalidImplementation', }, { type: 'error', inputs: [], name: 'ERC1967NonPayable' }, { type: 'error', inputs: [], name: 'FailedInnerCall' }, { type: 'error', inputs: [], name: 'INVALID_PARAMETER' }, { type: 'error', inputs: [{ name: 'reason', internalType: 'string', type: 'string' }], name: 'INVALID_SIGNATURE', }, { type: 'error', inputs: [], name: 'InvalidInitialization' }, { type: 'error', inputs: [], name: 'LOCKER_NOT_FOUND' }, { type: 'error', inputs: [], name: 'NOT_PROGRAM_ADMIN' }, { type: 'error', inputs: [], name: 'NotInitializing' }, { type: 'error', inputs: [{ name: 'owner', internalType: 'address', type: 'address' }], name: 'OwnableInvalidOwner', }, { type: 'error', inputs: [{ name: 'account', internalType: 'address', type: 'address' }], name: 'OwnableUnauthorizedAccount', }, { type: 'error', inputs: [], name: 'POOL_HAS_NO_UNITS' }, { type: 'error', inputs: [], name: 'PROGRAM_ALREADY_CREATED' }, { type: 'error', inputs: [], name: 'PROGRAM_NOT_FOUND' }, { type: 'error', inputs: [ { name: 'bits', internalType: 'uint8', type: 'uint8' }, { name: 'value', internalType: 'int256', type: 'int256' }, ], name: 'SafeCastOverflowedIntDowncast', }, { type: 'error', inputs: [], name: 'TOO_EARLY_TO_END_PROGRAM' }, { type: 'event', anonymous: false, inputs: [ { name: 'version', internalType: 'uint64', type: 'uint64', indexed: false, }, ], name: 'Initialized', }, { type: 'event', anonymous: false, inputs: [ { name: 'previousOwner', internalType: 'address', type: 'address', indexed: true, }, { name: 'newOwner', internalType: 'address', type: 'address', indexed: true, }, ], name: 'OwnershipTransferred', }, { type: 'event', anonymous: false, inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256', indexed: true, }, { name: 'returnedDeposit', internalType: 'uint256', type: 'uint256', indexed: true, }, ], name: 'ProgramCancelled', }, { type: 'event', anonymous: false, inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256', indexed: false, }, { name: 'programAdmin', internalType: 'address', type: 'address', indexed: false, }, { name: 'signer', internalType: 'address', type: 'address', indexed: false, }, { name: 'token', internalType: 'address', type: 'address', indexed: false, }, { name: 'distributionPool', internalType: 'address', type: 'address', indexed: false, }, ], name: 'ProgramCreated', }, { type: 'event', anonymous: false, inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256', indexed: true, }, { name: 'fundingAmount', internalType: 'uint256', type: 'uint256', indexed: true, }, { name: 'subsidyAmount', internalType: 'uint256', type: 'uint256', indexed: true, }, { name: 'earlyEndDate', internalType: 'uint256', type: 'uint256', indexed: false, }, { name: 'endDate', internalType: 'uint256', type: 'uint256', indexed: false, }, ], name: 'ProgramFunded', }, { type: 'event', anonymous: false, inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256', indexed: false, }, { name: 'newSigner', internalType: 'address', type: 'address', indexed: false, }, ], name: 'ProgramSignerUpdated', }, { type: 'event', anonymous: false, inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256', indexed: true, }, { name: 'fundingCompensationAmount', internalType: 'uint256', type: 'uint256', indexed: true, }, { name: 'subsidyCompensationAmount', internalType: 'uint256', type: 'uint256', indexed: true, }, ], name: 'ProgramStopped', }, { type: 'event', anonymous: false, inputs: [ { name: 'implementation', internalType: 'address', type: 'address', indexed: true, }, ], name: 'Upgraded', }, { type: 'event', anonymous: false, inputs: [ { name: 'user', internalType: 'address', type: 'address', indexed: false, }, { name: 'programId', internalType: 'uint256', type: 'uint256', indexed: false, }, { name: 'newUnits', internalType: 'uint256', type: 'uint256', indexed: false, }, ], name: 'UserUnitsUpdated', }, { type: 'function', inputs: [], name: 'EARLY_PROGRAM_END', outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'TAX_DISTRIBUTION_POOL', outputs: [ { name: '', internalType: 'contract ISuperfluidPool', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'programIds', internalType: 'uint256[]', type: 'uint256[]' }, { name: 'newUnits', internalType: 'uint256[]', type: 'uint256[]' }, { name: 'nonce', internalType: 'uint256', type: 'uint256' }, { name: 'stackSignature', internalType: 'bytes', type: 'bytes' }, ], name: 'batchUpdateUnits', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'user', internalType: 'address', type: 'address' }, { name: 'programIds', internalType: 'uint256[]', type: 'uint256[]' }, { name: 'newUnits', internalType: 'uint256[]', type: 'uint256[]' }, { name: 'nonce', internalType: 'uint256', type: 'uint256' }, { name: 'stackSignature', internalType: 'bytes', type: 'bytes' }, ], name: 'batchUpdateUserUnits', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'host', internalType: 'contract ISuperfluid', type: 'address' }, { name: 'params', internalType: 'bytes', type: 'bytes' }, { name: '', internalType: 'address', type: 'address' }, ], name: 'buildBatchOperations', outputs: [ { name: 'operations', internalType: 'struct ISuperfluid.Operation[]', type: 'tuple[]', components: [ { name: 'operationType', internalType: 'uint32', type: 'uint32' }, { name: 'target', internalType: 'address', type: 'address' }, { name: 'data', internalType: 'bytes', type: 'bytes' }, ], }, ], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256' }, { name: 'plannedFundingAmount', internalType: 'uint256', type: 'uint256', }, { name: 'plannedProgramDuration', internalType: 'uint32', type: 'uint32', }, ], name: 'calculateAllowances', outputs: [ { name: 'depositAllowance', internalType: 'uint256', type: 'uint256' }, { name: 'flowRateAllowance', internalType: 'int96', type: 'int96' }, ], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'programId', internalType: 'uint256', type: 'uint256' }], name: 'cancelProgram', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256' }, { name: 'programAdmin', internalType: 'address', type: 'address' }, { name: 'signer', internalType: 'address', type: 'address' }, { name: 'token', internalType: 'contract ISuperToken', type: 'address' }, { name: 'poolName', internalType: 'string', type: 'string' }, { name: 'poolSymbol', internalType: 'string', type: 'string' }, ], name: 'createProgram', outputs: [ { name: 'distributionPool', internalType: 'contract ISuperfluidPool', type: 'address', }, ], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'token', internalType: 'contract ISuperToken', type: 'address' }, ], name: 'emergencyWithdraw', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'fluidLockerFactory', outputs: [ { name: '', internalType: 'contract IFluidLockerFactory', type: 'address', }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'fluidTreasury', outputs: [{ name: '', internalType: 'address', type: 'address' }], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256' }, { name: 'user', internalType: 'address', type: 'address' }, ], name: 'getNextValidNonce', outputs: [{ name: 'validNonce', internalType: 'uint256', type: 'uint256' }], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'programId', internalType: 'uint256', type: 'uint256' }], name: 'getProgramDetails', outputs: [ { name: 'details', internalType: 'struct FluidEPProgramManager.FluidProgramDetails', type: 'tuple', components: [ { name: 'fundingFlowRate', internalType: 'int96', type: 'int96' }, { name: 'subsidyFlowRate', internalType: 'int96', type: 'int96' }, { name: 'fundingStartDate', internalType: 'uint32', type: 'uint32' }, { name: 'duration', internalType: 'uint32', type: 'uint32' }, ], }, ], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'programId', internalType: 'uint256', type: 'uint256' }], name: 'getProgramPool', outputs: [ { name: 'programPool', internalType: 'contract ISuperfluidPool', type: 'address', }, ], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'owner', internalType: 'address', type: 'address' }, { name: 'treasury', internalType: 'address', type: 'address' }, ], name: 'initialize', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256' }, { name: 'stackPoints', internalType: 'uint256[]', type: 'uint256[]' }, { name: 'users', internalType: 'address[]', type: 'address[]' }, ], name: 'manualPoolUpdate', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256' }, { name: 'stackPoints', internalType: 'uint256', type: 'uint256' }, { name: 'user', internalType: 'address', type: 'address' }, ], name: 'manualPoolUpdate', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'owner', outputs: [{ name: '', internalType: 'address', type: 'address' }], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256' }, { name: 'amount', internalType: 'uint256', type: 'uint256' }, { name: 'duration', internalType: 'uint32', type: 'uint32' }, ], name: 'paramsGivePermission', outputs: [{ name: '', internalType: 'bytes', type: 'bytes' }], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'host', internalType: 'contract ISuperfluid', type: 'address' }, { name: 'params', internalType: 'bytes', type: 'bytes' }, { name: 'msgSender', internalType: 'address', type: 'address' }, ], name: 'postCheck', outputs: [], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'programId', internalType: 'uint256', type: 'uint256' }], name: 'programs', outputs: [ { name: 'programAdmin', internalType: 'address', type: 'address' }, { name: 'stackSigner', internalType: 'address', type: 'address' }, { name: 'token', internalType: 'contract ISuperToken', type: 'address' }, { name: 'distributionPool', internalType: 'contract ISuperfluidPool', type: 'address', }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'renounceOwnership', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'lockerFactoryAddress', internalType: 'address', type: 'address', }, ], name: 'setLockerFactory', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [{ name: 'subsidyRate', internalType: 'uint96', type: 'uint96' }], name: 'setSubsidyRate', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'treasuryAddress', internalType: 'address', type: 'address' }, ], name: 'setTreasury', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256' }, { name: 'totalAmount', internalType: 'uint256', type: 'uint256' }, { name: 'programDuration', internalType: 'uint32', type: 'uint32' }, ], name: 'startFunding', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [{ name: 'programId', internalType: 'uint256', type: 'uint256' }], name: 'stopFunding', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'subsidyFundingRate', outputs: [{ name: '', internalType: 'uint96', type: 'uint96' }], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }], name: 'transferOwnership', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256' }, { name: 'newSigner', internalType: 'address', type: 'address' }, ], name: 'updateProgramSigner', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'programId', internalType: 'uint256', type: 'uint256' }, { name: 'newUnits', internalType: 'uint256', type: 'uint256' }, { name: 'nonce', internalType: 'uint256', type: 'uint256' }, { name: 'stackSignature', internalType: 'bytes', type: 'bytes' }, ], name: 'updateUnits', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'user', internalType: 'address', type: 'address' }, { name: 'programId', internalType: 'uint256', type: 'uint256' }, { name: 'newUnits', internalType: 'uint256', type: 'uint256' }, { name: 'nonce', internalType: 'uint256', type: 'uint256' }, { name: 'stackSignature', internalType: 'bytes', type: 'bytes' }, ], name: 'updateUserUnits', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'newImplementation', internalType: 'address', type: 'address' }, { name: 'data', internalType: 'bytes', type: 'bytes' }, ], name: 'upgradeTo', outputs: [], stateMutability: 'nonpayable', }, ] as const /** * - [__View Contract on Base Basescan__](https://basescan.org/address/0x1e32cf099992E9D3b17eDdDFFfeb2D07AED95C6a) * - [__View Contract on Base Sepolia Basescan__](https://sepolia.basescan.org/address/0x71a1975A1009e48E0BF2f621B6835db5Ea1f7706) */ export const programManagerAddress = { 8453: '0x1e32cf099992E9D3b17eDdDFFfeb2D07AED95C6a', 84532: '0x71a1975A1009e48E0BF2f621B6835db5Ea1f7706', } as const /** * - [__View Contract on Base Basescan__](https://basescan.org/address/0x1e32cf099992E9D3b17eDdDFFfeb2D07AED95C6a) * - [__View Contract on Base Sepolia Basescan__](https://sepolia.basescan.org/address/0x71a1975A1009e48E0BF2f621B6835db5Ea1f7706) */ export const programManagerConfig = { address: programManagerAddress, abi: programManagerAbi, } as const ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // stakingRewardController ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /** * - [__View Contract on Base Basescan__](https://basescan.org/address/0xb19Ae25A98d352B36CED60F93db926247535048b) * - [__View Contract on Base Sepolia Basescan__](https://sepolia.basescan.org/address/0x9FC0Bb109F3e733Bd84B30F8D89685b0304fC018) */ export const stakingRewardControllerAbi = [ { type: 'constructor', inputs: [ { name: 'fluid', internalType: 'contract ISuperToken', type: 'address' }, ], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'FLUID', outputs: [ { name: '', internalType: 'contract ISuperToken', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [ { name: 'lockerAddress', internalType: 'address', type: 'address' }, ], name: 'approveLocker', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'getTaxAllocation', outputs: [ { name: 'stakerAllocationBP', internalType: 'uint128', type: 'uint128' }, { name: 'liquidityProviderAllocationBP', internalType: 'uint128', type: 'uint128', }, ], stateMutability: 'view', }, { type: 'function', inputs: [{ name: 'owner', internalType: 'address', type: 'address' }], name: 'initialize', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'lockerFactory', outputs: [{ name: '', internalType: 'address', type: 'address' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'lpDistributionPool', outputs: [ { name: '', internalType: 'contract ISuperfluidPool', type: 'address' }, ], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'owner', outputs: [{ name: '', internalType: 'address', type: 'address' }], stateMutability: 'view', }, { type: 'function', inputs: [], name: 'refreshTaxDistributionFlow', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'renounceOwnership', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'lockerFactoryAddress', internalType: 'address', type: 'address', }, ], name: 'setLockerFactory', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [ { name: 'stakerAllocationBP', internalType: 'uint128', type: 'uint128' }, { name: 'liquidityProviderAllocationBP', internalType: 'uint128', type: 'uint128', }, ], name: 'setTaxAllocation', outputs: [], stateMutability: 'nonpayable', }, { type: 'function', inputs: [], name: 'setupLPDistributionPool', outputs: [], st