/** * This file was auto-generated by Fern from our API Definition. */ import * as environments from "../../../../environments"; import * as core from "../../../../core"; import * as Scrapybara from "../../../index"; import * as fs from "fs"; import { Blob } from "buffer"; export declare namespace Instance { interface Options { environment?: core.Supplier; apiKey?: core.Supplier; } interface RequestOptions { /** The maximum time to wait for a response in seconds. */ timeoutInSeconds?: number; /** The number of times to retry the request. Defaults to 2. */ maxRetries?: number; /** A hook to abort the request. */ abortSignal?: AbortSignal; /** Additional headers to include in the request. */ headers?: Record; } } export declare class Instance { protected readonly _options: Instance.Options; constructor(_options?: Instance.Options); /** * @param {string} instanceId * @param {Instance.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Scrapybara.UnprocessableEntityError} * * @example * await client.instance.screenshot("instance_id") */ screenshot(instanceId: string, requestOptions?: Instance.RequestOptions): Promise; /** * @param {string} instanceId * @param {Instance.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Scrapybara.UnprocessableEntityError} * * @example * await client.instance.getStreamUrl("instance_id") */ getStreamUrl(instanceId: string, requestOptions?: Instance.RequestOptions): Promise; /** * @param {string} instanceId * @param {Scrapybara.Request} request * @param {Instance.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Scrapybara.UnprocessableEntityError} * * @example * await client.instance.computer("instance_id", { * action: "move_mouse", * coordinates: [1] * }) */ computer(instanceId: string, request: Scrapybara.Request, requestOptions?: Instance.RequestOptions): Promise; /** * @param {string} instanceId * @param {Scrapybara.BashRequest} request * @param {Instance.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Scrapybara.UnprocessableEntityError} * * @example * await client.instance.bash("instance_id") */ bash(instanceId: string, request?: Scrapybara.BashRequest, requestOptions?: Instance.RequestOptions): Promise; /** * @param {string} instanceId * @param {Scrapybara.EditRequest} request * @param {Instance.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Scrapybara.UnprocessableEntityError} * * @example * await client.instance.edit("instance_id", { * command: "view", * path: "path" * }) */ edit(instanceId: string, request: Scrapybara.EditRequest, requestOptions?: Instance.RequestOptions): Promise; /** * @param {string} instanceId * @param {Scrapybara.FileRequest} request * @param {Instance.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Scrapybara.UnprocessableEntityError} * * @example * await client.instance.file("instance_id", { * command: "command" * }) */ file(instanceId: string, request: Scrapybara.FileRequest, requestOptions?: Instance.RequestOptions): Promise; /** * Upload a file to the instance. * * @param {File | fs.ReadStream | Blob} file * @param {string} instanceId * @param {Scrapybara.BodyUploadV1InstanceInstanceIdUploadPost} request * @param {Instance.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Scrapybara.UnprocessableEntityError} * * @example * await client.instance.upload(fs.createReadStream("/path/to/your/file"), "instance_id", { * path: "path" * }) */ upload(file: File | fs.ReadStream | Blob, instanceId: string, request: Scrapybara.BodyUploadV1InstanceInstanceIdUploadPost, requestOptions?: Instance.RequestOptions): Promise; /** * @param {string} instanceId * @param {Instance.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Scrapybara.UnprocessableEntityError} * * @example * await client.instance.stop("instance_id") */ stop(instanceId: string, requestOptions?: Instance.RequestOptions): Promise; /** * @param {string} instanceId * @param {Instance.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Scrapybara.UnprocessableEntityError} * * @example * await client.instance.pause("instance_id") */ pause(instanceId: string, requestOptions?: Instance.RequestOptions): Promise; /** * @param {string} instanceId * @param {Scrapybara.InstanceResumeRequest} request * @param {Instance.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Scrapybara.UnprocessableEntityError} * * @example * await client.instance.resume("instance_id") */ resume(instanceId: string, request?: Scrapybara.InstanceResumeRequest, requestOptions?: Instance.RequestOptions): Promise; protected _getCustomAuthorizationHeaders(): Promise<{ "x-api-key": string | undefined; }>; }