// Export all schema modules
export * from './base.schema';
export * from './database.schema';
export * from './service.schema';
export * from './base-app.schema';

// Export provider schemas temporarily for backward compatibility
// These will be moved to stock-specific config
export * from './provider.schema';

// Re-export commonly used schemas for convenience
export { baseAppSchema } from './base-app.schema';
export type { BaseAppConfig } from './base-app.schema';

// Export unified schema for standardized configuration
export { unifiedAppSchema, toUnifiedConfig, getStandardServiceName } from './unified-app.schema';
export type { UnifiedAppConfig } from './unified-app.schema';

// Keep AppConfig for backward compatibility (deprecated)
// @deprecated Use baseAppSchema and extend it for your specific app
import { z } from 'zod';
import { baseAppSchema } from './base-app.schema';
import { providerConfigSchema } from './provider.schema';

export const appConfigSchema = baseAppSchema.extend({
  providers: providerConfigSchema.optional(),
});

export type AppConfig = z.infer<typeof appConfigSchema>;
