Add missing types
Overview
Add missing typing in code, all function arguments + return values should be typed.
Details
We found some parts of the code that is not typed, all arguments and all returned values should be typed.
If possible we can try to type the tests too ! it would help while developing tests to have some auto-completion too.
add JSON typing using: https://github.com/kevinheavey/jsonalias
I tried to type the low level HTTP methods using the JSON type provided and it does not work.
Any time we return some JSON type, we try to access the data as a dict or a list etc and mypy complains and says:
the return value could be a str, or a dict or a list and str object have no method __getitem__ (which is true).
So it can't make the link: we return some value with multiple types possible we use as one of the possible type.
let's keep the Any for now. we don't have a better solution.
I'll type the test so it helps any rich test editor to auto-complete and that would do for now I suppose.