1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 | export = Pako;
|
9 | export as namespace pako;
|
10 |
|
11 | declare namespace Pako {
|
12 | enum FlushValues {
|
13 | Z_NO_FLUSH = 0,
|
14 | Z_PARTIAL_FLUSH = 1,
|
15 | Z_SYNC_FLUSH = 2,
|
16 | Z_FULL_FLUSH = 3,
|
17 | Z_FINISH = 4,
|
18 | Z_BLOCK = 5,
|
19 | Z_TREES = 6,
|
20 | }
|
21 |
|
22 | enum StrategyValues {
|
23 | Z_FILTERED = 1,
|
24 | Z_HUFFMAN_ONLY = 2,
|
25 | Z_RLE = 3,
|
26 | Z_FIXED = 4,
|
27 | Z_DEFAULT_STRATEGY = 0,
|
28 | }
|
29 |
|
30 | enum ReturnCodes {
|
31 | Z_OK = 0,
|
32 | Z_STREAM_END = 1,
|
33 | Z_NEED_DICT = 2,
|
34 | Z_ERRNO = -1,
|
35 | Z_STREAM_ERROR = -2,
|
36 | Z_DATA_ERROR = -3,
|
37 | Z_BUF_ERROR = -5,
|
38 | }
|
39 |
|
40 | interface DeflateOptions {
|
41 | level?: -1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | undefined;
|
42 | windowBits?: number | undefined;
|
43 | memLevel?: number | undefined;
|
44 | strategy?: StrategyValues | undefined;
|
45 | dictionary?: any;
|
46 | raw?: boolean | undefined;
|
47 | to?: 'string' | undefined;
|
48 | chunkSize?: number | undefined;
|
49 | gzip?: boolean | undefined;
|
50 | header?: Header | undefined;
|
51 | }
|
52 |
|
53 | interface DeflateFunctionOptions {
|
54 | level?: -1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | undefined;
|
55 | windowBits?: number | undefined;
|
56 | memLevel?: number | undefined;
|
57 | strategy?: StrategyValues | undefined;
|
58 | dictionary?: any;
|
59 | raw?: boolean | undefined;
|
60 | to?: 'string' | undefined;
|
61 | }
|
62 |
|
63 | interface InflateOptions {
|
64 | windowBits?: number | undefined;
|
65 | dictionary?: any;
|
66 | raw?: boolean | undefined;
|
67 | to?: 'string' | undefined;
|
68 | chunkSize?: number | undefined;
|
69 | }
|
70 |
|
71 | interface InflateFunctionOptions {
|
72 | windowBits?: number | undefined;
|
73 | raw?: boolean | undefined;
|
74 | to?: 'string' | undefined;
|
75 | }
|
76 |
|
77 | interface Header {
|
78 | text?: boolean | undefined;
|
79 | time?: number | undefined;
|
80 | os?: number | undefined;
|
81 | extra?: number[] | undefined;
|
82 | name?: string | undefined;
|
83 | comment?: string | undefined;
|
84 | hcrc?: boolean | undefined;
|
85 | }
|
86 |
|
87 | type Data = Uint8Array | number[] | string;
|
88 |
|
89 | |
90 |
|
91 |
|
92 | function deflate(data: Data, options: DeflateFunctionOptions & { to: 'string' }): string;
|
93 | function deflate(data: Data, options?: DeflateFunctionOptions): Uint8Array;
|
94 |
|
95 | |
96 |
|
97 |
|
98 | function deflateRaw(data: Data, options: DeflateFunctionOptions & { to: 'string' }): string;
|
99 | function deflateRaw(data: Data, options?: DeflateFunctionOptions): Uint8Array;
|
100 |
|
101 | |
102 |
|
103 |
|
104 | function gzip(data: Data, options: DeflateFunctionOptions & { to: 'string' }): string;
|
105 | function gzip(data: Data, options?: DeflateFunctionOptions): Uint8Array;
|
106 |
|
107 | |
108 |
|
109 |
|
110 |
|
111 | function inflate(data: Data, options: InflateFunctionOptions & { to: 'string' }): string;
|
112 | function inflate(data: Data, options?: InflateFunctionOptions): Uint8Array;
|
113 |
|
114 | |
115 |
|
116 |
|
117 | function inflateRaw(data: Data, options: InflateFunctionOptions & { to: 'string' }): string;
|
118 | function inflateRaw(data: Data, options?: InflateFunctionOptions): Uint8Array;
|
119 |
|
120 | |
121 |
|
122 |
|
123 | function ungzip(data: Data, options: InflateFunctionOptions & { to: 'string' }): string;
|
124 | function ungzip(data: Data, options?: InflateFunctionOptions): Uint8Array;
|
125 |
|
126 |
|
127 | class Deflate {
|
128 | constructor(options?: DeflateOptions);
|
129 | err: ReturnCodes;
|
130 | msg: string;
|
131 | result: Uint8Array | number[];
|
132 | onData(chunk: Data): void;
|
133 | onEnd(status: number): void;
|
134 | push(data: Data | ArrayBuffer, mode?: FlushValues | boolean): boolean;
|
135 | }
|
136 |
|
137 | // https://github.com/nodeca/pako/blob/893381abcafa10fa2081ce60dae7d4d8e873a658/lib/inflate.js
|
138 | class Inflate {
|
139 | constructor(options?: InflateOptions);
|
140 | header?: Header | undefined;
|
141 | err: ReturnCodes;
|
142 | msg: string;
|
143 | result: Data;
|
144 | onData(chunk: Data): void;
|
145 | onEnd(status: number): void;
|
146 | push(data: Data | ArrayBuffer, mode?: FlushValues | boolean): boolean;
|
147 | }
|
148 | }
|