package com.module.pay.nayax;

public interface CreditCardContract<T> {
    /**
     * open串口通信
     */
    void startCommunication(int i);

    /**
     * close串口通信
     */
    void  stopCommunication(int i);
    /**
     * 是否串口通信成功
     */
    boolean is_ready();
    /**
     * 结束串口通信
     */
    void StopPay();
    /**
     * 注册UI的回调接口
     */
    void registerViewCallback(T t);

    /**
     * 取消注册UI的回调接口
     */
    void unRegisterViewCallback(T t);

    /**
     * 等待刷卡
     */
    void startThreadTimer();

    /**
     * 取消本次等待刷卡
     */
    void CanselSession() ;
    /**
     * 交易结束后关闭
     */
    void CloseSession();

    /**
     * 拿到上一个界面传递过来的数据
     */
    void setNameAndPrice(double coin,int code);

    /**
     * 通过nayax 上传cash 的数据
     */
    void nayaxCashSale(int price,int code);

    /**
     * 設置信用卡支付的數據
     * @param coin
     */
    void setCommodity_price(double coin,int code);
}
