|numeric|string|File> $input The task input * @param callable(float):bool $reportProgress Report the task progress. If this returns false, that means the task was cancelled and processing should be stopped. * @param SynchronousProviderOptions $options The task options * @psalm-return array|numeric|string> * @throws ProcessingException * @since 35.0.0 */ #[\Override] public function process( ?string $userId, array $input, callable $reportProgress, SynchronousProviderOptions $options = new SynchronousProviderOptions(), ): array; }