import { ICharacter, IGlobalChatMessage, ILocalChatMessage, IPrivateChatMessage, ITradeChatMessage } from '@rpg-engine/shared';
import { IStyles } from '../Chat/Chat';
export declare type PrivateChatCharacter = Pick<ICharacter, '_id' | 'name'>;
export declare type ChatMessage = ILocalChatMessage | IPrivateChatMessage | ITradeChatMessage | IGlobalChatMessage;
export interface IChatRevampProps {
    chatMessages: ChatMessage[];
    onSendGlobalChatMessage: (message: string) => void;
    onSendGuildChatMessage: (message: string) => void;
    onChangeCharacterName: (characterName: string) => void;
    onFocus?: () => void;
    onBlur?: () => void;
    onCloseButton: () => void;
    styles?: IStyles;
    tabs: any[];
    onChangeTab: (tab: string) => void;
    activeTab?: string;
    privateChatCharacters?: PrivateChatCharacter[];
    onCharacterClick?: (character: PrivateChatCharacter) => void;
    onSendPrivateChatMessage: (message: string) => void;
    recentChatCharacters?: PrivateChatCharacter[];
    recentSelectedChatCharacterId?: string;
    onPreviousChatCharacterClick?: (character: PrivateChatCharacter) => void;
    onRemoveRecentChatCharacter?: (character: PrivateChatCharacter) => void;
    unseenMessageCharacterIds?: string[];
    onSendTradeMessage: (message: string) => void;
    searchCharacterUI?: boolean;
    hideSearchCharacterUI?: () => void;
    showSearchCharacterUI?: () => void;
    minimizedByDefault?: boolean;
    autoCloseOnSend?: boolean;
    onSendLocalChatMessage: (message: string) => void;
    onDiscordClick?: () => void;
    onWhatsAppClick?: () => void;
}
