using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using xIdentityModels.Models; using xModels.Dtos; using xPushService.Interfaces; using xStringService.Models.Dtos; using xStringService.Models.Entities; using xStringService.Providers.Dtos; namespace xStringService.Interfaces { public interface IXStringProvider : IXBaseProvided { // #region Tools ... /// /// Retrieve a List of Exists Languages ... /// /// /// Task> GetLanguages( CancellationToken cancellationToken = default ); /// /// Retrieve a List of Resource Titles ... /// /// if provided, returns all language Specified resource titles, if not, all Resource Titles /// /// Task> GetResourceTitles( string language = null, CancellationToken cancellationToken = default ); /// /// Retrieve all Exists Items which belongs to Specified Resource Title ... /// /// Specified Resource Title /// /// Task> GetResourceLocales( string resource, CancellationToken cancellationToken = default ); /// /// Extract Translation of a Resource in Specified Language ... /// /// Specified Language ... /// Specified Resource Title ... /// /// Task GetResourceTranslation( string language, string resource, CancellationToken cancellationToken = default ); /// /// Retrieve a Resource as Locale Model ... /// /// Specified Language ... /// Specified Resource Title ... /// /// Task GetLocale( string language, string resource, CancellationToken cancellationToken = default ); /// /// Retrieve all Exists Resource Instances as Locale Models ... /// /// /// /// Task> GetLocales( string resource, CancellationToken cancellationToken = default ); /// /// Retrieve all Locales of Specified Resource and Represent as XResourceDto ... /// /// /// /// Task GetResource( string resource, CancellationToken cancellationToken = default ); /// /// Add or Update a Resource Model ... /// /// a XResourceDto Model ... /// Actor User for Permissions ... /// /// /// Task AddOrUpdateResource( XResourceDto resource, XUserClaimsInfoDto userInfo = null, string connectionId = null, CancellationToken cancellationToken = default ); /// /// Remove Specified Resource Model ... /// /// a XResourceDto Model ... /// Actor User for Permissions ... /// /// /// Task RemoveResource( XResourceDto resource, XUserClaimsInfoDto userInfo = null, string connectionId = null, CancellationToken cancellationToken = default ); #endregion } }