package com.homansystem.iposprinter;
import com.facebook.react.bridge.ReadableMap;
import android.graphics.Bitmap;
import com.facebook.react.bridge.Promise;
import com.facebook.react.bridge.ReadableMap;
import com.facebook.react.bridge.ReadableArray;

import javax.annotation.Nullable;


public interface MyPrinter {

    void setDebug(Boolean isDebug);
    void connect(String ipAddress, Promise promise);
    void hasCutter(Boolean value);
    void writeTextWProps(String text, @Nullable ReadableMap property);
    void writeText(String text);
    // void writeQRCode(String content, @Nullable ReadableMap property);
    void addTextAlign(int align);
    void writeImage(Bitmap data, int width);
    void writeFeed(int length);
    void writeCut();
    void writePulse();
    void writeBeep(int numOfBeep, int buzzingTime);
    void startPrint(Promise promise);
    void printColumn(ReadableArray columnWidths, ReadableArray columnAligns, ReadableArray columnTexts, @Nullable ReadableMap options, final Promise promise);
    void disconnect();
}
