@thermal-print/escpos 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.
Files changed (42) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +193 -0
  3. package/dist/command-adapters/escbematech-adapter.d.ts +30 -0
  4. package/dist/command-adapters/escbematech-adapter.d.ts.map +1 -0
  5. package/dist/command-adapters/escbematech-adapter.js +175 -0
  6. package/dist/command-adapters/escpos-adapter.d.ts +25 -0
  7. package/dist/command-adapters/escpos-adapter.d.ts.map +1 -0
  8. package/dist/command-adapters/escpos-adapter.js +144 -0
  9. package/dist/command-adapters/index.d.ts +11 -0
  10. package/dist/command-adapters/index.d.ts.map +1 -0
  11. package/dist/command-adapters/index.js +14 -0
  12. package/dist/command-adapters/types.d.ts +78 -0
  13. package/dist/command-adapters/types.d.ts.map +1 -0
  14. package/dist/command-adapters/types.js +8 -0
  15. package/dist/commands/escbematech.d.ts +867 -0
  16. package/dist/commands/escbematech.d.ts.map +1 -0
  17. package/dist/commands/escbematech.js +1387 -0
  18. package/dist/commands/escpos.d.ts +582 -0
  19. package/dist/commands/escpos.d.ts.map +1 -0
  20. package/dist/commands/escpos.js +1048 -0
  21. package/dist/converter.d.ts +47 -0
  22. package/dist/converter.d.ts.map +1 -0
  23. package/dist/converter.js +92 -0
  24. package/dist/encodings/cp860.d.ts +25 -0
  25. package/dist/encodings/cp860.d.ts.map +1 -0
  26. package/dist/encodings/cp860.js +187 -0
  27. package/dist/generator.d.ts +118 -0
  28. package/dist/generator.d.ts.map +1 -0
  29. package/dist/generator.js +383 -0
  30. package/dist/index.d.ts +17 -0
  31. package/dist/index.d.ts.map +1 -0
  32. package/dist/index.js +55 -0
  33. package/dist/styles.d.ts +72 -0
  34. package/dist/styles.d.ts.map +1 -0
  35. package/dist/styles.js +210 -0
  36. package/dist/traverser.d.ts +60 -0
  37. package/dist/traverser.d.ts.map +1 -0
  38. package/dist/traverser.js +285 -0
  39. package/dist/types.d.ts +21 -0
  40. package/dist/types.d.ts.map +1 -0
  41. package/dist/types.js +5 -0
  42. package/package.json +31 -0
