jc-printer-sdk-ts 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/types.ts ADDED
@@ -0,0 +1,385 @@
1
+ import type {
2
+ AddressType,
3
+ GeneralProgress,
4
+ PrintFailReason,
5
+ PrintParamName,
6
+ PrintProgress,
7
+ PrinterState,
8
+ ProgressInfo,
9
+ } from "./constants.js";
10
+
11
+ export type MaybePromise<T> = T | Promise<T>;
12
+ export type JsonPrimitive = string | number | boolean | null;
13
+ export type JsonValue =
14
+ | JsonPrimitive
15
+ | { [key: string]: JsonValue }
16
+ | JsonValue[];
17
+
18
+ export type BinaryLike = Uint8Array | ArrayBuffer | ArrayBufferView | string;
19
+
20
+ export interface BundleLike {
21
+ [key: string]: unknown;
22
+ }
23
+
24
+ export interface Rect {
25
+ x: number;
26
+ y: number;
27
+ width: number;
28
+ height: number;
29
+ }
30
+
31
+ export interface Line {
32
+ x1: number;
33
+ y1: number;
34
+ x2: number;
35
+ y2: number;
36
+ }
37
+
38
+ export interface Point {
39
+ x: number;
40
+ y: number;
41
+ }
42
+
43
+ export interface BitmapLike {
44
+ width: number;
45
+ height: number;
46
+ data?: BinaryLike;
47
+ mimeType?: string;
48
+ description?: string;
49
+ meta?: Record<string, unknown>;
50
+ }
51
+
52
+ export interface BluetoothDeviceLike {
53
+ address: string;
54
+ name?: string;
55
+ type?: number;
56
+ bondState?: number;
57
+ }
58
+
59
+ export interface PrinterAddress {
60
+ macAddress: string;
61
+ addressType: AddressType;
62
+ shownName: string;
63
+ }
64
+
65
+ export interface PrinterInfo {
66
+ readonly deviceType: number;
67
+ readonly deviceName: string;
68
+ readonly deviceVersion: string;
69
+ readonly softwareVersion: string;
70
+ readonly deviceAddress: string;
71
+ readonly deviceAddrType: number;
72
+ readonly deviceDPI: number;
73
+ readonly deviceWidth: number;
74
+ readonly manufacturer: string;
75
+ readonly seriesName: string;
76
+ readonly devIntName: string;
77
+ readonly peripheralFlags: number;
78
+ readonly hardwareFlags: number;
79
+ readonly softwareFlags: number;
80
+ }
81
+
82
+ export interface PrinterParam {
83
+ deviceType: number;
84
+ deviceName: string;
85
+ deviceVersion: string;
86
+ softwareVersion: string;
87
+ deviceAddress: string;
88
+ deviceAddrType: number;
89
+ printerDPI: number;
90
+ printerWidth: number;
91
+ printDarkness: number;
92
+ darknessCount: number;
93
+ darknessMinSuggested: number;
94
+ printSpeed: number;
95
+ speedCount: number;
96
+ gapType: number;
97
+ gapLength: number;
98
+ motorMode: number;
99
+ autoPowerOffMins: number;
100
+ language: number;
101
+ supportedGapTypes: number[];
102
+ supportedMotorModes: number[];
103
+ supportedLanguages: number[];
104
+ manufacturer: string;
105
+ seriesName: string;
106
+ devIntName: string;
107
+ peripheralFlags: number;
108
+ hardwareFlags: number;
109
+ softwareFlags: number;
110
+ attributeFlags: number;
111
+ }
112
+
113
+ export interface DiscoveriedPrinter extends PrinterAddress {
114
+ discoveriedType: AddressType;
115
+ rssi: number | null;
116
+ }
117
+
118
+ export interface PrinterDevice {
119
+ port: number;
120
+ connNum: number;
121
+ deviceName?: string;
122
+ deviceAddress?: string;
123
+ deviceIp?: string;
124
+ }
125
+
126
+ export interface PaperInfo {
127
+ state: number;
128
+ gapHeightPixel: number;
129
+ totalHeightPixel: number;
130
+ paperType: number;
131
+ gapHeight: number;
132
+ totalHeight: number;
133
+ paperWidthPixel: number;
134
+ paperWidth: number;
135
+ direction: number;
136
+ tailLengthPixel: number;
137
+ tailLength: number;
138
+ }
139
+
140
+ export interface ColorSupport {
141
+ normalMode: number;
142
+ rbMode: number;
143
+ grayMode: number;
144
+ }
145
+
146
+ export interface QualitySupport {
147
+ highQuality: number;
148
+ highSpeed: number;
149
+ }
150
+
151
+ export interface KeyProperty {
152
+ key: number;
153
+ functionCode: number[];
154
+ }
155
+
156
+ export interface PrinterProperty {
157
+ state: number;
158
+ keyProperty: KeyProperty[];
159
+ }
160
+
161
+ export interface PrinterTimeBean {
162
+ state: number;
163
+ year: number;
164
+ month: number;
165
+ day: number;
166
+ hour: number;
167
+ minute: number;
168
+ second: number;
169
+ }
170
+
171
+ export interface ImageParam {
172
+ data?: Uint8Array;
173
+ channels: number;
174
+ width: number;
175
+ height: number;
176
+ x: number;
177
+ y: number;
178
+ fontSize: number;
179
+ errorCode: number;
180
+ errorInfo: string;
181
+ }
182
+
183
+ export interface ImageDataInfo {
184
+ bitmap?: BitmapLike;
185
+ errorCode: number;
186
+ errorInfo: string;
187
+ }
188
+
189
+ export interface StartJobParameter {
190
+ density: number;
191
+ paperType: number;
192
+ printMode: number;
193
+ color: number;
194
+ quality: number;
195
+ isSetDensity: boolean;
196
+ }
197
+
198
+ export interface DrawParamState {
199
+ [name: string]: unknown;
200
+ }
201
+
202
+ export interface PrintJobOptions {
203
+ density?: number;
204
+ paperType?: number;
205
+ printMode?: number;
206
+ color?: number;
207
+ quality?: number;
208
+ totalQuantity?: number;
209
+ printMultiple?: number;
210
+ epc?: string;
211
+ pageUnit?: "mm" | "px";
212
+ meta?: Record<string, unknown>;
213
+ }
214
+
215
+ export interface PageOptions {
216
+ width: number;
217
+ height: number;
218
+ orientation: number;
219
+ fonts?: string[];
220
+ background?: number;
221
+ printQuantity?: number;
222
+ drawParams?: DrawParamState;
223
+ }
224
+
225
+ export interface LabelTextOptions {
226
+ rotation?: number;
227
+ horizontalAlignment?: number;
228
+ verticalAlignment?: number;
229
+ mode?: number;
230
+ indent?: number;
231
+ scale?: number;
232
+ flags?: boolean[];
233
+ }
234
+
235
+ export interface LabelBarcodeOptions {
236
+ rotation?: number;
237
+ ratio?: number;
238
+ fontSize?: number;
239
+ fontName?: string;
240
+ showText?: boolean;
241
+ threshold?: number;
242
+ alignment?: number;
243
+ quietZone?: number;
244
+ }
245
+
246
+ export interface LabelQrCodeOptions {
247
+ rotation?: number;
248
+ version?: number;
249
+ errorCorrectionLevel?: number;
250
+ margin?: number;
251
+ }
252
+
253
+ export interface LabelGraphOptions {
254
+ rotation?: number;
255
+ lineWidth?: number;
256
+ penAlignment?: number;
257
+ dashPattern?: number[];
258
+ }
259
+
260
+ export interface LabelImageOptions {
261
+ rotation?: number;
262
+ threshold?: number;
263
+ scale?: number;
264
+ actualSize?: boolean;
265
+ }
266
+
267
+ export interface LabelLineOptions {
268
+ lineWidth?: number;
269
+ rotation?: number;
270
+ penAlignment?: number;
271
+ dashPattern?: number[];
272
+ }
273
+
274
+ export interface CanvasCommand {
275
+ kind: string;
276
+ payload: Record<string, unknown>;
277
+ }
278
+
279
+ export interface PrintPage {
280
+ width: number;
281
+ height: number;
282
+ orientation: number;
283
+ fonts: string[];
284
+ background: number;
285
+ printQuantity: number;
286
+ drawParams: DrawParamState;
287
+ commands: CanvasCommand[];
288
+ }
289
+
290
+ export interface PrintDocument {
291
+ schema: "jc-printer-sdk-ts/print-document@1";
292
+ unit: "mm" | "px";
293
+ job: PrintJobOptions;
294
+ pages: PrintPage[];
295
+ }
296
+
297
+ export interface CommitPayload {
298
+ jsonPages: string[];
299
+ infoPages: string[];
300
+ }
301
+
302
+ export interface PrintCallback {
303
+ onProgress(
304
+ pageIndex: number,
305
+ quantityIndex: number,
306
+ meta: Record<string, unknown>,
307
+ ): void;
308
+ onError(errorCode: number, printState?: number): void;
309
+ onBufferFree(pageIndex: number, bufferSize: number): void;
310
+ onCancelJob(isSuccess: boolean): void;
311
+ }
312
+
313
+ export interface PrinterSdkCallback {
314
+ onConnectSuccess(address: string, type: number): void;
315
+ onDisConnect(): void;
316
+ onElectricityChange(powerLevel: number): void;
317
+ onCoverStatus(coverStatus: number): void;
318
+ onPaperStatus(paperStatus: number): void;
319
+ onRfidReadStatus(rfidReadStatus: number): void;
320
+ onRibbonStatus(ribbonStatus: number): void;
321
+ onRibbonRfidReadStatus(ribbonRfidReadStatus: number): void;
322
+ onFirmErrors(): void;
323
+ }
324
+
325
+ export interface ScanCallback {
326
+ onScan(printerDevice: PrinterDevice): void;
327
+ onFinish(): void;
328
+ }
329
+
330
+ export interface IDzPrinterCallback {
331
+ onProgressInfo(info: ProgressInfo, payload: unknown): void;
332
+ onStateChange(address: PrinterAddress, state: PrinterState): void;
333
+ onPrintProgress(
334
+ address: PrinterAddress,
335
+ job: unknown,
336
+ progress: PrintProgress,
337
+ payload: unknown,
338
+ ): void;
339
+ onPrinterDiscovery(address: PrinterAddress, info: PrinterInfo): void;
340
+ }
341
+
342
+ export interface IDzPrinter2Callback extends IDzPrinterCallback {
343
+ onBondProgress(address: PrinterAddress, progress: GeneralProgress): void;
344
+ onSetParamProgress(address: PrinterAddress, progress: GeneralProgress): void;
345
+ onSendDataProgress(packageData: unknown, progress: GeneralProgress): void;
346
+ onPrinterParamChanged(
347
+ address: PrinterAddress,
348
+ previous: PrinterParam,
349
+ next: PrinterParam,
350
+ ): void;
351
+ onDeviceDiscovery(progress: GeneralProgress, payload: unknown): void;
352
+ }
353
+
354
+ export interface ActionCallback {
355
+ onProgress(progress: GeneralProgress, payload: unknown): void;
356
+ }
357
+
358
+ export interface ActionWithResponseCallback extends ActionCallback {
359
+ onResponse(response: Uint8Array): void;
360
+ }
361
+
362
+ export interface IAtBitmapDocument {
363
+ schema: "jc-printer-sdk-ts/at-bitmap@1";
364
+ unit: "px";
365
+ job: PrintJobOptions;
366
+ pages: PrintPage[];
367
+ }
368
+
369
+ export interface LegacyPrintParams {
370
+ [name: string]: unknown;
371
+ }
372
+
373
+ export interface LegacyPrintParamValues {
374
+ [name: string]: number | string;
375
+ }
376
+
377
+ export type {
378
+ AddressType,
379
+ GeneralProgress,
380
+ PrintFailReason,
381
+ PrintParamName,
382
+ PrintProgress,
383
+ ProgressInfo,
384
+ PrinterState,
385
+ };