/// <summary>
 /// Add a custom implementation for <see cref="UsersTable{TUser, TKey, TUserClaim, TUserRole, TUserLogin, TUserToken}"/>.
 /// </summary>
 /// <typeparam name="TUsersTable">The type of the table to register.</typeparam>
 /// <typeparam name="TUser">The type representing a user.</typeparam>
 /// <typeparam name="TKey">The type of the primary key for a role and user.</typeparam>
 /// <param name="options">Options for configuring Dapper stores.</param>
 public static void AddUsersTable <TUsersTable, TUser, TKey>(this DapperStoreOptions options)
     where TUsersTable : UsersTable <TUser, TKey, IdentityUserClaim <TKey>, IdentityUserRole <TKey>, IdentityUserLogin <TKey>, IdentityUserToken <TKey> >
     where TUser : IdentityUser <TKey>
     where TKey : IEquatable <TKey>
 {
     options.AddUsersTable <TUsersTable, TUser, TKey, IdentityUserClaim <TKey>, IdentityUserRole <TKey>, IdentityUserLogin <TKey>, IdentityUserToken <TKey> >();
 }
 /// <summary>
 /// Add a custom implementation for <see cref="UsersTable{TUser, TKey, TUserClaim, TUserRole, TUserLogin, TUserToken}"/>.
 /// </summary>
 /// <typeparam name="TUsersTable">The type of the table to register.</typeparam>
 /// <typeparam name="TUser">The type representing a user.</typeparam>
 /// <param name="options">Options for configuring Dapper stores.</param>
 public static void AddUsersTable <TUsersTable, TUser>(this DapperStoreOptions options)
     where TUsersTable : UsersTable <TUser, string, IdentityUserClaim <string>, IdentityUserRole <string>, IdentityUserLogin <string>, IdentityUserToken <string> >
     where TUser : IdentityUser <string>
 {
     options.AddUsersTable <TUsersTable, TUser, string>();
 }