/// <reference types="jquery" />
import { GoogleAnalyticPayload, GA4Payload } from "./globals";
export declare class APIClientBase {
    static _SiteURL: string | null;
    private static _LastControler;
    private static _LastEndpoint;
    private static _LastAt;
    /** Spitfire Assigned Site ID  */
    private static GAClientID;
    private static GAIgnoreActions;
    private readonly _dateFormat;
    protected jsonParseReviver: {
        (key: string, value: any): any;
    } | undefined;
    protected jsonParseReviverLogic: ((key: string, value: any) => any) | undefined;
    getBaseUrl(baseURL: string): string;
    protected transformResult(url: string, response: Response, processor: (response: Response) => any): any;
    protected GAAPIEvent(controllerAction: string, endpointLabel: string): JQuery.Promise<any> | undefined;
    static GAMonitorEvent(clientID: string, category: string, action: string, label: string, value: number): JQuery.Promise<any> | undefined;
    static GAMonitorSendFailed: boolean;
    static GA4MonitorSendFailed: boolean;
    /** POSTS supplied payload to Google Analytics
     *  @summary - Defaults property ID (tid) to sfPMS and version (v) to 1
     *          - One failure disables all future tracking on this client instance
     *  @async uses jQuery.ajax
     *  @see  https://developers.google.com/analytics/devguides/collection/protocol/v1/devguide#page
     *  @obsolete Use GA4MonitorSend
    */
    static GAMonitorSend(payload: GoogleAnalyticPayload): JQuery.Promise<any>;
    /** converts and posts supplied payload to Google Analytics v4
   *  @summary - Defaults property ID (tid) to sfPMS and version (v) to 1
   *          - One failure disables all future tracking on this client instance
   *  @async uses jQuery.ajax
   *  @see  https://developers.google.com/analytics/devguides/collection/protocol/ga4
   * Requests can have a maximum of 25 events.
   * Events can have a maximum of 25 parameters.
   * Events can have a maximum of 25 user properties.
   * User property names must be 24 characters or fewer.
   *       User property values must be 36 characters or fewer.
   * Event names must be 40 characters or fewer, may only contain alpha-numeric characters and underscores, and must start with an alphabetic character.
   * Parameter names (including item parameters) must be 40 characters or fewer, may only contain alpha-numeric characters and underscores, and must start with an alphabetic character.
   * Parameter values (including item parameter values) must be 100 character or fewer.
   * Item parameters can have a maximum of 10 custom parameters.
   * The post body must be smaller than 130kB.
   *
  */
    static GA4MonitorSend(payload: GoogleAnalyticPayload | GA4Payload): JQuery.Promise<any>;
}
