The officially supported language is Rust, and is the language covered by the tutorials here:
https://dreambox3d.dev/getting_started
However, Dreambox games use WASM binaries, and so technically anything that compiles to WASM can also be used (including C or C++ via Emscripten). In fact, a set of C headers are provided in the Downloads section which you can reference to link to Dreambox APIs.
However, it is worth keeping in mind that rather than taking a raw WASM file, Dreambox games actually consume CD ISO files, which embed a "main.wasm" in the root directory and any other files referenced by the game, so the C/C++ route will involve some extra steps to bundle everything as an ISO file. Meanwhile, the Rust tools provided above will handle all of these details for you