import type { RenderCapabilities } from './renderer.js';
export interface BareMetalConfig {
    version: '1';
    siteId: string;
    framework: 'astro' | 'next' | 'sveltekit' | 'custom';
    source: {
        root: string;
        outDir?: string;
    };
    componentRegistry: string;
    layoutRegistry: string;
    rendererEntry: string;
    capabilities: RenderCapabilities;
    routes: RouteConfig;
    dam?: DAMConfig;
    externalDependencies?: ExternalDependency[];
    rendererProtocol: 'http' | 'stdio-json';
}
export interface RouteConfig {
    cmsManaged: string;
    frameworkOwned?: string[];
}
export interface ExternalDependency {
    name: string;
    host: string;
    kind?: 'api' | 'client-script';
    description?: string;
    cacheTTL?: number;
}
export interface DAMConfig {
    autoApproveUploads?: boolean;
}
