Right now the adjoint() of LinearCombination is defined as such:
def adjoint(self) -> 'LinearCombination':
return self
LCU is defined as:
$$LCU = \sum_i \alpha_i U_i$$
And thus:
$$LCU^\dagger = \sum_i \alpha_i^* U_i^\dagger$$
So LCU is hermitian if and only if $\alpha_i \in \mathbb{R}$ (which is required by the class) and all the added unitaries are Hermitian.
We can therefore generalize the LinearCombination class and let the Hermicity be implemented by passing Hermitian bloqs to LinearCombination.
This is actually what is happening in LCUBlockEncoding.