/**
 * Config system barrel export.
 *
 * Provides:
 * - ConfigManager class and all schema types
 * - Pure helpers that derive values from an explicit ConfigManager instance
 */
export { ConfigManager } from './manager.js';
export { DEFAULT_CONFIG, CONFIG_KEYS, CONFIG_SCHEMA, isValidConfigKey } from './schema.js';
export { ConfigError } from '../types/errors.js';
import { readFileSync } from 'fs';
import { ConfigManager } from './manager.js';
export function getConfigSnapshot(configManager) {
    return configManager.getRaw();
}
export function getConfiguredModelId(configManager) {
    return configManager.get('provider.model');
}
export function getConfiguredEmbeddingProviderId(configManager) {
    return configManager.get('provider.embeddingProvider');
}
export function isAutoApproveEnabled(configManager) {
    return configManager.get('behavior.autoApprove');
}
export function getWorkingDirectory(configManager) {
    return configManager.getWorkingDirectory();
}
export function getConfiguredSystemPrompt(configManager) {
    const file = configManager.get('provider.systemPromptFile');
    if (!file)
        return undefined;
    return readFileSync(file, 'utf-8');
}
export { getConfiguredApiKeys, resolveApiKeys } from './api-keys.js';
export { createOAuthLocalListener } from './oauth-local-listener.js';
export { HelperModel, HelperModelUnavailableError, HelperRouter } from './helper-model.js';
export { beginOpenAICodexLogin, exchangeOpenAICodexCode, refreshOpenAICodexToken, OPENAI_CODEX_AUTHORIZE_URL, OPENAI_CODEX_CLIENT_ID, OPENAI_CODEX_REDIRECT_URI, OPENAI_CODEX_TOKEN_URL, } from './openai-codex-auth.js';
export * from './secret-refs.js';
export { SecretsManager } from './secrets.js';
export { ServiceRegistry } from './service-registry.js';
export { SubscriptionManager } from './subscriptions.js';
export * from './subscription-auth.js';
export * from './subscription-providers.js';
export { resolveToolLLM, ToolLLM, ToolLLMUnavailableError } from './tool-llm.js';
