/** * ═══════════════════════════════════════════════════════════════════════════════ * SERVER INITIALIZATION * ═══════════════════════════════════════════════════════════════════════════════ * * Initializes all server subsystems in the correct order. * Separates initialization from the main server entry point. * * Subsystems initialized: * - Policy loader: Loads and merges policy files from disk * - Symbol manager: Manages directive symbol registry (SQLite-backed) * * ═══════════════════════════════════════════════════════════════════════════════ */ import { type PolicyLoader } from './policies/loader.js'; import { type SymbolManager } from './symbols/index.js'; export interface ServerConfig { /** Root directory for policy files */ policiesRoot?: string; /** Root directory for symbol registry */ symbolsRoot?: string; /** Whether to skip subsystem initialization (for testing) */ skipSubsystems?: boolean; /** Skip individual subsystems */ skipPolicyLoader?: boolean; skipSymbolManager?: boolean; } export interface SubsystemStatus { initialized: boolean; error?: string; details?: Record; } export interface InitializationResult { success: boolean; subsystems: { policyLoader: SubsystemStatus; symbolManager: SubsystemStatus; }; errors: string[]; /** Reference to initialized subsystems for direct access */ instances: { policyLoader?: PolicyLoader; symbolManager?: SymbolManager; }; } /** * Get default paths relative to the module location. */ declare function getDefaultPaths(): Required>; /** * Initialize all server subsystems. * * @param config - Optional configuration to override default paths * @returns Structured result indicating success/failure per subsystem * * @example * ```typescript * // Initialize with defaults * const result = await initializeServer(); * * // Initialize for testing (skip all subsystems) * const result = await initializeServer({ skipSubsystems: true }); * * // Initialize with custom paths * const result = await initializeServer({ * policiesRoot: '/custom/policies', * symbolsRoot: '/custom/symbols', * }); * * // Check results * if (!result.success) { * console.warn('Some subsystems failed:', result.errors); * } * ``` */ export declare function initializeServer(config?: ServerConfig): Promise; /** * Check if the server has been initialized. */ export declare function isServerInitialized(): boolean; /** * Get default paths for server initialization. * Useful for testing or custom initialization. */ export { getDefaultPaths }; export type { PolicyLoader } from './policies/loader.js'; export type { SymbolManager } from './symbols/index.js'; export { createLogger } from './core/logging/index.js'; //# sourceMappingURL=server-init.d.ts.map