Skip to content

Commit e18e0b9

Browse files
committed
feat: types
1 parent ec36b58 commit e18e0b9

6 files changed

Lines changed: 35 additions & 14 deletions

File tree

.eslintrc.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,8 @@
88
},
99
"rules": {
1010
"no-magic-numbers": "off"
11-
}
11+
},
12+
"ignorePatterns": [
13+
"index.d.ts"
14+
]
1215
}

.npmpackagejsonlintrc.json

Lines changed: 0 additions & 5 deletions
This file was deleted.

index.d.ts

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
export interface UserAgentRegex {
2+
/**
3+
* Regular expression to match user agent.
4+
*/
5+
regex: RegExp
6+
/**
7+
* caniuse-lite compatible browser family name.
8+
*/
9+
family: string
10+
/**
11+
* Fixed browser version.
12+
*/
13+
version?: [number, number, number]
14+
/**
15+
* Minimum browser version.
16+
*/
17+
minVersion?: [number, number, number]
18+
/**
19+
* Maximum browser version.
20+
*/
21+
maxVersion?: [number, number, number]
22+
}
23+
24+
export declare const regexes: UserAgentRegex[]

index.js

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
11
/**
2-
* @typedef UserAgentRegex
3-
* @property {RegExp} regex - Regular expression to match user agent.
4-
* @property {string} family - caniuse-lite compatible browser family name.
5-
* @property {[number, number, number]} [version] - Fixed browser version.
6-
* @property {[number, number, number]} [minVersion] - Minimum browser version.
7-
* @property {[number, number, number]} [maxVersion] - Maximum browser version.
2+
* @typedef {import('./index.d').UserAgentRegex} UserAgentRegex
83
*/
94

105
/** @type {UserAgentRegex[]} */

package.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,11 @@
2020
"engines": {
2121
"node": ">=14"
2222
},
23-
"exports": "./index.js",
23+
"types": "./index.d.ts",
24+
"exports": {
25+
"import": "./index.js",
26+
"types": "./index.d.ts"
27+
},
2428
"publishConfig": {
2529
"directory": "package"
2630
},

test/useragents.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @typedef {import('../index.js').UserAgentRegex} UserAgentRegex
2+
* @typedef {import('../index.d').UserAgentRegex} UserAgentRegex
33
*/
44

55
export const useragents = [

0 commit comments

Comments
 (0)