import { SimplePerson } from './types.js';
export type EventCategory = 'career' | 'social' | 'achievement' | 'education' | 'health' | 'finance' | 'random' | 'neutral' | 'negative';
export interface MessageEventData {
    id: string;
    message: string;
    type: string;
    date?: string;
    hour?: number;
    energyCost?: number;
    diamondCost?: number;
    moneyCost?: number;
    energyReward?: number;
    diamondReward?: number;
    moneyReward?: number;
    affinityChange?: number;
    characters?: SimplePerson[];
    claimed?: boolean;
    claimedAt?: string;
    category?: EventCategory;
}
export declare class MessageEvent {
    id: string;
    message: string;
    type: string;
    date: string;
    hour: number;
    energyCost: number;
    diamondCost: number;
    moneyCost: number;
    energyReward: number;
    diamondReward: number;
    moneyReward: number;
    affinityChange: number;
    characters?: SimplePerson[];
    claimed: boolean;
    claimedAt: string | null;
    category: EventCategory;
    constructor(data: MessageEventData);
    get isClaimable(): boolean;
    get isNegative(): boolean;
    private inferCategory;
    toJSON(): MessageEventData;
}
//# sourceMappingURL=MessageEvent.d.ts.map