1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- interface ScanData {
- code: string;
- state: number;
- type: number;
- message?: string;
- }
- export interface BridgeEventMap {
- scan: CustomEvent<{ code: number; data?: ScanData; message?: string }>;
- ['print:connect']: CustomEvent<{ code: number; data?: BridgePrinterDevice | true; message?: string }>;
- ['print:disconnect']: CustomEvent<{ code: number; data?: BridgePrinterDevice | true; message?: string }>;
- }
- export interface BridgePrinterDevice {
- type: 'wifi';
- ip?: string;
- port?: number;
- }
- export class Bridge extends EventTarget {
- public static getInstance(): Bridge;
- public static print(): Promise<void>;
- public static print(params: { url?: string }): Promise<void>;
- public static print(params: { tspl: String; device?: BridgePrinterDevice }): Promise<void>;
- public static scan(params?: { timeout?: number; signal?: AbortSignal }): Promise<ScanData>;
- /**
- * 监听扫码事件
- * @param type 事件类型 'scan'
- * @param listener 事件回调,参数为 ScanEvent
- * @param options
- */
- addEventListener<T extends keyof BridgeEventMap>(type: T, listener: (event: BridgeEventMap[T]) => void, options?: boolean | AddEventListenerOptions): () => void;
- removeEventListener<T extends keyof BridgeEventMap>(type: T, listener: (event: BridgeEventMap[T]) => void, options?: boolean | AddEventListenerOptions): () => void;
- postMessage(...args: any[]): Promise<void>;
- public printer: {
- connect(device: BridgePrinterDevice): Promise<[device: BridgePrinterDevice, onCleanup: () => Promise<BridgePrinterDevice>]>;
- disconnect(device: BridgePrinterDevice): Promise<BridgePrinterDevice>;
- };
- }
|