Skip to content

Commit

Permalink
fix: modernize type declarations (#299)
Browse files Browse the repository at this point in the history
  • Loading branch information
regseb authored Jul 8, 2023
1 parent 4ed94f9 commit 058d8cb
Showing 1 changed file with 25 additions and 41 deletions.
66 changes: 25 additions & 41 deletions index.d.ts
Original file line number Diff line number Diff line change
@@ -1,49 +1,33 @@
/* 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
type ComparatorFunction = (left: string, right: string) => number

/**
* 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 Options {
readonly sortOrder?: readonly string[] | ComparatorFunction
}

interface sortPackageJsonExports extends sortPackageJson.SortPackageJsonFn {
readonly default: sortPackageJson.SortPackageJsonFn
readonly sortPackageJson: sortPackageJson.SortPackageJsonFn
readonly sortOrder: string[]
interface SortPackageJson {
/**
* 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
}

declare const sortPackageJsonExports: sortPackageJsonExports
declare const sortPackageJsonDefault: SortPackageJson
export default sortPackageJsonDefault

export = sortPackageJsonExports
export const sortPackageJson: SortPackageJson
export const sortOrder: string[]

0 comments on commit 058d8cb

Please sign in to comment.