///
import BN = require('bn.js');
import { Connector } from '../libraries/Connector';
import { AccountManager } from '../libraries/AccountManager';
import { ContractDeployer } from '../libraries/ContractDeployer';
import { FeeWindow, Cash, Universe, Market, DisputeCrowdsourcer, ReputationToken } from '../libraries/ContractInterfaces';
export declare class TestFixture {
private static GAS_PRICE;
private readonly connector;
readonly accountManager: AccountManager;
readonly contractDeployer: ContractDeployer;
readonly universe: Universe;
readonly cash: Cash;
constructor(connector: Connector, accountManager: AccountManager, contractDeployer: ContractDeployer);
static create: (pretendToBeProduction?: boolean) => Promise;
approveCentralAuthority(): Promise;
createMarket(universe: Universe, outcomes: string[], endTime: BN, feePerEthInWei: BN, denominationToken: string, designatedReporter: string): Promise;
createReasonableMarket(universe: Universe, denominationToken: string, outcomes: string[]): Promise;
placeOrder(market: string, type: BN, numShares: BN, price: BN, outcome: BN, betterOrderID: string, worseOrderID: string, tradeGroupID: string): Promise;
takeBestOrder(marketAddress: string, type: BN, numShares: BN, price: BN, outcome: BN, tradeGroupID: string): Promise;
cancelOrder(orderID: string): Promise;
claimTradingProceeds(market: Market, shareholder: string): Promise;
getOrderPrice(orderID: string): Promise;
getOrderAmount(orderID: string): Promise;
getBestOrderId(type: BN, market: string, outcome: BN): Promise;
buyCompleteSets(market: Market, amount: BN): Promise;
sellCompleteSets(market: Market, amount: BN): Promise;
contribute(market: Market, payoutNumerators: Array, invalid: boolean, amount: BN): Promise;
derivePayoutDistributionHash(market: Market, payoutNumerators: Array, invalid: boolean): Promise;
isForking(): Promise;
migrateOutByPayout(reputationToken: ReputationToken, payoutNumerators: Array, invalid: boolean, attotokens: BN): Promise;
getNumSharesInMarket(market: Market, outcome: BN): Promise;
getFeeWindow(market: Market): Promise;
getReportingParticipant(reportingParticipantAddress: string): Promise;
getUniverse(market: Market): Promise;
getWinningReportingParticipant(market: Market): Promise;
setTimestamp(timestamp: BN): Promise;
getTimestamp(): Promise;
doInitialReport(market: Market, payoutNumerators: Array, invalid: boolean): Promise;
finalizeMarket(market: Market): Promise;
isLegacyRepPaused(): Promise;
getLegacyRepBalance(owner: string): Promise;
getLegacyRepAllowance(owner: string, spender: string): Promise;
transferLegacyRep(to: string, amount: BN): Promise;
approveLegacyRep(spender: string, amount: BN): Promise;
pauseLegacyRep(): Promise;
getChildUniverseReputationToken(parentPayoutDistributionHash: string): Promise;
getReputationToken(): Promise;
isRepMigratingFromLegacy(): Promise;
getEthBalance(): Promise;
getRepBalance(owner: string): Promise;
getRepAllowance(owner: string, spender: string): Promise;
}