typehint closure