add documentation for callbacks