import { Address } from '../../../../../node_modules/@btc-vision/transaction/build/index.js'; import { CallResult } from '../../../../contracts/CallResult.js'; import { OPNetEvent } from '../../../../contracts/OPNetEvent.js'; import { IMotoChef, InitializedEvent, PoolAddedEvent } from './IMotoChef.js'; export type TemplateMotoChefInitializedEvent = {}; export type TemplateMotoChefInitialize = CallResult<{}, OPNetEvent[]>; export type GetFarmName = CallResult<{ name: string; }, OPNetEvent[]>; export type GetFarmBanner = CallResult<{ banner: string; }, OPNetEvent[]>; export type SetUserTokenAddress = CallResult<{}, OPNetEvent[]>; export type TransferOwnershipToUser = CallResult<{}, OPNetEvent[]>; export type UserFeeRecipient = CallResult<{ recipient: string; }, OPNetEvent[]>; export type MotoSwapFeeRecipient = CallResult<{ recipient: string; }, OPNetEvent[]>; export type OpnetFeeRecipient = CallResult<{ recipient: string; }, OPNetEvent[]>; export type BtcFeePercentage = CallResult<{ percentage: bigint; }, OPNetEvent[]>; export type GetFeeDistributionBps = CallResult<{ userFeeBps: bigint; motoSwapFeeBps: bigint; opnetFeeBps: bigint; totalBps: bigint; }, OPNetEvent[]>; export type TotalUserTokenStaked = CallResult<{ totalStaked: bigint; }, OPNetEvent[]>; export interface ITemplateMotoChef extends Omit { initialize(userTokenAddress: Address, tokenPerBlock: bigint, bonusEndBlock: bigint, bonusMultiplier: bigint, BTCAllocPoint: bigint, tokenAllocPoint: bigint, userBTCFeePercentage: bigint, userFeeRecipient: string, motoSwapFeeRecipient: string, opnetFeeRecipient: string, farmName: string, farmBanner: string, additionalPoolTokens: Address[], additionalPoolAllocPoints: bigint[]): Promise; getFarmName(): Promise; getFarmBanner(): Promise; setUserTokenAddress(tokenAddress: Address): Promise; transferOwnershipToUser(newOwner: Address): Promise; userFeeRecipient(): Promise; motoSwapFeeRecipient(): Promise; opnetFeeRecipient(): Promise; btcFeePercentage(): Promise; getFeeDistributionBps(): Promise; totalUserTokenStaked(): Promise; } export default ITemplateMotoChef;