vd/vendor/dipper/excel/src/Importer.php
2018-12-29 10:19:35 +08:00

52 lines
1.5 KiB
PHP

<?php
namespace Dipper\Excel;
use Illuminate\Support\Collection;
use Illuminate\Contracts\Queue\ShouldQueue;
use Dipper\Excel\Bus\PendingDispatch;
use Symfony\Component\HttpFoundation\File\UploadedFile;
interface Importer
{
/**
* @param object $import
* @param string|UploadedFile $filePath
* @param string|null $disk
* @param string|null $readerType
*
* @return Reader|PendingDispatch
*/
public function import($import, $filePath, string $disk = null, string $readerType = null);
/**
* @param object $import
* @param string|UploadedFile $filePath
* @param string|null $disk
* @param string|null $readerType
*
* @return array
*/
public function toArray($import, $filePath, string $disk = null, string $readerType = null): array;
/**
* @param object $import
* @param string|UploadedFile $filePath
* @param string|null $disk
* @param string|null $readerType
*
* @return Collection
*/
public function toCollection($import, $filePath, string $disk = null, string $readerType = null): Collection;
/**
* @param ShouldQueue $import
* @param string|UploadedFile $filePath
* @param string|null $disk
* @param string $readerType
*
* @return PendingDispatch
*/
public function queueImport(ShouldQueue $import, $filePath, string $disk = null, string $readerType = null);
}