import { providers } from 'ethers'; import BaseService from '../commons/BaseService'; import { EthereumTransactionTypeExtended, tEthereumAddress } from '../commons/types'; import { IERC721 } from './typechain/IERC721'; declare type ApproveType = { user: tEthereumAddress; token: tEthereumAddress; spender: tEthereumAddress; token_id: string; }; declare type ApproveAllType = { user: tEthereumAddress; token: tEthereumAddress; spender: tEthereumAddress; token_ids: string[]; }; declare type SetApproveAllType = { user: tEthereumAddress; token: tEthereumAddress; spender: tEthereumAddress; }; export interface IERC721ServiceInterface { isApproved: (args: ApproveType) => Promise; isApprovedForAll: (args: ApproveAllType) => Promise; approve: (args: ApproveType) => EthereumTransactionTypeExtended; setApprovalForAll: (args: SetApproveAllType) => EthereumTransactionTypeExtended; } export declare class ERC721Service extends BaseService implements IERC721ServiceInterface { constructor(provider: providers.Provider); approve({ user, token, spender, token_id }: ApproveType): EthereumTransactionTypeExtended; isApproved({ user, token, spender, token_id }: ApproveType): Promise; setApprovalForAll({ user, token, spender }: SetApproveAllType): EthereumTransactionTypeExtended; isApprovedForAll({ user, token, spender, token_ids }: ApproveAllType): Promise; balanceOf(token: string, owner: string): Promise; } export {}; //# sourceMappingURL=index.d.ts.map