Styled JSX と TypeScript

Styled JSX を TypeScript と共に使うには<style>タグの属性タイプにjsxglobalを追加する作業から始めなければならないかもしれません。それは以下でできます。

 import * as React from 'react';
 
 declare module 'react' {
   interface StyleHTMLAttributes<T> extends React.HTMLAttributes<T> {
     jsx?: boolean;
     global?: boolean;
   }
 }

jsx での<style>の属性はReact.StyyleHTMLAttributesによって定義されている為、そこへ TypeScript の同 Interface 名のプロパティ型はマージされる機能を使い、追記しています。