@@ -0,0 +1,582 @@
1
+ /**
2
+ * ESC/POS Command Set
3
+ *
4
+ * Comprehensive ESC/POS thermal printer command bytes for MP-4200 TH.
5
+ * Reference: ESC/POS Command Manual
6
+ *
7
+ * This file contains all documented ESC/POS commands organized by category.
8
+ * Commands are compatible with standard ESC/POS thermal printers.
9
+ */
10
+ export declare const HT = 9;
11
+ export declare const LF = 10;
12
+ export declare const FF = 12;
13
+ export declare const CR = 13;
14
+ export declare const DLE = 16;
15
+ export declare const CAN = 24;
16
+ export declare const ESC = 27;
17
+ export declare const FS = 28;
18
+ export declare const GS = 29;
19
+ export declare const INIT: number[];
20
+ export declare const ALIGN_LEFT: number[];
21
+ export declare const ALIGN_CENTER: number[];
22
+ export declare const ALIGN_RIGHT: number[];
23
+ export declare const BOLD_ON: number[];
24
+ export declare const BOLD_OFF: number[];
25
+ export declare const UNDERLINE_ON: number[];
26
+ export declare const UNDERLINE_OFF: number[];
27
+ /**
28
+ * Calculate character size using ESC ! command (compatible with more printers)
29
+ * ESC ! only supports up to 2x2 character size
30
+ * @param width - Width multiplier (1 or 2)
31
+ * @param height - Height multiplier (1 or 2)
32
+ * @param bold - Whether text should be bold (optional, default: false)
33
+ * @returns ESC/POS ESC ! n command bytes
34
+ */
35
+ export declare const calculateCharacterSize: (width: number, height: number, bold?: boolean) => number[];
36
+ export declare const setLineSpacing: (dots: number) => number[];
37
+ export declare const LINE_SPACING_DEFAULT: number[];
38
+ export declare const LINE_FEED: number[];
39
+ export declare const feedLines: (lines: number) => number[];
40
+ export declare const CUT_FULL: number[];
41
+ export declare const CUT_PARTIAL: number[];
42
+ export declare const cutWithFeed: (lines: number) => number[];
43
+ export declare const CODEPAGE_CP437: number[];
44
+ export declare const CODEPAGE_CP860: number[];
45
+ export declare const CODEPAGE_WPC1252: number[];
46
+ /**
47
+ * Generate QR Code command
48
+ * @param data - QR code data (URL or text)
49
+ * @param size - QR code module size (1-16, default 6)
50
+ * @returns ESC/POS command bytes
51
+ */
52
+ export declare const generateQRCode: (data: string, size?: number) => number[];
53
+ /**
54
+ * Generate raster image command (GS v 0)
55
+ * @param imageData - Monochrome bitmap data (1 bit per pixel, 1=black, 0=white)
56
+ * @param width - Image width in pixels
57
+ * @param height - Image height in pixels
58
+ * @returns ESC/POS command bytes
59
+ */
60
+ export declare const generateRasterImage: (imageData: number[], width: number, height: number) => number[];
61
+ /**
62
+ * Text encoding helper
63
+ * Converts string to CP860 byte array for Brazilian Portuguese thermal printers
64
+ */
65
+ export declare const encodeText: (text: string) => number[];
66
+ /**
67
+ * DLE EOT n - Transmit real-time status
68
+ * n = 1: Transmit printer status
69
+ * n = 2: Transmit offline status
70
+ * n = 3: Transmit error status
71
+ * n = 4: Transmit paper roll sensor status
72
+ */
73
+ export declare const transmitRealtimeStatus: (n: 1 | 2 | 3 | 4) => number[];
74
+ /**
75
+ * DLE ENQ n - Real-time request to printer
76
+ * n = 1: Recover from error and restart printing
77
+ * n = 2: Clear buffer
78
+ */
79
+ export declare const realtimeRequest: (n: 1 | 2) => number[];
80
+ /**
81
+ * DLE DC4 fn a b - Generate pulse in real-time
82
+ * fn = 1: Generate pulse
83
+ * a = drawer (0 or 1)
84
+ * b = pulse time
85
+ */
86
+ export declare const realtimePulse: (drawer: 0 | 1, pulseTime: number) => number[];
87
+ /**
88
+ * ESC $ nL nH - Set absolute print position
89
+ * Position = ((nH × 256) + nL) × (horizontal motion unit)
90
+ */
91
+ export declare const setAbsolutePosition: (position: number) => number[];
92
+ /**
93
+ * ESC \ nL nH - Set relative print position
94
+ * Relative position = ((nH × 256) + nL) × (horizontal motion unit)
95
+ * Supports negative values (two's complement)
96
+ */
97
+ export declare const setRelativePosition: (position: number) => number[];
98
+ /**
99
+ * ESC SP n - Set right-side character spacing
100
+ * Range: 0 ≤ n ≤ 255
101
+ * Spacing = n × (horizontal motion unit)
102
+ */
103
+ export declare const setCharacterSpacing: (dots: number) => number[];
104
+ /**
105
+ * ESC D n1...nk NUL - Set horizontal tab positions
106
+ * n1-nk: Tab positions (1-255), up to 32 positions
107
+ * Must be in ascending order, terminated with NUL
108
+ */
109
+ export declare const setTabPositions: (positions: number[]) => number[];
110
+ /**
111
+ * ESC D NUL - Cancel all horizontal tab positions
112
+ */
113
+ export declare const CLEAR_TABS: number[];
114
+ /**
115
+ * ESC G n - Turn double-strike mode on/off
116
+ * n = 0 or 48: Turn off double-strike mode
117
+ * n = 1 or 49: Turn on double-strike mode
118
+ */
119
+ export declare const DOUBLE_STRIKE_ON: number[];
120
+ export declare const DOUBLE_STRIKE_OFF: number[];
121
+ /**
122
+ * Character font selection
123
+ */
124
+ export declare enum CharacterFont {
125
+ FONT_A = 0,// 12×24 dots (default)
126
+ FONT_B = 1,// 9×17 dots
127
+ FONT_C = 2
128
+ }
129
+ /**
130
+ * ESC M n - Select character font
131
+ * n = 0 or 48: Font A (12×24)
132
+ * n = 1 or 49: Font B (9×17)
133
+ * n = 2 or 50: Font C (printer dependent)
134
+ */
135
+ export declare const selectFont: (font: CharacterFont) => number[];
136
+ /**
137
+ * ESC U - Select Font D (Phoenix printers only)
138
+ * Font D: 16×24 dots
139
+ * Warning: This is a Phoenix-specific feature and may not work on all printers
140
+ */
141
+ export declare const SELECT_FONT_D: number[];
142
+ /**
143
+ * ESC V n - Turn 90° clockwise rotation mode on/off
144
+ * n = 0 or 48: Turn off 90° clockwise rotation mode
145
+ * n = 1 or 49: Turn on 90° clockwise rotation mode
146
+ */
147
+ export declare const ROTATE_90_ON: number[];
148
+ export declare const ROTATE_90_OFF: number[];
149
+ /**
150
+ * ESC { n - Turn upside-down printing mode on/off
151
+ * n = 0 or 48: Turn off upside-down printing mode
152
+ * n = 1 or 49: Turn on upside-down printing mode
153
+ */
154
+ export declare const UPSIDE_DOWN_ON: number[];
155
+ export declare const UPSIDE_DOWN_OFF: number[];
156
+ /**
157
+ * ESC - n - Turn underline mode on/off with thickness selection
158
+ * n = 0 or 48: Turn off underline mode
159
+ * n = 1 or 49: Turn on underline mode (1-dot thick)
160
+ * n = 2 or 50: Turn on underline mode (2-dots thick)
161
+ */
162
+ export declare const UNDERLINE_1DOT: number[];
163
+ export declare const UNDERLINE_2DOT: number[];
164
+ /**
165
+ * ESC 2 - Select default line spacing
166
+ * Sets line spacing to approximately 4.23mm (1/6 inch)
167
+ */
168
+ export declare const LINE_SPACING_DEFAULT_ALT: number[];
169
+ /**
170
+ * ESC J n - Print and feed paper
171
+ * Range: 0 ≤ n ≤ 255
172
+ * Feed amount = n × (vertical motion unit)
173
+ */
174
+ export declare const printAndFeed: (dots: number) => number[];
175
+ /**
176
+ * ESC K n - Print and reverse feed
177
+ * Range: 0 ≤ n ≤ 255
178
+ * Reverse feed amount = n × (vertical motion unit)
179
+ */
180
+ export declare const printAndReverseFeed: (dots: number) => number[];
181
+ /**
182
+ * ESC i - Full cut
183
+ * Executes a full cut (cuts paper completely)
184
+ */
185
+ export declare const CUT_FULL_ESC: number[];
186
+ /**
187
+ * ESC m - Partial cut
188
+ * Executes a partial cut (leaves connection point)
189
+ */
190
+ export declare const CUT_PARTIAL_ESC: number[];
191
+ /**
192
+ * GS V m n - Cut paper and feed
193
+ * m = 65 (0x41): Feed then full cut
194
+ * m = 66 (0x42): Feed then partial cut
195
+ * n = feed amount before cut
196
+ */
197
+ export declare const cutAndFeedFull: (dots: number) => number[];
198
+ export declare const cutAndFeedPartial: (dots: number) => number[];
199
+ /**
200
+ * ESC = n - Select peripheral device
201
+ * n = 0: Disabled
202
+ * n = 1: Enabled
203
+ */
204
+ export declare const selectPeripheral: (enabled: boolean) => number[];
205
+ /**
206
+ * ESC p m t1 t2 - Generate pulse
207
+ * m = 0 or 48: Drawer kick-out connector pin 2
208
+ * m = 1 or 49: Drawer kick-out connector pin 5
209
+ * t1 = ON time (0-255, units of 100ms)
210
+ * t2 = OFF time (0-255, units of 100ms)
211
+ */
212
+ export declare const generatePulse: (connector: 0 | 1, onTime: number, offTime: number) => number[];
213
+ /**
214
+ * ESC c 3 n - Select paper sensor(s) to output paper-end signals
215
+ * n is a bitmask for sensor selection
216
+ */
217
+ export declare const selectPaperSensorOutput: (sensorMask: number) => number[];
218
+ /**
219
+ * ESC c 4 n - Select paper sensor(s) to stop printing
220
+ * n is a bitmask for sensor selection
221
+ */
222
+ export declare const selectPaperSensorStop: (sensorMask: number) => number[];
223
+ /**
224
+ * ESC c 5 n - Enable/disable panel buttons
225
+ * n = 0: Enable panel buttons
226
+ * n = 1: Disable panel buttons
227
+ */
228
+ export declare const enablePanelButtons: () => number[];
229
+ export declare const disablePanelButtons: () => number[];
230
+ /**
231
+ * International character set selection
232
+ */
233
+ export declare enum InternationalCharset {
234
+ USA = 0,
235
+ FRANCE = 1,
236
+ GERMANY = 2,
237
+ UK = 3,
238
+ DENMARK_I = 4,
239
+ SWEDEN = 5,
240
+ ITALY = 6,
241
+ SPAIN_I = 7,
242
+ JAPAN = 8,
243
+ NORWAY = 9,
244
+ DENMARK_II = 10,
245
+ SPAIN_II = 11,
246
+ LATIN_AMERICA = 12,
247
+ KOREA = 13
248
+ }
249
+ /**
250
+ * ESC R n - Select international character set
251
+ */
252
+ export declare const selectInternationalCharset: (charset: InternationalCharset) => number[];
253
+ /**
254
+ * Extended code page enumeration
255
+ */
256
+ export declare enum CodePage {
257
+ CP437 = 0,// USA, Standard Europe
258
+ CP850 = 2,// Multilingual
259
+ CP860 = 3,// Portuguese
260
+ CP863 = 4,// Canadian-French
261
+ CP865 = 5,// Nordic
262
+ CP851 = 11,// Greek
263
+ CP853 = 12,// Turkish
264
+ CP857 = 13,// Turkish
265
+ CP737 = 14,// Greek
266
+ CP928 = 16,// Greek
267
+ CP866 = 17,// Cyrillic #2
268
+ CP852 = 18,// Latin 2
269
+ CP858 = 19,// Euro
270
+ WPC1252 = 16
271
+ }
272
+ /**
273
+ * ESC t n - Select character code table
274
+ */
275
+ export declare const setCodePage: (page: CodePage) => number[];
276
+ /**
277
+ * Bit image modes for ESC *
278
+ */
279
+ export declare enum BitImageMode {
280
+ MODE_8_SINGLE = 0,// 8-dot single-density (67 DPI)
281
+ MODE_8_DOUBLE = 1,// 8-dot double-density (100 DPI)
282
+ MODE_24_SINGLE = 32,// 24-dot single-density (203 DPI)
283
+ MODE_24_DOUBLE = 33
284
+ }
285
+ /**
286
+ * ESC * m nL nH d1...dk - Print bit image
287
+ * m: Bit image mode
288
+ * nL, nH: Number of data columns (nL + nH × 256)
289
+ * d1...dk: Bit image data
290
+ */
291
+ export declare const printBitImage: (mode: BitImageMode, width: number, data: number[]) => number[];
292
+ /**
293
+ * GS * x y d1...dk - Define downloaded bit image
294
+ * x: Number of bytes in horizontal direction (1 ≤ x ≤ 255)
295
+ * y: Number of bytes in vertical direction (1 ≤ y ≤ 48)
296
+ * Horizontal dots = x × 8
297
+ * Vertical dots = y × 8
298
+ */
299
+ export declare const defineDownloadedBitImage: (x: number, y: number, data: number[]) => number[];
300
+ /**
301
+ * Downloaded image print modes
302
+ */
303
+ export declare enum DownloadedImageMode {
304
+ NORMAL = 0,// Normal (100% × 100%)
305
+ DOUBLE_WIDTH = 1,// Double width (200% × 100%)
306
+ DOUBLE_HEIGHT = 2,// Double height (100% × 200%)
307
+ QUADRUPLE = 3
308
+ }
309
+ /**
310
+ * GS / m - Print downloaded bit image
311
+ * m: Print mode (0-3)
312
+ */
313
+ export declare const printDownloadedBitImage: (mode: DownloadedImageMode) => number[];
314
+ /**
315
+ * FS p n m - Print NV bit image
316
+ * n: NV bit image number (1-255)
317
+ * m: Print mode (0-3, same as DownloadedImageMode)
318
+ */
319
+ export declare const printNVBitImage: (imageNumber: number, mode: DownloadedImageMode) => number[];
320
+ /**
321
+ * FS q n [xL xH yL yH d1...dk]1...n - Define NV bit image
322
+ * n: Number of NV bit images to define (1-255)
323
+ * For each image:
324
+ * xL, xH: Width in bytes ((xH × 256 + xL) × 8 dots)
325
+ * yL, yH: Height in bytes ((yH × 256 + yL) × 8 dots)
326
+ * d1...dk: Bit image data
327
+ */
328
+ export declare const defineNVBitImage: (images: Array<{
329
+ width: number;
330
+ height: number;
331
+ data: number[];
332
+ }>) => number[];
333
+ /**
334
+ * Barcode HRI (Human Readable Interpretation) position
335
+ */
336
+ export declare enum BarcodeHRIPosition {
337
+ NOT_PRINTED = 0,// HRI not printed
338
+ ABOVE = 1,// HRI above barcode
339
+ BELOW = 2,// HRI below barcode
340
+ BOTH = 3
341
+ }
342
+ /**
343
+ * GS H n - Select HRI character print position
344
+ */
345
+ export declare const setBarcodeHRI: (position: BarcodeHRIPosition) => number[];
346
+ /**
347
+ * GS f n - Select font for HRI characters
348
+ * n = 0 or 48: Font A
349
+ * n = 1 or 49: Font B
350
+ */
351
+ export declare const setBarcodeFont: (fontB: boolean) => number[];
352
+ /**
353
+ * GS h n - Set barcode height
354
+ * Range: 1 ≤ n ≤ 255 (in dots)
355
+ * Default: 162
356
+ */
357
+ export declare const setBarcodeHeight: (height: number) => number[];
358
+ /**
359
+ * GS w n - Set barcode width
360
+ * Range: 2 ≤ n ≤ 6 (module width in dots)
361
+ * Default: 3
362
+ */
363
+ export declare const setBarcodeWidth: (width: number) => number[];
364
+ /**
365
+ * Barcode symbologies
366
+ */
367
+ export declare enum BarcodeType {
368
+ UPC_A = 0,// UPC-A (11-12 digits)
369
+ UPC_E = 1,// UPC-E (6-8 digits)
370
+ EAN13 = 2,// EAN-13 (12-13 digits)
371
+ EAN8 = 3,// EAN-8 (7-8 digits)
372
+ CODE39 = 4,// CODE39 (variable length)
373
+ ITF = 5,// ITF (Interleaved 2 of 5, variable even length)
374
+ CODABAR = 6,// CODABAR (variable length)
375
+ CODE93 = 72,// CODE93 (variable length)
376
+ CODE128 = 73
377
+ }
378
+ /**
379
+ * GS k m d1...dk NUL - Print barcode (NUL-terminated)
380
+ * For barcode types 0-6 (UPC-A, UPC-E, EAN-13, EAN-8, CODE39, ITF, CODABAR)
381
+ */
382
+ export declare const printBarcode: (type: BarcodeType, data: string) => number[];
383
+ /**
384
+ * GS k m n d1...dn - Print barcode (length-specified)
385
+ * For barcode types 65-73 (with length prefix)
386
+ */
387
+ export declare const printBarcodeWithLength: (type: number, data: string) => number[];
388
+ /**
389
+ * Print UPC-A barcode
390
+ * Requires 11-12 digits
391
+ */
392
+ export declare const printBarcodeUPCA: (data: string) => number[];
393
+ /**
394
+ * Print UPC-E barcode
395
+ * Requires 6-8 digits
396
+ */
397
+ export declare const printBarcodeUPCE: (data: string) => number[];
398
+ /**
399
+ * Print EAN-13 barcode
400
+ * Requires 12-13 digits
401
+ */
402
+ export declare const printBarcodeEAN13: (data: string) => number[];
403
+ /**
404
+ * Print EAN-8 barcode
405
+ * Requires 7-8 digits
406
+ */
407
+ export declare const printBarcodeEAN8: (data: string) => number[];
408
+ /**
409
+ * Print CODE39 barcode
410
+ * Supports: 0-9, A-Z, space, and symbols ($ % + - . /)
411
+ */
412
+ export declare const printBarcodeCODE39: (data: string) => number[];
413
+ /**
414
+ * Print ITF barcode (Interleaved 2 of 5)
415
+ * Requires even number of digits
416
+ */
417
+ export declare const printBarcodeITF: (data: string) => number[];
418
+ /**
419
+ * Print CODABAR barcode
420
+ * Supports: 0-9, A-D, and symbols ($ + - . / :)
421
+ */
422
+ export declare const printBarcodeCODABAR: (data: string) => number[];
423
+ /**
424
+ * Print CODE93 barcode
425
+ * Supports all ASCII characters (0-127)
426
+ */
427
+ export declare const printBarcodeCODE93: (data: string) => number[];
428
+ /**
429
+ * Print CODE128 barcode
430
+ * Supports all ASCII characters (0-127)
431
+ */
432
+ export declare const printBarcodeCODE128: (data: string) => number[];
433
+ /**
434
+ * GS ( k pL pH cn fn [parameters] - PDF417 commands
435
+ * cn = 0x30 (function code 48 for PDF417)
436
+ */
437
+ /**
438
+ * Set PDF417 number of columns
439
+ * fn = 0x41, n = number of columns (0 or 1-30)
440
+ */
441
+ export declare const setPDF417Columns: (columns: number) => number[];
442
+ /**
443
+ * Set PDF417 number of rows
444
+ * fn = 0x42, n = number of rows (0 or 3-90)
445
+ */
446
+ export declare const setPDF417Rows: (rows: number) => number[];
447
+ /**
448
+ * Set PDF417 module width
449
+ * fn = 0x43, n = module width (2-8 dots)
450
+ */
451
+ export declare const setPDF417Width: (width: number) => number[];
452
+ /**
453
+ * Set PDF417 row height
454
+ * fn = 0x44, n = row height (2-8 dots)
455
+ */
456
+ export declare const setPDF417RowHeight: (height: number) => number[];
457
+ /**
458
+ * Set PDF417 error correction level
459
+ * fn = 0x45, m = 48 (standard mode), n = level (0-8)
460
+ */
461
+ export declare const setPDF417ErrorCorrection: (level: number) => number[];
462
+ /**
463
+ * Store PDF417 data
464
+ * fn = 0x50, m = 48 (standard mode), followed by data
465
+ */
466
+ export declare const storePDF417Data: (data: string) => number[];
467
+ /**
468
+ * Print PDF417 symbol
469
+ * fn = 0x51, m = 48 (standard mode)
470
+ */
471
+ export declare const printPDF417: () => number[];
472
+ /**
473
+ * Generate complete PDF417 barcode
474
+ * Convenience function that combines all PDF417 commands
475
+ */
476
+ export declare const generatePDF417: (data: string, options?: {
477
+ columns?: number;
478
+ rows?: number;
479
+ width?: number;
480
+ rowHeight?: number;
481
+ errorCorrection?: number;
482
+ }) => number[];
483
+ /**
484
+ * GS ! n - Select character size
485
+ * Supports 1-8x width and height multipliers
486
+ * Bits 0-2: Width (0-7 for 1x-8x)
487
+ * Bits 4-6: Height (0-7 for 1x-8x)
488
+ */
489
+ export declare const selectCharacterSize: (widthMultiplier: number, heightMultiplier: number) => number[];
490
+ /**
491
+ * GS B n - Turn white/black reverse printing mode on/off
492
+ * n = 0 or 48: Turn off white/black reverse mode
493
+ * n = 1 or 49: Turn on white/black reverse mode
494
+ */
495
+ export declare const REVERSE_PRINT_ON: number[];
496
+ export declare const REVERSE_PRINT_OFF: number[];
497
+ /**
498
+ * GS ( N pL pH fn n - Select character effects
499
+ * fn = 48: Set character color
500
+ * fn = 49: Set character smoothing
501
+ */
502
+ export declare const setCharacterColor: (color: 1 | 2) => number[];
503
+ export declare const setCharacterSmoothing: (enabled: boolean) => number[];
504
+ /**
505
+ * GS a n - Enable/disable Automatic Status Back (ASB)
506
+ * n is a bitmask for status types to enable
507
+ */
508
+ export declare const enableASB: (statusBits: number) => number[];
509
+ export declare const disableASB: () => number[];
510
+ /**
511
+ * Printer ID types for GS I command
512
+ */
513
+ export declare enum PrinterIDType {
514
+ PRINTER_MODEL = 1,// Printer model ID
515
+ TYPE_ID = 2,// Type ID
516
+ ROM_VERSION = 65,// ROM version ID
517
+ FONT_TYPE = 66,// Font type ID (Japanese)
518
+ MANUFACTURER = 67
519
+ }
520
+ /**
521
+ * GS I n - Transmit printer ID
522
+ */
523
+ export declare const requestPrinterID: (type: PrinterIDType) => number[];
524
+ /**
525
+ * Status types for GS r command
526
+ */
527
+ export declare enum StatusType {
528
+ PAPER_SENSOR = 1,// Paper sensor status
529
+ DRAWER_SENSOR = 2,// Drawer kick-out connector status
530
+ INK_SENSOR = 4,// Ink status (for special models)
531
+ PAPER_ROLL_SENSOR = 18
532
+ }
533
+ /**
534
+ * GS r n - Transmit status
535
+ */
536
+ export declare const requestStatus: (type: StatusType) => number[];
537
+ /**
538
+ * GS L nL nH - Set left margin
539
+ * Left margin = ((nH × 256) + nL) × (horizontal motion unit)
540
+ */
541
+ export declare const setLeftMargin: (dots: number) => number[];
542
+ /**
543
+ * GS W nL nH - Set printing area width
544
+ * Width = ((nH × 256) + nL) × (horizontal motion unit)
545
+ */
546
+ export declare const setPrintingAreaWidth: (dots: number) => number[];
547
+ /**
548
+ * GS : - Start/end macro definition
549
+ * First call starts macro definition
550
+ * Second call ends macro definition
551
+ */
552
+ export declare const START_MACRO: number[];
553
+ export declare const END_MACRO: number[];
554
+ /**
555
+ * GS ^ r t m - Execute macro
556
+ * r: Number of times to execute macro (0-255)
557
+ * t: Waiting time between executions (0-255, units of 100ms)
558
+ * m: Macro execution mode (0 or 1)
559
+ */
560
+ export declare const executeMacro: (repeatCount: number, waitTime: number, mode: 0 | 1) => number[];
561
+ /**
562
+ * ESC U n - Turn unidirectional printing mode on/off
563
+ * n = 0 or 48: Turn off unidirectional printing
564
+ * n = 1 or 49: Turn on unidirectional printing
565
+ */
566
+ export declare const UNIDIRECTIONAL_ON: number[];
567
+ export declare const UNIDIRECTIONAL_OFF: number[];
568
+ /**
569
+ * CAN - Cancel print data in page mode
570
+ * Deletes all print data in the current printable area
571
+ */
572
+ export declare const CANCEL: number[];
573
+ /**
574
+ * ESC ( A pL pH n m r t - Execute test print
575
+ * pL pH = 2 (fixed)
576
+ * n = paper pattern (1-3)
577
+ * m = mode (0-2)
578
+ * r = number of times to repeat
579
+ * t = interval time
580
+ */
581
+ export declare const executeTestPrint: (pattern: number, mode: number, repeat: number) => number[];
582
+ //# sourceMappingURL=escpos.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"escpos.d.ts","sourceRoot":"","sources":["../../src/commands/escpos.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,eAAO,MAAM,EAAE,IAAO,CAAC;AACvB,eAAO,MAAM,EAAE,KAAO,CAAC;AACvB,eAAO,MAAM,EAAE,KAAO,CAAC;AACvB,eAAO,MAAM,EAAE,KAAO,CAAC;AACvB,eAAO,MAAM,GAAG,KAAO,CAAC;AACxB,eAAO,MAAM,GAAG,KAAO,CAAC;AACxB,eAAO,MAAM,GAAG,KAAO,CAAC;AACxB,eAAO,MAAM,EAAE,KAAO,CAAC;AACvB,eAAO,MAAM,EAAE,KAAO,CAAC;AAIvB,eAAO,MAAM,IAAI,UAAc,CAAC;AAIhC,eAAO,MAAM,UAAU,UAAoB,CAAC;AAC5C,eAAO,MAAM,YAAY,UAAoB,CAAC;AAC9C,eAAO,MAAM,WAAW,UAAoB,CAAC;AAI7C,eAAO,MAAM,OAAO,UAAoB,CAAC;AACzC,eAAO,MAAM,QAAQ,UAAoB,CAAC;AAG1C,eAAO,MAAM,YAAY,UAAoB,CAAC;AAC9C,eAAO,MAAM,aAAa,UAAoB,CAAC;AAE/C;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,GACjC,OAAO,MAAM,EACb,QAAQ,MAAM,EACd,OAAM,OAAe,KACpB,MAAM,EA6BR,CAAC;AAKF,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,KAAG,MAAM,EAGnD,CAAC;AAGF,eAAO,MAAM,oBAAoB,UAAkB,CAAC;AAIpD,eAAO,MAAM,SAAS,UAAO,CAAC;AAG9B,eAAO,MAAM,SAAS,GAAI,OAAO,MAAM,KAAG,MAAM,EAAwB,CAAC;AAIzE,eAAO,MAAM,QAAQ,UAAmB,CAAC;AACzC,eAAO,MAAM,WAAW,UAAmB,CAAC;AAE5C,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,KAAG,MAAM,EAA6B,CAAC;AAKhF,eAAO,MAAM,cAAc,UAAoB,CAAC;AAChD,eAAO,MAAM,cAAc,UAAoB,CAAC;AAChD,eAAO,MAAM,gBAAgB,UAAoB,CAAC;AAMlD;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,EAAE,aAAQ,KAAG,MAAM,EAyB7D,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,GAC9B,WAAW,MAAM,EAAE,EACnB,OAAO,MAAM,EACb,QAAQ,MAAM,KACb,MAAM,EA0BR,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,KAAG,MAAM,EAI/C,CAAC;AAMF;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,GAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAG,MAAM,EAI/D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,GAAG,CAAC,GAAG,CAAC,KAAG,MAAM,EAAoB,CAAC;AAEtE;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,WAAW,MAAM,KAAG,MAAM,EAMtE,CAAC;AAMF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,UAAU,MAAM,KAAG,MAAM,EAI5D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAI,UAAU,MAAM,KAAG,MAAM,EAI5D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,KAAG,MAAM,EAIxD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,WAAW,MAAM,EAAE,KAAG,MAAM,EAM3D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,UAAoB,CAAC;AAM5C;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,UAAoB,CAAC;AAClD,eAAO,MAAM,iBAAiB,UAAoB,CAAC;AAEnD;;GAEG;AACH,oBAAY,aAAa;IACvB,MAAM,IAAI,CAAE,uBAAuB;IACnC,MAAM,IAAI,CAAE,YAAY;IACxB,MAAM,IAAI;CACX;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAI,MAAM,aAAa,KAAG,MAAM,EAAuB,CAAC;AAE/E;;;;GAIG;AACH,eAAO,MAAM,aAAa,UAAc,CAAC;AAEzC;;;;GAIG;AACH,eAAO,MAAM,YAAY,UAAoB,CAAC;AAC9C,eAAO,MAAM,aAAa,UAAoB,CAAC;AAE/C;;;;GAIG;AACH,eAAO,MAAM,cAAc,UAAoB,CAAC;AAChD,eAAO,MAAM,eAAe,UAAoB,CAAC;AAEjD;;;;;GAKG;AACH,eAAO,MAAM,cAAc,UAAoB,CAAC;AAChD,eAAO,MAAM,cAAc,UAAoB,CAAC;AAMhD;;;GAGG;AACH,eAAO,MAAM,wBAAwB,UAAmB,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,KAAG,MAAM,EAIjD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,KAAG,MAAM,EAIxD,CAAC;AAMF;;;GAGG;AACH,eAAO,MAAM,YAAY,UAAc,CAAC;AAExC;;;GAGG;AACH,eAAO,MAAM,eAAe,UAAc,CAAC;AAE3C;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,KAAG,MAAM,EAKnD,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,KAAG,MAAM,EAKtD,CAAC;AAMF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,SAAS,OAAO,KAAG,MAAM,EAIzD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,GACxB,WAAW,CAAC,GAAG,CAAC,EAChB,QAAQ,MAAM,EACd,SAAS,MAAM,KACd,MAAM,EAMR,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,GAAI,YAAY,MAAM,KAAG,MAAM,EAKlE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,YAAY,MAAM,KAAG,MAAM,EAKhE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,QAAO,MAAM,EAA6B,CAAC;AAC1E,eAAO,MAAM,mBAAmB,QAAO,MAAM,EAA6B,CAAC;AAM3E;;GAEG;AACH,oBAAY,oBAAoB;IAC9B,GAAG,IAAI;IACP,MAAM,IAAI;IACV,OAAO,IAAI;IACX,EAAE,IAAI;IACN,SAAS,IAAI;IACb,MAAM,IAAI;IACV,KAAK,IAAI;IACT,OAAO,IAAI;IACX,KAAK,IAAI;IACT,MAAM,IAAI;IACV,UAAU,KAAK;IACf,QAAQ,KAAK;IACb,aAAa,KAAK;IAClB,KAAK,KAAK;CACX;AAED;;GAEG;AACH,eAAO,MAAM,0BAA0B,GACrC,SAAS,oBAAoB,KAC5B,MAAM,EAA0B,CAAC;AAEpC;;GAEG;AACH,oBAAY,QAAQ;IAClB,KAAK,IAAI,CAAE,uBAAuB;IAClC,KAAK,IAAI,CAAE,eAAe;IAC1B,KAAK,IAAI,CAAE,aAAa;IACxB,KAAK,IAAI,CAAE,kBAAkB;IAC7B,KAAK,IAAI,CAAE,SAAS;IACpB,KAAK,KAAK,CAAE,QAAQ;IACpB,KAAK,KAAK,CAAE,UAAU;IACtB,KAAK,KAAK,CAAE,UAAU;IACtB,KAAK,KAAK,CAAE,QAAQ;IACpB,KAAK,KAAK,CAAE,QAAQ;IACpB,KAAK,KAAK,CAAE,cAAc;IAC1B,KAAK,KAAK,CAAE,UAAU;IACtB,KAAK,KAAK,CAAE,OAAO;IACnB,OAAO,KAAK;CACb;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,GAAI,MAAM,QAAQ,KAAG,MAAM,EAAuB,CAAC;AAM3E;;GAEG;AACH,oBAAY,YAAY;IACtB,aAAa,IAAI,CAAE,gCAAgC;IACnD,aAAa,IAAI,CAAE,iCAAiC;IACpD,cAAc,KAAK,CAAE,kCAAkC;IACvD,cAAc,KAAK;CACpB;AAED;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GACxB,MAAM,YAAY,EAClB,OAAO,MAAM,EACb,MAAM,MAAM,EAAE,KACb,MAAM,EAIR,CAAC;AAMF;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,GACnC,GAAG,MAAM,EACT,GAAG,MAAM,EACT,MAAM,MAAM,EAAE,KACb,MAAM,EAIR,CAAC;AAEF;;GAEG;AACH,oBAAY,mBAAmB;IAC7B,MAAM,IAAI,CAAE,uBAAuB;IACnC,YAAY,IAAI,CAAE,6BAA6B;IAC/C,aAAa,IAAI,CAAE,8BAA8B;IACjD,SAAS,IAAI;CACd;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,GAClC,MAAM,mBAAmB,KACxB,MAAM,EAAsB,CAAC;AAMhC;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAC1B,aAAa,MAAM,EACnB,MAAM,mBAAmB,KACxB,MAAM,EAA+D,CAAC;AAEzE;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,GAC3B,QAAQ,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,KAC/D,MAAM,EAYR,CAAC;AAMF;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,WAAW,IAAI,CAAE,kBAAkB;IACnC,KAAK,IAAI,CAAE,oBAAoB;IAC/B,KAAK,IAAI,CAAE,oBAAoB;IAC/B,IAAI,IAAI;CACT;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,GAAI,UAAU,kBAAkB,KAAG,MAAM,EAIlE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,OAAO,OAAO,KAAG,MAAM,EAIrD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,KAAG,MAAM,EAIvD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,OAAO,MAAM,KAAG,MAAM,EAIrD,CAAC;AAMF;;GAEG;AACH,oBAAY,WAAW;IACrB,KAAK,IAAI,CAAE,uBAAuB;IAClC,KAAK,IAAI,CAAE,qBAAqB;IAChC,KAAK,IAAI,CAAE,wBAAwB;IACnC,IAAI,IAAI,CAAE,qBAAqB;IAC/B,MAAM,IAAI,CAAE,2BAA2B;IACvC,GAAG,IAAI,CAAE,iDAAiD;IAC1D,OAAO,IAAI,CAAE,4BAA4B;IACzC,MAAM,KAAK,CAAE,2BAA2B;IACxC,OAAO,KAAK;CACb;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,WAAW,EAAE,MAAM,MAAM,KAAG,MAAM,EAGpE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GACjC,MAAM,MAAM,EACZ,MAAM,MAAM,KACX,MAAM,EAGR,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,MAAM,EAKrD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,MAAM,EAKrD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,KAAG,MAAM,EAKtD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,MAAM,EAKrD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,KAAG,MAAM,EAKvD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,KAAG,MAAM,EAKpD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,KAAG,MAAM,EAOxD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,KAAG,MAAM,EAEvD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,KAAG,MAAM,EAExD,CAAC;AAMF;;;GAGG;AAEH;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,SAAS,MAAM,KAAG,MAAM,EAGxD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,MAAM,EAGlD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,OAAO,MAAM,KAAG,MAAM,EAGpD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,KAAG,MAAM,EAGzD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,wBAAwB,GAAI,OAAO,MAAM,KAAG,MAAM,EAG9D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,KAAG,MAAM,EAKpD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,QAAO,MAAM,EASpC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,GACzB,MAAM,MAAM,EACZ,UAAU;IACR,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,KACA,MAAM,EAuBR,CAAC;AAMF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAC9B,iBAAiB,MAAM,EACvB,kBAAkB,MAAM,KACvB,MAAM,EAKR,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,UAAmB,CAAC;AACjD,eAAO,MAAM,iBAAiB,UAAmB,CAAC;AAElD;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,CAAC,GAAG,CAAC,KAAG,MAAM,EAQtD,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,SAAS,OAAO,KAAG,MAAM,EAQ9D,CAAC;AAMF;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,YAAY,MAAM,KAAG,MAAM,EAIpD,CAAC;AAEF,eAAO,MAAM,UAAU,QAAO,MAAM,EAAsB,CAAC;AAE3D;;GAEG;AACH,oBAAY,aAAa;IACvB,aAAa,IAAI,CAAE,mBAAmB;IACtC,OAAO,IAAI,CAAE,UAAU;IACvB,WAAW,KAAK,CAAE,iBAAiB;IACnC,SAAS,KAAK,CAAE,0BAA0B;IAC1C,YAAY,KAAK;CAClB;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,aAAa,KAAG,MAAM,EAI5D,CAAC;AAEF;;GAEG;AACH,oBAAY,UAAU;IACpB,YAAY,IAAI,CAAE,sBAAsB;IACxC,aAAa,IAAI,CAAE,mCAAmC;IACtD,UAAU,IAAI,CAAE,kCAAkC;IAClD,iBAAiB,KAAK;CACvB;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,UAAU,KAAG,MAAM,EAAsB,CAAC;AAM9E;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,MAAM,EAIlD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAAI,MAAM,MAAM,KAAG,MAAM,EAIzD,CAAC;AAMF;;;;GAIG;AACH,eAAO,MAAM,WAAW,UAAa,CAAC;AACtC,eAAO,MAAM,SAAS,UAAa,CAAC;AAEpC;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GACvB,aAAa,MAAM,EACnB,UAAU,MAAM,EAChB,MAAM,CAAC,GAAG,CAAC,KACV,MAAM,EAMR,CAAC;AAMF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,UAAoB,CAAC;AACnD,eAAO,MAAM,kBAAkB,UAAoB,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,MAAM,UAAQ,CAAC;AAE5B;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,GAC3B,SAAS,MAAM,EACf,MAAM,MAAM,EACZ,QAAQ,MAAM,KACb,MAAM,EAUR,CAAC"}