27 lines
493 B
PHP
27 lines
493 B
PHP
<?php
|
|
|
|
namespace App\Contracts;
|
|
|
|
interface SchemaDiscoveryInterface
|
|
{
|
|
/**
|
|
* List all databases.
|
|
*/
|
|
public function getDatabases(): array;
|
|
|
|
/**
|
|
* List all tables in the current database.
|
|
*/
|
|
public function getTables(): array;
|
|
|
|
/**
|
|
* Get the schema of a specific table.
|
|
*/
|
|
public function getTableSchema(string $table): array;
|
|
|
|
/**
|
|
* Get foreign keys for a table.
|
|
*/
|
|
public function getForeignKeys(string $table): array;
|
|
}
|