import { z } from 'zod';
export declare const ProjectConfigSchema: z.ZodObject<{
    name: z.ZodString;
    description: z.ZodString;
    type: z.ZodEnum<["microservice", "monolith", "library"]>;
    language: z.ZodEnum<["java", "typescript", "python", "go", "csharp"]>;
    framework: z.ZodString;
}, "strip", z.ZodTypeAny, {
    name: string;
    description: string;
    type: "microservice" | "monolith" | "library";
    language: "java" | "typescript" | "python" | "go" | "csharp";
    framework: string;
}, {
    name: string;
    description: string;
    type: "microservice" | "monolith" | "library";
    language: "java" | "typescript" | "python" | "go" | "csharp";
    framework: string;
}>;
export declare const FeaturesSchema: z.ZodArray<z.ZodString, "many">;
export declare const StructureSchema: z.ZodObject<{
    directories: z.ZodArray<z.ZodString, "many">;
    files: z.ZodArray<z.ZodString, "many">;
}, "strip", z.ZodTypeAny, {
    directories: string[];
    files: string[];
}, {
    directories: string[];
    files: string[];
}>;
export declare const DependenciesSchema: z.ZodRecord<z.ZodString, z.ZodString>;
export declare const ConfigurationsSchema: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>;
export declare const ProjectSchema: z.ZodObject<{
    projectConfig: z.ZodObject<{
        name: z.ZodString;
        description: z.ZodString;
        type: z.ZodEnum<["microservice", "monolith", "library"]>;
        language: z.ZodEnum<["java", "typescript", "python", "go", "csharp"]>;
        framework: z.ZodString;
    }, "strip", z.ZodTypeAny, {
        name: string;
        description: string;
        type: "microservice" | "monolith" | "library";
        language: "java" | "typescript" | "python" | "go" | "csharp";
        framework: string;
    }, {
        name: string;
        description: string;
        type: "microservice" | "monolith" | "library";
        language: "java" | "typescript" | "python" | "go" | "csharp";
        framework: string;
    }>;
    features: z.ZodArray<z.ZodString, "many">;
    structure: z.ZodObject<{
        directories: z.ZodArray<z.ZodString, "many">;
        files: z.ZodArray<z.ZodString, "many">;
    }, "strip", z.ZodTypeAny, {
        directories: string[];
        files: string[];
    }, {
        directories: string[];
        files: string[];
    }>;
    dependencies: z.ZodRecord<z.ZodString, z.ZodString>;
    configurations: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>;
}, "strip", z.ZodTypeAny, {
    projectConfig: {
        name: string;
        description: string;
        type: "microservice" | "monolith" | "library";
        language: "java" | "typescript" | "python" | "go" | "csharp";
        framework: string;
    };
    features: string[];
    structure: {
        directories: string[];
        files: string[];
    };
    dependencies: Record<string, string>;
    configurations: Record<string, string[]>;
}, {
    projectConfig: {
        name: string;
        description: string;
        type: "microservice" | "monolith" | "library";
        language: "java" | "typescript" | "python" | "go" | "csharp";
        framework: string;
    };
    features: string[];
    structure: {
        directories: string[];
        files: string[];
    };
    dependencies: Record<string, string>;
    configurations: Record<string, string[]>;
}>;
export type ProjectConfig = z.infer<typeof ProjectConfigSchema>;
export type Features = z.infer<typeof FeaturesSchema>;
export type Structure = z.infer<typeof StructureSchema>;
export type Dependencies = z.infer<typeof DependenciesSchema>;
export type Configurations = z.infer<typeof ConfigurationsSchema>;
export type Project = z.infer<typeof ProjectSchema>;
export declare const PROJECT_TYPES: readonly ["microservice", "monolith", "library"];
export declare const LANGUAGES: readonly ["java", "typescript", "python", "go", "csharp"];
export declare const COMMON_FEATURES: readonly ["authentication-authorization", "database-integration", "api-documentation", "data-validation", "docker-support", "ci-cd-pipeline", "testing-framework", "logging-system", "monitoring-metrics", "caching", "message-queue", "file-upload", "email-service", "notification-service"];
