diff --git a/src/plugins/main.ts b/src/plugins/main.ts new file mode 100644 index 0000000..63cea49 --- /dev/null +++ b/src/plugins/main.ts @@ -0,0 +1 @@ +import 'windi.css' diff --git a/types/index.d.ts b/types/index.d.ts new file mode 100644 index 0000000..05d978a --- /dev/null +++ b/types/index.d.ts @@ -0,0 +1,35 @@ +import { NuxtAxiosInstance } from '@nuxtjs/axios' +import VueI18n, {IVueI18n} from "vue-i18n"; +import {ColorModeInstance} from "@nuxtjs/color-mode/types/color-mode"; +import {NuxtApp} from "@nuxt/types/app"; +import {NuxtStorage} from "@nuxtjs/universal-storage"; + +declare module 'vue/types/vue' { + + interface Vue { + $axios: NuxtAxiosInstance, + i18n: VueI18n & IVueI18n + } +} +declare module '@nuxt/types' { + + interface NuxtAppOptions { + $axios: NuxtAxiosInstance, + i18n: VueI18n & IVueI18n + } + + interface Context { + $axios: NuxtAxiosInstance, + i18n: VueI18n & IVueI18n + $colorMode: ColorModeInstance, + $app: NuxtApp, + $storage: NuxtStorage + } +} + +declare module 'vuex/types/index' { + interface Store { + $axios: NuxtAxiosInstance, + i18n: VueI18n & IVueI18n + } +} diff --git a/types/types.ts b/types/types.ts new file mode 100644 index 0000000..ac0cb8c --- /dev/null +++ b/types/types.ts @@ -0,0 +1,64 @@ +interface Form { + email: string, + name: string, + content: string, + subject: string +} + +interface InfoData { + age: number + hiring: { + status: string, + color: string + } +} + +interface Skill { + title: string, + color: string, + cover: string, + slug: string +} + +interface Experience { + slug: string, + title: string, + company: string, + location: string, + begin_date: string, + end_date: string +} + +interface Formation { + slug: string, + title: string, + description: string, + location: string, + begin_date: string, + end_date: string +} + +interface Tag { + slug: string +} + +interface Post { + slug: string, + title: string, + description: string, + reading_time: number, + tags: Array, + cover: string, + date: string +} + +interface Project { + slug: string, + title: string, + description: string, + url: string, + cover: string, + tags: Array, +} + +export { Form, InfoData, Skill, Experience, Formation, Post, Tag, Project } diff --git a/types/vue-shim.d.ts b/types/vue-shim.d.ts new file mode 100644 index 0000000..d9f24fa --- /dev/null +++ b/types/vue-shim.d.ts @@ -0,0 +1,4 @@ +declare module '*.vue' { + import Vue from 'vue' + export default Vue +}