<?php

namespace FiloBlu\Flow\Api;

use Exception;
use Magento\Framework\Model\AbstractModel;

/**
 * Interface DocumentInterface
 * @package FiloBlu\Flow\Api
 */
interface DocumentInterface
{

    /**
     * @return int|mixed
     */
    public function getId();

    /**
     * @param mixed $id
     * @return AbstractModel|mixed
     */
    public function setId($id);

    /**
     * @return mixed
     */
    public function getName();

    /**
     * @param $name
     * @return mixed
     */
    public function setName($name);

    /**
     * @return mixed
     */
    public function getMime();

    /**
     * @param $mime
     * @return mixed
     */
    public function setMime($mime);

    /**
     * @return mixed
     */
    public function getSource();

    /**
     * @param $source
     * @return mixed
     */
    public function setSource($source);

    /**
     * @return mixed
     */
    public function getDestination();

    /**
     * @param $destination
     * @return mixed
     */
    public function setDestination($destination);

    /**
     * @return mixed
     */
    public function getStatus();

    /**
     * @param $status
     * @return mixed
     */
    public function setStatus($status);

    /**
     * @return mixed
     */
    public function getMetaFile();

    /**
     * @param $file
     * @return mixed
     */
    public function setMetaFile($file);

    /**
     * @return mixed
     */
    public function getMetaInsertTime();

    /**
     * @param $time
     * @return mixed
     */
    public function setMetaInsertTime($time);

    /**
     * @return mixed
     */
    public function getMetaProcessed();

    /**
     * @param $meta_processed
     * @return mixed
     */
    public function setMetaProcessed($meta_processed);
}
