/**
 * The MessageHandler class handles message-related functionalities by providing access to message and sender ID instances.
 */
export declare class MessageHandler {
    private messageInstance;
    private senderIdInstance;
    private numberInstance;
    private templateInstance;
    private phonebookInstance;
    private contactInstance;
    private campaignInstance;
    /**
     * Constructs a MessageHandler instance.
     * @constructor
     * @param {string} apiKey - The API key used for authorization.
     */
    constructor(apiKey: string);
    /**
     * Provides access to message-related methods.
     * @type {Object}
     * @property {Function} sendMessage - Sends a single message.
     * @property {Function} sendBulkMessage - Sends messages in bulk.
     * @property {Function} fetchSenderIDs - Retrieves sender IDs.
     * @property {Function} requestSenderID - Requests a sender ID.
     * @property {Function} sendMessageWithNumber - Sends a message with autogenerated number ID.
     * @property {Function} sendMessageWithTemplate - Sends a message with template.
     * @returns {Object} - Object containing methods related to messages and sender IDs.
     */
    get message(): {
        sendMessage: (data: import("../..").ISendMessage) => Promise<import("../..").ISendMessageResponse>;
        sendBulkMessage: (data: import("../..").ISendBulkMessage) => Promise<import("../..").ISendBulkMessageResponse>;
        fetchSenderIDs: (page?: number | undefined) => Promise<import("../..").ISenderIDResponse>;
        requestSenderID: (data: import("../..").IRequestSenderID) => Promise<import("../..").IRequestSenderIDResponse>;
        sendMessageWithNumber: (data: import("../..").ISendMessageWithNumber) => Promise<import("../..").ISendMessageWithNumberResponse>;
        sendMessageWithTemplate: (data: import("../..").IDeviceTemplate) => Promise<import("../..").IDeviceTemplateResponse>;
        fetchPhonebooks: (page?: number | undefined) => Promise<import("../..").IFetchPhonebooksResponse>;
        createPhonebook: (data: import("../..").IPhonebook) => Promise<import("../..").IPhonebookResponse>;
        updatePhonebook: (phonebook_id: string, data: import("../..").IPhonebook) => Promise<import("../..").IPhonebookResponse>;
        deletePhonebook: (phonebook_id: string) => Promise<import("../..").IPhonebookResponse>;
        fetchContacts: (phonebook_id: string, page?: number | undefined) => Promise<import("../..").IFetchContactsResponse>;
        createContact: (phonebook_id: string, data: import("../..").ICreateContact) => Promise<import("../..").ICreateContactResponse>;
        deleteContact: (contact_id: string) => Promise<import("../..").IDeleteContactResponse>;
        fetchCampaigns: (page?: number | undefined) => Promise<import("../..").IFetchCampaignsResponse>;
        fetchCampaignHistory: (campaign_id: string, page?: number | undefined) => Promise<import("../..").IFetchCampaignHistoryResponse>;
        sendCampaign: (data: import("../..").ISendCampaign) => Promise<import("../..").ISendCampaignResponse>;
    };
}
