Description: If a named capture group has some optional grouping itself then the whole group is optional. Test case: Current: ```ts const regex = TypedRegEx("^(?<name>((@\\w[-\\w]*\\/)?\\w[-\\w]*))$", "gi"); const captures = regex.captures(...) // { name?: string | undefined } | undefined; ``` Expected: ```ts const regex = TypedRegEx("^(?<name>((@\\w[-\\w]*\\/)?\\w[-\\w]*))$", "gi"); const captures = regex.captures(...) // { name: string } | undefined; ```