| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 | 
							- using System;
 
- using System.Collections.Generic;
 
- using InABox.Core;
 
- namespace InABox.Clients
 
- {
 
-     
 
-     
 
-     public interface IClient
 
-     {
 
-         IValidationData Validate(string userid, string password, Guid session = default);
 
-         IValidationData Validate(string pin, Guid session = default);
 
-         IValidationData Validate(Guid session);
 
-         CoreTable Query(object? filter = null, object? columns = null, object? sort = null, CoreRange? range = null);
 
-         Entity[] Load(object? filter = null, object? sort = null, CoreRange? range = null);
 
-         void Save(object entity, string auditnote);
 
-         void Save(IEnumerable<object> entities, string auditnote);
 
-         void Delete(object entity, string auditnote);
 
-         void Delete(IEnumerable<object> entities, string auditnote);
 
-         Dictionary<string, CoreTable> QueryMultiple(Dictionary<string, IQueryDef> queries);
 
-         void QueryMultiple(Action<Dictionary<string, CoreTable>?, Exception?> callback, Dictionary<string, IQueryDef> queries);
 
-         bool Check2FA(string code, Guid? session = null);
 
-         /// <summary>
 
-         /// Check if the server is running
 
-         /// </summary>
 
-         /// <returns><c>true</c> if the server is running</returns>
 
-         bool Ping();
 
-         
 
-         /// <summary>
 
-         /// Get general information about this server
 
-         /// </summary>
 
-         /// <returns>DatabaseInfo</returns>
 
-         DatabaseInfo? Info();
 
-         string Version();
 
-         string ReleaseNotes();
 
-         byte[]? Installer();
 
-         IEnumerable<string> SupportedTypes();
 
-         
 
-         event LogEvent OnLog;
 
-         bool IsConnected();
 
-     }
 
-     public interface IClient<TEntity> : IClient where TEntity : Entity, new()
 
-     {
 
-         CoreTable Query(Filter<TEntity>? filter = null, Columns<TEntity>? columns = null, SortOrder<TEntity>? sort = null, CoreRange? range = null);
 
-         void Query(Filter<TEntity>? filter, Columns<TEntity>? columns, SortOrder<TEntity>? sort, CoreRange? range, Action<CoreTable?, Exception?> callback);
 
-         TEntity[] Load(Filter<TEntity>? filter = null, SortOrder<TEntity>? sort = null, CoreRange? range = null);
 
-         void Load(Filter<TEntity>? filter, SortOrder<TEntity>? sort, CoreRange? range, Action<TEntity[]?, Exception?> callback);
 
-         void Save(TEntity entity, string auditnote);
 
-         void Save(IEnumerable<TEntity> entities, string auditnote);
 
-         void Save(TEntity entity, string auditnote, Action<TEntity, Exception?> callback);
 
-         void Save(IEnumerable<TEntity> entity, string auditnote, Action<IEnumerable<TEntity>, Exception?> callback);
 
-         void Delete(TEntity entity, string auditnote);
 
-         void Delete(IEnumerable<TEntity> entities, string auditnote);
 
-         void Delete(TEntity entity, string auditnote, Action<TEntity, Exception?> callback);
 
-         void Delete(IEnumerable<TEntity> entity, string auditnote, Action<IList<TEntity>, Exception?> callback);
 
-         
 
-     }
 
- }
 
 
  |