UNPKG

@hyperbrowser/sdk

Version:

Node SDK for Hyperbrowser API

43 lines (42 loc) 2.15 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.HyperbrowserClient = exports.HyperbrowserError = void 0; const sessions_1 = require("./services/sessions"); const scrape_1 = require("./services/scrape"); const crawl_1 = require("./services/crawl"); const profiles_1 = require("./services/profiles"); const extensions_1 = require("./services/extensions"); const extract_1 = require("./services/extract"); const browser_use_1 = require("./services/agents/browser-use"); const cua_1 = require("./services/agents/cua"); const claude_computer_use_1 = require("./services/agents/claude-computer-use"); class HyperbrowserError extends Error { constructor(message, statusCode) { super(`[Hyperbrowser]: ${message}`); this.statusCode = statusCode; this.name = "HyperbrowserError"; } } exports.HyperbrowserError = HyperbrowserError; class HyperbrowserClient { constructor(config = {}) { const apiKey = config.apiKey || process.env["HYPERBROWSER_API_KEY"]; const baseUrl = config.baseUrl || "https://app.hyperbrowser.ai"; const timeout = config.timeout || 30000; if (!apiKey) { throw new HyperbrowserError("API key is required - either pass it in config or set HYPERBROWSER_API_KEY environment variable"); } this.sessions = new sessions_1.SessionsService(apiKey, baseUrl, timeout); this.scrape = new scrape_1.ScrapeService(apiKey, baseUrl, timeout); this.crawl = new crawl_1.CrawlService(apiKey, baseUrl, timeout); this.extract = new extract_1.ExtractService(apiKey, baseUrl, timeout); this.profiles = new profiles_1.ProfilesService(apiKey, baseUrl, timeout); this.extensions = new extensions_1.ExtensionService(apiKey, baseUrl, timeout); this.agents = { browserUse: new browser_use_1.BrowserUseService(apiKey, baseUrl, timeout), claudeComputerUse: new claude_computer_use_1.ClaudeComputerUseService(apiKey, baseUrl, timeout), cua: new cua_1.CuaService(apiKey, baseUrl, timeout), }; } } exports.HyperbrowserClient = HyperbrowserClient;