# easy-invoice/2.3.2/includes/Migration/Src/MigrationInterface.php

Easy Invoice – Invoice Generator, PDF Quotes &amp; Payments, version 2.3.2. 53 lines.

- Page: https://pluginprobe.com/plugins/easy-invoice/2.3.2/code/includes/Migration/Src/MigrationInterface.php
- Raw: https://pluginprobe.com/plugins/easy-invoice/2.3.2/raw/includes/Migration/Src/MigrationInterface.php
- Modified: 2025-08-19T15:19:02+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/easy-invoice/2.3.2/code/includes/Migration/Src/MigrationInterface.php#L10-L20`.

```php
<?php
/**
 * Migration Interface for Easy Invoice
 *
 * @package     EasyInvoice
 * @subpackage  Migration
 * @since       2.0.0
 */

namespace EasyInvoice\Migration\Src;

/**
 * Migration interface.
 *
 * All migration classes must implement this interface.
 *
 * @since 2.0.0
 */
interface MigrationInterface {

    /**
     * Run the migration.
     *
     * @since 2.0.0
     * @return array Migration result with 'success' and 'message' keys.
     */
    public function migrate(): array;

    /**
     * Check if migration is needed.
     *
     * @since 2.0.0
     * @return bool
     */
    public function is_needed(): bool;

    /**
     * Get migration description.
     *
     * @since 2.0.0
     * @return string
     */
    public function get_description(): string;

    /**
     * Get migration version.
     *
     * @since 2.0.0
     * @return string
     */
    public function get_version(): string;
}

```
