If a component conforms both to the rules for server components (no interactivity) and to the rules for client components (no direct access to backend resources), then it can be used both as a server component and as a client component. This is useful for many purposes. But it is not true of server components in general.
I guess you can have components and hooks to share stuff between server and client?