UNPKG

@reliverse/rse-sdk

Version:

@reliverse/rse-sdk without cli. @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).

125 lines (124 loc) 3.33 kB
import { z } from "zod"; export declare const DatabaseSchema: z.ZodEnum<{ postgres: "postgres"; mysql: "mysql"; sqlite: "sqlite"; none: "none"; mongodb: "mongodb"; }>; export type Database = z.infer<typeof DatabaseSchema>; export declare const ORMSchema: z.ZodEnum<{ none: "none"; drizzle: "drizzle"; prisma: "prisma"; mongoose: "mongoose"; }>; export type ORM = z.infer<typeof ORMSchema>; export declare const BackendSchema: z.ZodEnum<{ none: "none"; hono: "hono"; next: "next"; express: "express"; fastify: "fastify"; elysia: "elysia"; convex: "convex"; }>; export type Backend = z.infer<typeof BackendSchema>; export declare const RuntimeSchema: z.ZodEnum<{ none: "none"; bun: "bun"; node: "node"; workers: "workers"; }>; export type Runtime = z.infer<typeof RuntimeSchema>; export declare const FrontendSchema: z.ZodEnum<{ none: "none"; svelte: "svelte"; nuxt: "nuxt"; solid: "solid"; next: "next"; "react-router": "react-router"; "tanstack-router": "tanstack-router"; "tanstack-start": "tanstack-start"; "native-nativewind": "native-nativewind"; "native-unistyles": "native-unistyles"; }>; export type Frontend = z.infer<typeof FrontendSchema>; export declare const AddonsSchema: z.ZodEnum<{ none: "none"; tauri: "tauri"; biome: "biome"; starlight: "starlight"; turborepo: "turborepo"; pwa: "pwa"; husky: "husky"; }>; export type Addons = z.infer<typeof AddonsSchema>; export declare const ExamplesSchema: z.ZodEnum<{ none: "none"; todo: "todo"; ai: "ai"; }>; export type Examples = z.infer<typeof ExamplesSchema>; export declare const PackageManagerSchema: z.ZodEnum<{ npm: "npm"; pnpm: "pnpm"; bun: "bun"; }>; export type PackageManager = z.infer<typeof PackageManagerSchema>; export declare const DatabaseSetupSchema: z.ZodEnum<{ neon: "neon"; none: "none"; supabase: "supabase"; turso: "turso"; "prisma-postgres": "prisma-postgres"; "mongodb-atlas": "mongodb-atlas"; }>; export type DatabaseSetup = z.infer<typeof DatabaseSetupSchema>; export declare const APISchema: z.ZodEnum<{ none: "none"; trpc: "trpc"; orpc: "orpc"; }>; export type API = z.infer<typeof APISchema>; export declare const ProjectNameSchema: z.ZodString; 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";