@terra-js/terra-kit
Version:
SDK for mobile bridge to offer unified method signatures for Android/iOS.
60 lines (59 loc) • 2.03 kB
TypeScript
import { ModuleWrapper, DataStream } from '@terra-js/common';
import { Result } from '@terra-js/common/dist';
import { BaseModule } from '../BaseModule';
import { PrintConfig, PrintRequest, PrintResult, GetPhotoOptions, GetPhotoResult, DownloadBarCodeRequest, DownloadBarCodeResult } from './types';
export declare enum ScanningType {
PRODUCT_SERIAL = "serial",
PRODUCT_BARCODE = "barcode",
PRODUCT_QR = "qr",
PRODUCT_ALL_TYPE = "allType"
}
export declare enum SourceGetPhotoType {
CAMERA = "camera",
LIBRARY = "library",
BOTH = "both"
}
export declare enum ScanResultCode {
ERROR = 0,
SUCCESS = 1
}
export declare enum ScanResultAction {
FORCE_CLOSE_SCAN = "forceCloseScan"
}
export declare enum CartType {
BUY_NOW = "buyNow",
GIFT_BASKET = "giftBasket"
}
export declare type OpenBuyNowRequest = {
token: string;
cartType: CartType;
note?: string;
};
export declare type ProcessScanResultFinish = {
message: string;
resultCode?: ScanResultCode;
resultAction?: ScanResultAction;
};
export declare type ObserveScanResultRequest = {
continuous?: boolean;
scanningTypes?: ScanningType[];
};
export default class CommonKitModule implements BaseModule {
wrappedModule: ModuleWrapper;
deviceID: string;
accessToken: any;
user: any;
constructor();
getPrintConfig: () => Promise<Result<PrintConfig>>;
printImage: (request: PrintRequest) => Promise<Result<PrintResult>>;
getPhoto: (request: GetPhotoOptions) => Promise<Result<GetPhotoResult>>;
scan(): {
observeScanResult: (request: ObserveScanResultRequest) => DataStream<string>;
processScanResult: (request: ProcessScanResultFinish) => Promise<void>;
};
printDocument: (documentUrl: String) => Promise<Result<void>>;
openBuyNow: (request: OpenBuyNowRequest) => DataStream<boolean>;
downloadBarCode: (request: DownloadBarCodeRequest) => Promise<Result<DownloadBarCodeResult>>;
private observeScanResult;
private processScanResult;
}