forked from mdx-js/eslint-mdx
-
Notifications
You must be signed in to change notification settings - Fork 0
/
shim.d.ts
66 lines (58 loc) · 1.38 KB
/
shim.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
declare module 'espree/lib/token-translator' {
export default TokenTranslator
// eslint-disable-next-line @typescript-eslint/consistent-type-imports
export type acorn = typeof import('acorn')
export interface Location {
/**
* The start position.
*/
start: acorn.Position
/**
* The end position.
*/
end: acorn.Position
}
export type Range = [number, number]
export interface EsprimaToken {
/**
* The type of this token.
*/
type: string
/**
* The string content of the token.
*/
value: string
/**
* Location in source text.
*/
loc: Location | undefined
/**
* start column.
*/
start: number | undefined
/**
* end column.
*/
end: number | undefined
/**
* [start, end] range
*/
range: Range | undefined
}
declare function TokenTranslator(
acornTokTypes: Record<string, acorn.TokenType>,
code: string,
): void
declare class TokenTranslator {
_acornTokTypes: Record<string, acorn.TokenType>
constructor(acornTokTypes: Record<string, acorn.TokenType>, code: string)
onToken(
token: acorn.Token,
extra: {
// eslint-disable-next-line no-magic-numbers, sonar/max-union-size
ecmaVersion: 'latest' | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13
tokens: EsprimaToken[]
},
): void
}
}