fix: add param annotations to constructors