OOP flexible item/inventory system

Hello everyone, I now working on my inventory system for my survival game. And I need to know how to properly make item class, I will have pretty massive game, and I want to have different sorts of items, with a lot of unique interactions based on some special type of item.

I tried inherited classes, but this is isn’t flexible at all, because requires to have a lot of classes on different items.

I tried to make everything in one class, but that’s showed itself even more awful than inherited class method.

So now im confused, I just don’t have idea how to design my item class.
Maybe you guys can help me?