/// <summary>
 /// Cancels the specified trade offer.
 /// </summary>
 /// <param name="trade">A TradeOffer that is the OpSkins trade offer to cancel.</param>
 /// <returns>A bool indicating whether the offer was successfully cancelled.</returns>
 public bool CancelTrade(TradeOffer tradeOffer)
 {
     return(CancelTrade(tradeOffer.ID));
 }
 /// <summary>
 /// Process a sent trade offer.
 /// </summary>
 /// <param name="tradeOffer">The TradeOffer to process.</param>
 /// <returns>A bool indicating whether the trade offer has been processed and should be ignored.</returns>
 protected virtual bool OnProcessSentTradeOffer(TradeOffer tradeOffer)
 {
     return(false);
 }
 /// <summary>
 /// Accepts the specified trade offer.
 /// </summary>
 /// <param name="tradeOffer">A TradeOffer containing the trade offer to accept.</param>
 /// <returns>A bool indicating success.</returns>
 public bool AcceptTradeOffer(TradeOffer tradeOffer)
 {
     return(AcceptTradeOffer(tradeOffer.ID));
 }
 /// <summary>
 /// Process a received trade offer.
 /// </summary>
 /// <param name="tradeOffer">The TradeOffer to process.</param>
 /// <returns>A bool indicating whether the trade offer has been processed and should be ignored.</returns>
 protected virtual bool OnProcessReceivedTradeOffer(TradeOffer tradeOffer)
 {
     return(false);
 }