Compare commits

...

2 Commits

Author SHA1 Message Date
Andrey Yolkin f264b57067
refactor: use `TemplateDefaultOptions` as default type in `NuxtTemplate` 2023-09-03 23:58:46 +03:00
Andrey Yolkin 7940c456b6
fix: preserve `write` option in `NuxtTypeTemplate` 2023-09-03 23:55:47 +03:00
1 changed files with 10 additions and 4 deletions

View File

@ -18,7 +18,11 @@ export interface NuxtPlugin {
order?: number
}
export interface NuxtTemplate<Options = Record<string, any>> {
// Internal type for simpler NuxtTemplate interface extension
type TemplateDefaultOptions = Record<string, any>
export interface NuxtTemplate<Options = TemplateDefaultOptions> {
/** resolved output file path (generated) */
dst?: string
/** The target filename once the template is copied into the Nuxt buildDir */
@ -33,15 +37,17 @@ export interface NuxtTemplate<Options = Record<string, any>> {
write?: boolean
}
export interface ResolvedNuxtTemplate<Options = Record<string, any>> extends NuxtTemplate<Options> {
export interface ResolvedNuxtTemplate<Options = TemplateDefaultOptions> extends NuxtTemplate<Options> {
filename: string
dst: string
}
export type NuxtTypeTemplate<Options = Record<string, any>> = Omit<NuxtTemplate<Options>, 'write'>
export interface NuxtTypeTemplate<Options = TemplateDefaultOptions> extends Omit<NuxtTemplate<Options>, 'write'> {
write?: true
}
type _TemplatePlugin<Options> = Omit<NuxtPlugin, 'src'> & NuxtTemplate<Options>
export interface NuxtPluginTemplate<Options = Record<string, any>> extends _TemplatePlugin<Options> { }
export interface NuxtPluginTemplate<Options = TemplateDefaultOptions> extends _TemplatePlugin<Options> { }
export interface NuxtApp {
mainComponent?: string | null