import { CookieBannerService } from '../bootstrap/cookie-banner/cookie-banner.service';
import { AppStateService } from '../common/ui-state.service';
import { GainsightService } from './gainsight.service';
import { UserEngagementsService } from './user-engagements.service';
import * as i0 from "@angular/core";
import * as i1 from "./product-experience.directive";
/**
 * This module enables an tenant to activate the product experience
 * software [Gainsight](https://www.gainsight.com/product-experience/) to help
 * and track user actions.
 */
export declare class ProductExperienceModule {
    private appState;
    private gainsightService;
    private cookieBannerService;
    private userEngagementsService;
    constructor(appState: AppStateService, gainsightService: GainsightService, cookieBannerService: CookieBannerService, userEngagementsService: UserEngagementsService);
    /**
     * Observes several factors to determine the state of user tracking and manages the visibility of Gainsight engagements.
     * It watches for changes in the current tenant, the state of the cookie banner, and user's preferences for Gainsight engagements.
     *
     * 1. If the cookie banner is being displayed, it returns without making any changes.
     * 2. If Gainsight is disabled at the tenant level via custom properties, it returns without making any changes.
     * 3. If the conditions are met for loading the Gainsight tag, it loads the tag.
     */
    toggleUserTrackingObservable(): void;
    /**
     * Determines if a tracking tag should be loaded based on cookie preferences.
     * @returns `true` if user cookie preferences exist, otherwise `false`.
     */
    shouldLoadTag(): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<ProductExperienceModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<ProductExperienceModule, [typeof i1.ProductExperienceDirective], never, [typeof i1.ProductExperienceDirective]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<ProductExperienceModule>;
}
//# sourceMappingURL=product-experience.module.d.ts.map