mirror of
https://github.com/wassname/DefinitelyTyped.git
synced 2026-08-29 11:12:23 +08:00
First draft of definition for pako
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
/// <reference path="pako.d.ts" />
|
||||
|
||||
import pako = require("pako");
|
||||
|
||||
var test = { my: 'super', puper: [456, 567], awesome: 'pako' };
|
||||
|
||||
var binaryString = pako.deflate(JSON.stringify(test), { to: 'string' });
|
||||
|
||||
//
|
||||
// Here you can do base64 encode, make xhr requests and so on.
|
||||
//
|
||||
|
||||
var restored = JSON.parse(pako.inflate(binaryString, { to: 'string' }));
|
||||
|
||||
var pako = require('pako')
|
||||
, chunk1 = Uint8Array([1,2,3,4,5,6,7,8,9])
|
||||
, chunk2 = Uint8Array([10,11,12,13,14,15,16,17,18,19]);
|
||||
|
||||
var deflate = new pako.Deflate({ level: 3});
|
||||
|
||||
deflate.push(chunk1, false);
|
||||
deflate.push(chunk2, true); // true -> last chunk
|
||||
|
||||
if (deflate.err) { throw new Error(deflate.err); }
|
||||
|
||||
console.log(deflate.result);
|
||||
Vendored
+60
@@ -0,0 +1,60 @@
|
||||
// Type definitions for pako 0.2.8
|
||||
// Project: https://github.com/nodeca/pako
|
||||
// Definitions by: Denis Cappellin <http://github.com/cappellin>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
declare module Pako {
|
||||
|
||||
/**
|
||||
* Compress data with deflate algorithm and options.
|
||||
*/
|
||||
export function deflate( data: Uint8Array | Array<number> | string, options?: any ): string;
|
||||
/**
|
||||
* The same as deflate, but creates raw data, without wrapper (header and adler32 crc).
|
||||
*/
|
||||
export function deflateRaw( data: Uint8Array | Array<number> | string, options?: any ): string;
|
||||
/**
|
||||
* The same as deflate, but create gzip wrapper instead of deflate one.
|
||||
*/
|
||||
export function gzip( data: Uint8Array | Array<number> | string, options?: any ): string;
|
||||
/**
|
||||
* Decompress data with inflate/ungzip and options. Autodetect format via wrapper header
|
||||
* by default. That's why we don't provide separate ungzip method.
|
||||
*/
|
||||
export function inflate( data: Uint8Array | Array<number> | string, options?: any ): Uint8Array | Array<number> | string;
|
||||
/**
|
||||
* The same as inflate, but creates raw data, without wrapper (header and adler32 crc).
|
||||
*/
|
||||
export function inflateRaw( data: Uint8Array | Array<number> | string, options?: any ): Uint8Array | Array<number> | string;
|
||||
/**
|
||||
* Just shortcut to inflate, because it autodetects format by header.content. Done for convenience.
|
||||
*/
|
||||
export function ungzip( data: Uint8Array | Array<number> | string, options?: any ): Uint8Array | Array<number> | string;
|
||||
|
||||
export interface Deflate {
|
||||
/**
|
||||
*
|
||||
*/
|
||||
constructor( options?: any );
|
||||
err: number;
|
||||
msg: string;
|
||||
result: Uint8Array | Array<number>;
|
||||
onData( chunk: Uint8Array | Array<number> | string ): void;
|
||||
onEnd( status: number ): void;
|
||||
push( data: Uint8Array | Array<number> | ArrayBuffer | string, mode?: number | boolean ): boolean;
|
||||
}
|
||||
|
||||
export interface Inflate {
|
||||
constructor( options?: any );
|
||||
err: number;
|
||||
msg: string;
|
||||
result: Uint8Array | Array<number> | string;
|
||||
onData( chunk: Uint8Array | Array<number> | string ): void;
|
||||
onEnd( status: number ): void;
|
||||
push( data: Uint8Array | Array<number> | ArrayBuffer | string, mode?: number | boolean ): boolean;
|
||||
}
|
||||
}
|
||||
|
||||
declare module 'pako' {
|
||||
export = Pako;
|
||||
}
|
||||
Reference in New Issue
Block a user