a2r
Version:
A2R Framework
42 lines (41 loc) • 755 B
TypeScript
/**
* User info
*/
export interface User {
_id: string;
email: string;
password: string;
verified?: boolean;
roles: string[];
}
/**
* Basic A2R user
*/
export declare type A2RUser = Omit<User, 'roles'>;
/**
* New user
*/
export declare type NewA2RUser = Omit<A2RUser, '_id' | 'verified'>;
/**
* Minimal user token info
*/
declare type UserTokenInfo = Pick<User, '_id'>;
/**
* User info stored in token
*/
export declare type A2RUserTokenInfo = UserTokenInfo & Partial<Pick<User, 'roles'>>;
/**
* Basic response
*/
export interface Response {
ok: boolean;
error?: string;
}
/**
* Login response
*/
export interface LoginResponse extends Response {
info?: A2RUserTokenInfo;
userToken?: string;
}
export {};