import { IncomingMessage } from '../requestCompat';
import { ConversationsAgentOnlinePingPostRequest } from '../model/conversationsAgentOnlinePingPostRequest';
import { ConversationsMessage } from '../model/conversationsMessage';
import { ConversationsMessagesIdPutRequest } from '../model/conversationsMessagesIdPutRequest';
import { ConversationsMessagesPostRequest } from '../model/conversationsMessagesPostRequest';
import { ConversationsPushedMessagesIdPutRequest } from '../model/conversationsPushedMessagesIdPutRequest';
import { ConversationsPushedMessagesPostRequest } from '../model/conversationsPushedMessagesPostRequest';
import { Authentication, Interceptor } from '../model/models';
import { ApiKeyAuth } from '../model/models';
export declare enum ConversationsApiApiKeys {
    apiKey = 0,
    partnerKey = 1
}
export declare class ConversationsApi {
    protected _basePath: string;
    protected _defaultHeaders: any;
    protected _useQuerystring: boolean;
    protected authentications: {
        default: Authentication;
        apiKey: ApiKeyAuth;
        partnerKey: ApiKeyAuth;
    };
    protected interceptors: Interceptor[];
    constructor(basePath?: string);
    set useQuerystring(value: boolean);
    set basePath(basePath: string);
    set defaultHeaders(defaultHeaders: any);
    get defaultHeaders(): any;
    get basePath(): string;
    setDefaultAuthentication(auth: Authentication): void;
    setApiKey(key: ConversationsApiApiKeys, value: string): void;
    addInterceptor(interceptor: Interceptor): void;
    conversationsAgentOnlinePingPost(body: ConversationsAgentOnlinePingPostRequest, options?: {
        headers: {
            [name: string]: string;
        };
    }): Promise<{
        response: IncomingMessage;
        body?: any;
    }>;
    conversationsMessagesIdDelete(id: string, options?: {
        headers: {
            [name: string]: string;
        };
    }): Promise<{
        response: IncomingMessage;
        body?: any;
    }>;
    conversationsMessagesIdGet(id: string, options?: {
        headers: {
            [name: string]: string;
        };
    }): Promise<{
        response: IncomingMessage;
        body: ConversationsMessage;
    }>;
    conversationsMessagesIdPut(id: string, body?: ConversationsMessagesIdPutRequest, options?: {
        headers: {
            [name: string]: string;
        };
    }): Promise<{
        response: IncomingMessage;
        body: ConversationsMessage;
    }>;
    conversationsMessagesPost(body: ConversationsMessagesPostRequest, options?: {
        headers: {
            [name: string]: string;
        };
    }): Promise<{
        response: IncomingMessage;
        body: ConversationsMessage;
    }>;
    conversationsPushedMessagesIdDelete(id: string, options?: {
        headers: {
            [name: string]: string;
        };
    }): Promise<{
        response: IncomingMessage;
        body?: any;
    }>;
    conversationsPushedMessagesIdGet(id: string, options?: {
        headers: {
            [name: string]: string;
        };
    }): Promise<{
        response: IncomingMessage;
        body: ConversationsMessage;
    }>;
    conversationsPushedMessagesIdPut(id: string, body: ConversationsPushedMessagesIdPutRequest, options?: {
        headers: {
            [name: string]: string;
        };
    }): Promise<{
        response: IncomingMessage;
        body: ConversationsMessage;
    }>;
    conversationsPushedMessagesPost(body: ConversationsPushedMessagesPostRequest, options?: {
        headers: {
            [name: string]: string;
        };
    }): Promise<{
        response: IncomingMessage;
        body: ConversationsMessage;
    }>;
}
