def crawl_website(self, url: str, crawler_options: Dict[str, Any] = None, timeout: int = 30000) -> Any:
        """
        Crawl a website using Firecrawl API.
        
        Args:
            url: Website URL to crawl
            crawler_options: Options for crawling (default: {})
            timeout: Timeout in milliseconds (default: 30000)
            
        Returns:
            Crawled content from the website
        """
        # Set default values
        if crawler_options is None:
            crawler_options = {}
        
        # Prepare crawl options
        options = {
            "crawlerOptions": crawler_options,
            "timeout": timeout,
        }
        
        # Initialize FirecrawlApp and crawl the URL
        from firecrawl import FirecrawlApp
        _firecrawl = FirecrawlApp(api_key=self.api_key)
        
        return _firecrawl.crawl_url(url, options)

        Crawl a website using Firecrawl API.
        
        Args:
            url: Website URL to crawl
            crawler_options: Options for crawling (default: {})
            timeout: Timeout in milliseconds (default: 30000)
            
        Returns:
            Crawled content from the website
        
src/upsonic/tools.py