export declare interface SiteSeo {
  title?: string
  description?: string
  siteName?: string
  image?: string
  twitter?: string
  locale?: string
  type?: string
  favicon?: string
}
export declare interface SiteSocial {
  twitter?: string
  instagram?: string
  youtube?: string
  github?: string
  linkedin?: string
  [k: string]: string | undefined
}
export declare interface SiteConfig {
  name: string
  url: string
  description?: string
  social?: SiteSocial
  seo?: SiteSeo
  pagesDir?: string
  publicDir?: string
  outDir?: string
  sitemap?: boolean
  robots?: boolean | 'allow' | 'disallow' | string
  pages?: Record<string, PageMeta>
  spa?: boolean
  router?: SiteRouterOptions
  theme?: false | SiteThemeOptions
}
export declare interface SiteThemeOptions {
  default?: 'dark' | 'light' | 'auto'
  storageKey?: string
}
export declare interface PageMeta {
  title?: string
  description?: string
  image?: string
  sitemap?: boolean
  priority?: number
  changefreq?: 'always' | 'hourly' | 'daily' | 'weekly' | 'monthly' | 'yearly' | 'never'
}
export declare interface BuildOptions extends SiteConfig {
  noClean?: boolean
}
/**
 * SPA router options (subset — see RouterOptions in router.ts).
 * Inlined to avoid a circular import in this types file.
 */
export declare interface SiteRouterOptions {
  color?: string
  progress?: boolean
  prefetch?: boolean
  cache?: boolean
  interceptAllLinks?: boolean
}
