import { BaseAccount } from './base-accounts';
import { RequestService } from '../services';
export declare class FifaFut18Account extends BaseAccount {
    protected $request: RequestService;
    constructor($request: RequestService);
    getUserMassInfo(): Promise<fifa.fut18.UserMassInfo>;
    getTradePile(): Promise<fifa.fut18.TradePile>;
    searchMarket(options: fifa.fut18.SearchMarketOptions): Promise<fifa.fut18.SearchResult>;
    bid(tradeId: number, price: number): Promise<fifa.fut18.BidResponse>;
    tradeStatus(tradeIds: number[]): Promise<fifa.fut18.TradeStatusResponse>;
    getWatchList(): Promise<fifa.fut18.WatchListResponse>;
    deleteWatchlist(tradeIds: number[]): Promise<void>;
    sendToMyClub(itemIds: number[]): Promise<fifa.fut18.SendItemResponse>;
    getClubDevelopmentConsumables(): Promise<fifa.fut18.ClubDevelopmentConsumablesResponse>;
    sendResourceToTransferList(resourceIds: number[]): Promise<fifa.fut18.SendItemResponse>;
    list(options: fifa.fut18.ListOptions): Promise<fifa.fut18.ListResponse>;
    getItems(): Promise<fifa.fut18.ItemResponse>;
    deleteSold(): Promise<void>;
    relist(): Promise<fifa.fut18.RelistResponse>;
}
export declare namespace fifa.fut18 {
    interface RelistResponse {
        tradeIdList: ListResponse[];
    }
    interface ItemResponse {
        duplicateItemIdList?: DuplicateItemId[];
        itemData: ItemData[];
    }
    interface ListResponse {
        id: number;
        idStr: string;
    }
    interface ListOptions {
        buyNowPrice: number;
        duration: number;
        itemId: number;
        startingBid: number;
    }
    interface ClubDevelopmentConsumablesResponse {
        itemData: CountableItemData[];
    }
    interface CountableItemData {
        count: number;
        discardValue: number;
        item: ItemData;
        resourceGameYear: number;
        resourceId: number;
        untradeableCount: number;
    }
    interface SendItemResponse {
        itemData: ItemMoveResult[];
    }
    interface ItemMoveResult {
        id: number;
        pile: string;
        success: boolean;
    }
    interface BaseResponse {
        credits: number;
    }
    interface WatchListResponse extends BaseResponse {
        total: number;
        auctionInfo: AuctionInfo[];
    }
    interface BidResponse extends BaseResponse {
        bidTokens: any;
        currencies: Currency[];
        auctionInfo: AuctionInfo[];
    }
    interface SearchMarketOptions {
        start?: number;
        num?: number;
        type?: string;
        cat?: string;
        lev?: string;
        micr?: number;
        macr?: number;
        minb?: number;
        maxb?: number;
    }
    interface TradeStatusResponse {
        auctionInfo: AuctionInfo[];
        bidTokens: any;
        credits: number;
    }
    interface SearchResult {
        auctionInfo: AuctionInfo[];
        bidTokens: any;
    }
    interface AuctionInfo {
        bidState: string;
        buyNowPrice: number;
        confidenceValue: number;
        currentBid: number;
        expires: number;
        offers: number;
        sellerEstablished: number;
        sellerId: number;
        sellerName: string;
        startingBid: number;
        tradeId: number;
        tradeIdStr: string;
        tradeOwner: boolean;
        tradeState: string;
        watched: boolean;
        itemData: ItemData;
    }
    interface ItemData {
        amount?: number;
        assetId: number;
        assists: number;
        attributeList: any[];
        cardsubtypeid: number;
        contract: number;
        discardValue: number;
        fitness: number;
        formation: string;
        id: number;
        injuryGames: number;
        injuryType: string;
        itemState: string;
        itemType: string;
        lastSalePrice: number;
        leagueId: number;
        lifetimeAssists: number;
        lifetimeStats: any[];
        loyaltyBonus: number;
        morale: number;
        nation: number;
        owners: number;
        pile: number;
        playStyle: number;
        preferredPosition: string;
        rareflag: number;
        rating: number;
        resourceGameYear: number;
        resourceId: number;
        statsList: any[];
        suspension: number;
        teamid: number;
        timestamp: number;
        training: number;
        untradeable: boolean;
    }
    interface TradePile {
        credits: number;
        bidTokens: any;
        auctionInfo?: AuctionInfo[];
        duplicateItemIdList?: DuplicateItemId[];
    }
    interface DuplicateItemId {
        duplicateItemId: number;
        itemId: number;
    }
    interface UserMassInfo {
        userInfo: UserInfo;
        pileSizeClientData: PileSizeClientData;
    }
    interface UserInfo {
        personaId: number;
        clubName: string;
        clubAbbr: string;
        draw: number;
        loss: number;
        credits: number;
        bidTokens: object;
        currencies: Currency[];
        trophies: number;
        won: number;
        actives: Active[];
        established: string;
        divisionOffline: number;
        divisionOnline: number;
        personaName: string;
        squadList: any;
        unopenedPacks: any;
        purchased: boolean;
        reliability: any;
        seasonTicket: boolean;
        accountCreatedPlatformName: string;
        fifaPointsFromLastYear: number;
        fifaPointsTransferredStatus: number;
        unassignedPileSize: number;
        feature: any;
        sessionCoinsBankBalance: number;
    }
    interface Currency {
        name: string;
        funds: number;
        finalFunds: number;
    }
    interface Active {
        id: number;
        timestamp: number;
        formation: string;
        untradeable: boolean;
        assetId: number;
        rating: number;
        itemType: string;
        resourceId: number;
        owners: number;
        discardValue: number;
        itemState: string;
        cardsubtypeid: number;
        lastSalePrice: number;
        statsList: any[];
        lifetimeStats: any[];
        attributeList: any[];
        teamid: number;
        rareflag: number;
        leagueId: number;
        pile: number;
        cardassetid: number;
        value: number;
        category: number;
        manufacturer: string;
        name: string;
        resourceGameYear: number;
    }
    interface PileSizeClientData {
        entries: KeyValue[];
    }
    interface KeyValue {
        key: number;
        value: number;
    }
}
