@@ -169,6 +169,7 @@ function handleMixinAndInterfaces(
169169 const event : Event [ ] = [ ] ;
170170 const property : Record < string , Partial < Property > > = { } ;
171171 let method : Record < string , DeepPartial < OverridableMethod > > = { } ;
172+ let typeParameters = { }
172173
173174 for ( const child of node . children ) {
174175 switch ( child . name ) {
@@ -188,12 +189,17 @@ function handleMixinAndInterfaces(
188189 } ) ;
189190 break ;
190191 }
192+ case "typeParameters" : {
193+ typeParameters = handleTypeParameters ( child ) ;
194+ break ;
195+ }
191196 default :
192197 throw new Error ( `Unknown node name: ${ child . name } ` ) ;
193198 }
194199 }
195200
196201 const interfaceObject = type === "interface" && {
202+ ...typeParameters ,
197203 ...optionalMember ( "exposed" , "string" , node . properties ?. exposed ) ,
198204 ...optionalMember ( "deprecated" , "string" , node . properties ?. deprecated ) ,
199205 ...optionalMember (
@@ -259,6 +265,7 @@ function handleProperty(child: Node): Partial<Property> {
259265 : optionalMember ( "type" , "string" , child . properties ?. type ) ) ,
260266 ...optionalMember ( "readonly" , "boolean" , child . properties ?. readonly ) ,
261267 ...optionalMember ( "deprecated" , "string" , child . properties ?. deprecated ) ,
268+ ...optionalMember ( "nullable" , "boolean" , child . properties ?. nullable ) ,
262269 } ;
263270}
264271
0 commit comments