import { ComponentInterface } from '../stencil-public-runtime';
import { AnalyticsService } from './services/analytics.service';
interface iBasicData {
    resource_id: string;
    component_name: string;
    component_version: string;
    client_user_agent: string;
    client_platform: string;
    client_origin: string;
    error?: any;
}
/**
 * @class JustifiAnalytics
 * @description A class to track analytics for a component
 * @param { component } ComponentInterface - The component to track
 *
 */
declare class JustifiAnalytics {
    componentInstance: any;
    eventEmitters: string[];
    service: AnalyticsService;
    basicData: iBasicData;
    private eventListeners;
    constructor(component: ComponentInterface);
    get resourceId(): any;
    setUpBasicData(): void;
    handleCustomEvent: (data: any) => Promise<void>;
    private trackCustomEvents;
    setupLifecycleTracking(): void;
    cleanup(): void;
}
export default JustifiAnalytics;
