export type FrameworkType = 'vue3';
export type ArchitectureType = 'monorepo' | 'single';
export type ProjectType = 'app' | 'lib' | 'root';
export interface ProjectOptions {
    monorepo?: boolean;
    single?: boolean;
    framework?: FrameworkType;
    architecture?: ArchitectureType;
}
export interface DependencyUpdateStrategy {
    templatePriority: boolean;
    preserveUserDependencies: boolean;
    syncNewTemplateDependencies: boolean;
}
export interface DependencyAnalysis {
    toUpdate: Record<string, {
        current: string;
        template: string;
    }>;
    toAdd: Record<string, string>;
    userAdded: Record<string, string>;
    synced: Record<string, string>;
}
export interface EnvConfig {
    name: string;
    description: string;
    variables: Record<string, string>;
}
export interface ProjectTemplate {
    name: string;
    framework: FrameworkType;
    architecture: ArchitectureType;
    dependencies: string[];
    devDependencies: string[];
    scripts: Record<string, string>;
    files: string[];
}
/**
 * 配置更新选项
 */
export interface UpdateConfigOptions {
    projectPath: string;
    rootPath: string;
    architectureType?: ArchitectureType;
    projectType?: ProjectType;
    excludeGitHooks?: boolean;
    excludeNpmrc?: boolean;
    excludeStaticFiles?: boolean;
    excludeScripts?: boolean;
    includeOnly?: string[];
    silent?: boolean;
}
