""" Database package — SQLAlchemy 2.0 Async + PostgreSQL (Neon) يعيد تصدير كل الـ API القديم حتى تبقى الاستيرادات التالية تعمل بدون تعديل: import database as db from database import get_user, Button, get_legacy_ai_prompt, ... """ from database.engine import engine, async_session_factory, init_database, close_database from database.session import get_session, session_scope # ---- Models ---- from database.models import ( User, Ticket, Channel, Button, Setting, Achievement, VipSubscription, GameStat, AdminCode, PointBackup, ) # ---- CRUD (كل الدوال القديمة) ---- from database.crud import ( get_legacy_ai_prompt, LEGACY_AI_PROMPT, ACHIEVEMENTS, get_or_create_user, get_user, get_user_by_username, update_username, get_points, add_points, deduct_points, set_banned, is_banned, get_all_user_ids, get_users_count, check_and_increment_ai, get_top_users, get_total_points, create_ticket, get_ticket, get_all_tickets, get_user_tickets, complete_ticket, cancel_ticket, get_tickets_count, get_pending_tickets_count, add_channel, remove_channel, get_channels, is_channel_exists, add_button, get_buttons, get_all_buttons, get_button, update_button, update_button_type, delete_button, get_button_by_title, update_button_title, update_button_content, update_button_parent, update_button_points, update_button_vip_only, update_button_early_access, update_button_folder_content, get_setting, set_setting, add_achievement, get_achievements, get_achievement_names, check_and_unlock_achievements, set_vip_subscription, get_vip_subscription, is_vip_active, renew_vip_subscriptions, update_game_stats, get_game_stats, get_all_game_stats, create_vip_code, get_all_vip_codes, backup_all_points, restore_points_from_backup, get_backup_history, clear_old_data, vacuum_database, get_active_vip_count, get_banned_count, get_button_count, get_total_clicks, get_today_users_count, get_week_users_count, ) __all__ = [ "engine", "async_session_factory", "init_database", "close_database", "get_session", "session_scope", "User", "Ticket", "Channel", "Button", "Setting", "Achievement", "VipSubscription", "GameStat", "AdminCode", "PointBackup", "get_legacy_ai_prompt", "LEGACY_AI_PROMPT", "ACHIEVEMENTS", "get_or_create_user", "get_user", "get_user_by_username", "update_username", "get_points", "add_points", "deduct_points", "set_banned", "is_banned", "get_all_user_ids", "get_users_count", "check_and_increment_ai", "get_top_users", "get_total_points", "create_ticket", "get_ticket", "get_all_tickets", "get_user_tickets", "complete_ticket", "cancel_ticket", "get_tickets_count", "get_pending_tickets_count", "add_channel", "remove_channel", "get_channels", "is_channel_exists", "add_button", "get_buttons", "get_all_buttons", "get_button", "update_button", "update_button_type", "delete_button", "get_button_by_title", "update_button_title", "update_button_content", "update_button_parent", "update_button_points", "update_button_vip_only", "update_button_early_access", "update_button_folder_content", "get_setting", "set_setting", "add_achievement", "get_achievements", "get_achievement_names", "check_and_unlock_achievements", "set_vip_subscription", "get_vip_subscription", "is_vip_active", "renew_vip_subscriptions", "update_game_stats", "get_game_stats", "get_all_game_stats", "create_vip_code", "get_all_vip_codes", "backup_all_points", "restore_points_from_backup", "get_backup_history", "clear_old_data", "vacuum_database", "get_active_vip_count", "get_banned_count", "get_button_count", "get_total_clicks", "get_today_users_count", "get_week_users_count", ]