I would recommend applying an UUID/GUID to every interface declaration.
Not knowing how the end user will consume these interfaces, it's conceivable that at least some of them will use them in ways that require an UUID/GUID present.
Using just objects and generics we don't need GUID to make castings...
But you're right. We cannot know all possibilities of using these classes. So, let's put GUID in all interfaces.
I would recommend applying an UUID/GUID to every interface declaration. Not knowing how the end user will consume these interfaces, it's conceivable that at least some of them will use them in ways that require an UUID/GUID present.