2018-02-19 18:33:32 +01:00
|
|
|
import { EnvironmentUrls } from '../models/domain';
|
2018-01-09 22:19:55 +01:00
|
|
|
|
2018-02-19 18:33:32 +01:00
|
|
|
import {
|
|
|
|
CipherRequest,
|
|
|
|
FolderRequest,
|
|
|
|
PasswordHintRequest,
|
|
|
|
RegisterRequest,
|
|
|
|
TokenRequest,
|
|
|
|
TwoFactorEmailRequest,
|
|
|
|
} from '../models/request';
|
2018-01-09 22:19:55 +01:00
|
|
|
|
2018-02-19 18:33:32 +01:00
|
|
|
import {
|
|
|
|
CipherResponse,
|
|
|
|
FolderResponse,
|
|
|
|
IdentityTokenResponse,
|
|
|
|
IdentityTwoFactorResponse,
|
|
|
|
SyncResponse,
|
|
|
|
} from '../models/response';
|
2018-01-09 22:19:55 +01:00
|
|
|
|
2018-01-31 20:27:11 +01:00
|
|
|
export abstract class ApiService {
|
2018-01-09 22:19:55 +01:00
|
|
|
urlsSet: boolean;
|
|
|
|
baseUrl: string;
|
|
|
|
identityBaseUrl: string;
|
|
|
|
deviceType: string;
|
|
|
|
logoutCallback: Function;
|
2018-01-31 20:27:11 +01:00
|
|
|
|
|
|
|
setUrls: (urls: EnvironmentUrls) => void;
|
2018-02-02 04:55:49 +01:00
|
|
|
postIdentityToken: (request: TokenRequest) => Promise<IdentityTokenResponse | IdentityTwoFactorResponse>;
|
2018-01-31 20:27:11 +01:00
|
|
|
refreshIdentityToken: () => Promise<any>;
|
|
|
|
postTwoFactorEmail: (request: TwoFactorEmailRequest) => Promise<any>;
|
|
|
|
getAccountRevisionDate: () => Promise<number>;
|
|
|
|
postPasswordHint: (request: PasswordHintRequest) => Promise<any>;
|
|
|
|
postRegister: (request: RegisterRequest) => Promise<any>;
|
|
|
|
postFolder: (request: FolderRequest) => Promise<FolderResponse>;
|
|
|
|
putFolder: (id: string, request: FolderRequest) => Promise<FolderResponse>;
|
|
|
|
deleteFolder: (id: string) => Promise<any>;
|
|
|
|
postCipher: (request: CipherRequest) => Promise<CipherResponse>;
|
|
|
|
putCipher: (id: string, request: CipherRequest) => Promise<CipherResponse>;
|
|
|
|
deleteCipher: (id: string) => Promise<any>;
|
|
|
|
postCipherAttachment: (id: string, data: FormData) => Promise<CipherResponse>;
|
|
|
|
deleteCipherAttachment: (id: string, attachmentId: string) => Promise<any>;
|
|
|
|
getSync: () => Promise<SyncResponse>;
|
2018-01-09 22:19:55 +01:00
|
|
|
}
|