auth-mn
Version:
209 lines (208 loc) • 5 kB
TypeScript
export declare const genders: readonly ["MEN", "WOMEN"];
export type Gender = (typeof genders)[number];
export interface UserEmailItem {
email: string;
verified: boolean;
primary: boolean;
}
export interface UserPhoneItem {
number: string;
verified: boolean;
primary: boolean;
}
export interface UserAuthProfiles {
facebook_id?: string | null;
google_id?: string | null;
steam_id?: string | null;
apple_id?: string | null;
twitter_id?: string | null;
monpay_id?: string | null;
toki_id?: string | null;
social_id?: string | null;
hipay_id?: string | null;
digi_id?: string | null;
}
export interface UserPreferences {
language: string;
notifications: boolean;
}
export interface UserStatus {
is_active: boolean;
is_banned: boolean;
verified: boolean;
}
export interface UserSecurity {
password_hash: string;
two_factor_enabled: boolean;
last_password_change: Date | null;
}
export interface UserVerifyInfo {
first_name: string;
last_name: string;
born_date: Date | null;
national_id: string;
}
export interface UserAppItem {
app_name: string;
app_id: string;
device_id: string;
}
export interface UserWalletItem {
key_id: string;
wallet_id: string;
wallet_key: string;
wallet_type: string;
wallet_name: string;
role: string[];
}
type UserT = {
user_id: number;
user_name: string;
nick_name: string;
exp: number;
primary_email?: string | null;
primary_phone?: string | null;
emails: UserEmailItem[];
phone_numbers: UserPhoneItem[];
auth_profiles: UserAuthProfiles;
profile_image_url: string;
date_of_birth: Date | null;
gender?: Gender;
sign_up_date: Date | null;
last_login: Date | null;
wallets: UserWalletItem[];
preferences: UserPreferences;
status: UserStatus;
security: UserSecurity;
verify_info: UserVerifyInfo;
dynamic_info: Record<string, any>;
apps: UserAppItem[];
search_string?: string;
delFlg?: boolean;
order_index?: number;
};
type MerchantT = {
_id?: string;
user_id: number;
user_name?: string;
phone_number?: string;
user_role?: "merchant" | "sub-merchant";
avatar?: string;
authority?: string[];
user_email?: string;
password?: string;
show_router?: string[];
show_id?: string[];
merchant: {
toki_id: string;
hipay: string;
};
wallet_id?: string;
wallet_key?: string;
delFlg?: boolean;
createdAt?: Date;
updatedAt?: Date;
};
type AdminT = {
_id?: string;
user_id?: number;
user_name?: string;
phone_number?: number;
user_role?: "admin" | "sub-admin" | "super-admin";
avatar?: string;
authority?: string[];
user_email?: string;
password?: string;
show_router?: string[];
show_id?: string[];
delFlg?: boolean;
createdAt?: Date;
updatedAt?: Date;
};
type ClientT = {
_id?: string;
user_id?: number;
user_name?: string;
phone_number?: number;
user_role?: "crm" | "sub-crm";
avatar?: string;
authority?: string[];
user_email?: string;
password?: string;
show_router?: string[];
show_id?: string[];
RefundFun?: boolean;
delFlg?: boolean;
createdAt?: Date;
updatedAt?: Date;
};
type CrmT = {
_id?: string;
user_id?: number;
user_name?: string;
phone_number?: number;
user_role?: "crm" | "sub-crm";
avatar?: string;
authority?: string[];
user_email?: string;
password?: string;
show_router?: string[];
show_id?: string[];
RefundFun?: boolean;
delFlg?: boolean;
createdAt?: Date;
updatedAt?: Date;
};
export declare const USER: (body: UserT) => Promise<{
success: boolean;
data: UserT[];
message: string;
}>;
export declare const MERCHANT: (body: MerchantT) => Promise<{
success: boolean;
data: MerchantT[];
message: string;
}>;
export declare const ADMIN: (body: AdminT) => Promise<{
success: boolean;
data: AdminT[];
message: string;
}>;
export declare const CLIENT: (body: ClientT) => Promise<{
success: boolean;
data: ClientT[];
message: string;
}>;
export declare const CRM: (body: CrmT) => Promise<{
success: boolean;
data: CrmT[];
message: string;
}>;
declare const _default: {
USER: (body: UserT) => Promise<{
success: boolean;
data: UserT[];
message: string;
}>;
MERCHANT: (body: MerchantT) => Promise<{
success: boolean;
data: MerchantT[];
message: string;
}>;
ADMIN: (body: AdminT) => Promise<{
success: boolean;
data: AdminT[];
message: string;
}>;
CLIENT: (body: ClientT) => Promise<{
success: boolean;
data: ClientT[];
message: string;
}>;
CRM: (body: CrmT) => Promise<{
success: boolean;
data: CrmT[];
message: string;
}>;
};
export default _default;