diff --git a/types/socket.io-parser/index.d.ts b/types/socket.io-parser/index.d.ts
index 5f1a7a104e..66ca1be4c5 100644
--- a/types/socket.io-parser/index.d.ts
+++ b/types/socket.io-parser/index.d.ts
@@ -1,39 +1,33 @@
-// Type definitions for json-editor
+// Type definitions for socket.io-parser 2.2
// Project: https://github.com/socketio/socket.io-parser
-// Definitions by: York Yao
+// Definitions by: York Yao
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
-///
+///
-declare module "socket.io-parser" {
- namespace Parser {
- type Packet = {
- type: number,
- data: any,
- id: number
- }
- type EncodedPacket = string | Buffer | ArrayBuffer | Blob;
-
- var types: string[];
-
- var CONNECT: number;
- var DISCONNECT: number;
- var EVENT: number;
- var ACK: number;
- var ERROR: number;
- var BINARY_EVENT: number;
- var BINARY_ACK: number;
-
- class Encoder {
- encode(packet: Packet, callback: (encodedPackets: EncodedPacket[]) => void): void;
- }
-
- class Decoder {
- on(event: string, callback: (decodedPacket: Packet) => void): void;
- add(encodedPacket: EncodedPacket): void;
- destroy(): void;
- }
- }
-
- export = Parser;
+export interface Packet {
+ type: number;
+ data: any;
+ id: number;
+}
+export type EncodedPacket = string | Buffer | ArrayBuffer | Blob;
+
+export const types: string[];
+
+export const CONNECT: number;
+export const DISCONNECT: number;
+export const EVENT: number;
+export const ACK: number;
+export const ERROR: number;
+export const BINARY_EVENT: number;
+export const BINARY_ACK: number;
+
+export class Encoder {
+ encode(packet: Packet, callback: (encodedPackets: EncodedPacket[]) => void): void;
+}
+
+export class Decoder {
+ on(event: string, callback: (decodedPacket: Packet) => void): void;
+ add(encodedPacket: EncodedPacket): void;
+ destroy(): void;
}
diff --git a/types/socket.io-parser/socket.io-parser-tests.ts b/types/socket.io-parser/socket.io-parser-tests.ts
index 07646f48ce..b30a32aff0 100644
--- a/types/socket.io-parser/socket.io-parser-tests.ts
+++ b/types/socket.io-parser/socket.io-parser-tests.ts
@@ -1,38 +1,38 @@
import * as parser from 'socket.io-parser';
-var encoder = new parser.Encoder();
-var packet = {
+const encoder = new parser.Encoder();
+const packet = {
type: parser.EVENT,
data: 'test-packet',
- id: 13
+ id: 13,
};
-encoder.encode(packet, function (encodedPackets) {
- var decoder = new parser.Decoder();
- decoder.on('decoded', function (decodedPacket) {
- decodedPacket.type == parser.EVENT
- decodedPacket.data == 'test-packet'
- decodedPacket.id == 13
+encoder.encode(packet, encodedPackets => {
+ const decoder = new parser.Decoder();
+ decoder.on('decoded', decodedPacket => {
+ decodedPacket.type === parser.EVENT;
+ decodedPacket.data === 'test-packet';
+ decodedPacket.id === 13;
});
- for (var i = 0; i < encodedPackets.length; i++) {
- decoder.add(encodedPackets[i]);
+ for (const encoded of encodedPackets) {
+ decoder.add(encoded);
}
});
-var packet2 = {
+const packet2 = {
type: parser.BINARY_EVENT,
data: { i: new Buffer(1234), j: new Blob([new ArrayBuffer(2)]) },
- id: 15
+ id: 15,
};
-encoder.encode(packet2, function (encodedPackets) {
- var decoder = new parser.Decoder();
- decoder.on('decoded', function (decodedPacket) {
- decodedPacket.type == parser.BINARY_EVENT
- Buffer.isBuffer(decodedPacket.data.i) == true
- Buffer.isBuffer(decodedPacket.data.j) == true
- decodedPacket.id == 15
+encoder.encode(packet2, encodedPackets => {
+ const decoder = new parser.Decoder();
+ decoder.on('decoded', decodedPacket => {
+ decodedPacket.type === parser.BINARY_EVENT;
+ Buffer.isBuffer(decodedPacket.data.i); // $ExpectType boolean
+ Buffer.isBuffer(decodedPacket.data.j); // $ExpectType boolean
+ decodedPacket.id === 15;
});
- for (var i = 0; i < encodedPackets.length; i++) {
- decoder.add(encodedPackets[i]);
+ for (const encoded of encodedPackets) {
+ decoder.add(encoded);
}
});
diff --git a/types/socket.io-parser/tslint.json b/types/socket.io-parser/tslint.json
index a41bf5d19a..3db14f85ea 100644
--- a/types/socket.io-parser/tslint.json
+++ b/types/socket.io-parser/tslint.json
@@ -1,79 +1 @@
-{
- "extends": "dtslint/dt.json",
- "rules": {
- "adjacent-overload-signatures": false,
- "array-type": false,
- "arrow-return-shorthand": false,
- "ban-types": false,
- "callable-types": false,
- "comment-format": false,
- "dt-header": false,
- "eofline": false,
- "export-just-namespace": false,
- "import-spacing": false,
- "interface-name": false,
- "interface-over-type-literal": false,
- "jsdoc-format": false,
- "max-line-length": false,
- "member-access": false,
- "new-parens": false,
- "no-any-union": false,
- "no-boolean-literal-compare": false,
- "no-conditional-assignment": false,
- "no-consecutive-blank-lines": false,
- "no-construct": false,
- "no-declare-current-package": false,
- "no-duplicate-imports": false,
- "no-duplicate-variable": false,
- "no-empty-interface": false,
- "no-for-in-array": false,
- "no-inferrable-types": false,
- "no-internal-module": false,
- "no-irregular-whitespace": false,
- "no-mergeable-namespace": false,
- "no-misused-new": false,
- "no-namespace": false,
- "no-object-literal-type-assertion": false,
- "no-padding": false,
- "no-redundant-jsdoc": false,
- "no-redundant-jsdoc-2": false,
- "no-redundant-undefined": false,
- "no-reference-import": false,
- "no-relative-import-in-test": false,
- "no-self-import": false,
- "no-single-declare-module": false,
- "no-string-throw": false,
- "no-unnecessary-callback-wrapper": false,
- "no-unnecessary-class": false,
- "no-unnecessary-generics": false,
- "no-unnecessary-qualifier": false,
- "no-unnecessary-type-assertion": false,
- "no-useless-files": false,
- "no-var-keyword": false,
- "no-var-requires": false,
- "no-void-expression": false,
- "no-trailing-whitespace": false,
- "object-literal-key-quotes": false,
- "object-literal-shorthand": false,
- "one-line": false,
- "one-variable-per-declaration": false,
- "only-arrow-functions": false,
- "prefer-conditional-expression": false,
- "prefer-const": false,
- "prefer-declare-function": false,
- "prefer-for-of": false,
- "prefer-method-signature": false,
- "prefer-template": false,
- "radix": false,
- "semicolon": false,
- "space-before-function-paren": false,
- "space-within-parens": false,
- "strict-export-declare-modifiers": false,
- "trim-file": false,
- "triple-equals": false,
- "typedef-whitespace": false,
- "unified-signatures": false,
- "void-return": false,
- "whitespace": false
- }
-}
+{ "extends": "dtslint/dt.json" }