Cleanup - unused files / unused exports / duplicate exports
[ProtonMail-WebClient.git] / packages / shared / lib / authentication / interface.ts
blobddaa68d1e3f3e9303551449d9939c369919e4ce7
1 import type { AuthenticationCredentialsPayload, AuthenticationOptions, RegisteredKey } from '../webauthn/interface';
3 export interface Fido2Response {
4     AuthenticationOptions: AuthenticationOptions;
5     RegisteredKeys: RegisteredKey[];
8 export type Fido2Data = AuthenticationCredentialsPayload;
10 export interface TwoFaResponse {
11     Enabled: number;
12     FIDO2: Fido2Response | null;
13     TOTP: number;
16 export interface AuthResponse {
17     AccessToken: string;
18     ExpiresIn: number;
19     TokenType: string;
20     Scope: string;
21     UID: string;
22     UserID: string;
23     RefreshToken: string;
24     EventID: string;
25     TemporaryPassword: 0 | 1;
26     PasswordMode: number;
27     LocalID: number;
28     TwoFactor: number;
29     '2FA': TwoFaResponse;
32 export interface PushForkResponse {
33     Selector: string;
36 export interface PullForkResponse {
37     Payload: string;
38     LocalID: number;
39     UID: string;
40     AccessToken: string;
41     RefreshToken: string;
42     ExpiresIn: number;
43     TokenType: string;
44     UserID: string;
45     Scopes: string[];
48 export interface RefreshSessionResponse {
49     AccessToken: string;
50     ExpiresIn: number;
51     TokenType: string;
52     Scope: string;
53     UID: string;
54     RefreshToken: string;
57 export interface LocalSessionResponse {
58     Username?: string;
59     DisplayName: string;
60     LocalID: number;
61     UserID: string;
62     PrimaryEmail?: string;
65 export type AuthVersion = 0 | 1 | 2 | 3 | 4;
67 export interface ChallengePayload {
68     [key: string]: string;
71 export interface InfoResponse {
72     Modulus: string;
73     ServerEphemeral: string;
74     Version: AuthVersion;
75     Salt: string;
76     SRPSession: string;
79 export interface SSOInfoResponse {
80     SSOChallengeToken: string;
83 export interface InfoAuthedResponse extends InfoResponse {
84     '2FA': TwoFaResponse;
87 export interface ModulusResponse {
88     Modulus: string;
89     ModulusID: string;
92 export interface LocalKeyResponse {
93     ClientKey: string;
96 export interface MemberAuthResponse {
97     UID: string;
98     LocalID: number;
101 export interface ExtraSessionForkData {
102     localID?: number;
103     email?: string | null;
104     returnUrl?: string;
105     pathname?: string;