UNPKG

@chittyos/shared

Version:

ChittyOS Shared Dependencies Framework - Consolidated dependencies for all ChittyOS components

196 lines (193 loc) 7.04 kB
import { z } from 'zod'; declare const chittyConfigSchema: z.ZodObject<{ framework: z.ZodDefault<z.ZodEnum<["minimal", "standard", "professional", "enterprise"]>>; version: z.ZodDefault<z.ZodString>; apps: z.ZodDefault<z.ZodArray<z.ZodString, "many">>; features: z.ZodDefault<z.ZodObject<{ database: z.ZodDefault<z.ZodBoolean>; authentication: z.ZodDefault<z.ZodBoolean>; docker: z.ZodDefault<z.ZodBoolean>; analytics: z.ZodDefault<z.ZodBoolean>; notifications: z.ZodDefault<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { database: boolean; authentication: boolean; docker: boolean; analytics: boolean; notifications: boolean; }, { database?: boolean | undefined; authentication?: boolean | undefined; docker?: boolean | undefined; analytics?: boolean | undefined; notifications?: boolean | undefined; }>>; api: z.ZodDefault<z.ZodObject<{ baseUrl: z.ZodDefault<z.ZodString>; timeout: z.ZodDefault<z.ZodNumber>; retries: z.ZodDefault<z.ZodNumber>; }, "strip", z.ZodTypeAny, { baseUrl: string; timeout: number; retries: number; }, { baseUrl?: string | undefined; timeout?: number | undefined; retries?: number | undefined; }>>; ui: z.ZodDefault<z.ZodObject<{ theme: z.ZodDefault<z.ZodEnum<["light", "dark", "system"]>>; components: z.ZodDefault<z.ZodString>; animations: z.ZodDefault<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { theme: "light" | "dark" | "system"; components: string; animations: boolean; }, { theme?: "light" | "dark" | "system" | undefined; components?: string | undefined; animations?: boolean | undefined; }>>; database: z.ZodDefault<z.ZodObject<{ provider: z.ZodDefault<z.ZodEnum<["neon", "postgresql", "sqlite"]>>; url: z.ZodOptional<z.ZodString>; ssl: z.ZodDefault<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { provider: "neon" | "postgresql" | "sqlite"; ssl: boolean; url?: string | undefined; }, { url?: string | undefined; provider?: "neon" | "postgresql" | "sqlite" | undefined; ssl?: boolean | undefined; }>>; auth: z.ZodDefault<z.ZodObject<{ provider: z.ZodDefault<z.ZodEnum<["custom", "clerk", "auth0", "supabase"]>>; sessionTimeout: z.ZodDefault<z.ZodNumber>; requireEmailVerification: z.ZodDefault<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { provider: "custom" | "clerk" | "auth0" | "supabase"; sessionTimeout: number; requireEmailVerification: boolean; }, { provider?: "custom" | "clerk" | "auth0" | "supabase" | undefined; sessionTimeout?: number | undefined; requireEmailVerification?: boolean | undefined; }>>; }, "strip", z.ZodTypeAny, { framework: "minimal" | "standard" | "professional" | "enterprise"; version: string; apps: string[]; database: { provider: "neon" | "postgresql" | "sqlite"; ssl: boolean; url?: string | undefined; }; features: { database: boolean; authentication: boolean; docker: boolean; analytics: boolean; notifications: boolean; }; api: { baseUrl: string; timeout: number; retries: number; }; ui: { theme: "light" | "dark" | "system"; components: string; animations: boolean; }; auth: { provider: "custom" | "clerk" | "auth0" | "supabase"; sessionTimeout: number; requireEmailVerification: boolean; }; }, { framework?: "minimal" | "standard" | "professional" | "enterprise" | undefined; version?: string | undefined; apps?: string[] | undefined; database?: { url?: string | undefined; provider?: "neon" | "postgresql" | "sqlite" | undefined; ssl?: boolean | undefined; } | undefined; features?: { database?: boolean | undefined; authentication?: boolean | undefined; docker?: boolean | undefined; analytics?: boolean | undefined; notifications?: boolean | undefined; } | undefined; api?: { baseUrl?: string | undefined; timeout?: number | undefined; retries?: number | undefined; } | undefined; ui?: { theme?: "light" | "dark" | "system" | undefined; components?: string | undefined; animations?: boolean | undefined; } | undefined; auth?: { provider?: "custom" | "clerk" | "auth0" | "supabase" | undefined; sessionTimeout?: number | undefined; requireEmailVerification?: boolean | undefined; } | undefined; }>; type ChittyConfig = z.infer<typeof chittyConfigSchema>; declare const chittyConfig: ChittyConfig; declare const frameworkLevels: { readonly minimal: { readonly name: "Minimal"; readonly description: "Core dependencies only"; readonly apps: readonly []; readonly features: { readonly database: false; readonly authentication: false; readonly docker: false; readonly analytics: false; readonly notifications: false; }; }; readonly standard: { readonly name: "Standard"; readonly description: "Recommended setup with essential apps"; readonly apps: readonly ["chittyresolution", "chittychronicle"]; readonly features: { readonly database: true; readonly authentication: true; readonly docker: false; readonly analytics: false; readonly notifications: true; }; }; readonly professional: { readonly name: "Professional"; readonly description: "Full legal suite"; readonly apps: readonly ["chittyresolution", "chittychronicle", "chittyevidence", "chittyflow", "chittyintel"]; readonly features: { readonly database: true; readonly authentication: true; readonly docker: true; readonly analytics: true; readonly notifications: true; }; }; readonly enterprise: { readonly name: "Enterprise"; readonly description: "Complete ecosystem with all components"; readonly apps: readonly ["chittyresolution", "chittychronicle", "chittyevidence", "chittyflow", "chittyintel", "chittytrace", "chittycloude-mcp", "contradiction-engine"]; readonly features: { readonly database: true; readonly authentication: true; readonly docker: true; readonly analytics: true; readonly notifications: true; }; }; }; type FrameworkLevel = keyof typeof frameworkLevels; export { type ChittyConfig as C, type FrameworkLevel as F, chittyConfigSchema as a, chittyConfig as c, frameworkLevels as f };