diff --git a/source/package-json.d.ts b/source/package-json.d.ts index 8e6099812..ab87aaa1a 100644 --- a/source/package-json.d.ts +++ b/source/package-json.d.ts @@ -1,5 +1,5 @@ -import type {LiteralUnion} from './literal-union.d.ts'; import type {JsonObject, JsonValue} from './json-value.d.ts'; +import type {LiteralUnion} from './literal-union.d.ts'; export namespace PackageJson { /** @@ -526,7 +526,7 @@ export namespace PackageJson { Engines that this package runs on. */ engines?: { - [EngineName in 'npm' | 'node' | string]?: string; + [EngineName in LiteralUnion<'npm' | 'node', string>]?: string; }; /** diff --git a/test-d/package-json.ts b/test-d/package-json.ts index 93ca98e16..2d366688c 100644 --- a/test-d/package-json.ts +++ b/test-d/package-json.ts @@ -49,7 +49,8 @@ expectAssignable({ version: '>= 1.0.0', onFail: 'ignore', }); -expectType> | undefined>(packageJson.engines); +expectType<{[EngineName in LiteralUnion<'npm' | 'node', string>]?: string} | undefined>(packageJson.engines); +expectAssignable> | undefined>(packageJson.engines); expectType(packageJson.engineStrict); expectAssignable< | undefined