UNPKG

@helpwave/hightide

Version:

helpwave's component and theming library

104 lines (101 loc) 2.93 kB
import { z } from 'zod'; import { Languages } from '../hooks/useLanguage.js'; import 'react/jsx-runtime'; import 'react'; type News = { title: string; date: Date; description: (string | URL)[]; externalResource?: URL; keys: string[]; }; type LocalizedNews = Record<Languages, News[]>; declare const newsSchema: z.ZodEffects<z.ZodObject<{ title: z.ZodString; description: z.ZodString; date: z.ZodString; image: z.ZodOptional<z.ZodString>; externalResource: z.ZodOptional<z.ZodString>; keys: z.ZodArray<z.ZodString, "many">; }, "strip", z.ZodTypeAny, { title: string; date: string; description: string; keys: string[]; image?: string | undefined; externalResource?: string | undefined; }, { title: string; date: string; description: string; keys: string[]; image?: string | undefined; externalResource?: string | undefined; }>, News, { title: string; date: string; description: string; keys: string[]; image?: string | undefined; externalResource?: string | undefined; }>; declare const newsListSchema: z.ZodArray<z.ZodEffects<z.ZodObject<{ title: z.ZodString; description: z.ZodString; date: z.ZodString; image: z.ZodOptional<z.ZodString>; externalResource: z.ZodOptional<z.ZodString>; keys: z.ZodArray<z.ZodString, "many">; }, "strip", z.ZodTypeAny, { title: string; date: string; description: string; keys: string[]; image?: string | undefined; externalResource?: string | undefined; }, { title: string; date: string; description: string; keys: string[]; image?: string | undefined; externalResource?: string | undefined; }>, News, { title: string; date: string; description: string; keys: string[]; image?: string | undefined; externalResource?: string | undefined; }>, "many">; declare const localizedNewsSchema: z.ZodRecord<z.ZodEnum<["en", "de"]>, z.ZodArray<z.ZodEffects<z.ZodObject<{ title: z.ZodString; description: z.ZodString; date: z.ZodString; image: z.ZodOptional<z.ZodString>; externalResource: z.ZodOptional<z.ZodString>; keys: z.ZodArray<z.ZodString, "many">; }, "strip", z.ZodTypeAny, { title: string; date: string; description: string; keys: string[]; image?: string | undefined; externalResource?: string | undefined; }, { title: string; date: string; description: string; keys: string[]; image?: string | undefined; externalResource?: string | undefined; }>, News, { title: string; date: string; description: string; keys: string[]; image?: string | undefined; externalResource?: string | undefined; }>, "many">>; declare const filterNews: (localizedNews: News[], requiredKeys: string[]) => News[]; export { type LocalizedNews, type News, filterNews, localizedNewsSchema, newsListSchema, newsSchema };