| addContract | abstract fun addContract(contract: Contract): Unit | 
| building | abstract fun building(): Building? | 
| consumesQuantity | abstract fun consumesQuantity(tradeable: Tradeable): Int | 
| createContract | abstract fun createContract(otherTradeEntity: TradeEntity, tradeable: Tradeable, quantity: Int, path: Path): Unit | 
| currentQuantityForSale | abstract fun currentQuantityForSale(tradeable: Tradeable): Int | 
| currentQuantityWanted | abstract fun currentQuantityWanted(tradeable: Tradeable): Int | 
| description | abstract fun description(): String? | 
| hasAnyContracts | abstract fun hasAnyContracts(): Boolean | 
| producesQuantity | abstract fun producesQuantity(tradeable: Tradeable): Int | 
| quantityOnHand | abstract fun quantityOnHand(tradeable: Tradeable): Int | 
| voidContractsWith | abstract fun voidContractsWith(otherTradeEntity: TradeEntity): Unit |