import { ConsentMonitor } from "../consentMonitor";
import { gaTracker } from "../gaTracker";
import { oTracker } from "../oTracker";
import { ScrollTracker } from "../utils/scroll";
import { ConfigType, OrigamiEventType } from "../utils/yupValidator";
export interface TrackingOptions {
    scrollTrackerSelector?: string;
    isCustomGTMEvent?: boolean;
    sendGTMPageViewYN?: boolean;
    sendBrandedContent?: boolean;
    disableAppFormatTransform?: boolean;
    logValidationErrors?: boolean;
}
export declare class FTTracking {
    private _config;
    options: TrackingOptions;
    oTracker: oTracker;
    gaTracker: gaTracker;
    scrollTracker: ScrollTracker;
    disableAppFormatTransform: boolean;
    logValidationErrors: boolean;
    consentMonitor: ConsentMonitor | undefined;
    oEvent: (detail: OrigamiEventType) => void;
    gaEvent: (category: string, action: string, label: string) => void;
    gtmEvent: (category: string, action: string, label: string) => void;
    constructor(config: ConfigType, options?: TrackingOptions);
    set config(c: ConfigType);
    get config(): ConfigType;
    initializeConsentMonitor: () => ConsentMonitor;
    newPageView(config: ConfigType): void;
}
//# sourceMappingURL=index.d.ts.map