import { TypedDataSigner } from '@ethersproject/abstract-signer'; import { Signature } from '@ethersproject/bytes'; import BigNumberJs from 'bignumber.js'; import { providers } from 'ethers'; import BaseService from '../commons/BaseService'; import { eEthereumTxType, EthereumTransactionTypeExtended, transactionType } from '../commons/types'; import { IP2PPairStaking, P2PPairStaking } from './typechain/P2PPairStaking'; import ListingOrderStruct = IP2PPairStaking.ListingOrderStruct; export declare enum ApeListingOrderStatus { PENDING = 0, MATCHED = 1, CANCELLED = 2 } export declare enum StakingType { BAYCStaking = 0, MAYCStaking = 1, BAKCPairStaking = 2 } export interface P2PListing { stakingType: StakingType; offerer: string; token: string; tokenId: number; share: number; startTime: number; endTime: number; } export declare type P2PListingWithSign = P2PListing & Signature; export declare class P2PPairStakingService extends BaseService { instance: P2PPairStaking; constructor(provider: providers.Provider, address: string); getListingOrderHash(listing: P2PListing): string; createListing(signer: TypedDataSigner, listing: P2PListing): Promise<{ r: string; s: string; _vs: string; recoveryParam: number; v: number; yParityAndS: string; compact: string; stakingType: StakingType; offerer: string; token: string; tokenId: number; share: number; startTime: number; endTime: number; }>; verifyListingSignature(listing: P2PListingWithSign): Promise; cancelListing(listing: ListingOrderStruct, user: string): { tx: () => Promise; txType: eEthereumTxType; gas: import("../commons/types").GasResponse; }; breakUpMatchedOrder(orderHash: string, user: string): { tx: () => Promise; txType: eEthereumTxType; gas: import("../commons/types").GasResponse; }; matchPairStakingList(apeListing: ListingOrderStruct, apeCoinListing: ListingOrderStruct, user: string): EthereumTransactionTypeExtended; matchBAKCPairStakingList(apeListing: ListingOrderStruct, bakcListing: ListingOrderStruct, apeCoinListing: ListingOrderStruct, user: string): EthereumTransactionTypeExtended; claimCApeReward(receiver: string): { tx: () => Promise; txType: eEthereumTxType; gas: import("../commons/types").GasResponse; }; pendingCApeReward(user: string): Promise; isListingOrderCanceled(hash: string): Promise; isOrderMatched(hash: string): Promise; } //# sourceMappingURL=index.d.ts.map