import { ethers } from "ethers";
import { providers } from "ethers/lib/ethers";
export declare type Network = "mainnet" | "rinkeby" | "polygon" | "mumbai" | "local";
export declare type address = string;
export declare type ListingId = string;
export declare type ProviderOrSigner = providers.BaseProvider | providers.Web3Provider | providers.JsonRpcProvider | ethers.Signer;
export interface ListingParams {
    token_id: string;
    address: string;
    price: number;
    quantity: number;
    acceptedPayment: string;
}
export declare type ListingInfo = ListingParams & {
    seller: string;
};
export interface ListingIndexes {
    hash: ListingId;
    index: number;
}
export interface ErrorEvent {
    error: string;
}
export interface EventStarted {
    hash: string;
}
export interface EventSuccess {
    hash: string;
}
export interface ContractsByNetwork {
    wrapperRegistry: string;
    marketplace: string;
    tokenRegistry: string;
}
declare type IndexingParameters = {
    id: ListingId;
    index?: number;
};
export declare type IndexingObject = Required<IndexingParameters>;
declare type StandardEventName = "@:tx-start" | "@:tx-hash" | "@:tx-mined";
declare type ApprovalEventName = "approval:tx-start" | "approval:tx-hash" | "approval:tx-mined";
export declare type EventNames = StandardEventName | ApprovalEventName | "error";
export {};
