* * @psalm-suppress InvalidTemplateParam */ public function map(Closure $closure): FutureInterface; /** * @psalm-template U * @psalm-param Closure(\Throwable): U $closure * @psalm-return FutureInterface */ public function catch(Closure $closure): FutureInterface; }