/**
 * Storage Configuration Management
 * Handles configuration for storage integration across different frameworks
 */
import type { StorageConfig } from '../../features/generation/storage/storage-types';
export interface FrameworkStorageConfig {
    framework: string;
    config: Partial<StorageConfig>;
    bucketStrategy: 'single' | 'multi-bucket' | 'tenant-scoped';
    defaultPermissions: {
        respectRLS: boolean;
        enablePublicUrls: boolean;
        requireAuth: boolean;
    };
    mediaAttachmentStrategy: 'database' | 'metadata-only' | 'hybrid';
}
/**
 * Framework-specific storage configurations
 */
export declare const FRAMEWORK_STORAGE_CONFIGS: Record<string, FrameworkStorageConfig>;
/**
 * Get storage configuration for a specific framework
 */
export declare function getFrameworkStorageConfig(framework: string): FrameworkStorageConfig;
/**
 * Get merged storage configuration with custom overrides
 */
export declare function getMergedStorageConfig(framework: string, customConfig?: Partial<StorageConfig>): StorageConfig;
/**
 * Validate storage configuration
 */
export declare function validateStorageConfig(config: Partial<StorageConfig>): {
    isValid: boolean;
    errors: string[];
    warnings: string[];
};
/**
 * Generate storage recommendations based on configuration
 */
export declare function generateStorageRecommendations(framework: string, config: Partial<StorageConfig>): string[];
/**
 * Get environment-specific storage configuration
 */
export declare function getEnvironmentStorageConfig(): Partial<StorageConfig>;
/**
 * Storage configuration utilities
 */
export declare const StorageConfigUtils: {
    getFrameworkConfig: typeof getFrameworkStorageConfig;
    getMergedConfig: typeof getMergedStorageConfig;
    validate: typeof validateStorageConfig;
    getRecommendations: typeof generateStorageRecommendations;
    getEnvironmentConfig: typeof getEnvironmentStorageConfig;
};
//# sourceMappingURL=storage-config.d.ts.map