diff --git a/types/tokenizr/index.d.ts b/types/tokenizr/index.d.ts index 1b1615e1b8..82fd3c6e92 100644 --- a/types/tokenizr/index.d.ts +++ b/types/tokenizr/index.d.ts @@ -2,6 +2,7 @@ // Project: https://github.com/rse/tokenizr // Definitions by: Nicholas Sorokin // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 3.0 declare class Tokenizr { constructor(); @@ -14,7 +15,9 @@ declare class Tokenizr { /** * Execute multiple alternative callbacks */ - alternatives(...alternatives: Array<(this: this) => any>): any; + alternatives any>>( + ...alternatives: X + ): ReturnType; /** * Configure a tokenization before-rule callback @@ -34,7 +37,7 @@ declare class Tokenizr { /** * Consume the current token (by expecting it to be a particular symbol) */ - consume(type: string, value: any): Token; + consume(type: string, value?: any): Token; /** * Configure debug operation @@ -247,10 +250,17 @@ declare class ParsingError extends Error { toString(): string; } -declare class Token { +declare class Token { + column?: number; + line?: number; + pos?: number; + text: string; + type: string; + value: T; + constructor( type: string, - value: any, + value: T, text: string, pos?: number, line?: number, @@ -265,4 +275,5 @@ declare class Token { toString(): string; } -export = Tokenizr; +export type IToken = Token; +export default Tokenizr; diff --git a/types/tokenizr/tokenizr-tests.ts b/types/tokenizr/tokenizr-tests.ts index a633a14a75..d0f887aaa2 100644 --- a/types/tokenizr/tokenizr-tests.ts +++ b/types/tokenizr/tokenizr-tests.ts @@ -1,4 +1,4 @@ -import Tokenizr = require('tokenizr'); +import Tokenizr from 'tokenizr'; const lexer = new Tokenizr();