qrcode.d.ts (1955B)
1 //--------------------------------------------------------------------- 2 // 3 // QR Code Generator for JavaScript - TypeScript Declaration File 4 // 5 // Copyright (c) 2016 Kazuhiko Arase 6 // 7 // URL: http://www.d-project.com/ 8 // 9 // Licensed under the MIT license: 10 // http://www.opensource.org/licenses/mit-license.php 11 // 12 // The word 'QR Code' is registered trademark of 13 // DENSO WAVE INCORPORATED 14 // http://www.denso-wave.com/qrcode/faqpatent-e.html 15 // 16 //--------------------------------------------------------------------- 17 18 type TypeNumber = 19 | 0 // Automatic type number 20 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 21 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 22 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 23 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 24 ; 25 26 type ErrorCorrectionLevel = 'L' | 'M' | 'Q' | 'H'; 27 28 type Mode = 'Numeric' | 'Alphanumeric' | 'Byte' /* Default */ | 'Kanji'; 29 30 interface QRCodeFactory { 31 (typeNumber: TypeNumber, errorCorrectionLevel: ErrorCorrectionLevel) : QRCode; 32 stringToBytes(s: string) : number[]; 33 stringToBytesFuncs : { [encoding : string] : (s: string) => number[] }; 34 createStringToBytes(unicodeData: string, numChars: number) : 35 (s : string) => number[]; 36 } 37 38 interface QRCode { 39 addData(data: string, mode?: Mode) : void; 40 make() : void; 41 getModuleCount() : number; 42 isDark(row: number, col: number) : boolean; 43 createImgTag(cellSize?: number, margin?: number) : string; 44 createSvgTag(cellSize?: number, margin?: number) : string; 45 createSvgTag(opts? : { cellSize?: number, margin?: number, 46 scalable?: boolean }) : string; 47 createDataURL(cellSize?: number, margin?: number) : string; 48 createTableTag(cellSize?: number, margin?: number) : string; 49 createASCII(cellSize?: number, margin?: number) : string; 50 renderTo2dContext(context: CanvasRenderingContext2D, cellSize?: number): void; 51 } 52 53 declare var qrcode : QRCodeFactory; 54 55 declare module 'qrcode-generator' { 56 export = qrcode; 57 }