इस प्रोजेक्ट के बारे में

TypeFest पुन: प्रयोज्य TypeScript प्रकारों का एक संग्रह है जो अंतर्निहित टाइप सिस्टम में अंतराल को भरने के लिए है। इसे npm से type-fest के रूप में स्थापित किया जा सकता है, और व्यक्तिगत प्रकार TypeScript के केवल-प्रकार आयात सिंटैक्स के साथ आयात किए जाते हैं। प्रलेखित विकास संस्करण के लिए TypeScript 5.9 या नया, एक ESM प्रोजेक्ट, और tsconfig में स्ट्रिक्ट मोड सक्षम होना आवश्यक है। रखरखावकर्ता यह भी नोट करता है कि आवश्यक प्रकार बिना श्रेय के कॉपी-पेस्ट किए जा सकते हैं। लाइब्रेरी टाइप-स्तरीय उपयोग मामलों की एक विस्तृत श्रृंखला को कवर करती है। मूल प्रकारों में Primitive, Class, Constructor, AbstractClass, TypedArray, ObservableLike, और वर्ण सेट जैसे LowercaseLetter, UppercaseLetter, DigitCharacter, और Alphanumeric शामिल हैं। ऑब्जेक्ट और उपयोगिता प्रकार सबसे बड़ा खंड बनाते हैं। उदाहरणों में Except (कुंजियों को हटाने के लिए), Writable और WritableDeep (रीडओनली संशोधक हटाने के लिए), Merge और MergeDeep (प्रकारों को संयोजित करने के लिए), PartialDeep और RequiredDeep (पुनरावर्ती वैकल्पिकता और आवश्यकता के लिए), ReadonlyDeep (गहरी अपरिवर्तनीयता के लिए), और SetOptional, SetRequired, SetReadonly, और SetNonNullable (चयनित गुणों को समायोजित करने के लिए) शामिल हैं। यह सशर्त चयन प्रकार जैसे ConditionalKeys, ConditionalPick, और ConditionalExcept, नेस्टेड सहायक जैसे PickDeep, OmitDeep, Get, और Paths, और यूनियन सहायक जैसे LiteralUnion, TaggedUnion, UnionToIntersection, KeysOfUnion, और DistributedOmit भी प्रदान करता है। टाइप गार्ड और बूलियन प्रकारों में If, IsAny, IsNever, IsUnknown, IsNull, IsUndefined, IsTuple, IsUnion, IsLiteral, IsStringLiteral, IsNullable, और समानता जाँच जैसे IsEqual शामिल हैं। JSON समर्थन में JsonValue, JsonPrimitive, JsonObject, JsonArray, Jsonifiable, और Jsonify शामिल हैं। अन्य समूह संरचित क्लोनिंग, एसिंक प्रकार जैसे Promisable, AsyncReturnType, और Asyncify, स्ट्रिंग हेरफेर प्रकार जैसे Split, Replace, Trim, RemovePrefix, और RemoveSuffix, और ऐरे या टपल प्रकार जैसे ArrayElement, LastArrayElement, Includes, Join, ArraySlice, FixedLengthArray, और NonEmptyTuple को कवर करते हैं। README प्रत्येक प्रकार के नाम को विस्तृत दस्तावेज़ीकरण के लिए उसकी स्रोत परिभाषा से जोड़ता है। एक संबंधित पैकेज, ts-extras, कुछ समान अवधारणाओं के लिए रनटाइम फ़ंक्शन प्रदान करता है। परियोजना अपने योगदान दिशानिर्देशों के अधीन, अतिरिक्त सामान्य रूप से आवश्यक प्रकारों के लिए प्रस्ताव और पुल अनुरोध स्वीकार करती है।