タグ

ブックマーク / zenn.dev/mssknd (1)

  • .d.ts での可視性を制御する tsconfig の stripInternal 設定について

    TSConfig の compilerOption に stripInternal という設定があります。 TSConfig Reference #Strip Internal この設定を有効にすると、JSDoc に @internal を指定したコード(クラス、メソッド、変数、関数)がコンパイル時に生成される .d.ts へ出力されなくなります。 これにより、C# や Kotlin の internal、Java の package private のようなアクセス修飾子相当の振る舞いを TypeScript で実現できます。 TypeScript では、export を使ってコンパイル後のモジュールを構成する必要がありますが、モジュール内部に閉じたアクセス制御を行うことはできません。stripInternal を設定することで、モジュール内でのみ公開するコードを明示的に指定できます。

    .d.ts での可視性を制御する tsconfig の stripInternal 設定について
    efcl
    efcl 2022/08/12
    "JSDoc に @internal を指定したコード(クラス、メソッド、変数、関数)がコンパイル時に生成される .d.ts に出力されなくなります"
  • 1