Condition-based maintenance (CBM) has received increasing attention in the literature over the past years. The application of CBM in practice, however, is lagging behind. This is, at least in part, explained by the complexity of real-life systems as opposed to the stylized ones studied most often. To overcome this issue, research is focusing more and more on complex systems, with multiple components subject to various dependencies. Existing classifications of these dependencies in the literature are no longer sufficient. Therefore, we provide an extended classification scheme. Besides the types of dependencies identified in the past (economic, structural, and stochastic), we add resource dependence, where multiple components are connected through, e.g., shared spares, tools, or maintenance workers. Furthermore, we extend the existing notion of structural dependence by distinguishing between structural dependence from a technical point of view and structural dependence from a performance point of view (e.g., through a series or parallel setting). We review the advances made with respect to CBM. Our main focus is on the implications of dependencies on the structure of the optimal CBM policy. We link our review to practice by providing real-life examples, thereby stressing current gaps in the literature.