We introduce a generalization of the Gorenstein injective modules: the Gorenstein FPn-injective modules (denoted by GI(n)). They are the cycles of the exact complexes of injective modules that remain exact when we apply a functor Hom(A, -), with A any FPn-injective module. Thus, GI(0) is the class of classical Gorenstein injective modules, and GI(1) is the class of Ding injective modules. We prove that over any ring R, for any n & GE;2, the class GI(n) is the right half of a perfect cotorsion pair, and therefore it is an enveloping class. For n=1 we show that GI(1) (i.e., the Ding injectives) forms the right half of a hereditary cotorsion pair. If moreover the ring R is coherent, then the Ding injective modules form an enveloping class. We also define the dual notion, that of Gorenstein FPn-projectives (denoted by GI(n)). They generalize the Ding projective modules, and so, the Gorenstein projective modules. We prove that for anyn & GE;2 the class GP(n) is the left half of a complete hereditary cotorsion pair, and therefore it is special precovering.