///
import { IUser } from 'types';
import { ChannelMemberFilter } from '../../shared/graphql/__generated__';
export interface IChannel {
channelIdentityId?: string;
}
export interface ITab extends IChannel {
isCollapsed?: boolean;
}
export declare type SetState = (newState: T | ((oldState: T) => T), callback?: () => any) => void;
export declare type SetChannel = SetState;
export declare type SetTabs = SetState;
export interface IChatContext {
setChannel: SetChannel;
setTabs: SetTabs;
openedChannel: IChannel | null;
user: IUser | null;
tabs: ITab[];
isSidebarVisible: boolean;
setSidebarVisibility?: (isVisible: boolean) => void;
usersFilter: {} | null;
channelMembersFilter?: ChannelMemberFilter;
}
export declare const ChatContext: import("react").Context;