using Microsoft.Data.SqlClient;
namespace Database.Seed;
///
/// Defines a unit of seed data that can be applied to the database. Implementations
/// should be safe to run against an already-seeded database (e.g. by checking for
/// existing data before inserting) and may depend on data created by seeders that run
/// before them.
///
internal interface ISeeder
{
///
/// Inserts this seeder's data into the database using the supplied open connection.
///
/// An open connection to the target database.
/// A task that completes when seeding is finished.
Task SeedAsync(SqlConnection connection);
}