def split_prefixed(value: str, option_name: str) -> tuple[str, str]: if ":" not in value: raise ValueError(f"{option_name}: expected a 'prefix:value' string (e.g. 'closure:...'), got: {value!r}") prefix, _, rest = value.partition(":") return prefix, rest def pascal_case(snake: str) -> str: return "".join(word.capitalize() for word in snake.split("_"))