Can't this be typehinted more accurately ?