@@ -1440,6 +1440,28 @@ namespace ts {
1440
1440
: node ;
1441
1441
}
1442
1442
1443
+ export function createInterfaceDeclaration ( decorators : Decorator [ ] | undefined , modifiers : Modifier [ ] | undefined , name : string | Identifier , typeParameters : TypeParameterDeclaration [ ] | undefined , heritageClauses : HeritageClause [ ] | undefined , members : TypeElement [ ] ) {
1444
+ const node = < InterfaceDeclaration > createSynthesizedNode ( SyntaxKind . InterfaceDeclaration ) ;
1445
+ node . decorators = asNodeArray ( decorators ) ;
1446
+ node . modifiers = asNodeArray ( modifiers ) ;
1447
+ node . name = asName ( name ) ;
1448
+ node . typeParameters = asNodeArray ( typeParameters ) ;
1449
+ node . heritageClauses = asNodeArray ( heritageClauses ) ;
1450
+ node . members = createNodeArray ( members ) ;
1451
+ return node ;
1452
+ }
1453
+
1454
+ export function updateInterfaceDeclaration ( node : InterfaceDeclaration , decorators : Decorator [ ] | undefined , modifiers : Modifier [ ] | undefined , name : Identifier , typeParameters : TypeParameterDeclaration [ ] | undefined , heritageClauses : HeritageClause [ ] | undefined , members : TypeElement [ ] ) {
1455
+ return node . decorators !== decorators
1456
+ || node . modifiers !== modifiers
1457
+ || node . name !== name
1458
+ || node . typeParameters !== typeParameters
1459
+ || node . heritageClauses !== heritageClauses
1460
+ || node . members !== members
1461
+ ? updateNode ( createInterfaceDeclaration ( decorators , modifiers , name , typeParameters , heritageClauses , members ) , node )
1462
+ : node ;
1463
+ }
1464
+
1443
1465
export function createEnumDeclaration ( decorators : Decorator [ ] | undefined , modifiers : Modifier [ ] | undefined , name : string | Identifier , members : EnumMember [ ] ) {
1444
1466
const node = < EnumDeclaration > createSynthesizedNode ( SyntaxKind . EnumDeclaration ) ;
1445
1467
node . decorators = asNodeArray ( decorators ) ;
0 commit comments