import { SessionListener } from "../../core/internal/session/SessionListener"; import { User } from "../../core/internal/model/model"; import { CampaignParser } from "./CampaignParser"; import { Campaign } from "./Campaign"; import { CampaignStorage } from "./CampaignStorage"; import HackleCore from "../../core/HackleCore"; import { UserManager } from "../../core/internal/user/UserManager"; export declare class CampaignManager implements SessionListener { private readonly storage; private readonly parser; private readonly core; private readonly userManager; constructor(storage: CampaignStorage, parser: CampaignParser, core: HackleCore, userManager: UserManager); startNewCampaign(user: User, campaign: Campaign, timestamp: number): void; startNewCampaignIfNeeded(user: User, timestamp: number): void; onSessionEnded(sessionId: string, user: User, timestamp: number): void; onSessionStarted(sessionId: string, user: User, timestamp: number): void; }