I would just check that all data channels in evoked and self are the same relying on pick_types(info, meg=True, eeg=True) and raise a warning otherwise.