import { Signer } from "ethers"; import type { Provider } from "@ethersproject/providers"; import type { IKSULockingAbi, IKSULockingAbiInterface } from "../IKSULockingAbi"; export declare class IKSULockingAbi__factory { static readonly abi: readonly [{ readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "lockPeriod"; readonly type: "uint256"; }]; readonly name: "DepositLocked"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "userLockId"; readonly type: "uint256"; }]; readonly name: "InvalidUserDeposit"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "LockAmountShouldBeMoreThanZero"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "lockPeriod"; readonly type: "uint256"; }]; readonly name: "LockPeriodAlreadyExists"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "lockPeriod"; readonly type: "uint256"; }]; readonly name: "LockPeriodNotSupported"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "UnlockAmountShouldBeMoreThanZero"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "userLockId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "lockAmount"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "requestedUnlockAmount"; readonly type: "uint256"; }]; readonly name: "UserUnlockAmountTooHigh"; readonly type: "error"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "owner"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "spender"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "value"; readonly type: "uint256"; }]; readonly name: "Approval"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "user"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "uint256"; readonly name: "lockId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "ksuAmount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "rKSUBurned"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "address"; readonly name: "receiver"; readonly type: "address"; }]; readonly name: "EmergencyWithdraw"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "user"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "amount"; readonly type: "uint256"; }]; readonly name: "FeesClaimed"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "user"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "amount"; readonly type: "uint256"; }]; readonly name: "FeesEmitted"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "uint256"; readonly name: "lockPeriod"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "rKSUMultiplier"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "ksuBonusMultiplier"; readonly type: "uint256"; }]; readonly name: "LockPeriodAdded"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "from"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "to"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "value"; readonly type: "uint256"; }]; readonly name: "Transfer"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "user"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "uint256"; readonly name: "lockId"; readonly type: "uint256"; }, { readonly indexed: true; readonly internalType: "uint256"; readonly name: "lockPeriod"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "ksuAmount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "ksuBonusAmount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "rKSUMinted"; readonly type: "uint256"; }]; readonly name: "UserLocked"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "user"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "uint256"; readonly name: "lockId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "ksuAmount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "rKSUBurned"; readonly type: "uint256"; }]; readonly name: "UserUnlocked"; readonly type: "event"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "lockPeriod"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "rKSUMultiplier"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "ksuBonusMultiplier"; readonly type: "uint256"; }]; readonly name: "addLockPeriod"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "owner"; readonly type: "address"; }, { readonly internalType: "address"; readonly name: "spender"; readonly type: "address"; }]; readonly name: "allowance"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "spender"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "value"; readonly type: "uint256"; }]; readonly name: "approve"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }]; readonly name: "balanceOf"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "claimFees"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "earned"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly components: readonly [{ readonly internalType: "address"; readonly name: "user"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "lockId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "withdrawAmount"; readonly type: "uint256"; }]; readonly internalType: "struct EmergencyWithdrawInput[]"; readonly name: "emergencyWithdrawInput"; readonly type: "tuple[]"; }, { readonly internalType: "address"; readonly name: "receiver"; readonly type: "address"; }]; readonly name: "emergencyWithdraw"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "amount"; readonly type: "uint256"; }]; readonly name: "emitFees"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "amount"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "lockPeriod"; readonly type: "uint256"; }]; readonly name: "lock"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "userLockId"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "lockPeriod"; readonly type: "uint256"; }]; readonly name: "lockDetails"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "uint256"; readonly name: "rKSUMultiplier"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "ksuBonusMultiplier"; readonly type: "uint256"; }, { readonly internalType: "bool"; readonly name: "isActive"; readonly type: "bool"; }]; readonly internalType: "struct IKSULocking.LockPeriodDetails"; readonly name: ""; readonly type: "tuple"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "amount"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "lockPeriod"; readonly type: "uint256"; }, { readonly components: readonly [{ readonly internalType: "uint256"; readonly name: "value"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "deadline"; readonly type: "uint256"; }, { readonly internalType: "uint8"; readonly name: "v"; readonly type: "uint8"; }, { readonly internalType: "bytes32"; readonly name: "r"; readonly type: "bytes32"; }, { readonly internalType: "bytes32"; readonly name: "s"; readonly type: "bytes32"; }]; readonly internalType: "struct IKSULocking.ERC20PermitPayload"; readonly name: "ksuPermit"; readonly type: "tuple"; }]; readonly name: "lockWithPermit"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "userLockId"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "user"; readonly type: "address"; }]; readonly name: "rewards"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "ksuBonusTokens_"; readonly type: "address"; }]; readonly name: "setKSULockBonus"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "totalSupply"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "to"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "value"; readonly type: "uint256"; }]; readonly name: "transfer"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "from"; readonly type: "address"; }, { readonly internalType: "address"; readonly name: "to"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "value"; readonly type: "uint256"; }]; readonly name: "transferFrom"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "amount"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "userLockId"; readonly type: "uint256"; }]; readonly name: "unlock"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly name: "userLock"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "uint256"; readonly name: "amount"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "rKSUAmount"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "rKSUMultiplier"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "startTime"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "lockPeriod"; readonly type: "uint256"; }]; readonly internalType: "struct IKSULocking.UserLock"; readonly name: ""; readonly type: "tuple"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }]; readonly name: "userTotalDeposits"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }]; static createInterface(): IKSULockingAbiInterface; static connect(address: string, signerOrProvider: Signer | Provider): IKSULockingAbi; }