in projenrc/projects/type-safe-api-project.ts [127:233]
private generateInterfaces() {
new ProjenStruct(this, {
name: "PartialManagedRuleGroupStatementProperty",
filePath: `${this.srcdir}/construct/waf/generated-types.ts`,
outputFileOptions: {
readonly: false, // Needed as EsLint will complain otherwise
},
})
.mixin(
Struct.fromFqn(
"aws-cdk-lib.aws_wafv2.CfnWebACL.ManagedRuleGroupStatementProperty"
)
)
.withoutDeprecated()
.allOptional()
.update("name", { optional: false })
.omit("vendorName");
new ProjenStruct(this, {
name: "WebSocketApiProps",
filePath: `${this.srcdir}/construct/websocket/websocket-api-props.ts`,
outputFileOptions: {
readonly: false, // Needed as EsLint will complain otherwise
},
})
.mixin(Struct.fromFqn("aws-cdk-lib.aws_apigatewayv2.WebSocketApiProps"))
.withoutDeprecated()
.allOptional()
.omit(
"routeSelectionExpression",
"connectRouteOptions",
"disconnectRouteOptions",
"defaultRouteOptions"
);
new ProjenStruct(this, {
name: "WebSocketStageProps",
filePath: `${this.srcdir}/construct/websocket/websocket-stage-props.ts`,
outputFileOptions: {
readonly: false, // Needed as EsLint will complain otherwise
},
})
.mixin(Struct.fromFqn("aws-cdk-lib.aws_apigatewayv2.WebSocketStageProps"))
.withoutDeprecated()
.allOptional()
.omit("webSocketApi");
new ProjenStruct(this, {
name: "TypeScriptProjectOptions",
filePath: `${this.srcdir}/project/typescript-project-options.ts`,
outputFileOptions: {
readonly: false, // Needed as EsLint will complain otherwise
},
})
.mixin(Struct.fromFqn("projen.typescript.TypeScriptProjectOptions"))
.allOptional();
new ProjenStruct(this, {
name: "JavaProjectOptions",
filePath: `${this.srcdir}/project/java-project-options.ts`,
outputFileOptions: {
readonly: false, // Needed as EsLint will complain otherwise
},
})
.mixin(Struct.fromFqn("projen.java.JavaProjectOptions"))
.allOptional();
new ProjenStruct(this, {
name: "PythonProjectOptions",
filePath: `${this.srcdir}/project/python-project-options.ts`,
outputFileOptions: {
readonly: false, // Needed as EsLint will complain otherwise
},
})
.mixin(Struct.fromFqn("projen.python.PythonProjectOptions"))
.allOptional()
.omit(
"pip",
"venv",
"venvOptions",
"poetry",
"projenrcPython",
"projenrcJs",
"projenrcJsOptions",
"projenrcTs",
"projenrcTsOptions"
);
this.eslint?.addIgnorePattern(
`${this.srcdir}/construct/waf/generated-types.ts`
);
this.eslint?.addIgnorePattern(
`${this.srcdir}/construct/websocket/websocket-api-props.ts`
);
this.eslint?.addIgnorePattern(
`${this.srcdir}/construct/websocket/websocket-stage-props.ts`
);
this.eslint?.addIgnorePattern(
`${this.srcdir}/project/typescript-project-options.ts`
);
this.eslint?.addIgnorePattern(
`${this.srcdir}/project/java-project-options.ts`
);
this.eslint?.addIgnorePattern(
`${this.srcdir}/project/python-project-options.ts`
);
}