Class IPremiaStaking__factory

Hierarchy

  • IPremiaStaking__factory

Constructors

Properties

Methods

Constructors

Properties

abi: readonly [{
    inputs: readonly [];
    name: "ERC20Base__ApproveFromZeroAddress";
    type: "error";
}, {
    inputs: readonly [];
    name: "ERC20Base__ApproveToZeroAddress";
    type: "error";
}, {
    inputs: readonly [];
    name: "ERC20Base__BurnExceedsBalance";
    type: "error";
}, {
    inputs: readonly [];
    name: "ERC20Base__BurnFromZeroAddress";
    type: "error";
}, {
    inputs: readonly [];
    name: "ERC20Base__InsufficientAllowance";
    type: "error";
}, {
    inputs: readonly [];
    name: "ERC20Base__MintToZeroAddress";
    type: "error";
}, {
    inputs: readonly [];
    name: "ERC20Base__TransferExceedsBalance";
    type: "error";
}, {
    inputs: readonly [];
    name: "ERC20Base__TransferFromZeroAddress";
    type: "error";
}, {
    inputs: readonly [];
    name: "ERC20Base__TransferToZeroAddress";
    type: "error";
}, {
    inputs: readonly [];
    name: "ERC20Extended__ExcessiveAllowance";
    type: "error";
}, {
    inputs: readonly [];
    name: "ERC20Extended__InsufficientAllowance";
    type: "error";
}, {
    inputs: readonly [];
    name: "ERC20Permit__ExpiredDeadline";
    type: "error";
}, {
    inputs: readonly [];
    name: "ERC20Permit__InvalidSignature";
    type: "error";
}, {
    inputs: readonly [];
    name: "OFT_InsufficientAllowance";
    type: "error";
}, {
    inputs: readonly [];
    name: "PremiaStaking__CantTransfer";
    type: "error";
}, {
    inputs: readonly [];
    name: "PremiaStaking__ExcessiveStakePeriod";
    type: "error";
}, {
    inputs: readonly [];
    name: "PremiaStaking__InsufficientSwapOutput";
    type: "error";
}, {
    inputs: readonly [];
    name: "PremiaStaking__NoPendingWithdrawal";
    type: "error";
}, {
    inputs: readonly [];
    name: "PremiaStaking__NotEnoughLiquidity";
    type: "error";
}, {
    inputs: readonly [];
    name: "PremiaStaking__PeriodTooShort";
    type: "error";
}, {
    inputs: readonly [];
    name: "PremiaStaking__StakeLocked";
    type: "error";
}, {
    inputs: readonly [];
    name: "PremiaStaking__StakeNotLocked";
    type: "error";
}, {
    inputs: readonly [];
    name: "PremiaStaking__WithdrawalStillPending";
    type: "error";
}, {
    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: "user";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint64";
        name: "stakePeriod";
        type: "uint64";
    }, {
        indexed: false;
        internalType: "uint64";
        name: "lockedUntil";
        type: "uint64";
    }];
    name: "BridgeLock";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "address";
        name: "user";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "EarlyUnstakeRewardCollected";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "address";
        name: "user";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "Harvest";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "uint16";
        name: "srcChainId";
        type: "uint16";
    }, {
        indexed: true;
        internalType: "bytes";
        name: "srcAddress";
        type: "bytes";
    }, {
        indexed: true;
        internalType: "address";
        name: "toAddress";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "ReceiveFromChain";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "RewardsAdded";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "address";
        name: "sender";
        type: "address";
    }, {
        indexed: true;
        internalType: "uint16";
        name: "dstChainId";
        type: "uint16";
    }, {
        indexed: true;
        internalType: "bytes";
        name: "toAddress";
        type: "bytes";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "SendToChain";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "bool";
        name: "_useCustomAdapterParams";
        type: "bool";
    }];
    name: "SetUseCustomAdapterParams";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "address";
        name: "user";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "uint64";
        name: "stakePeriod";
        type: "uint64";
    }, {
        indexed: false;
        internalType: "uint64";
        name: "lockedUntil";
        type: "uint64";
    }];
    name: "Stake";
    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: "user";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "fee";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "startDate";
        type: "uint256";
    }];
    name: "Unstake";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "address";
        name: "user";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint64";
        name: "oldStakePeriod";
        type: "uint64";
    }, {
        indexed: false;
        internalType: "uint64";
        name: "newStakePeriod";
        type: "uint64";
    }];
    name: "UpdateLock";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "address";
        name: "user";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "Withdraw";
    type: "event";
}, {
    inputs: readonly [];
    name: "DOMAIN_SEPARATOR";
    outputs: readonly [{
        internalType: "bytes32";
        name: "domainSeparator";
        type: "bytes32";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "addRewards";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "holder";
        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: "amount";
        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 [];
    name: "circulatingSupply";
    outputs: readonly [{
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "decimals";
    outputs: readonly [{
        internalType: "uint8";
        name: "";
        type: "uint8";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "spender";
        type: "address";
    }, {
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "decreaseAllowance";
    outputs: readonly [{
        internalType: "bool";
        name: "";
        type: "bool";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "earlyUnstake";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "uint16";
        name: "dstChainId";
        type: "uint16";
    }, {
        internalType: "bytes";
        name: "toAddress";
        type: "bytes";
    }, {
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }, {
        internalType: "bool";
        name: "useZro";
        type: "bool";
    }, {
        internalType: "bytes";
        name: "adapterParams";
        type: "bytes";
    }];
    name: "estimateSendFee";
    outputs: readonly [{
        internalType: "uint256";
        name: "nativeFee";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "zroFee";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "getAvailablePremiaAmount";
    outputs: readonly [{
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "getAvailableRewards";
    outputs: readonly [{
        internalType: "uint256";
        name: "rewards";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "unstakeRewards";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "user";
        type: "address";
    }];
    name: "getDiscount";
    outputs: readonly [{
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "user";
        type: "address";
    }];
    name: "getEarlyUnstakeFee";
    outputs: readonly [{
        internalType: "uint256";
        name: "feePercentage";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "getPendingRewards";
    outputs: readonly [{
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "user";
        type: "address";
    }];
    name: "getPendingUserRewards";
    outputs: readonly [{
        internalType: "uint256";
        name: "reward";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "unstakeReward";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "user";
        type: "address";
    }];
    name: "getPendingWithdrawal";
    outputs: readonly [{
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "startDate";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "unlockDate";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "getRewardToken";
    outputs: readonly [{
        internalType: "address";
        name: "";
        type: "address";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "getStakeLevels";
    outputs: readonly [{
        components: readonly [{
            internalType: "uint256";
            name: "amount";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "discount";
            type: "uint256";
        }];
        internalType: "struct IPremiaStaking.StakeLevel[]";
        name: "";
        type: "tuple[]";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "period";
        type: "uint256";
    }];
    name: "getStakePeriodMultiplier";
    outputs: readonly [{
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [];
    name: "getTotalPower";
    outputs: readonly [{
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "user";
        type: "address";
    }];
    name: "getUserInfo";
    outputs: readonly [{
        components: readonly [{
            internalType: "uint256";
            name: "reward";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "rewardDebt";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "unstakeRewardDebt";
            type: "uint256";
        }, {
            internalType: "uint64";
            name: "stakePeriod";
            type: "uint64";
        }, {
            internalType: "uint64";
            name: "lockedUntil";
            type: "uint64";
        }];
        internalType: "struct PremiaStakingStorage.UserInfo";
        name: "";
        type: "tuple";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "user";
        type: "address";
    }];
    name: "getUserPower";
    outputs: readonly [{
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "harvest";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        components: readonly [{
            internalType: "uint256";
            name: "amountOutMin";
            type: "uint256";
        }, {
            internalType: "address";
            name: "callee";
            type: "address";
        }, {
            internalType: "address";
            name: "allowanceTarget";
            type: "address";
        }, {
            internalType: "bytes";
            name: "data";
            type: "bytes";
        }, {
            internalType: "address";
            name: "refundAddress";
            type: "address";
        }];
        internalType: "struct IPremiaStaking.SwapArgs";
        name: "s";
        type: "tuple";
    }, {
        internalType: "uint64";
        name: "stakePeriod";
        type: "uint64";
    }];
    name: "harvestAndStake";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "spender";
        type: "address";
    }, {
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "increaseAllowance";
    outputs: readonly [{
        internalType: "bool";
        name: "";
        type: "bool";
    }];
    stateMutability: "nonpayable";
    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: "owner";
        type: "address";
    }, {
        internalType: "address";
        name: "spender";
        type: "address";
    }, {
        internalType: "uint256";
        name: "amount";
        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: "address";
        name: "from";
        type: "address";
    }, {
        internalType: "uint16";
        name: "dstChainId";
        type: "uint16";
    }, {
        internalType: "bytes";
        name: "toAddress";
        type: "bytes";
    }, {
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }, {
        internalType: "address payable";
        name: "refundAddress";
        type: "address";
    }, {
        internalType: "address";
        name: "zroPaymentAddress";
        type: "address";
    }, {
        internalType: "bytes";
        name: "adapterParams";
        type: "bytes";
    }];
    name: "sendFrom";
    outputs: readonly [];
    stateMutability: "payable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }, {
        internalType: "uint64";
        name: "period";
        type: "uint64";
    }];
    name: "stake";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }, {
        internalType: "uint64";
        name: "period";
        type: "uint64";
    }, {
        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: "stakeWithPermit";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "startWithdraw";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "bytes4";
        name: "interfaceId";
        type: "bytes4";
    }];
    name: "supportsInterface";
    outputs: readonly [{
        internalType: "bool";
        name: "";
        type: "bool";
    }];
    stateMutability: "view";
    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: "recipient";
        type: "address";
    }, {
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "transfer";
    outputs: readonly [{
        internalType: "bool";
        name: "";
        type: "bool";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "holder";
        type: "address";
    }, {
        internalType: "address";
        name: "recipient";
        type: "address";
    }, {
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "transferFrom";
    outputs: readonly [{
        internalType: "bool";
        name: "";
        type: "bool";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "uint64";
        name: "period";
        type: "uint64";
    }];
    name: "updateLock";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [];
    name: "withdraw";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}] = _abi

Methods

  • Parameters

    • address: string
    • Optional runner: null | ContractRunner

    Returns IPremiaStaking

  • Returns IPremiaStakingInterface

Generated using TypeDoc