import { ConfigRecord, ConfigValue } from './types'; import { ConfigChange } from '../contexts/ConfigContext'; /** * Hook to get the entire configuration. */ export declare function useConfig(): T; /** * Hook to get a specific configuration value. */ export declare function useConfigValue(path: string, defaultValue?: T): T; /** * Hook to check if a configuration path exists. */ export declare function useHasConfig(path: string): boolean; /** * Hook to get configuration loading state. */ export declare function useConfigLoading(): boolean; /** * Hook to get configuration error. */ export declare function useConfigError(): Error | null; /** * Hook to get a function to update configuration. */ export declare function useSetConfig(): (path: string, value: ConfigValue) => void; /** * Hook to get a function to reset configuration. */ export declare function useResetConfig(): () => void; /** * Hook to get a function to reload configuration. */ export declare function useReloadConfig(): () => Promise; /** * Hook to get a config value with setter. */ export declare function useConfigState(path: string, defaultValue?: T): [T, (value: T) => void]; /** * Hook to subscribe to configuration changes. */ export declare function useConfigChange(path: string, callback: (value: ConfigValue, change: ConfigChange) => void): void; /** * Hook to watch a config value and re-render on change. */ export declare function useWatchConfig(path: string, defaultValue?: T): T; /** * Hook to check if a feature is enabled via config. */ export declare function useFeatureConfig(featureName: string): boolean; /** * Hook to get feature-specific configuration. */ export declare function useFeatureSettings(featureName: string, defaultSettings?: T): T; /** * Hook to get the current environment. */ export declare function useEnvironment(): string; /** * Hook to check if running in development. */ export declare function useIsDevelopment(): boolean; /** * Hook to check if running in production. */ export declare function useIsProduction(): boolean; /** * Hook to select multiple config values. */ export declare function useConfigSelector>(selector: (config: ConfigRecord) => T): T; /** * Hook to create a derived config value. */ export declare function useConfigDerived(paths: string[], derive: (...values: ConfigValue[]) => T): T; /** * Create a typed config hook for a specific section. */ export declare function createTypedConfigHook(basePath: string): () => T; /** * Create a typed config value hook for a specific section. */ export declare function createTypedValueHook(path: string, defaultValue: T): () => T; /** * Hook to get all configuration paths. */ export declare function useConfigPaths(): string[]; /** * Hook to get configuration statistics. */ export declare function useConfigStats(): { totalPaths: number; sections: string[]; isLoading: boolean; hasError: boolean; };