2023-10-25 17:51:27 -04:00
|
|
|
export type PackageType = 'commonjs' | 'module' | 'none'
|
|
|
|
export type PackageConfig = {
|
|
|
|
name?: string
|
|
|
|
main?: any
|
|
|
|
type: PackageType
|
|
|
|
exports?: string | string[] | Record<string, unknown>
|
|
|
|
imports?: string | string[] | Record<string, unknown>
|
|
|
|
}
|
2024-10-25 22:40:54 +02:00
|
|
|
export type DeserializedPackageConfig = {
|
|
|
|
data: PackageConfig,
|
|
|
|
exists: boolean,
|
2024-11-02 16:36:49 +00:00
|
|
|
path: string,
|
2024-10-25 22:40:54 +02:00
|
|
|
}
|
2023-10-25 17:51:27 -04:00
|
|
|
export type SerializedPackageConfig = [
|
|
|
|
PackageConfig['name'],
|
|
|
|
PackageConfig['main'],
|
|
|
|
PackageConfig['type'],
|
|
|
|
string | undefined, // exports
|
|
|
|
string | undefined, // imports
|
2024-10-25 22:40:54 +02:00
|
|
|
DeserializedPackageConfig['path'], // pjson file path
|
2023-10-25 17:51:27 -04:00
|
|
|
]
|
|
|
|
|
|
|
|
export interface ModulesBinding {
|
|
|
|
readPackageJSON(path: string): SerializedPackageConfig | undefined;
|
2024-05-07 13:25:45 -03:00
|
|
|
getNearestParentPackageJSONType(path: string): PackageConfig['type']
|
2024-11-02 16:36:49 +00:00
|
|
|
getNearestParentPackageJSON(path: string): SerializedPackageConfig | undefined
|
2023-10-25 17:51:27 -04:00
|
|
|
getPackageScopeConfig(path: string): SerializedPackageConfig | undefined
|
2025-04-06 08:47:53 +01:00
|
|
|
getPackageType(path: string): PackageConfig['type'] | undefined
|
2024-11-02 16:36:49 +00:00
|
|
|
enableCompileCache(path?: string): { status: number, message?: string, directory?: string }
|
|
|
|
getCompileCacheDir(): string | undefined
|
|
|
|
flushCompileCache(keepDeserializedCache?: boolean): void
|
2023-10-25 17:51:27 -04:00
|
|
|
}
|