Skip to content

Commit e1342f5

Browse files
committed
Add TypeScript type definitions
1 parent 1e5387e commit e1342f5

File tree

5 files changed

+41
-2
lines changed

5 files changed

+41
-2
lines changed

build-prefixes.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -235,6 +235,15 @@ pub struct Browsers {
235235

236236
fs.writeFileSync('src/targets.rs', targets);
237237

238+
let targets_dts = `// This file is autogenerated by build-prefixes.js. DO NOT EDIT!
239+
240+
export interface Targets {
241+
${Object.keys(browsers).filter(b => !(b in BROWSER_MAPPING)).sort().join(': string,\n ')}: string
242+
}
243+
`;
244+
245+
fs.writeFileSync('node/targets.d.ts', targets_dts);
246+
238247
let s = `// This file is autogenerated by build-prefixes.js. DO NOT EDIT!
239248
240249
use crate::vendor_prefix::VendorPrefix;

node/index.d.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import type {Targets} from './targets';
2+
3+
export interface TransformOptions {
4+
filename: string,
5+
code: Buffer,
6+
minify: boolean,
7+
source_map: boolean,
8+
targets: Targets
9+
}
10+
11+
export interface TransformResult {
12+
code: Buffer,
13+
map: Buffer
14+
}
15+
16+
export declare function transform(options: TransformOptions): TransformResult;

node/targets.d.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// This file is autogenerated by build-prefixes.js. DO NOT EDIT!
2+
3+
export interface Targets {
4+
android: string,
5+
chrome: string,
6+
edge: string,
7+
firefox: string,
8+
ie: string,
9+
ios_saf: string,
10+
opera: string,
11+
safari: string,
12+
samsung: string
13+
}

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
"license": "MIT",
55
"description": "A CSS parser, transformer, and minifier written in Rust",
66
"main": "native.js",
7+
"types": "node/index.d.ts",
78
"targets": {
89
"main": false
910
},

test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
const css = require('./native');
1+
const css = require('./');
22
const fs = require('fs');
33

44
if (process.argv[process.argv.length - 1] !== __filename) {
@@ -45,4 +45,4 @@ let res = css.transform({
4545
}
4646
`)});
4747

48-
console.log(res.toString());
48+
console.log(res.code.toString());

0 commit comments

Comments
 (0)