. */ declare(strict_types=1); namespace FireflyIII\Import\Configuration; use FireflyIII\Models\ImportJob; /** * Interface ConfiguratorInterface. */ interface ConfiguratorInterface { /** * ConfiguratorInterface constructor. */ public function __construct(); /** * Store any data from the $data array into the job. * * @param array $data * * @return bool */ public function configureJob(array $data): bool; /** * Return the data required for the next step in the job configuration. * * @return array */ public function getNextData(): array; /** * Returns the view of the next step in the job configuration. * * @return string */ public function getNextView(): string; /** * Return possible warning to user. * * @return string */ public function getWarningMessage(): string; /** * Returns true when the initial configuration for this job is complete. * * @return bool */ public function isJobConfigured(): bool; /** * @param ImportJob $job */ public function setJob(ImportJob $job); }