import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from 'ethers'; import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi'; import type { Listener, Provider } from '@ethersproject/providers'; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common'; export interface JungleChefInterface extends utils.Interface { functions: { 'bonusEndBlock()': FunctionFragment; 'poolInfo()': FunctionFragment; 'rewardPerBlock()': FunctionFragment; 'startBlock()': FunctionFragment; 'syrup()': FunctionFragment; 'userInfo(address)': FunctionFragment; 'getMultiplier(uint256,uint256)': FunctionFragment; 'pendingReward(address)': FunctionFragment; 'updatePool()': FunctionFragment; 'deposit(uint256)': FunctionFragment; 'withdraw(uint256)': FunctionFragment; 'emergencyWithdraw()': FunctionFragment; 'bonusEndTime()': FunctionFragment; 'rewardPerSecond()': FunctionFragment; 'startTime()': FunctionFragment; }; getFunction(nameOrSignatureOrTopic: 'bonusEndBlock' | 'poolInfo' | 'rewardPerBlock' | 'startBlock' | 'syrup' | 'userInfo' | 'getMultiplier' | 'pendingReward' | 'updatePool' | 'deposit' | 'withdraw' | 'emergencyWithdraw' | 'bonusEndTime' | 'rewardPerSecond' | 'startTime'): FunctionFragment; encodeFunctionData(functionFragment: 'bonusEndBlock', values?: undefined): string; encodeFunctionData(functionFragment: 'poolInfo', values?: undefined): string; encodeFunctionData(functionFragment: 'rewardPerBlock', values?: undefined): string; encodeFunctionData(functionFragment: 'startBlock', values?: undefined): string; encodeFunctionData(functionFragment: 'syrup', values?: undefined): string; encodeFunctionData(functionFragment: 'userInfo', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'getMultiplier', values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: 'pendingReward', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'updatePool', values?: undefined): string; encodeFunctionData(functionFragment: 'deposit', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'withdraw', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'emergencyWithdraw', values?: undefined): string; encodeFunctionData(functionFragment: 'bonusEndTime', values?: undefined): string; encodeFunctionData(functionFragment: 'rewardPerSecond', values?: undefined): string; encodeFunctionData(functionFragment: 'startTime', values?: undefined): string; decodeFunctionResult(functionFragment: 'bonusEndBlock', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'poolInfo', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'rewardPerBlock', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'startBlock', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'syrup', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'userInfo', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'getMultiplier', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'pendingReward', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'updatePool', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'deposit', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'withdraw', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'emergencyWithdraw', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'bonusEndTime', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'rewardPerSecond', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'startTime', data: BytesLike): Result; events: { 'Deposit(address,uint256)': EventFragment; 'EmergencyWithdraw(address,uint256)': EventFragment; 'Withdraw(address,uint256)': EventFragment; }; getEvent(nameOrSignatureOrTopic: 'Deposit'): EventFragment; getEvent(nameOrSignatureOrTopic: 'EmergencyWithdraw'): EventFragment; getEvent(nameOrSignatureOrTopic: 'Withdraw'): EventFragment; } export interface DepositEventObject { user: string; amount: BigNumber; } export type DepositEvent = TypedEvent<[string, BigNumber], DepositEventObject>; export type DepositEventFilter = TypedEventFilter; export interface EmergencyWithdrawEventObject { user: string; amount: BigNumber; } export type EmergencyWithdrawEvent = TypedEvent<[string, BigNumber], EmergencyWithdrawEventObject>; export type EmergencyWithdrawEventFilter = TypedEventFilter; export interface WithdrawEventObject { user: string; amount: BigNumber; } export type WithdrawEvent = TypedEvent<[string, BigNumber], WithdrawEventObject>; export type WithdrawEventFilter = TypedEventFilter; export interface JungleChef extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: JungleChefInterface; queryFilter(event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>; listeners(eventFilter?: TypedEventFilter): Array>; listeners(eventName?: string): Array; removeAllListeners(eventFilter: TypedEventFilter): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { bonusEndBlock(overrides?: CallOverrides): Promise<[BigNumber]>; poolInfo(overrides?: CallOverrides): Promise<[ BigNumber, BigNumber ] & { lastRewardBlock: BigNumber; accRewardPerShare: BigNumber; }>; rewardPerBlock(overrides?: CallOverrides): Promise<[BigNumber]>; startBlock(overrides?: CallOverrides): Promise<[BigNumber]>; syrup(overrides?: CallOverrides): Promise<[string]>; userInfo(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber, BigNumber] & { amount: BigNumber; rewardDebt: BigNumber; }>; getMultiplier(_from: PromiseOrValue, _to: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]>; pendingReward(_user: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]>; updatePool(overrides?: Overrides & { from?: PromiseOrValue; }): Promise; deposit(_amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdraw(_amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; emergencyWithdraw(overrides?: Overrides & { from?: PromiseOrValue; }): Promise; bonusEndTime(overrides?: CallOverrides): Promise<[BigNumber]>; rewardPerSecond(overrides?: CallOverrides): Promise<[BigNumber]>; startTime(overrides?: CallOverrides): Promise<[BigNumber]>; }; bonusEndBlock(overrides?: CallOverrides): Promise; poolInfo(overrides?: CallOverrides): Promise<[ BigNumber, BigNumber ] & { lastRewardBlock: BigNumber; accRewardPerShare: BigNumber; }>; rewardPerBlock(overrides?: CallOverrides): Promise; startBlock(overrides?: CallOverrides): Promise; syrup(overrides?: CallOverrides): Promise; userInfo(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber, BigNumber] & { amount: BigNumber; rewardDebt: BigNumber; }>; getMultiplier(_from: PromiseOrValue, _to: PromiseOrValue, overrides?: CallOverrides): Promise; pendingReward(_user: PromiseOrValue, overrides?: CallOverrides): Promise; updatePool(overrides?: Overrides & { from?: PromiseOrValue; }): Promise; deposit(_amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdraw(_amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; emergencyWithdraw(overrides?: Overrides & { from?: PromiseOrValue; }): Promise; bonusEndTime(overrides?: CallOverrides): Promise; rewardPerSecond(overrides?: CallOverrides): Promise; startTime(overrides?: CallOverrides): Promise; callStatic: { bonusEndBlock(overrides?: CallOverrides): Promise; poolInfo(overrides?: CallOverrides): Promise<[ BigNumber, BigNumber ] & { lastRewardBlock: BigNumber; accRewardPerShare: BigNumber; }>; rewardPerBlock(overrides?: CallOverrides): Promise; startBlock(overrides?: CallOverrides): Promise; syrup(overrides?: CallOverrides): Promise; userInfo(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber, BigNumber] & { amount: BigNumber; rewardDebt: BigNumber; }>; getMultiplier(_from: PromiseOrValue, _to: PromiseOrValue, overrides?: CallOverrides): Promise; pendingReward(_user: PromiseOrValue, overrides?: CallOverrides): Promise; updatePool(overrides?: CallOverrides): Promise; deposit(_amount: PromiseOrValue, overrides?: CallOverrides): Promise; withdraw(_amount: PromiseOrValue, overrides?: CallOverrides): Promise; emergencyWithdraw(overrides?: CallOverrides): Promise; bonusEndTime(overrides?: CallOverrides): Promise; rewardPerSecond(overrides?: CallOverrides): Promise; startTime(overrides?: CallOverrides): Promise; }; filters: { 'Deposit(address,uint256)'(user?: PromiseOrValue | null, amount?: null): DepositEventFilter; Deposit(user?: PromiseOrValue | null, amount?: null): DepositEventFilter; 'EmergencyWithdraw(address,uint256)'(user?: PromiseOrValue | null, amount?: null): EmergencyWithdrawEventFilter; EmergencyWithdraw(user?: PromiseOrValue | null, amount?: null): EmergencyWithdrawEventFilter; 'Withdraw(address,uint256)'(user?: PromiseOrValue | null, amount?: null): WithdrawEventFilter; Withdraw(user?: PromiseOrValue | null, amount?: null): WithdrawEventFilter; }; estimateGas: { bonusEndBlock(overrides?: CallOverrides): Promise; poolInfo(overrides?: CallOverrides): Promise; rewardPerBlock(overrides?: CallOverrides): Promise; startBlock(overrides?: CallOverrides): Promise; syrup(overrides?: CallOverrides): Promise; userInfo(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; getMultiplier(_from: PromiseOrValue, _to: PromiseOrValue, overrides?: CallOverrides): Promise; pendingReward(_user: PromiseOrValue, overrides?: CallOverrides): Promise; updatePool(overrides?: Overrides & { from?: PromiseOrValue; }): Promise; deposit(_amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdraw(_amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; emergencyWithdraw(overrides?: Overrides & { from?: PromiseOrValue; }): Promise; bonusEndTime(overrides?: CallOverrides): Promise; rewardPerSecond(overrides?: CallOverrides): Promise; startTime(overrides?: CallOverrides): Promise; }; populateTransaction: { bonusEndBlock(overrides?: CallOverrides): Promise; poolInfo(overrides?: CallOverrides): Promise; rewardPerBlock(overrides?: CallOverrides): Promise; startBlock(overrides?: CallOverrides): Promise; syrup(overrides?: CallOverrides): Promise; userInfo(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; getMultiplier(_from: PromiseOrValue, _to: PromiseOrValue, overrides?: CallOverrides): Promise; pendingReward(_user: PromiseOrValue, overrides?: CallOverrides): Promise; updatePool(overrides?: Overrides & { from?: PromiseOrValue; }): Promise; deposit(_amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdraw(_amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; emergencyWithdraw(overrides?: Overrides & { from?: PromiseOrValue; }): Promise; bonusEndTime(overrides?: CallOverrides): Promise; rewardPerSecond(overrides?: CallOverrides): Promise; startTime(overrides?: CallOverrides): Promise; }; }