Skip to content

ResolvedManifestSettings

Manifest auto-discovery settings — the resolved/normalized shape stored in the schema.

Stored in CLISchema and consumed by CLIBuilder.run() to call discoverManifest before dispatching to a command.

Note: the schema FIELD name (packageJsonSettings) keeps its packageJson prefix for backward compatibility — renaming it would break consumers reading app.schema.packageJsonSettings. The type itself is now generically named (it holds discovery config for any manifest — package.json, deno.json, jsr.json); the legacy PackageJsonSettings alias remains exported for backward compatibility.

Signatures

ts
interface ResolvedManifestSettings {}

Members

Properties

data

Pre-loaded data; skips filesystem discovery, uses values verbatim.

ts
data: PackageJsonData | undefined;

files

Candidate manifest filenames, in per-directory priority order (e.g. ['deno.json', 'deno.jsonc', 'jsr.json'] for .denoJson()).

ts
files: readonly string[];

from

Explicit filesystem anchor for discovery; overrides adapter.cwd.

Resolved to a string path before storage. When set, discoverManifest walks up from here instead of the runtime cwd. Required for installable CLIs whose version should reflect THEIR OWN package, not the consumer's working directory.

ts
from: string | undefined;

inferName

Infer CLI name from manifest bin keys or name field.

When true, the discovered name replaces the cli(name) value. Explicit .version()/.description() calls still take precedence over discovered values.

ts
inferName: boolean;

stripScope

Strip a leading @scope/ from the inferred name fallback.

Only consulted when inferName is true and the name comes from the manifest name field (not a bin key, which is never scoped).

ts
stripScope: boolean;

See Also

Released under the MIT License.