UNPKG

2.7 kBTypeScriptView Raw
1// Type definitions for buble 0.20
2// Project: https://github.com/bublejs/buble
3// Definitions by: Hugo Alliaume <https://github.com/Kocal>
4// Ye-hyoung Kang <https://github.com/pastelmind>
5// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
6// TypeScript Version: 2.1
7
8import { SourceMap } from "magic-string";
9
10export interface TransformOptions {
11 // source: https://github.com/Rich-Harris/buble/blob/master/src/support.js
12 target?: {
13 chrome?: 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | undefined;
14 firefox?: 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | undefined;
15 safari?: 8 | 9 | 10 | 10.1 | 11 | 11.1 | 12 | undefined;
16 ie?: 8 | 9 | 10 | 11 | undefined;
17 edge?: 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | undefined;
18 node?: 0.10 | 0.12 | 4 | 5 | 6 | 8 | 8.3 | 8.7 | 8.10 | undefined;
19 } | undefined;
20
21 // used for sourcemaps
22 source?: string | undefined; // input
23 file?: string | undefined; // output
24 includeContent?: boolean | undefined;
25
26 // custom JSX pragma (https://buble.surge.sh/guide/#jsx)
27 jsx?: string | undefined; // default: 'React.createElement'
28
29 // custom `Object.assign` (https://buble.surge.sh/guide/#object-spread-and-rest)
30 objectAssign?: string | boolean | undefined;
31
32 // transforms
33 transforms?: {
34 arrow?: boolean | undefined;
35 classes?: boolean | undefined;
36 computedProperty?: boolean | undefined;
37 conciseMethodProperty?: boolean | undefined;
38 dangerousForOf?: boolean | undefined;
39 dangerousTaggedTemplateString?: boolean | undefined;
40 defaultParameter?: boolean | undefined;
41 destructuring?: boolean | undefined;
42 exponentiation?: boolean | undefined;
43 forOf?: boolean | undefined;
44 generator?: boolean | undefined;
45 letConst?: boolean | undefined;
46 modules?: boolean | undefined;
47 numericLiteral?: boolean | undefined;
48 objectRestSpread?: boolean | undefined;
49 parameterDestructuring?: boolean | undefined;
50 reservedProperties?: boolean | undefined;
51 spreadRest?: boolean | undefined;
52 templateString?: boolean | undefined;
53 trailingFunctionCommas?: boolean | undefined;
54 unicodeRegExp?: boolean | undefined;
55 } | undefined;
56
57 // others
58 namedFunctionExpressions?: boolean | undefined;
59}
60
61export interface TransformOutput {
62 code: string;
63 map: SourceMap;
64}
65
66export function transform(content: string, options?: TransformOptions): TransformOutput;