/**
 * Hobbies & Personal Development Activity Events
 * Personal growth, hobbies, and self-improvement activities
 *
 * Events:
 * - GardeningEvent: Starting a garden (ages 20-100) - Uses ActivityRecord to track plants grown
 * - MeditationEvent: Beginning a meditation practice (ages 14-100) - Uses Habit system for daily practice
 * - BirdWatchingEvent: Taking up birdwatching (ages 30-100) - Uses ActivityRecord to track species spotted
 * - CollectionHobbyEvent: Starting a collection hobby (ages 8-100) - Uses ActivityRecord to track collection
 * - ReadingChallengeEvent: Challenging yourself to read more books (ages 10-100) - Uses ActivityRecord to track books read
 * - FishingHobbyEvent: Taking up fishing (ages 10-100)
 * - PuzzleHobbyEvent: Puzzle and board game hobbies (ages 8-100)
 * - AstronomyHobbyEvent: Stargazing and astronomy (ages 10-100)
 * - ContentCreationEvent: Starting a podcast/YouTube/blog (ages 14-65)
 * - CookingHobbyEvent: Learning to cook specific cuisines (ages 14-100)
 */
import { BaseEvent, EventResult, AnswerOption, EventConfig } from '../base.js';
import { Player } from '../../models/index.js';
/**
 * Gardening Event - Enhanced with activity records and follow-up events
 */
export declare class GardeningEvent extends BaseEvent {
    readonly id = "gardening";
    getConfig(): EventConfig;
    checkConditions(player: Player): boolean;
    getQuestion(): string;
    getAnswerOptions(): AnswerOption[];
    processAnswer(player: Player, selectedOption: number): EventResult;
}
/**
 * Meditation Event - Enhanced with habit system integration
 */
export declare class MeditationEvent extends BaseEvent {
    readonly id = "meditation";
    getConfig(): EventConfig;
    checkConditions(player: Player): boolean;
    getQuestion(): string;
    getAnswerOptions(): AnswerOption[];
    processAnswer(player: Player, selectedOption: number): EventResult;
}
/**
 * Bird Watching Event - Enhanced with species tracking
 */
export declare class BirdWatchingEvent extends BaseEvent {
    readonly id = "birdWatching";
    getConfig(): EventConfig;
    checkConditions(player: Player): boolean;
    getQuestion(): string;
    getAnswerOptions(): AnswerOption[];
    processAnswer(player: Player, selectedOption: number): EventResult;
}
/**
 * Collection Hobby Event - Enhanced with age-appropriate collection types
 */
export declare class CollectionHobbyEvent extends BaseEvent {
    readonly id = "collectionHobby";
    private getCollectionType;
    getConfig(): EventConfig;
    checkConditions(player: Player): boolean;
    getQuestion(player?: Player): string;
    getAnswerOptions(): AnswerOption[];
    processAnswer(player: Player, selectedOption: number): EventResult;
}
/**
 * Reading Challenge Event - Enhanced with habit and progress tracking
 */
export declare class ReadingChallengeEvent extends BaseEvent {
    readonly id = "readingChallenge";
    getConfig(): EventConfig;
    checkConditions(player: Player): boolean;
    getQuestion(): string;
    getAnswerOptions(): AnswerOption[];
    processAnswer(player: Player, selectedOption: number): EventResult;
}
/**
 * Fishing Hobby Event
 */
export declare class FishingHobbyEvent extends BaseEvent {
    readonly id = "fishingHobby";
    getConfig(): EventConfig;
    checkConditions(player: Player): boolean;
    getQuestion(): string;
    getAnswerOptions(): AnswerOption[];
    processAnswer(player: Player, selectedOption: number): EventResult;
}
/**
 * Puzzle & Board Games Event
 */
export declare class PuzzleHobbyEvent extends BaseEvent {
    readonly id = "puzzleHobby";
    private getPuzzleType;
    getConfig(): EventConfig;
    checkConditions(player: Player): boolean;
    getQuestion(): string;
    getAnswerOptions(): AnswerOption[];
    processAnswer(player: Player, selectedOption: number): EventResult;
}
/**
 * Astronomy/Stargazing Event
 */
export declare class AstronomyHobbyEvent extends BaseEvent {
    readonly id = "astronomyHobby";
    getConfig(): EventConfig;
    checkConditions(player: Player): boolean;
    getQuestion(): string;
    getAnswerOptions(): AnswerOption[];
    processAnswer(player: Player, selectedOption: number): EventResult;
}
/**
 * Podcasting/Content Creation Event
 */
export declare class ContentCreationEvent extends BaseEvent {
    readonly id = "contentCreation";
    private getContentType;
    getConfig(): EventConfig;
    checkConditions(player: Player): boolean;
    getQuestion(): string;
    getAnswerOptions(): AnswerOption[];
    processAnswer(player: Player, selectedOption: number): EventResult;
}
/**
 * Cooking/Baking as Hobby Event
 */
export declare class CookingHobbyEvent extends BaseEvent {
    readonly id = "cookingHobby";
    private getCuisineType;
    getConfig(): EventConfig;
    checkConditions(player: Player): boolean;
    getQuestion(): string;
    getAnswerOptions(): AnswerOption[];
    processAnswer(player: Player, selectedOption: number): EventResult;
}
export declare const hobbyEvents: (GardeningEvent | MeditationEvent | BirdWatchingEvent | CollectionHobbyEvent | ReadingChallengeEvent | FishingHobbyEvent | PuzzleHobbyEvent | AstronomyHobbyEvent | ContentCreationEvent | CookingHobbyEvent)[];
//# sourceMappingURL=hobbies.d.ts.map