import ' rollup-plugin-inject-process-env';
import { ChatUserInfo } from "@xapp/stentor-chat-widget";
import { ActionType } from "../store/ChatAction";
import { ChatServer, ChatServerOptions, OfflineMessage } from "./ChatServer";
import { ChatMessageRequest, ChatServerMessage } from "./ChatServerMessage";
export interface StentorServerChatConfig {
    readonly url: string;
}
export declare class StentorServerChat implements ChatServer {
    private socket;
    private dispatch;
    private visitorInfo;
    private token;
    private readonly config;
    constructor(config: StentorServerChatConfig, options?: ChatServerOptions);
    init(dispatch: (action: ActionType) => void): void;
    sendOfflineMsg(_: OfflineMessage, cb: (error?: Error) => void): void;
    sendChatMsg(message: ChatServerMessage, cb: (err?: Error) => void): void;
    sendChatMsgRequest(message: ChatMessageRequest, cb: (err?: Error) => void): void;
    sendTyping(isTyping: boolean): void;
    setVisitorInfo(visitorInfo: ChatUserInfo, _sessionId: string, cb: (error?: Error) => void): void;
    sendChatRating(): void;
    sendFile(_: File, cb: (err?: Error) => void): void;
    markAsRead(): void;
    flush(): void;
    dispose(): void;
    sleep(): void;
    wakeup(): void;
    bargeOut(_cb: (err?: Error) => void): Promise<void>;
    bargeIn(_agentName: string, _cb: (err?: Error) => void): Promise<void>;
}
