import { type IMapRequest, type IMapResponse } from './ApiClient.types';
import { Logger } from '../../core/logger';
import { Data } from '../Data/Data';
export declare class ApiClient {
    private readonly data;
    private readonly logger;
    constructor(data?: Data, logger?: typeof Logger);
    checkDevice(options: IMapRequest['checkDevice']): Promise<IMapResponse['checkDevice']>;
    getConfig(options: IMapRequest['getConfig']): Promise<IMapResponse['getConfig']>;
    applicationOpen(options: IMapRequest['applicationOpen']): Promise<IMapResponse['applicationOpen']>;
    registerDevice(options: IMapRequest['registerDevice']): Promise<IMapResponse['registerDevice']>;
    unregisterDevice(options: IMapRequest['unregisterDevice']): Promise<IMapResponse['unregisterDevice']>;
    deleteDevice(options: IMapRequest['deleteDevice']): Promise<IMapResponse['deleteDevice']>;
    messageDeliveryEvent(options: IMapRequest['messageDeliveryEvent']): Promise<IMapResponse['messageDeliveryEvent']>;
    pushStat(options: IMapRequest['pushStat']): Promise<IMapResponse['pushStat']>;
    setTags(options: IMapRequest['setTags']): Promise<IMapResponse['setTags']>;
    getTags(options: IMapRequest['getTags']): Promise<IMapResponse['getTags']>;
    registerUser(options: IMapRequest['registerUser']): Promise<IMapResponse['registerUser']>;
    registerEmail(options: IMapRequest['registerEmail']): Promise<IMapResponse['registerEmail']>;
    registerEmailUser(options: IMapRequest['registerEmailUser']): Promise<IMapResponse['registerEmailUser']>;
    setEmailTags(options: IMapRequest['setEmailTags']): Promise<IMapResponse['setEmailTags']>;
    postEvent(options: IMapRequest['postEvent']): Promise<IMapResponse['postEvent']>;
    getInboxMessages(options: IMapRequest['getInboxMessages']): Promise<IMapResponse['getInboxMessages']>;
    inboxStatus(options: IMapRequest['inboxStatus']): Promise<IMapResponse['inboxStatus']>;
    pageVisit(options: IMapRequest['pageVisit'], url: string): Promise<IMapResponse['pageVisit']>;
    setPurchase(options: IMapRequest['setPurchase']): Promise<IMapResponse['setPurchase']>;
    private createRequest;
    private checkResponse;
}
