package readers import ( "git.warky.dev/wdevs/relspecgo/pkg/models" ) // Reader defines the interface for reading database specifications // from various input formats at different granularity levels type Reader interface { // ReadDatabase reads and parses the input, returning a Database model ReadDatabase() (*models.Database, error) // ReadSchema reads and parses the input, returning a Schema model ReadSchema() (*models.Schema, error) // ReadTable reads and parses the input, returning a Table model ReadTable() (*models.Table, error) } // ReaderOptions contains common options for readers type ReaderOptions struct { // FilePath is the path to the input file (if applicable) FilePath string // ConnectionString is the database connection string (for DB readers) ConnectionString string // Additional options can be added here as needed Metadata map[string]interface{} }