import { Config } from './config';
import { BalConfigState, BalIcons, BalLanguage, BalRegion } from './config.types';
import { BalConfigObserver } from './observable/observer';
export type BalConfigChangeFn = (config: BalConfigState) => void;
export declare const onBalConfigChange: (callback: BalConfigChangeFn) => void;
export declare const useBalConfig: () => Config | undefined;
export declare const attachToConfig: (observer: BalConfigObserver) => void;
export declare const detachFromConfig: (observer: BalConfigObserver) => void;
export declare const attachComponentToConfig: (observer: BalConfigObserver) => void;
export declare const detachComponentFromConfig: (observer: BalConfigObserver) => void;
export declare const updateBalLanguage: (language: BalLanguage) => void;
export declare const updateBalRegion: (region: BalRegion) => void;
export declare const updateBalAllowedLanguages: (allowedLanguages: BalLanguage[]) => void;
export declare const updateBalIcons: (icons: BalIcons) => void;
export declare const updateBalAnimated: (animated: boolean) => void;
