import { ObjectId, Types } from "mongoose";  
import {Request} from "express"

enum STATUSCODE_ENUM {
    UNKNOWN_ERROR,
    FORM_REQUIREMENT_ERROR,
    PAGE_NOT_FOUND, 
    RESOURCE_NOT_FOUND, 
    RESOURCE_ALREADY_EXIST,
    SUCCESS,
    ORIGIN_NOT_ALLOWED,
    UNAUTHORIZED,
    FORBIDDEN,
    EVENT_SENT_SUCCESSFULLY,
    EVENT_NOT_SENT,
    USER_NOT_FOUND,
    LOGIN_SUCCESSFUL,
    LOGOUT_SUCCESSFUL,
    LOGIN_FAILED,
    PASSWORD_RESET_TOKEN_SENT,
    INCORRECT_PASSWORD,
    BAD_REQUEST,
    LOGIN_RECORDS_FOUND,
    LOGIN_RECORDS_NOT_FOUND,
    ACCOUNT_ACTIVATED_ALREADY,
    PASSWORD_RESET_SUCCESSFUL,
    SKILL_CATEGORIES_RETRIEVED,

    PROFILE_ALREADY_EXIST
  }
  
  export type RESPONSE_TYPE = {
    message: string;
    data: any[];
    statusCode: STATUSCODE;
    status: number;
  };
  
  
  export type STATUSCODE = keyof typeof STATUSCODE_ENUM;
   

   
 
export type LoginData= {
email?: string;
phoneNumber?: string;
password: string;

}

 

export type OtpData = {
  email: string;
  otp: string;
}

export interface TokenPayload {
  email: string;
  id: string;
  time: number;
}


export interface GeneralObject {
  [key: string]: any;
}
 

   