import type { FeatureLockConfig } from "@/modules/communication/types"; /** Backend-active features (from /capabilities features[] + channel status). */ export const SMS_FEATURES = [ "sms", "provider_framework", "communication_router", "template_engine", "dynamic_contact_sources", "queue_engine", "delivery_tracking", "otp", "webhooks", "failover", "circuit_breaker", "rate_limiting", "idempotency", "metrics", ] as const; /** Future modules — always locked until backend registers capability. */ export const FUTURE_MODULE_REGISTRY: Record = { email: { feature: "channel_email", title: "پلتفرم ایمیل", description: "ارسال ایمیل سازمانی با SMTP، قالب‌های HTML، پیگیری تحویل و failover.", phase: "Roadmap" }, whatsapp: { feature: "channel_whatsapp", title: "واتساپ بیزینس", description: "پیام‌رسانی WhatsApp Cloud API با قالب‌های تأیید‌شده و webhook تحویل.", phase: "Roadmap" }, telegram: { feature: "channel_telegram", title: "تلگرام", description: "ربات تلگرام برای اعلان‌ها، OTP و پشتیبانی.", phase: "Roadmap" }, rubika: { feature: "channel_rubika", title: "روبیکا", description: "پیام‌رسانی اجتماعی بومی با adapter اختصاصی.", phase: "Roadmap" }, push: { feature: "channel_push", title: "Push Notifications", description: "اعلان push موبایل و وب via FCM با ثبت توکن دستگاه.", phase: "Roadmap" }, voice: { feature: "channel_voice", title: "تماس صوتی", description: "OTP و اعلان صوتی با gateway تلفنی.", phase: "Roadmap" }, video: { feature: "channel_video", title: "تماس ویدیویی", description: "جلسات ویدیویی و تماس تصویری برای پشتیبانی.", phase: "Roadmap" }, live_chat: { feature: "live_chat", title: "Live Chat", description: "چت زنده وب‌سایت با routing به اپراتور.", phase: "Roadmap" }, omnichannel_inbox: { feature: "omnichannel_inbox", title: "صندوق ورودی Omnichannel", description: "تجمیع SMS، ایمیل، چت و شبکه‌های اجتماعی در یک inbox.", phase: "Roadmap" }, marketing_automation: { feature: "marketing_automation", title: "Marketing Automation", description: "اتوماسیون کمپین چندمرحله‌ای با trigger و segment.", phase: "Roadmap" }, automation_triggers: { feature: "automation_triggers", title: "Automation Triggers", description: "تریگرهای رویداد-محور برای ارسال خودکار پیام.", phase: "Roadmap" }, journey_builder: { feature: "journey_builder", title: "Journey Builder", description: "طراح بصری مسیر مشتری با شاخه و wait steps.", phase: "Roadmap" }, ai_campaigns: { feature: "ai_campaigns", title: "AI Campaigns", description: "پیشنهاد محتوا و زمان‌بندی هوشمند کمپین.", phase: "Roadmap" }, webhook_center: { feature: "webhook_center", title: "Webhook Center", description: "مدیریت متمرکز webhookهای ورودی و خروجی.", phase: "Roadmap" }, connectors: { feature: "third_party_connectors", title: "Third-party Connectors", description: "اتصال به سرویس‌های خارجی و marketplace adapters.", phase: "Roadmap" }, conversations: { feature: "customer_conversation_timeline", title: "Customer Conversation Timeline", description: "خط زمانی یکپارچه مکالمات مشتری across channels.", phase: "Roadmap" }, campaign_orchestrator: { feature: "campaign_orchestrator", title: "Campaign Orchestrator", description: "هماهنگی کمپین‌های چندکاناله با بودجه و cap.", phase: "Roadmap" }, notification_center: { feature: "notification_center", title: "Notification Center", description: "مرکز اعلان in-app و out-of-app برای tenant users.", phase: "Roadmap" }, template_categories: { feature: "template_categories", title: "دسته‌بندی قالب‌ها", description: "سازماندهی قالب‌ها در دسته‌های قابل جستجو.", phase: "Roadmap" }, roles: { feature: "communication_roles", title: "نقش‌های ارتباطات", description: "مدیریت نقش اختصاصی Communication Platform.", phase: "Roadmap" }, audit: { feature: "communication_audit_ui", title: "ممیزی ارتباطات", description: "رابط کاربری جستجوی audit log (backend موجود — UI در roadmap).", phase: "Roadmap" }, api_keys: { feature: "communication_api_keys", title: "کلیدهای API", description: "صدور و چرخش کلید API برای یکپارچه‌سازی سرویس-به-سرویس.", phase: "Roadmap" }, integrations_hub: { feature: "integrations_hub", title: "Integrations", description: "مرکز یکپارچه‌سازی با ماژول‌های TorbatYar.", phase: "Roadmap" } }; export function getFutureModule(key: string): FeatureLockConfig | undefined { return FUTURE_MODULE_REGISTRY[key]; }