Write a Python function `move_numbers_to_end(s: str) -> str` that takes a string `s` as input and returns a new string where all numeric characters are moved to the end of the string, preserving the order of both the non-numeric and numeric characters.
#### Example Usage
```python [main.nopy]
move_numbers_to_end("I1love143you55three3000thousand")
# Output: "Iloveyouthreethousand1143553000"
move_numbers_to_end("Avengers124Assemble")
# Output: "AvengersAssemble124"
move_numbers_to_end("Its11our12path13to14see15things16do17things")
# Output: "Itsourpathtoseethingsdothings11121314151617"
```