UNPKG

@reliverse/rse-sdk

Version:

@reliverse/rse-sdk allows you to create new plugins for @reliverse/rse CLI, interact with reliverse.org, and even extend your own CLI functionality (you may also try @reliverse/dler-sdk for this case).

63 lines (62 loc) 2.76 kB
import { z } from "zod"; export declare const DatabaseSchema: z.ZodEnum<["none", "sqlite", "postgres", "mysql", "mongodb"]>; export type Database = z.infer<typeof DatabaseSchema>; export declare const ORMSchema: z.ZodEnum<["drizzle", "prisma", "mongoose", "none"]>; export type ORM = z.infer<typeof ORMSchema>; export declare const BackendSchema: z.ZodEnum<["hono", "express", "fastify", "next", "elysia", "convex", "none"]>; export type Backend = z.infer<typeof BackendSchema>; export declare const RuntimeSchema: z.ZodEnum<["bun", "node", "workers", "none"]>; export type Runtime = z.infer<typeof RuntimeSchema>; export declare const FrontendSchema: z.ZodEnum<["tanstack-router", "react-router", "tanstack-start", "next", "nuxt", "native-nativewind", "native-unistyles", "svelte", "solid", "none"]>; export type Frontend = z.infer<typeof FrontendSchema>; export declare const AddonsSchema: z.ZodEnum<["pwa", "tauri", "starlight", "biome", "husky", "turborepo", "none"]>; export type Addons = z.infer<typeof AddonsSchema>; export declare const ExamplesSchema: z.ZodEnum<["todo", "ai", "none"]>; export type Examples = z.infer<typeof ExamplesSchema>; export declare const PackageManagerSchema: z.ZodEnum<["npm", "pnpm", "bun"]>; export type PackageManager = z.infer<typeof PackageManagerSchema>; export declare const DatabaseSetupSchema: z.ZodEnum<["turso", "neon", "prisma-postgres", "mongodb-atlas", "supabase", "none"]>; export type DatabaseSetup = z.infer<typeof DatabaseSetupSchema>; export declare const APISchema: z.ZodEnum<["trpc", "orpc", "none"]>; export type API = z.infer<typeof APISchema>; export declare const ProjectNameSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string, string>, string, string>; export type ProjectName = z.infer<typeof ProjectNameSchema>; export interface CreateInput { projectName?: string; yes?: boolean; database?: Database; orm?: ORM; auth?: boolean; frontend?: Frontend[]; addons?: Addons[]; examples?: Examples[]; git?: boolean; packageManager?: PackageManager; install?: boolean; dbSetup?: DatabaseSetup; backend?: Backend; runtime?: Runtime; api?: API; } export type CLIInput = CreateInput & { projectDirectory?: string; }; export interface ProjectConfig { projectName: string; projectDir: string; relativePath: string; database: Database; orm: ORM; backend: Backend; runtime: Runtime; frontend: Frontend[]; addons: Addons[]; examples: Examples[]; auth: boolean; git: boolean; packageManager: PackageManager; install: boolean; dbSetup: DatabaseSetup; api: API; } export type AvailablePackageManagers = "npm" | "pnpm" | "bun";