Migrate to TypeScript

This commit is contained in:
Ariful Alam
2024-01-20 18:24:26 +06:00
parent fdf75dabeb
commit aa4c6928d6
53 changed files with 4415 additions and 2661 deletions

View File

@@ -0,0 +1,141 @@
export interface SanitizedGithub {
username: string;
}
export interface SanitizedGitHubProjects {
display: boolean;
header: string;
mode: string;
automatic: {
sortBy: string;
limit: number;
exclude: {
forks: boolean;
projects: Array<string>;
};
};
manual: {
projects: Array<string>;
};
}
export interface SanitizedExternalProject {
title: string;
description?: string;
imageUrl?: string;
link: string;
}
export interface SanitizedExternalProjects {
header: string;
projects: SanitizedExternalProject[];
}
export interface SanitizedProjects {
github: SanitizedGitHubProjects;
external: SanitizedExternalProjects;
}
export interface SanitizedSEO {
title?: string;
description?: string;
imageURL?: string;
}
export interface SanitizedSocial {
linkedin?: string;
twitter?: string;
mastodon?: string;
facebook?: string;
instagram?: string;
youtube?: string;
dribbble?: string;
behance?: string;
medium?: string;
dev?: string;
stackoverflow?: string;
website?: string;
skype?: string;
telegram?: string;
phone?: string;
email?: string;
}
export interface SanitizedResume {
fileUrl?: string;
}
export interface SanitizedExperience {
company?: string;
position?: string;
from: string;
to: string;
companyLink?: string;
}
export interface SanitizedCertification {
body?: string;
name?: string;
year?: string;
link?: string;
}
export interface SanitizedEducation {
institution?: string;
degree?: string;
from: string;
to: string;
}
export interface SanitizedGoogleAnalytics {
id?: string;
}
export interface SanitizedHotjar {
id?: string;
snippetVersion: number;
}
export interface SanitizedBlog {
display: boolean;
source: string;
username: string;
limit: number;
}
export interface SanitizedCustomTheme {
primary: string;
secondary: string;
accent: string;
neutral: string;
'base-100': string;
'--rounded-box': string;
'--rounded-btn': string;
}
export interface SanitizedThemeConfig {
defaultTheme: string;
disableSwitch: boolean;
respectPrefersColorScheme: boolean;
displayAvatarRing: boolean;
themes: Array<string>;
customTheme: SanitizedCustomTheme;
}
export interface SanitizedConfig {
github: SanitizedGithub;
projects: SanitizedProjects;
seo: SanitizedSEO;
social: SanitizedSocial;
resume: SanitizedResume;
skills: Array<string>;
experiences: Array<SanitizedExperience>;
educations: Array<SanitizedEducation>;
certifications: Array<SanitizedCertification>;
googleAnalytics: SanitizedGoogleAnalytics;
hotjar: SanitizedHotjar;
blog: SanitizedBlog;
themeConfig: SanitizedThemeConfig;
footer?: string;
enablePWA: boolean;
}