export enum ActivityType {
  TASK_CREATED = 'task_created',
  TASK_UPDATED = 'task_updated',
  TASK_ASSIGNED = 'task_assigned',
  TASK_STATUS_CHANGED = 'task_status_changed',
  SUBMISSION_CREATED = 'submission_created',
  SUBMISSION_REVIEWED = 'submission_reviewed',
  COMMENT_ADDED = 'comment_added',
  ASSET_CREATED = 'asset_created',
  ASSET_UPDATED = 'asset_updated',
  SHOT_CREATED = 'shot_created',
  SHOT_UPDATED = 'shot_updated',
  PROJECT_CREATED = 'project_created',
  PROJECT_UPDATED = 'project_updated',
  USER_JOINED_PROJECT = 'user_joined_project'
}

export interface UserInfo {
  id: number
  first_name: string
  last_name: string
  email: string
  avatar_url: string
}

export interface Activity {
  id: number
  type: ActivityType
  user_id: number
  user: UserInfo
  project_id?: number
  task_id?: number
  asset_id?: number
  shot_id?: number
  submission_id?: number
  description: string
  activity_metadata?: Record<string, any>
  created_at: string
}
