2018-02-19 19:07:19 +01:00
|
|
|
import { EnvironmentUrls } from '../models/domain/environmentUrls';
|
2018-01-09 22:19:55 +01:00
|
|
|
|
2018-06-12 23:12:27 +02:00
|
|
|
import { CipherBulkDeleteRequest } from '../models/request/cipherBulkDeleteRequest';
|
|
|
|
import { CipherBulkMoveRequest } from '../models/request/cipherBulkMoveRequest';
|
2018-06-13 06:02:15 +02:00
|
|
|
import { CipherBulkShareRequest } from '../models/request/cipherBulkShareRequest';
|
2018-06-12 19:07:06 +02:00
|
|
|
import { CipherCollectionsRequest } from '../models/request/cipherCollectionsRequest';
|
2018-02-19 19:07:19 +01:00
|
|
|
import { CipherRequest } from '../models/request/cipherRequest';
|
2018-06-12 17:45:02 +02:00
|
|
|
import { CipherShareRequest } from '../models/request/cipherShareRequest';
|
2018-06-21 20:28:49 +02:00
|
|
|
import { EmailRequest } from '../models/request/emailRequest';
|
|
|
|
import { EmailTokenRequest } from '../models/request/emailTokenRequest';
|
2018-02-19 19:07:19 +01:00
|
|
|
import { FolderRequest } from '../models/request/folderRequest';
|
2018-06-23 21:41:22 +02:00
|
|
|
import { ImportCiphersRequest } from '../models/request/importCiphersRequest';
|
2018-04-30 23:00:31 +02:00
|
|
|
import { ImportDirectoryRequest } from '../models/request/importDirectoryRequest';
|
2018-06-23 21:41:22 +02:00
|
|
|
import { ImportOrganizationCiphersRequest } from '../models/request/importOrganizationCiphersRequest';
|
2018-02-19 19:07:19 +01:00
|
|
|
import { PasswordHintRequest } from '../models/request/passwordHintRequest';
|
2018-06-21 20:28:49 +02:00
|
|
|
import { PasswordRequest } from '../models/request/passwordRequest';
|
2018-06-21 23:15:43 +02:00
|
|
|
import { PasswordVerificationRequest } from '../models/request/passwordVerificationRequest';
|
2018-02-19 19:07:19 +01:00
|
|
|
import { RegisterRequest } from '../models/request/registerRequest';
|
|
|
|
import { TokenRequest } from '../models/request/tokenRequest';
|
|
|
|
import { TwoFactorEmailRequest } from '../models/request/twoFactorEmailRequest';
|
2018-06-26 21:17:14 +02:00
|
|
|
import { TwoFactorProviderRequest } from '../models/request/twoFactorProviderRequest';
|
|
|
|
import { TwoFactorRecoveryRequest } from '../models/request/twoFactorRecoveryRequest';
|
2018-06-26 05:09:32 +02:00
|
|
|
import { UpdateDomainsRequest } from '../models/request/updateDomainsRequest';
|
2018-06-21 05:40:59 +02:00
|
|
|
import { UpdateProfileRequest } from '../models/request/updateProfileRequest';
|
2018-06-26 21:17:14 +02:00
|
|
|
import { UpdateTwoFactorAuthenticatorRequest } from '../models/request/updateTwoFactorAuthenticatorRequest';
|
|
|
|
import { UpdateTwoFactorDuoRequest } from '../models/request/updateTwoFactorDuoRequest';
|
|
|
|
import { UpdateTwoFactorEmailRequest } from '../models/request/updateTwoFactorEmailRequest';
|
|
|
|
import { UpdateTwoFactorU2fRequest } from '../models/request/updateTwoFactorU2fRequest';
|
|
|
|
import { UpdateTwoFactorYubioOtpRequest } from '../models/request/updateTwoFactorYubioOtpRequest';
|
2018-01-09 22:19:55 +01:00
|
|
|
|
2018-02-19 19:07:19 +01:00
|
|
|
import { CipherResponse } from '../models/response/cipherResponse';
|
2018-06-26 05:09:32 +02:00
|
|
|
import { DomainsResponse } from '../models/response/domainsResponse';
|
2018-02-19 19:07:19 +01:00
|
|
|
import { FolderResponse } from '../models/response/folderResponse';
|
|
|
|
import { IdentityTokenResponse } from '../models/response/identityTokenResponse';
|
|
|
|
import { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';
|
2018-06-26 21:17:14 +02:00
|
|
|
import { ListResponse } from '../models/response/listResponse';
|
2018-05-03 18:46:49 +02:00
|
|
|
import { ProfileResponse } from '../models/response/profileResponse';
|
2018-02-19 19:07:19 +01:00
|
|
|
import { SyncResponse } from '../models/response/syncResponse';
|
2018-06-26 21:17:14 +02:00
|
|
|
import { TwoFactorAuthenticatorResponse } from '../models/response/twoFactorAuthenticatorResponse';
|
|
|
|
import { TwoFactorDuoResponse } from '../models/response/twoFactorDuoResponse';
|
|
|
|
import { TwoFactorEmailResponse } from '../models/response/twoFactorEmailResponse';
|
|
|
|
import { TwoFactorProviderResponse } from '../models/response/twoFactorProviderResponse';
|
|
|
|
import { TwoFactorRecoverResponse } from '../models/response/twoFactorRescoverResponse';
|
|
|
|
import { TwoFactorU2fResponse } from '../models/response/twoFactorU2fResponse';
|
|
|
|
import { TwoFactorYubiKeyResponse } from '../models/response/twoFactorYubiKeyResponse';
|
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;
|
2018-06-14 04:12:23 +02:00
|
|
|
apiBaseUrl: string;
|
|
|
|
identityBaseUrl: string;
|
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>;
|
2018-05-03 18:46:49 +02:00
|
|
|
getProfile: () => Promise<ProfileResponse>;
|
2018-06-21 05:40:59 +02:00
|
|
|
putProfile: (request: UpdateProfileRequest) => Promise<ProfileResponse>;
|
2018-06-21 20:28:49 +02:00
|
|
|
postEmailToken: (request: EmailTokenRequest) => Promise<any>;
|
|
|
|
postEmail: (request: EmailRequest) => Promise<any>;
|
|
|
|
postPassword: (request: PasswordRequest) => Promise<any>;
|
2018-06-21 23:15:43 +02:00
|
|
|
postSecurityStamp: (request: PasswordVerificationRequest) => Promise<any>;
|
|
|
|
postDeleteAccount: (request: PasswordVerificationRequest) => Promise<any>;
|
2018-01-31 20:27:11 +01:00
|
|
|
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>;
|
2018-06-12 23:12:27 +02:00
|
|
|
deleteManyCiphers: (request: CipherBulkDeleteRequest) => Promise<any>;
|
|
|
|
putMoveCiphers: (request: CipherBulkMoveRequest) => Promise<any>;
|
2018-06-12 19:07:06 +02:00
|
|
|
putShareCipher: (id: string, request: CipherShareRequest) => Promise<any>;
|
2018-06-13 06:02:15 +02:00
|
|
|
putShareCiphers: (request: CipherBulkShareRequest) => Promise<any>;
|
2018-06-12 19:07:06 +02:00
|
|
|
putCipherCollections: (id: string, request: CipherCollectionsRequest) => Promise<any>;
|
2018-06-21 23:15:43 +02:00
|
|
|
postPurgeCiphers: (request: PasswordVerificationRequest) => Promise<any>;
|
2018-06-23 21:41:22 +02:00
|
|
|
postImportCiphers: (request: ImportCiphersRequest) => Promise<any>;
|
|
|
|
postImportOrganizationCiphers: (request: ImportOrganizationCiphersRequest) => Promise<any>;
|
2018-01-31 20:27:11 +01:00
|
|
|
postCipherAttachment: (id: string, data: FormData) => Promise<CipherResponse>;
|
|
|
|
deleteCipherAttachment: (id: string, attachmentId: string) => Promise<any>;
|
2018-06-12 19:07:06 +02:00
|
|
|
postShareCipherAttachment: (id: string, attachmentId: string, data: FormData,
|
|
|
|
organizationId: string) => Promise<any>;
|
2018-01-31 20:27:11 +01:00
|
|
|
getSync: () => Promise<SyncResponse>;
|
2018-04-30 23:00:31 +02:00
|
|
|
postImportDirectory: (organizationId: string, request: ImportDirectoryRequest) => Promise<any>;
|
2018-06-26 05:09:32 +02:00
|
|
|
getSettingsDomains: () => Promise<DomainsResponse>;
|
|
|
|
putSettingsDomains: (request: UpdateDomainsRequest) => Promise<DomainsResponse>;
|
2018-06-26 21:17:14 +02:00
|
|
|
getTwoFactorProviders: () => Promise<ListResponse<TwoFactorProviderResponse>>;
|
|
|
|
getTwoFactorAuthenticator: (request: PasswordVerificationRequest) => Promise<TwoFactorAuthenticatorResponse>;
|
|
|
|
getTwoFactorEmail: (request: PasswordVerificationRequest) => Promise<TwoFactorEmailResponse>;
|
|
|
|
getTwoFactorDuo: (request: PasswordVerificationRequest) => Promise<TwoFactorDuoResponse>;
|
|
|
|
getTwoFactorYubiKey: (request: PasswordVerificationRequest) => Promise<TwoFactorYubiKeyResponse>;
|
|
|
|
getTwoFactorU2f: (request: PasswordVerificationRequest) => Promise<TwoFactorU2fResponse>;
|
|
|
|
getTwoFactorRecover: (request: PasswordVerificationRequest) => Promise<TwoFactorRecoverResponse>;
|
|
|
|
putTwoFactorAuthenticator: (
|
|
|
|
request: UpdateTwoFactorAuthenticatorRequest) => Promise<TwoFactorAuthenticatorResponse>;
|
|
|
|
putTwoFactorEmail: (request: UpdateTwoFactorEmailRequest) => Promise<TwoFactorEmailResponse>;
|
|
|
|
putTwoFactorDuo: (request: UpdateTwoFactorDuoRequest) => Promise<TwoFactorDuoResponse>;
|
|
|
|
putTwoFactorYubiKey: (request: UpdateTwoFactorYubioOtpRequest) => Promise<TwoFactorYubiKeyResponse>;
|
|
|
|
putTwoFactorU2f: (request: UpdateTwoFactorU2fRequest) => Promise<TwoFactorU2fResponse>;
|
|
|
|
putTwoFactorDisable: (request: TwoFactorProviderRequest) => Promise<TwoFactorProviderResponse>;
|
|
|
|
postTwoFactorRecover: (request: TwoFactorRecoveryRequest) => Promise<any>;
|
2018-01-09 22:19:55 +01:00
|
|
|
}
|