init
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
export type Language = 'en' | 'zh';
|
||||
|
||||
export interface LocalizedString {
|
||||
en: string;
|
||||
zh: string;
|
||||
}
|
||||
|
||||
export interface ExperienceItem {
|
||||
company: LocalizedString;
|
||||
role: LocalizedString;
|
||||
period: string;
|
||||
description: LocalizedString[];
|
||||
location?: LocalizedString;
|
||||
}
|
||||
|
||||
export interface ProjectItem {
|
||||
title: LocalizedString;
|
||||
description: LocalizedString;
|
||||
link?: string;
|
||||
linkText?: LocalizedString;
|
||||
techStack?: string[];
|
||||
imageUrl?: string; // Added field for project images
|
||||
imageType?: 'code' | 'car' | 'game' | 'chart'; // For placeholder selection fallback
|
||||
}
|
||||
|
||||
export interface EducationItem {
|
||||
school: LocalizedString;
|
||||
degree: LocalizedString;
|
||||
period: string;
|
||||
major: LocalizedString;
|
||||
}
|
||||
|
||||
export interface ContactInfo {
|
||||
mobile: string;
|
||||
email: string;
|
||||
wechat: string;
|
||||
}
|
||||
|
||||
export interface ResumeData {
|
||||
name: LocalizedString;
|
||||
title: LocalizedString;
|
||||
summary: LocalizedString;
|
||||
contact: ContactInfo;
|
||||
skills: LocalizedString[];
|
||||
experience: ExperienceItem[];
|
||||
projects: ProjectItem[];
|
||||
education: EducationItem[];
|
||||
}
|
||||
Reference in New Issue
Block a user