UNPKG

@docyrus/cli

Version:

DocyUI unified CLI tool for all frameworks

125 lines (117 loc) 5.27 kB
type Framework = 'react' | 'vue' | 'svelte' | 'react-native'; declare const FRAMEWORK_CONFIG: { readonly react: { readonly name: "React"; readonly packageName: string | undefined; readonly cliName: string | undefined; readonly dependencies: readonly ["react", "react-dom"]; readonly configFiles: readonly ["package.json"]; readonly detectFiles: readonly ["package.json"]; readonly cssFile: "src/index.css"; }; readonly vue: { readonly name: "Vue.js"; readonly packageName: string | undefined; readonly cliName: string | undefined; readonly dependencies: readonly ["vue"]; readonly configFiles: readonly ["package.json", "vite.config.js", "vite.config.ts"]; readonly detectFiles: readonly ["package.json"]; readonly cssFile: "src/style.css"; }; readonly svelte: { readonly name: "Svelte"; readonly packageName: string | undefined; readonly cliName: string | undefined; readonly dependencies: readonly ["svelte"]; readonly configFiles: readonly ["package.json", "svelte.config.js"]; readonly detectFiles: readonly ["package.json", "svelte.config.js"]; readonly cssFile: "src/app.css"; }; readonly 'react-native': { readonly name: "React Native"; readonly packageName: string | undefined; readonly cliName: string | undefined; readonly dependencies: readonly ["react-native"]; readonly configFiles: readonly ["package.json", "metro.config.js"]; readonly detectFiles: readonly ["package.json", "metro.config.js"]; readonly cssFile: null; }; }; declare function detectFramework(cwd?: string): Promise<Framework | null>; declare function selectFramework(detectedFramework?: Framework | null): Promise<Framework>; declare function getFrameworkConfig(framework: Framework): { readonly name: "React"; readonly packageName: string | undefined; readonly cliName: string | undefined; readonly dependencies: readonly ["react", "react-dom"]; readonly configFiles: readonly ["package.json"]; readonly detectFiles: readonly ["package.json"]; readonly cssFile: "src/index.css"; } | { readonly name: "Vue.js"; readonly packageName: string | undefined; readonly cliName: string | undefined; readonly dependencies: readonly ["vue"]; readonly configFiles: readonly ["package.json", "vite.config.js", "vite.config.ts"]; readonly detectFiles: readonly ["package.json"]; readonly cssFile: "src/style.css"; } | { readonly name: "Svelte"; readonly packageName: string | undefined; readonly cliName: string | undefined; readonly dependencies: readonly ["svelte"]; readonly configFiles: readonly ["package.json", "svelte.config.js"]; readonly detectFiles: readonly ["package.json", "svelte.config.js"]; readonly cssFile: "src/app.css"; } | { readonly name: "React Native"; readonly packageName: string | undefined; readonly cliName: string | undefined; readonly dependencies: readonly ["react-native"]; readonly configFiles: readonly ["package.json", "metro.config.js"]; readonly detectFiles: readonly ["package.json", "metro.config.js"]; readonly cssFile: null; }; declare function validateFrameworkProject(framework: Framework, cwd?: string): Promise<boolean>; type InitOptions = { framework?: Framework; }; declare function initCommand(options?: InitOptions): Promise<void>; interface AddCommandOptions { all?: boolean; framework?: Framework; } declare function addCommand(componentNames?: string[], options?: AddCommandOptions): Promise<void>; interface ListCommandOptions { framework?: Framework; } declare function listCommand(options?: ListCommandOptions): Promise<void>; interface ColorCommandOptions { custom?: string; framework?: Framework; } declare function colorCommand(newColor?: string, options?: ColorCommandOptions): Promise<void>; type PackageManager = 'npm' | 'yarn' | 'pnpm' | 'bun'; type DocyUIConfig = { $schema?: string; framework: Framework; installMethod?: 'monolithic' | 'individual'; packageName?: string; packageManager?: PackageManager; components?: string[]; color: string; customColorUrl?: string; }; declare function getConfig(cwd?: string): Promise<DocyUIConfig | null>; declare function writeConfig(config: DocyUIConfig, cwd?: string): Promise<void>; type PackageJson = { name?: string; version?: string; dependencies?: Record<string, string>; devDependencies?: Record<string, string>; [key: string]: unknown; }; declare function getPackageJson(cwd?: string): Promise<PackageJson | null>; declare function updatePackageJson(updates: Partial<PackageJson>, cwd?: string): Promise<void>; declare function addDependencies(dependencies: Record<string, string>, isDev?: boolean, cwd?: string): Promise<void>; export { type DocyUIConfig, FRAMEWORK_CONFIG, type Framework, type PackageJson, type PackageManager, addCommand, addDependencies, colorCommand, detectFramework, getConfig, getFrameworkConfig, getPackageJson, initCommand, listCommand, selectFramework, updatePackageJson, validateFrameworkProject, writeConfig };