/**
 *
 */
package com.braintree.order.service;

import com.braintree.model.BrainTreePaymentInfoModel;
import de.hybris.platform.core.model.order.AbstractOrderModel;
import de.hybris.platform.core.model.user.CustomerModel;
import de.hybris.platform.payment.model.PaymentTransactionModel;


public interface BraintreeOrderRetrievalService {

    String getOrderCodeForTransaction(final String transactionID);

    PaymentTransactionModel getTransactionForId(final String transactionID);

    AbstractOrderModel getOrderForTransaction(final String transactionID);

    Integer countOrdersWithExpiredTransactions(BrainTreePaymentInfoModel brainTreePaymentInfoModel, int expirationDays);

    Integer countOrdersWithExpiredTransactionsByCustomer(CustomerModel customerModel, int expirationDays);
}
