private static MethodDeclarationSyntax CreateMembersForEndpointsPrivateHelper(
            KeyValuePair <OperationType, OpenApiOperation> apiOperation,
            bool hasRouteParameters)
        {
            var operationName              = apiOperation.Value.GetOperationName();
            var interfaceName              = "I" + operationName + NameConstants.ContractHandler;
            var methodName                 = $"Invoke{operationName}Async";
            var parameterTypeName          = operationName + NameConstants.ContractParameters;
            var hasParametersOrRequestBody = apiOperation.Value.HasParametersOrRequestBody() || hasRouteParameters;

            // Create method # use CreateParameterList & CreateCodeBlockReturnStatement
            var methodDeclaration = SyntaxFactory.MethodDeclaration(
                SyntaxFactory.GenericName(SyntaxFactory.Identifier(nameof(Task)))
                .WithTypeArgumentList(SyntaxTypeArgumentListFactory.CreateWithOneItem(nameof(ActionResult))),
                SyntaxFactory.Identifier(methodName))
                                    .AddModifiers(SyntaxTokenFactory.PrivateKeyword())
                                    .AddModifiers(SyntaxTokenFactory.StaticKeyword())
                                    .AddModifiers(SyntaxTokenFactory.AsyncKeyword())
                                    .WithParameterList(CreateParameterList(hasParametersOrRequestBody, parameterTypeName, interfaceName, false))
                                    .WithBody(
                SyntaxFactory.Block(
                    CreateCodeBlockReturnStatementForHelper(hasParametersOrRequestBody)));

            return(methodDeclaration);
        }