/**
 * Shop Manager Module
 * Handles in-game store items and in-app purchase items.
 * Ported from Python shop/shop_manager.py
 */
import { Player } from '../../models/Player.js';
export interface StoreItem {
    id: string;
    name: string;
    image: string | null;
    price: number;
    description: string;
    prestigeBoost: number;
    energyBoost: number;
}
export interface InAppPurchaseItem {
    id: string;
    name: string;
    price: number;
    description: string;
    diamonds: number;
    image: string;
}
export interface PurchaseResult {
    success: boolean;
    message: string;
    item?: StoreItem;
}
/**
 * Create a new store item
 */
export declare function createStoreItem(name: string, price: number, description: string, prestigeBoost: number, image?: string | null, energyBoost?: number): StoreItem;
/**
 * Get all available store items
 */
export declare function getStoreItems(): StoreItem[];
/**
 * Process purchase of a store item
 */
export declare function purchaseItem(player: Player, itemId: string): PurchaseResult;
/**
 * Create an in-app purchase item
 */
export declare function createInAppPurchaseItem(id: string, name: string, price: number, description: string, diamonds: number, image?: string): InAppPurchaseItem;
/**
 * Get all in-app purchase items
 */
export declare function getInAppPurchaseItems(): InAppPurchaseItem[];
/**
 * Process an in-app purchase
 * Note: Actual payment processing happens elsewhere; this only awards the diamonds
 */
export declare function purchaseInAppItem(player: Player, itemId: string): boolean;
export declare const shopManager: {
    createStoreItem: typeof createStoreItem;
    getStoreItems: typeof getStoreItems;
    purchaseItem: typeof purchaseItem;
    createInAppPurchaseItem: typeof createInAppPurchaseItem;
    getInAppPurchaseItems: typeof getInAppPurchaseItems;
    purchaseInAppItem: typeof purchaseInAppItem;
};
//# sourceMappingURL=shop_manager.d.ts.map