def _parse_integration(self, name: str, config: dict[str, Any]) -> BaseAuthSettings:
        """Dynamically parse integration settings based on the auth_type.

        Args:
        ----
            name (str): The name of the integration.
            config (Dict[str, Any]): The configuration for the integration.

        Returns:
        -------
            BaseAuthSettings: The parsed integration settings.

        Raises:
        ------
            ValueError: If the auth_type is not supported.

        """
        auth_type = config.get("auth_type", "")
        mapping = {
            AuthType.oauth2: OAuth2Settings,
            AuthType.api_key: APIKeyAuthSettings,
            AuthType.oauth2_with_refresh: OAuth2WithRefreshSettings,
            AuthType.oauth2_with_refresh_rotating: OAuth2WithRefreshRotatingSettings,
            AuthType.native_functionality: NativeFunctionalityAuthSettings,
            AuthType.config_class: ConfigClassAuthSettings,
            AuthType.none: None,
        }
        model = mapping.get(auth_type)
        config["integration_short_name"] = name
        if model:
            return model(**config)
        else:
            raise ValueError(f"Unsupported auth_type for integration {name}: {auth_type}")
Dynamically parse integration settings based on the auth_type.

        Args:
        ----
            name (str): The name of the integration.
            config (Dict[str, Any]): The configuration for the integration.

        Returns:
        -------
            BaseAuthSettings: The parsed integration settings.

        Raises:
        ------
            ValueError: If the auth_type is not supported.

        
backend/airweave/platform/auth/settings.py