only expose necessary menu api functions