export class Token<V = string, T = string> {
    readonly value: V
    readonly start: number
    readonly end: number
    readonly name: string
    readonly type: T

    constructor(value: V, start: number, end: number, name: string, type: T)

    equals(other: Token<V, T>): boolean

    hash(): number
}
