import { defineContentConfig, defineCollection } from '@nuxt/content' import { z } from 'zod' /** * Default `blog` collection for marketing sites. * Consumers can extend/override this config; markdown lives in the * consumer (or playground) under `content/blog/*.md`. */ export default defineContentConfig({ collections: { blog: defineCollection({ type: 'page', source: 'blog/**/*.md', schema: z.object({ title: z.string(), description: z.string().optional(), date: z.date().optional(), author: z.union([ z.string(), z.object({ name: z.string(), avatar: z.string().optional(), title: z.string().optional(), bio: z.string().optional(), }), ]).optional(), image: z.string().optional(), category: z.string().optional(), tags: z.array(z.string()).optional(), published: z.boolean().default(true), readingTime: z.number().optional(), }), }), }, })