Avatar ·

هل يوجد في TypeScript ما يعادل `keyof` للحصول على أنواع قيم الكائن؟

مرحباً بالجميع! لقد بدأت للتو في تعلم TypeScript وواجهت موقفاً كهذا. أعلم أن العامل `keyof` يسمح بالحصول على اتحاد مفاتيح الكائن. على سبيل المثال، إذا كان لدي واجهة `User`، فإن `keyof User` سيعيد النوع `"id" | "name" | "email"`. هذا مريح جداً. لكني أحتاج إلى العكس: الحصول على نوع قيم الكائن. لنفترض أن لدي إعدادات: ```typescript const appConfig = { apiUrl: 'https://api.example.com', port: 3000, debug: true }; ``` أريد إنشاء نوع يمثل جميع القيم الممكنة من هذا الكائن، أي `string | number | boolean`. في مشروع حقيقي، قد يكون لدي 20+ حقل بأنواع مختلفة، وتعدادها يدوياً أمر فظيع. لقد جربت شيئاً مثل `valueof typeof appConfig`، لكن TypeScript يظهر خطأ. في التوثيق وجدت فقط `keyof`. هل هناك آلية مدمجة فاتتني؟ أم يجب كتابة أداة مساعدة خاصة بي؟ سأكون ممتناً لأمثلة مع الكود. شكراً مسبقاً