using System.Threading.Tasks; using SharedLibraryCore.Helpers; namespace SharedLibraryCore.Interfaces { /// <summary> /// defines the capabilities of a resource queryier /// </summary> /// <typeparam name="QueryType">Type of query</typeparam> /// <typeparam name="ResultType">Type of result</typeparam> public interface IResourceQueryHelper<QueryType, ResultType> { /// <summary> /// queries a resource and returns the result of the query /// </summary> /// <param name="query">query params</param> /// <returns></returns> Task<ResourceQueryHelperResult<ResultType>> QueryResource(QueryType query); } }