diff --git a/jbinary/jbinary-tests.ts b/jbinary/jbinary-tests.ts new file mode 100644 index 0000000000..c1e286fce4 --- /dev/null +++ b/jbinary/jbinary-tests.ts @@ -0,0 +1,16 @@ +/// + +var originalData = [0x05, 0x03, 0x7F, 0x1E]; +var b1 = new jBinary(originalData); +console.log(b1.readAll()); +console.log(b1.read('int8')); + +b1.seek(4); +console.log(b1.read('int8')); + +console.log(b1.tell()); + +b1.write('int8', 0x9A, 2); +b1.writeAll(originalData); + +console.log(b1.slice(0, 2)); diff --git a/jbinary/jbinary.d.ts b/jbinary/jbinary.d.ts new file mode 100644 index 0000000000..f9a2f2aaa9 --- /dev/null +++ b/jbinary/jbinary.d.ts @@ -0,0 +1,32 @@ +// Type definitions for jBinary +// Project: https://github.com/jDataView/jBinary +// Definitions by: Tim Bureck +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +// Additional notes: +// Method stubs and types are taken from the official jBinary documentation, which can be found here: +// https://github.com/jDataView/jBinary/wiki/jBinary-Constructor +// https://github.com/jDataView/jBinary/wiki/jBinary-Methods + +/// + +declare class jBinary +{ + + constructor(data:Array); + constructor(data:jDataView, typeSet:Object); + constructor(bufferSize:number, typeSet:Object); + + read(type:string, offset?:number):any; + readAll():any; + + write(type:string, data:any, offset?:number):number; + writeAll(data:any):number; + + tell():number; + seek(position:number, callback?: (prop:jBinary, data:any) => any):number; + skip(count:number, callback?: (prop:jBinary, data:any) => any):number; + + slice(start:number, end:number, forceCopy?:boolean):jBinary; + as(typeSet:Object, modifyOriginal?:boolean):jBinary; +} \ No newline at end of file