public static @Nullable PsiParameterList specifyLambdaParameterTypes(PsiType functionalInterfaceType,
                                                                       @NotNull PsiLambdaExpression lambdaExpression) {
    String typedParamList = createLambdaParameterListWithFormalTypes(functionalInterfaceType, lambdaExpression, false);
    if (typedParamList != null) {
      PsiParameterList paramListWithFormalTypes = JavaPsiFacade.getElementFactory(lambdaExpression.getProject())
        .createMethodFromText("void foo" + typedParamList, lambdaExpression).getParameterList();
      return (PsiParameterList)JavaCodeStyleManager.getInstance(lambdaExpression.getProject())
        .shortenClassReferences(lambdaExpression.getParameterList().replace(paramListWithFormalTypes));
    }
    return null;
  }
public static @Nullable PsiParameterList specifyLambdaParameterTypes(PsiType functionalInterfaceType,
                                                                       @NotNull PsiLambdaExpression lambdaExpression)