import { default as React, ReactNode } from 'react';
import { default as XmppClient } from '../networking/xmppClient';
import { IConfig, IRoom, xmppSettingsInterface } from '../types/types';
interface XmppContextType {
    client: XmppClient | null;
    providerBootstrapStatus: 'idle' | 'running' | 'ready' | 'failed';
    initMode: 'provider' | 'chat';
    setClient: (client: XmppClient | null) => void;
    initializeClient: (username: string, password: string, xmppSettings?: xmppSettingsInterface, roomsList?: {
        [jid: string]: IRoom;
    }) => Promise<XmppClient>;
}
interface XmppProviderProps {
    children: ReactNode;
    config?: IConfig;
    pushNotifications?: IConfig['pushNotifications'];
}
export declare const XmppProvider: React.FC<XmppProviderProps>;
export declare const useXmppClient: () => XmppContextType;
export {};
