001package com.fs.starfarer.api.campaign.econ;
002
003import com.fs.starfarer.api.campaign.CargoAPI;
004import com.fs.starfarer.api.campaign.CargoStackAPI;
005import com.fs.starfarer.api.campaign.FactionAPI;
006import com.fs.starfarer.api.campaign.SubmarketPlugin;
007import com.fs.starfarer.api.campaign.SubmarketPlugin.TransferAction;
008
009public interface SubmarketAPI {
010        MarketAPI getMarket();
011        SubmarketSpecAPI getSpec();
012        
013        SubmarketPlugin getPlugin();
014        
015        FactionAPI getFaction();
016        void setFaction(FactionAPI faction);
017        
018        String getSpecId();
019        String getName();
020        String getNameOneLine();
021        
022        
023        CargoAPI getCargo();
024        
025        /**
026         * Fraction of the price.
027         * @return
028         */
029        float getTariff();
030        CargoAPI getCargoNullOk();
031        boolean isIllegalOnSubmarket(CargoStackAPI stack, TransferAction action);
032        
033//      boolean isBlackMarket();
034//      boolean isOpenMarket();
035        
036}