import Base from '../../Base';
import AsyncLock from '../../util/AsyncLock';
import PartyMessage from './PartyMessage';
import type Client from '../../Client';
import type ClientParty from './ClientParty';
/**
 * Represents a party's conversation
 */
declare class PartyChat extends Base {
    /**
     * The chat room's JID
     * @deprecated since chat is not done over xmpp anymore, this property will always be an empty string and will be removed in a future version
     */
    jid: string;
    /**
     * the party chat's conversation id
     */
    get conversationId(): string;
    /**
     * The client's chat room nickname
     * @deprecated since chat is not done over xmpp anymore, this property will always be an empty string  and will be removed in a future version
     */
    nick: string;
    /**
     * The chat room's join lock
     * @deprecated since chat is not done over xmpp anymore, this is not used anymore and will be removed in a future version
     */
    joinLock: AsyncLock;
    /**
     * The chat room's party
     */
    party: ClientParty;
    /**
     * Whether the client is connected to the party chat
     * @deprecated since chat is not done over xmpp anymore, this property will always be true and will be removed in a future version
     */
    isConnected: boolean;
    /**
     * Holds the account ids, which will not receive party messages anymore from the currently logged in user
     */
    bannedAccountIds: Set<string>;
    /**
     * @param client The main client
     * @param party The chat room's party
     */
    constructor(client: Client, party: ClientParty);
    /**
     * Sends a message to this party chat
     * @param content The message that will be sent
     * @throws {PartyChatConversationNotFoundError} When the client is the only party member
     */
    send(content: string): Promise<PartyMessage>;
    /**
     * Joins this party chat
     * @deprecated since chat is not done over xmpp anymore, this function will do nothing and will be removed in a future version
     */
    join(): Promise<void>;
    /**
     * Leaves this party chat
     * @deprecated since chat is not done over xmpp anymore, this function will do nothing and will be removed in a future version
     */
    leave(): Promise<void>;
    /**
      * Ban a member from this party chat
      * @param member The member that should be banned
      * @deprecated since chat is not done over xmpp anymore, this function will do nothing and will be removed in a future version
      */
    ban(): Promise<void>;
}
export default PartyChat;
