34 lines
644 B
PHP
34 lines
644 B
PHP
<?php
|
|
|
|
namespace App\Interfaces;
|
|
|
|
interface IsExportable
|
|
{
|
|
/**
|
|
* Get the formatted csv line for the current model.
|
|
*
|
|
* @return array
|
|
*/
|
|
public function getFormattedCsvLine(): array;
|
|
|
|
/**
|
|
* Get the csv headers for this model.
|
|
*
|
|
* @return array
|
|
*/
|
|
public static function getCsvHeaders(): array;
|
|
|
|
/**
|
|
* 'file_extension' virtual property.
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getFileExtensionAttribute(): string;
|
|
|
|
/**
|
|
* 'export_file_name' virtual property.
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getExportFileNameAttribute(): string;
|
|
}
|