export interface ActivityState {
    isActive: boolean;
    lastActivityTime: number;
    activityScore: number;
    platform: 'mobile' | 'desktop';
    hasMotionSupport: boolean;
    hasGyroscopeSupport: boolean;
    motionData?: {
        x: number;
        y: number;
        z: number;
    };
    gyroscopeData?: {
        alpha: number;
        beta: number;
        gamma: number;
    };
    autoclickerDetected: boolean;
    clickPattern: {
        lastClickTime: number;
        lastClickPosition: {
            x: number;
            y: number;
        };
        timingHistory: number[];
        positionHistory: Array<{
            x: number;
            y: number;
            time: number;
        }>;
    };
}
export interface ActivityConfig {
    inactivityTimeout: number;
    activityScoreThreshold: number;
    motionThreshold: number;
    gyroscopeThreshold: number;
    checkInterval: number;
    maxActivityScore: number;
    scoreDecayRate: number;
    autoclickerDetection: {
        enabled: boolean;
        maxIdenticalIntervals: number;
        minTimingVariation: number;
        maxIdenticalPositions: number;
        requiredMotionThreshold: number;
    };
}
declare class ActivityDetector {
    private config;
    private state;
    private listeners;
    private checkInterval;
    private domEventListeners;
    private lastMotionData;
    private lastGyroscopeData;
    private isTelegramAvailable;
    constructor(config?: Partial<ActivityConfig>);
    private initializeState;
    private detectPlatform;
    private checkMotionSupport;
    private checkGyroscopeSupport;
    private setupActivityDetection;
    private setupDOMEvents;
    private createActivityListener;
    private detectAutoclicker;
    private countIdenticalIntervals;
    private countIdenticalPositions;
    private getEventPosition;
    private setupTelegramSensors;
    private handleMotionData;
    private handleGyroscopeData;
    private updateActivity;
    private startPeriodicCheck;
    private notifyListeners;
    subscribe(callback: (state: ActivityState) => void): () => void;
    getState(): ActivityState;
    resetAutoclickerDetection(): void;
    updateConfig(newConfig: Partial<ActivityConfig>): void;
    destroy(): void;
}
export declare function getActivityDetector(config?: Partial<ActivityConfig>): ActivityDetector;
export declare function destroyActivityDetector(): void;
export {};
