consolidated the protocol decoder callback types into a single enum