Bitwarden-app-android-iphon.../src/Core/Abstractions/IApiService.cs

58 lines
2.9 KiB
C#
Raw Normal View History

2019-04-16 17:07:44 +02:00
using Bit.Core.Models.Domain;
using Bit.Core.Models.Request;
using Bit.Core.Models.Response;
using System;
2019-04-17 23:10:21 +02:00
using System.Collections.Generic;
2019-04-16 17:07:44 +02:00
using System.Net.Http;
using System.Threading.Tasks;
2019-04-12 05:57:05 +02:00
namespace Bit.Core.Abstractions
{
public interface IApiService
{
2019-04-16 17:07:44 +02:00
string ApiBaseUrl { get; set; }
string IdentityBaseUrl { get; set; }
2019-06-25 22:36:21 +02:00
string EventsBaseUrl { get; set; }
2019-04-16 17:07:44 +02:00
bool UrlsSet { get; }
Task DeleteCipherAsync(string id);
Task DeleteCipherAttachmentAsync(string id, string attachmentId);
Task DeleteFolderAsync(string id);
Task<IdentityTokenResponse> DoRefreshTokenAsync();
Task<long> GetAccountRevisionDateAsync();
Task<string> GetActiveBearerTokenAsync();
Task<CipherResponse> GetCipherAsync(string id);
Task<FolderResponse> GetFolderAsync(string id);
Task<ProfileResponse> GetProfileAsync();
2019-04-17 18:12:43 +02:00
Task<SyncResponse> GetSyncAsync();
2019-04-16 17:07:44 +02:00
Task PostAccountKeysAsync(KeysRequest request);
Task PostAccountVerifyPasswordAsync(PasswordVerificationRequest request);
2019-04-16 17:07:44 +02:00
Task<CipherResponse> PostCipherAsync(CipherRequest request);
Task<CipherResponse> PostCipherCreateAsync(CipherCreateRequest request);
Task<FolderResponse> PostFolderAsync(FolderRequest request);
Task<Tuple<IdentityTokenResponse, IdentityTwoFactorResponse>> PostIdentityTokenAsync(TokenRequest request);
Task PostPasswordHintAsync(PasswordHintRequest request);
Task SetPasswordAsync(SetPasswordRequest request);
2019-04-16 17:07:44 +02:00
Task<PreloginResponse> PostPreloginAsync(PreloginRequest request);
Task PostRegisterAsync(RegisterRequest request);
Task<CipherResponse> PutCipherAsync(string id, CipherRequest request);
Task PutCipherCollectionsAsync(string id, CipherCollectionsRequest request);
Task<FolderResponse> PutFolderAsync(string id, FolderRequest request);
Task<CipherResponse> PutShareCipherAsync(string id, CipherShareRequest request);
Task PutDeleteCipherAsync(string id);
Task<CipherResponse> PutRestoreCipherAsync(string id);
2019-04-16 17:07:44 +02:00
Task RefreshIdentityTokenAsync();
Task<object> PreValidateSso(string identifier);
2019-04-16 17:07:44 +02:00
Task<TResponse> SendAsync<TRequest, TResponse>(HttpMethod method, string path,
TRequest body, bool authed, bool hasResponse);
void SetUrls(EnvironmentUrls urls);
2019-04-16 23:21:04 +02:00
Task<CipherResponse> PostCipherAttachmentAsync(string id, MultipartFormDataContent data);
Task PostShareCipherAttachmentAsync(string id, string attachmentId, MultipartFormDataContent data,
string organizationId);
2019-04-17 23:10:21 +02:00
Task<List<BreachAccountResponse>> GetHibpBreachAsync(string username);
2019-05-27 16:28:38 +02:00
Task PostTwoFactorEmailAsync(TwoFactorEmailRequest request);
2019-05-28 18:01:55 +02:00
Task PutDeviceTokenAsync(string identifier, DeviceTokenRequest request);
2019-07-11 15:30:25 +02:00
Task PostEventsCollectAsync(IEnumerable<EventRequest> request);
2019-04-12 05:57:05 +02:00
}
}