Closed7
@types/yargsの型を直す (DefinitelyTyped/DefinitelyTyped#64785)

これと同じ現象が起きてるので直す。
option()
にdemandOption: true
を指定しても推論された型にundefined
が入る。

このPRで壊れたっぽい

テストが通ってるのが問題なんだけど、どうやらCommandModule
じゃなければ通りそう。
それですり抜けたかな。
// $ExpectType string
yargs.option("x", { default: "default" as string | undefined, demandOption: true }).parseSync().x;
// $ExpectType string
(await yargs.option("x", { default: "default" as string | undefined, demandOption: true }).argv).x;

ちなみにDefinitelyTypedは一般のIssueはDiscussionに移動したらしい

Reproduction出来た。
type
プロパティがある場合にだけ壊れる。
// $ExpectType string
yargs.option("x", {type: "string", default: "default" as string | undefined, demandOption: true }).parseSync().x;

Issue (Discussion) と PR作成!!

マージされたのでクローズ!
このスクラップは2023/04/24にクローズされました