import { providers } from 'ethers'; import BaseService from '../commons/BaseService'; import { EthereumTransactionTypeExtended, tEthereumAddress } from '../commons/types'; import { CrytoPunkInterface } from '../crypto-punk'; import { IERC721ServiceInterface } from '../erc721-contract'; import { IWPunkGateway } from './typechain/IWPunkGateway'; export declare type WPunkSupplyParamsType = { user: tEthereumAddress; token_ids: number[]; onBehalfOf?: tEthereumAddress; referralCode?: string; }; export declare type WPunkWithdrawParamsType = { user: tEthereumAddress; token_ids: string[]; xpunkAddress: tEthereumAddress; onBehalfOf?: tEthereumAddress; }; export interface WPunkGatewayInterface { supplyPunk: (args: WPunkSupplyParamsType) => EthereumTransactionTypeExtended[]; withdrawPunk: (args: WPunkWithdrawParamsType) => Promise; } export declare class WPunkGatewayService extends BaseService implements WPunkGatewayInterface { readonly wpunkGatewayAddress: string; readonly cryptoPunkService: CrytoPunkInterface; readonly erc721Service: IERC721ServiceInterface; constructor(provider: providers.Provider, wpunkGatewayAddress?: tEthereumAddress, crytoPunkAddress?: tEthereumAddress); supplyPunk({ user, token_ids, onBehalfOf, referralCode }: WPunkSupplyParamsType): EthereumTransactionTypeExtended[]; withdrawPunk({ user, token_ids, xpunkAddress, onBehalfOf }: WPunkWithdrawParamsType): Promise; } //# sourceMappingURL=index.d.ts.map