import { TAddress } from '../../../models/TAddress'; import { TAccount } from '../../../models/TAccount'; import { ClientEventsStream, TClientEventsStreamData } from '../../../clients/ClientEventsStream'; import { ContractBase } from '../../../contracts/ContractBase'; import { ContractStorageReaderBase } from '../../../contracts/ContractStorageReaderBase'; import { TxWriter } from '../../../txs/TxWriter'; import { ITxLogItem } from '../../../txs/receipt/ITxLogItem'; import { Web3Client } from '../../../clients/Web3Client'; import { IBlockchainExplorer } from '../../../explorer/IBlockchainExplorer'; import { SubjectStream } from '../../../class/SubjectStream'; import type { TAbiItem } from '../../../types/TAbi'; import type { TEth } from '../../../models/TEth'; import type { TOverrideReturns } from '../../../utils/types'; export declare class AmmMasterChefV2Contract extends ContractBase { address: TEth.Address; client: Web3Client; explorer: IBlockchainExplorer; constructor(address?: TEth.Address, client?: Web3Client, explorer?: IBlockchainExplorer); Types: TAmmMasterChefV2ContractTypes; $meta: { class: string; }; $constructor(deployer: TSender, _cake: TAddress, _syrup: TAddress, _devaddr: TAddress, _cakePerBlock: bigint, _startBlock: bigint): Promise; BONUS_MULTIPLIER(): Promise; add(sender: TSender, _allocPoint: bigint, _lpToken: TAddress, _withUpdate: boolean): Promise; cake(): Promise; cakePerBlock(): Promise; deposit(sender: TSender, _pid: bigint, _amount: bigint): Promise; dev(sender: TSender, _devaddr: TAddress): Promise; devaddr(): Promise; emergencyWithdraw(sender: TSender, _pid: bigint): Promise; enterStaking(sender: TSender, _amount: bigint): Promise; getMultiplier(_from: bigint, _to: bigint): Promise; leaveStaking(sender: TSender, _amount: bigint): Promise; massUpdatePools(sender: TSender): Promise; migrate(sender: TSender, _pid: bigint): Promise; migrator(): Promise; owner(): Promise; pendingCake(_pid: bigint, _user: TAddress): Promise; poolInfo(input0: bigint): Promise<{ lpToken: TAddress; allocPoint: bigint; lastRewardBlock: bigint; accCakePerShare: bigint; }>; poolLength(): Promise; renounceOwnership(sender: TSender): Promise; set(sender: TSender, _pid: bigint, _allocPoint: bigint, _withUpdate: boolean): Promise; setMigrator(sender: TSender, _migrator: TAddress): Promise; startBlock(): Promise; syrup(): Promise; totalAllocPoint(): Promise; transferOwnership(sender: TSender, newOwner: TAddress): Promise; updateMultiplier(sender: TSender, multiplierNumber: bigint): Promise; updatePool(sender: TSender, _pid: bigint): Promise; userInfo(input0: bigint, input1: TAddress): Promise<{ amount: bigint; rewardDebt: bigint; }>; withdraw(sender: TSender, _pid: bigint, _amount: bigint): Promise; $call(): IAmmMasterChefV2ContractTxCaller; $signed(): TOverrideReturns>; $data(): IAmmMasterChefV2ContractTxData; $gas(): TOverrideReturns>; onTransaction(method: TMethod, options: Parameters[0]): SubjectStream<{ tx: TEth.Tx; block: TEth.Block; calldata: { method: TMethod; arguments: TAmmMasterChefV2ContractTypes['Methods'][TMethod]['arguments']; }; }>; onLog(event: keyof TEvents, cb?: (event: TClientEventsStreamData) => void): ClientEventsStream; getPastLogs(events: TEventName[], options?: TEventLogOptions>): Promise, TEventName>[]>; getPastLogs(event: TEventName, options?: TEventLogOptions>): Promise, TEventName>[]>; onDeposit(fn?: (event: TClientEventsStreamData>) => void): ClientEventsStream>>; onEmergencyWithdraw(fn?: (event: TClientEventsStreamData>) => void): ClientEventsStream>>; onOwnershipTransferred(fn?: (event: TClientEventsStreamData>) => void): ClientEventsStream>>; onWithdraw(fn?: (event: TClientEventsStreamData>) => void): ClientEventsStream>>; extractLogsDeposit(tx: TEth.TxReceipt): ITxLogItem>[]; extractLogsEmergencyWithdraw(tx: TEth.TxReceipt): ITxLogItem>[]; extractLogsOwnershipTransferred(tx: TEth.TxReceipt): ITxLogItem>[]; extractLogsWithdraw(tx: TEth.TxReceipt): ITxLogItem>[]; getPastLogsDeposit(options?: { fromBlock?: number | Date; toBlock?: number | Date; params?: { user?: TAddress; pid?: bigint; }; }): Promise>[]>; getPastLogsEmergencyWithdraw(options?: { fromBlock?: number | Date; toBlock?: number | Date; params?: { user?: TAddress; pid?: bigint; }; }): Promise>[]>; getPastLogsOwnershipTransferred(options?: { fromBlock?: number | Date; toBlock?: number | Date; params?: { previousOwner?: TAddress; newOwner?: TAddress; }; }): Promise>[]>; getPastLogsWithdraw(options?: { fromBlock?: number | Date; toBlock?: number | Date; params?: { user?: TAddress; pid?: bigint; }; }): Promise>[]>; abi: TAbiItem[]; storage: AmmMasterChefV2ContractStorageReader; } type TSender = TAccount & { value?: string | number | bigint; }; type TEventLogOptions = { fromBlock?: number | Date; toBlock?: number | Date; params?: TParams; }; export type TAmmMasterChefV2ContractTypes = { Events: { Deposit: { outputParams: { user: TAddress; pid: bigint; amount: bigint; }; outputArgs: [user: TAddress, pid: bigint, amount: bigint]; }; EmergencyWithdraw: { outputParams: { user: TAddress; pid: bigint; amount: bigint; }; outputArgs: [user: TAddress, pid: bigint, amount: bigint]; }; OwnershipTransferred: { outputParams: { previousOwner: TAddress; newOwner: TAddress; }; outputArgs: [previousOwner: TAddress, newOwner: TAddress]; }; Withdraw: { outputParams: { user: TAddress; pid: bigint; amount: bigint; }; outputArgs: [user: TAddress, pid: bigint, amount: bigint]; }; }; Methods: { BONUS_MULTIPLIER: { method: "BONUS_MULTIPLIER"; arguments: []; }; add: { method: "add"; arguments: [_allocPoint: bigint, _lpToken: TAddress, _withUpdate: boolean]; }; cake: { method: "cake"; arguments: []; }; cakePerBlock: { method: "cakePerBlock"; arguments: []; }; deposit: { method: "deposit"; arguments: [_pid: bigint, _amount: bigint]; }; dev: { method: "dev"; arguments: [_devaddr: TAddress]; }; devaddr: { method: "devaddr"; arguments: []; }; emergencyWithdraw: { method: "emergencyWithdraw"; arguments: [_pid: bigint]; }; enterStaking: { method: "enterStaking"; arguments: [_amount: bigint]; }; getMultiplier: { method: "getMultiplier"; arguments: [_from: bigint, _to: bigint]; }; leaveStaking: { method: "leaveStaking"; arguments: [_amount: bigint]; }; massUpdatePools: { method: "massUpdatePools"; arguments: []; }; migrate: { method: "migrate"; arguments: [_pid: bigint]; }; migrator: { method: "migrator"; arguments: []; }; owner: { method: "owner"; arguments: []; }; pendingCake: { method: "pendingCake"; arguments: [_pid: bigint, _user: TAddress]; }; poolInfo: { method: "poolInfo"; arguments: [input0: bigint]; }; poolLength: { method: "poolLength"; arguments: []; }; renounceOwnership: { method: "renounceOwnership"; arguments: []; }; set: { method: "set"; arguments: [_pid: bigint, _allocPoint: bigint, _withUpdate: boolean]; }; setMigrator: { method: "setMigrator"; arguments: [_migrator: TAddress]; }; startBlock: { method: "startBlock"; arguments: []; }; syrup: { method: "syrup"; arguments: []; }; totalAllocPoint: { method: "totalAllocPoint"; arguments: []; }; transferOwnership: { method: "transferOwnership"; arguments: [newOwner: TAddress]; }; updateMultiplier: { method: "updateMultiplier"; arguments: [multiplierNumber: bigint]; }; updatePool: { method: "updatePool"; arguments: [_pid: bigint]; }; userInfo: { method: "userInfo"; arguments: [input0: bigint, input1: TAddress]; }; withdraw: { method: "withdraw"; arguments: [_pid: bigint, _amount: bigint]; }; }; }; declare class AmmMasterChefV2ContractStorageReader extends ContractStorageReaderBase { address: TAddress; client: Web3Client; explorer: IBlockchainExplorer; constructor(address: TAddress, client: Web3Client, explorer: IBlockchainExplorer); _owner(): Promise; cake(): Promise; syrup(): Promise; devaddr(): Promise; cakePerBlock(): Promise; BONUS_MULTIPLIER(): Promise; migrator(): Promise; poolInfo(): Promise<{ lpToken: TAddress; allocPoint: bigint; lastRewardBlock: bigint; accCakePerShare: bigint; }[]>; userInfo(key: bigint): Promise>; totalAllocPoint(): Promise; startBlock(): Promise; $slots: { slot: number; position: number; name: string; size: number; type: string; }[]; } interface IAmmMasterChefV2ContractTxCaller { add(sender: TSender, _allocPoint: bigint, _lpToken: TAddress, _withUpdate: boolean): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; deposit(sender: TSender, _pid: bigint, _amount: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; dev(sender: TSender, _devaddr: TAddress): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; emergencyWithdraw(sender: TSender, _pid: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; enterStaking(sender: TSender, _amount: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; leaveStaking(sender: TSender, _amount: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; massUpdatePools(sender: TSender): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; migrate(sender: TSender, _pid: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; renounceOwnership(sender: TSender): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; set(sender: TSender, _pid: bigint, _allocPoint: bigint, _withUpdate: boolean): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; setMigrator(sender: TSender, _migrator: TAddress): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; transferOwnership(sender: TSender, newOwner: TAddress): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; updateMultiplier(sender: TSender, multiplierNumber: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; updatePool(sender: TSender, _pid: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; withdraw(sender: TSender, _pid: bigint, _amount: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; } interface IAmmMasterChefV2ContractTxData { add(sender: TSender, _allocPoint: bigint, _lpToken: TAddress, _withUpdate: boolean): Promise; deposit(sender: TSender, _pid: bigint, _amount: bigint): Promise; dev(sender: TSender, _devaddr: TAddress): Promise; emergencyWithdraw(sender: TSender, _pid: bigint): Promise; enterStaking(sender: TSender, _amount: bigint): Promise; leaveStaking(sender: TSender, _amount: bigint): Promise; massUpdatePools(sender: TSender): Promise; migrate(sender: TSender, _pid: bigint): Promise; renounceOwnership(sender: TSender): Promise; set(sender: TSender, _pid: bigint, _allocPoint: bigint, _withUpdate: boolean): Promise; setMigrator(sender: TSender, _migrator: TAddress): Promise; transferOwnership(sender: TSender, newOwner: TAddress): Promise; updateMultiplier(sender: TSender, multiplierNumber: bigint): Promise; updatePool(sender: TSender, _pid: bigint): Promise; withdraw(sender: TSender, _pid: bigint, _amount: bigint): Promise; } type TEvents = TAmmMasterChefV2ContractTypes['Events']; type TEventParams = Partial; type TEventArguments = Partial; export {};