export type LanguageCode = "kh" | "en";

export const LANGUAGE_STORAGE_KEY = "gpsf-language";
export const DEFAULT_LANGUAGE: LanguageCode = "en";

export type HeaderNotification = {
  id: number;
  title: string;
  message: string;
  date: string;
  timeAgo: string;
};

export function getApiLanguage(language: LanguageCode): "km" | "en" {
  return language === "kh" ? "km" : "en";
}

export const translations = {
  kh: {
    language: "ភាសា",
    search: "ស្វែងរក",
    dashboard: "ផ្ទាំងគ្រប់គ្រង",

    notification: "ការជូនដំណឹង",
    notifications: "ការជូនដំណឹង",
    all: "ទាំងអស់",
    viewDetail: "មើលលម្អិត",

    profile: "ប្រវត្តិរូប",
    logout: "ចាកចេញ",

    accountSetting: "ការកំណត់គណនី",
    notificationSetting: "ការកំណត់ការជូនដំណឹង",
    myOrganization: "អង្គភាពរបស់ខ្ញុំ",
    downloadApp: "ទាញយកកម្មវិធី",

    mainMenu: "ម៉ឺនុយមេ",
    agricultureAgroIndustry: "កសិកម្ម និងកសិឧស្សាហកម្ម",

    plenary: "សម័យប្រជុំពេញអង្គ",
    plenaries: "សម័យប្រជុំពេញអង្គ",
    workingGroup: "ក្រុមការងារ",
    workingGroupAIssues: "បញ្ហាក្រុមការងារ A",
    meetingRequests: "សំណើប្រជុំ",
    meetingCalendar: "ប្រតិទិនប្រជុំ",
    meetingSummary: "សេចក្តីសង្ខេបកិច្ចប្រជុំ",
    progressReport: "របាយការណ៍វឌ្ឍនភាព",
    progressReports: "របាយការណ៍វឌ្ឍនភាព",
    issueMatrix: "តារាងបញ្ហា",
    rgcDecisions: "សេចក្តីសម្រេចរបស់រាជរដ្ឋាភិបាល",
  },

  en: {
    language: "Language",
    search: "Search",
    dashboard: "Dashboard",

    notification: "Notification",
    notifications: "Notifications",
    all: "All",
    viewDetail: "View Detail",

    profile: "Profile",
    logout: "Logout",

    accountSetting: "Account Setting",
    notificationSetting: "Notification Setting",
    myOrganization: "My Organization",
    downloadApp: "Download App",

    mainMenu: "Main Menu",
    agricultureAgroIndustry: "Agriculture and Agro-Industry",

    plenary: "Plenary",
    plenaries: "Plenaries",
    workingGroup: "Working Group",
    workingGroupAIssues: "Working Group A Issues",
    meetingRequests: "Meeting Requests",
    meetingCalendar: "Meeting Calendar",
    meetingSummary: "Meeting Summary",
    progressReport: "Progress Report",
    progressReports: "Progress Reports",
    issueMatrix: "Issue Matrix",
    rgcDecisions: "RGC Decisions",
  },
} as const;

export type TranslationKey = keyof typeof translations.en;
