pengzhanbo 4d2361a704
feat(theme)!: add collections support (#704)
* feat(theme)!: add collection support
2025-10-07 23:13:09 +08:00

78 lines
1.5 KiB
TypeScript

import type { LocaleConfig } from 'vuepress'
import type { LastUpdatedOptions } from './features/index.js'
import type { ThemeLocale, ThemeLocaleDeprecated, ThemeLocaleText } from './locale.js'
export type ThemeLocaleData = ThemeLocale & ThemeLocaleDeprecated & ThemeLocaleText
/**
* 主题注入到 客户端的数据
*/
export interface ThemeData extends ThemeBaseData, ThemeLocaleData {
/**
* 部署站点域名。
* 用于生成 sitemap、 seo等。
*
*/
hostname?: string
/**
* 博客配置
* @deprecated
*/
blog?: never
/**
* 文章链接前缀
*
* @default '/article/'
* @deprecated
*/
article?: string
/**
* 是否显示 "编辑此页"
*
* @default true
*/
editLink?: boolean
/**
* 最后更新时间
*
* @default { formatOptions: { dateStyle: 'short', timeStyle: 'short' } }
*/
lastUpdated?: false | LastUpdatedOptions
/**
* 是否显示贡献者
*/
contributors?: boolean | { mode?: 'inline' | 'block' }
/**
* 是否显示页面更新日志
*/
changelog?: boolean
/**
* 文档仓库配置, 用于生成 Edit this page 链接
*/
docsRepo?: string
/**
* 文档仓库分支配置,用于生成 `Edit this page` 链接。
*/
docsBranch?: string
/**
* 文档仓库目录配置,用于生成 `Edit this page` 链接。
*/
docsDir?: string
}
export interface ThemeBaseData extends ThemeLocaleData {
/**
* 多语言配置
*/
locales?: LocaleConfig<ThemeLocaleData>
}