ember-codemod-add-component-signatures
Version:
Codemod to add component signatures
19 lines (18 loc) • 836 B
JavaScript
import { AST } from '@codemod-utils/ast-javascript';
export function builderConvertArgsToSignature(nodes = []) {
return [
AST.builders.tsPropertySignature(AST.builders.identifier('Args'),
// @ts-expect-error: Assume that types from external packages are correct
AST.builders.tsTypeAnnotation(AST.builders.tsTypeLiteral(nodes)), false),
];
}
export function builderCreateSignature(identifier, members) {
return AST.builders.tsInterfaceDeclaration(AST.builders.identifier(identifier),
// @ts-expect-error: Assume that types from external packages are correct
AST.builders.tsInterfaceBody(members));
}
export function builderPassSignature(identifier) {
return AST.builders.tsTypeParameterInstantiation([
AST.builders.tsTypeReference(AST.builders.identifier(identifier)),
]);
}