export interface GenericApiResponse {
  success: boolean;
  message: string;
  errorCode?: number;
}

export interface SendEmailOtpPayload {
  email: string;
}

export interface ConfirmEmailOtpPayload {
  email: string;
  otpCode: string;
}

export interface CompleteUserInfoPayload {
  firstName: string;
  lastName: string;
  // TODO: fix this
  gender: 0 | 1 | 2;
  nationalCode: string;
  birthDate: Date | null;
  countryCode: string;
  savePassword?: boolean;
  password?: string;
  saveEmail?: boolean;
  email?: string;
}

export interface CompleteUserInfoResponse extends GenericApiResponse {
  validations: { property: string; message: string }[] | null;
}
