import React, { PropsWithChildren } from 'react';
import type { Client } from 'web2-mq';
export declare type ListComponentType = 'room' | 'chat' | 'profile';
export declare enum AppTypeEnum {
    'pc' = "pc",
    'h5' = "h5",
    'mobile' = "mobile"
}
export declare type ChatContextValue = {
    client: Client;
    appType: AppTypeEnum;
    showCreateChannel: boolean;
    showListTypeView: ListComponentType;
    setShowCreateChannel: React.Dispatch<React.SetStateAction<boolean>>;
    setShowListTypeView: (listType: ListComponentType) => void;
    logout: () => void;
};
export declare const ChatContext: React.Context<ChatContextValue | undefined>;
export declare const ChatProvider: ({ children, value, }: React.PropsWithChildren<{
    value: ChatContextValue;
}>) => JSX.Element;
export declare const useChatContext: (componentName?: string | undefined) => ChatContextValue;
