import { BaseEntity } from '../../../shared/types/base-entity';

export interface IUser extends BaseEntity {
  email: string;
  username: string;
  firstName?: string;
  lastName?: string;
  phone?: string;
  avatar?: string;
  isActive: boolean;
  lastLoginAt?: Date;
  emailVerified: boolean;
  phoneVerified: boolean;
  role: string;
  permissions: string[];
}

export interface IUserCreate {
  email: string;
  username: string;
  password: string;
  firstName?: string;
  lastName?: string;
  phone?: string;
  role?: string;
}

export interface IUserUpdate {
  firstName?: string;
  lastName?: string;
  phone?: string;
  avatar?: string;
  isActive?: boolean;
  role?: string;
  permissions?: string[];
} 