import { AuthData } from "../interfaces/auth/authdata";
import { IConversationMessageResponse, IConversationMessagesResponse, ISendMessageRequest, IOutboundCallRequest, IUpdateMessageStatusRequest, IMessageStatusResponse, IMessageRecordingResponse, IMessageTranscriptionResponse } from "../interfaces/conversation.message";
export declare class ConversationsMessage {
    private authData?;
    /**
     * Endpoints For Conversation Messages
     * https://highlevel.stoplight.io/docs/integrations/a503551cadede-get-message-by-message-id
     */
    constructor(authData?: AuthData);
    /**
     * Get Message by Message ID
     * Documentation - https://highlevel.stoplight.io/docs/integrations/a503551cadede-get-message-by-message-id
     * @param messageId
     * @returns
     */
    get(messageId: string): Promise<IConversationMessageResponse>;
    /**
     * Get Messages by Conversation ID
     * Documentation - https://highlevel.stoplight.io/docs/integrations/ab21134dad173-get-messages-by-conversation-id
     * @param conversationId
     * @returns
     */
    getByConversation(conversationId: string): Promise<IConversationMessagesResponse>;
    /**
     * Send a New Message
     * Documentation - https://highlevel.stoplight.io/docs/integrations/5853cb0a54971-send-a-new-message
     * @param conversationId
     * @param message
     * @returns
     */
    send(conversationId: string, message: ISendMessageRequest): Promise<IConversationMessageResponse>;
    /**
     * Add an Inbound Message
     * Documentation - https://highlevel.stoplight.io/docs/integrations/3c9036411fcc3-add-an-inbound-message
     * @param conversationId
     * @param message
     * @returns
     */
    addInbound(conversationId: string, message: ISendMessageRequest): Promise<IConversationMessageResponse>;
    /**
     * Add an External Outbound Call
     * Documentation - https://highlevel.stoplight.io/docs/integrations/d032812b4e850-add-an-external-outbound-call
     * @param conversationId
     * @param call
     * @returns
     */
    addOutboundCall(conversationId: string, call: IOutboundCallRequest): Promise<IConversationMessageResponse>;
    /**
     * Cancel a Scheduled Message
     * Documentation - https://highlevel.stoplight.io/docs/integrations/f7e0bc96bf0a4-cancel-a-scheduled-message
     * @param messageId
     * @returns
     */
    cancel(messageId: string): Promise<IMessageStatusResponse>;
    /**
     * Update Message Status
     * Documentation - https://highlevel.stoplight.io/docs/integrations/4518573836035-update-message-status
     * @param messageId
     * @param status
     * @returns
     */
    updateStatus(messageId: string, status: IUpdateMessageStatusRequest): Promise<IMessageStatusResponse>;
    /**
     * Get Recording by Message ID
     * Documentation - https://highlevel.stoplight.io/docs/integrations/72f801089fbac-get-recording-by-message-id
     * @param messageId
     * @returns
     */
    getRecording(messageId: string): Promise<IMessageRecordingResponse>;
    /**
     * Get Transcription by Message ID
     * Documentation - https://highlevel.stoplight.io/docs/integrations/9f8e2c1696a55-get-transcription-by-message-id
     * @param messageId
     * @returns
     */
    getTranscription(messageId: string): Promise<IMessageTranscriptionResponse>;
}
