elif isinstance(type_, type) and issubclass(type_, Enum):
                return " | ".join([f"'{e.value}'" for e in type_])
            else:
                return str(type_)
        def _format_nested_properties(
            self, properties: List[APIRequestBodyProperty], indent: int = 2
        ) -> str:
            """Format nested properties."""
            formatted_props = []
            for prop in properties:
                prop_name = prop.name
                prop_type = self.ts_type_from_python(prop.type)
                prop_required = "" if prop.required else "?"
                prop_desc = f"/* {prop.description} */" if prop.description else ""
                if prop.properties:
                    nested_props = self._format_nested_properties(
                        prop.properties, indent + 2
                    )
                    prop_type = f"{{\n{nested_props}\n{' ' * indent}}}"
                formatted_props.append(
                    f"{prop_desc}\n{' ' * indent}{prop_name}"
                    f"{prop_required}: {prop_type},"
                )
            return "\n".join(formatted_props)
[docs]        def to_typescript(self) -> str:
            """Get typescript string representation of the operation."""
            operation_name = self.operation_id
            params = []
            if self.request_body:
                formatted_request_body_props = self._format_nested_properties(
                    self.request_body.properties
                )
                params.append(formatted_request_body_props)
            for prop in self.properties:
                prop_name = prop.name
                prop_type = self.ts_type_from_python(prop.type)
                prop_required = "" if prop.required else "?"
                prop_desc = f"/* {prop.description} */" if prop.description else ""
                params.append(