UNPKG

3.59 kBTypeScriptView Raw
1export interface Dependencies {
2 [name: string]: string;
3}
4export declare type PackageBin = string | {
5 [commandName: string]: string;
6};
7export declare type PackageScripts = {
8 [name: string]: string;
9} & {
10 prepublish?: string;
11 prepare?: string;
12 prepublishOnly?: string;
13 prepack?: string;
14 postpack?: string;
15 publish?: string;
16 postpublish?: string;
17 preinstall?: string;
18 install?: string;
19 postinstall?: string;
20 preuninstall?: string;
21 uninstall?: string;
22 postuninstall?: string;
23 preversion?: string;
24 version?: string;
25 postversion?: string;
26 pretest?: string;
27 test?: string;
28 posttest?: string;
29 prestop?: string;
30 stop?: string;
31 poststop?: string;
32 prestart?: string;
33 start?: string;
34 poststart?: string;
35 prerestart?: string;
36 restart?: string;
37 postrestart?: string;
38 preshrinkwrap?: string;
39 shrinkwrap?: string;
40 postshrinkwrap?: string;
41};
42export interface PeerDependenciesMeta {
43 [dependencyName: string]: {
44 optional?: boolean;
45 };
46}
47export interface DependenciesMeta {
48 [dependencyName: string]: {
49 injected?: boolean;
50 node?: string;
51 patch?: string;
52 };
53}
54export interface PublishConfig extends Record<string, unknown> {
55 directory?: string;
56 executableFiles?: string[];
57}
58declare type Version = string;
59declare type Pattern = string;
60export interface TypesVersions {
61 [version: Version]: {
62 [pattern: Pattern]: string[];
63 };
64}
65export interface BaseManifest {
66 name?: string;
67 version?: string;
68 bin?: PackageBin;
69 description?: string;
70 directories?: {
71 bin?: string;
72 };
73 dependencies?: Dependencies;
74 devDependencies?: Dependencies;
75 optionalDependencies?: Dependencies;
76 peerDependencies?: Dependencies;
77 peerDependenciesMeta?: PeerDependenciesMeta;
78 dependenciesMeta?: DependenciesMeta;
79 bundleDependencies?: string[];
80 bundledDependencies?: string[];
81 homepage?: string;
82 repository?: string | {
83 url: string;
84 };
85 scripts?: PackageScripts;
86 config?: object;
87 engines?: {
88 node?: string;
89 npm?: string;
90 pnpm?: string;
91 };
92 cpu?: string[];
93 os?: string[];
94 libc?: string[];
95 main?: string;
96 module?: string;
97 typings?: string;
98 types?: string;
99 publishConfig?: PublishConfig;
100 typesVersions?: TypesVersions;
101 readme?: string;
102 keywords?: string[];
103 author?: string;
104 license?: string;
105}
106export declare type DependencyManifest = BaseManifest & Required<Pick<BaseManifest, 'name' | 'version'>>;
107export declare type PackageExtension = Pick<BaseManifest, 'dependencies' | 'optionalDependencies' | 'peerDependencies' | 'peerDependenciesMeta'>;
108export interface PeerDependencyRules {
109 ignoreMissing?: string[];
110 allowAny?: string[];
111 allowedVersions?: Record<string, string>;
112}
113export declare type AllowedDeprecatedVersions = Record<string, string>;
114export declare type ProjectManifest = BaseManifest & {
115 pnpm?: {
116 neverBuiltDependencies?: string[];
117 onlyBuiltDependencies?: string[];
118 overrides?: Record<string, string>;
119 packageExtensions?: Record<string, PackageExtension>;
120 peerDependencyRules?: PeerDependencyRules;
121 allowedDeprecatedVersions?: AllowedDeprecatedVersions;
122 patchedDependencies?: Record<string, string>;
123 };
124 private?: boolean;
125 resolutions?: Record<string, string>;
126};
127export declare type PackageManifest = DependencyManifest & {
128 deprecated?: string;
129};
130export {};