namespace Campaign_Tracker.Server.ExtensionData;
///
/// Contract that every extension record type must satisfy to participate in
/// legacy-identifier linking (AC #1) and nightly integrity checks (AC #4).
///
public interface ILegacyLinkedRecord
{
/// Domain type name used in integrity reports (e.g. "MunicipalityProfile").
string RecordType { get; }
/// Stable identifier for this specific record instance (e.g. its primary key).
string RecordId { get; }
/// The required legacy foreign reference stored on this record.
LegacyLinkReference LegacyLink { get; }
}