forked from keithamus/sort-package-json
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.d.ts
49 lines (40 loc) · 1.29 KB
/
index.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
/* eslint-disable @typescript-eslint/no-explicit-any */
declare namespace sortPackageJson {
interface SortPackageJsonFn {
/**
* Sort packageJson object.
*
* @param packageJson - A packageJson
* @param options - An options object
* @returns Sorted packageJson object
*/
<T extends Record<any, any>>(packageJson: T, options?: Options): T
/**
* Sort packageJson string.
*
* @param packageJson - A packageJson string.
* @param options - An options object
* @returns Sorted packageJson string.
*/
(packageJson: string, options?: Options): string
}
type ComparatorFunction = (left: string, right: string) => number
function sortObjectBy<T extends Record<any, any>>(
comparator?: string[],
deep?: boolean,
): (x: T) => T
interface Field {
readonly key: string
over?<T extends Record<any, any>>(x: T): T
}
interface Options {
readonly sortOrder?: readonly string[] | ComparatorFunction
}
}
interface sortPackageJsonExports extends sortPackageJson.SortPackageJsonFn {
readonly default: sortPackageJson.SortPackageJsonFn
readonly sortPackageJson: sortPackageJson.SortPackageJsonFn
readonly sortOrder: string[]
}
declare const sortPackageJsonExports: sortPackageJsonExports
export = sortPackageJsonExports