import { RatatoskrAPI } from "../api/ratatoskr-api"; import { ActorId, ActorType } from "./actor-types"; export declare type ActivationMessageResult = Promise<{ rejected: boolean; promise?: Promise; }>; declare class ActorActivation { private internalActorType; private internalActorId; private internalExpireTime; private actorInstance; private queue; private actorContext; private timers; private acceptingWork; constructor(actorType: ActorType, actorId: ActorId, actorCtr: () => void, api: RatatoskrAPI); onActivate(): Promise; onMessage(contents: any): ActivationMessageResult; onReminder(contents: string): Promise<{ rejected: boolean; }>; onDeactivate(): Promise; registerTimer(name: string, delayMs: number, recurring: boolean, callback: (...args: any[]) => void): void; unregisterTimer(name: string): void; private stopAllTimers(); private jobTask(task, callback); readonly actorType: ActorType; readonly actorId: ActorId; expireTime: number; } export default ActorActivation; export { ActorActivation };