import Session from '../sessions/Session';
export default class AppAnalytics {
    private session;
    private listeners;
    private appAnalyticsStarted;
    private appAnalyticsStopped;
    constructor(session: Session);
    destroy(): void;
    setOptions(options: any): void;
    getOptions(): any;
    newSession(options?: object, dimensions?: object): void;
    begin(dimensions?: object): void;
    endSession(params?: object): void;
    /**
     * @deprecated The new method is begin(dimensions)
     */
    fireSessionStart(dimensions?: object): void;
    /**
     * @deprecated The new method is endSession(params)
     */
    fireSessionStop(params?: object): void;
    fireEvent(eventName?: string, dimensions?: object, values?: object, topLevelDimensions?: object): void;
    fireError(code: String, msg: String, metadata: any, duration?: Number, dimensions?: object, values?: object): void;
    fireNavigation(dimensions?: object): void;
    /**
     * @deprecated The new method is fireNavigation(dimensions)
     */
    fireNav(dimensions?: object): void;
    isActive(): boolean;
    isStarted(): boolean;
    getSessionRoot(): string | null;
    getSessionHost(): string | null;
    private _logBeginEvent;
    private _logFireNewSessionListener;
    private setListeners;
    private beforeStartListener;
    private afterStartListener;
    private beforeStopListener;
    private afterStopListener;
    private beforeSessionEventListener;
    private afterSessionEventListener;
}
