// 활동 피드 도메인 타입 — 백엔드 ActivityResponse 와 1:1

import type { ApiMember } from '@/types/repo'

// 활동 이벤트 타입(백엔드 ActivityType 과 동일 문자열)
export type ApiActivityType =
  | 'project.created'
  | 'project.renamed'
  | 'member.invited'
  | 'member.role_changed'
  | 'member.removed'
  | 'task.created'
  | 'task.status_changed'
  | 'task.comment_added'
  | 'task.file_attached'
  | 'task.assignees_changed'
  | 'task.due_changed'
  | 'task.edited'
  | 'task.file_removed'
  | 'task.removed'

// 활동(API 원시) — 표시 문구/아이콘/톤은 프론트가 type+payload 로 조립한다
export interface ApiActivity {
  id: string
  type: ApiActivityType
  actor: ApiMember | null
  taskSeq: number | null
  payload: Record<string, unknown>
  createdAt: string
}
