/**
 * Cloudflare BROWSER-RENDERING API
 *
 * Generated from Cloudflare TypeScript SDK.
 * DO NOT EDIT - regenerate with: bun scripts/generate.ts --service browser-rendering
 */
import * as Schema from "effect/Schema";
import type * as HttpClient from "effect/unstable/http/HttpClient";
import * as API from "../client/api.ts";
import type { Credentials } from "../credentials.ts";
import { type DefaultErrors } from "../errors.ts";
export interface CreateContentRequest {
    /** Path param: Account ID. */
    accountId: string;
    /** Query param: Cache TTL default is 5s. Set to 0 to disable. */
    cacheTTL?: number;
    /** Body param: URL to navigate to, eg. `https://example.com`. */
    url: string;
    /** Body param: The maximum duration allowed for the browser action to complete after the page has loaded (such as taking screenshots, extracting content, or generating PDFs). If this time limit is exceed */
    actionTimeout?: number;
    /** Body param: Adds a `<script>` tag into the page with the desired URL or content. */
    addScriptTag?: {
        id?: string;
        content?: string;
        type?: string;
        url?: string;
    }[];
    /** Body param: Adds a `<link rel="stylesheet">` tag into the page with the desired URL or a `<style type="text/css">` tag with the content. */
    addStyleTag?: {
        content?: string;
        url?: string;
    }[];
    /** Body param: Only allow requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    allowRequestPattern?: string[];
    /** Body param: Only allow requests that match the provided resource types, eg. 'image' or 'script'. */
    allowResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: Provide credentials for HTTP authentication. */
    authenticate?: {
        password: string;
        username: string;
    };
    /** Body param: Attempt to proceed when 'awaited' events fail or timeout. */
    bestAttempt?: boolean;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setcookie). */
    cookies?: {
        name: string;
        value: string;
        domain?: string;
        expires?: number;
        httpOnly?: boolean;
        partitionKey?: string;
        path?: string;
        priority?: "Low" | "Medium" | "High";
        sameParty?: boolean;
        sameSite?: "Strict" | "Lax" | "None";
        secure?: boolean;
        sourcePort?: number;
        sourceScheme?: "Unset" | "NonSecure" | "Secure";
        url?: string;
    }[];
    /** Body param: */
    emulateMediaType?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.gotooptions). */
    gotoOptions?: {
        referer?: string;
        referrerPolicy?: string;
        timeout?: number;
        waitUntil?: "load" | "domcontentloaded" | "networkidle0" | "networkidle2" | ("load" | "domcontentloaded" | "networkidle0" | "networkidle2")[];
    };
    /** Body param: Block undesired requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    rejectRequestPattern?: string[];
    /** Body param: Block undesired requests that match the provided resource types, eg. 'image' or 'script'. */
    rejectResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: */
    setExtraHTTPHeaders?: Record<string, unknown>;
    /** Body param: */
    setJavaScriptEnabled?: boolean;
    /** Body param: */
    userAgent?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setviewport). */
    viewport?: {
        height: number;
        width: number;
        deviceScaleFactor?: number;
        hasTouch?: boolean;
        isLandscape?: boolean;
        isMobile?: boolean;
    };
    /** Body param: Wait for the selector to appear in page. Check [options](https://pptr.dev/api/puppeteer.page.waitforselector). */
    waitForSelector?: {
        selector: string;
        hidden?: true;
        timeout?: number;
        visible?: true;
    };
    /** Body param: Waits for a specified timeout before continuing. */
    waitForTimeout?: number;
}
export declare const CreateContentRequest: Schema.Schema<CreateContentRequest>;
export type CreateContentResponse = string;
export declare const CreateContentResponse: Schema.Schema<CreateContentResponse>;
export type CreateContentError = DefaultErrors;
export declare const createContent: API.OperationMethod<CreateContentRequest, CreateContentResponse, CreateContentError, Credentials | HttpClient.HttpClient>;
export interface CreateJsonRequest {
    /** Path param: Account ID. */
    accountId: string;
    /** Query param: Cache TTL default is 5s. Set to 0 to disable. */
    cacheTTL?: number;
    /** Body param: Set the content of the page, eg: `<h1>Hello World!!</h1>`. Either `html` or `url` must be set. */
    html: string;
    /** Body param: The maximum duration allowed for the browser action to complete after the page has loaded (such as taking screenshots, extracting content, or generating PDFs). If this time limit is exceed */
    actionTimeout?: number;
    /** Body param: Adds a `<script>` tag into the page with the desired URL or content. */
    addScriptTag?: {
        id?: string;
        content?: string;
        type?: string;
        url?: string;
    }[];
    /** Body param: Adds a `<link rel="stylesheet">` tag into the page with the desired URL or a `<style type="text/css">` tag with the content. */
    addStyleTag?: {
        content?: string;
        url?: string;
    }[];
    /** Body param: Only allow requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    allowRequestPattern?: string[];
    /** Body param: Only allow requests that match the provided resource types, eg. 'image' or 'script'. */
    allowResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: Provide credentials for HTTP authentication. */
    authenticate?: {
        password: string;
        username: string;
    };
    /** Body param: Attempt to proceed when 'awaited' events fail or timeout. */
    bestAttempt?: boolean;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setcookie). */
    cookies?: {
        name: string;
        value: string;
        domain?: string;
        expires?: number;
        httpOnly?: boolean;
        partitionKey?: string;
        path?: string;
        priority?: "Low" | "Medium" | "High";
        sameParty?: boolean;
        sameSite?: "Strict" | "Lax" | "None";
        secure?: boolean;
        sourcePort?: number;
        sourceScheme?: "Unset" | "NonSecure" | "Secure";
        url?: string;
    }[];
    /** Body param: Optional list of custom AI models to use for the request. The models will be tried in the order provided, and in case a model returns an error, the next one will be used as fallback. */
    customAi?: {
        authorization: string;
        model: string;
    }[];
    /** Body param: */
    emulateMediaType?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.gotooptions). */
    gotoOptions?: {
        referer?: string;
        referrerPolicy?: string;
        timeout?: number;
        waitUntil?: "load" | "domcontentloaded" | "networkidle0" | "networkidle2" | ("load" | "domcontentloaded" | "networkidle0" | "networkidle2")[];
    };
    /** Body param: */
    prompt?: string;
    /** Body param: Block undesired requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    rejectRequestPattern?: string[];
    /** Body param: Block undesired requests that match the provided resource types, eg. 'image' or 'script'. */
    rejectResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: */
    responseFormat?: {
        type: string;
        jsonSchema?: Record<string, unknown> | null;
    };
    /** Body param: */
    setExtraHTTPHeaders?: Record<string, unknown>;
    /** Body param: */
    setJavaScriptEnabled?: boolean;
    /** Body param: */
    userAgent?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setviewport). */
    viewport?: {
        height: number;
        width: number;
        deviceScaleFactor?: number;
        hasTouch?: boolean;
        isLandscape?: boolean;
        isMobile?: boolean;
    };
    /** Body param: Wait for the selector to appear in page. Check [options](https://pptr.dev/api/puppeteer.page.waitforselector). */
    waitForSelector?: {
        selector: string;
        hidden?: true;
        timeout?: number;
        visible?: true;
    };
    /** Body param: Waits for a specified timeout before continuing. */
    waitForTimeout?: number;
}
export declare const CreateJsonRequest: Schema.Schema<CreateJsonRequest>;
export type CreateJsonResponse = Record<string, unknown>;
export declare const CreateJsonResponse: Schema.Schema<CreateJsonResponse>;
export type CreateJsonError = DefaultErrors;
export declare const createJson: API.OperationMethod<CreateJsonRequest, CreateJsonResponse, CreateJsonError, Credentials | HttpClient.HttpClient>;
export interface CreateLinkRequest {
    /** Path param: Account ID. */
    accountId: string;
    /** Query param: Cache TTL default is 5s. Set to 0 to disable. */
    cacheTTL?: number;
    /** Body param: Set the content of the page, eg: `<h1>Hello World!!</h1>`. Either `html` or `url` must be set. */
    html: string;
    /** Body param: The maximum duration allowed for the browser action to complete after the page has loaded (such as taking screenshots, extracting content, or generating PDFs). If this time limit is exceed */
    actionTimeout?: number;
    /** Body param: Adds a `<script>` tag into the page with the desired URL or content. */
    addScriptTag?: {
        id?: string;
        content?: string;
        type?: string;
        url?: string;
    }[];
    /** Body param: Adds a `<link rel="stylesheet">` tag into the page with the desired URL or a `<style type="text/css">` tag with the content. */
    addStyleTag?: {
        content?: string;
        url?: string;
    }[];
    /** Body param: Only allow requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    allowRequestPattern?: string[];
    /** Body param: Only allow requests that match the provided resource types, eg. 'image' or 'script'. */
    allowResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: Provide credentials for HTTP authentication. */
    authenticate?: {
        password: string;
        username: string;
    };
    /** Body param: Attempt to proceed when 'awaited' events fail or timeout. */
    bestAttempt?: boolean;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setcookie). */
    cookies?: {
        name: string;
        value: string;
        domain?: string;
        expires?: number;
        httpOnly?: boolean;
        partitionKey?: string;
        path?: string;
        priority?: "Low" | "Medium" | "High";
        sameParty?: boolean;
        sameSite?: "Strict" | "Lax" | "None";
        secure?: boolean;
        sourcePort?: number;
        sourceScheme?: "Unset" | "NonSecure" | "Secure";
        url?: string;
    }[];
    /** Body param: */
    emulateMediaType?: string;
    /** Body param: */
    excludeExternalLinks?: boolean;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.gotooptions). */
    gotoOptions?: {
        referer?: string;
        referrerPolicy?: string;
        timeout?: number;
        waitUntil?: "load" | "domcontentloaded" | "networkidle0" | "networkidle2" | ("load" | "domcontentloaded" | "networkidle0" | "networkidle2")[];
    };
    /** Body param: Block undesired requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    rejectRequestPattern?: string[];
    /** Body param: Block undesired requests that match the provided resource types, eg. 'image' or 'script'. */
    rejectResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: */
    setExtraHTTPHeaders?: Record<string, unknown>;
    /** Body param: */
    setJavaScriptEnabled?: boolean;
    /** Body param: */
    userAgent?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setviewport). */
    viewport?: {
        height: number;
        width: number;
        deviceScaleFactor?: number;
        hasTouch?: boolean;
        isLandscape?: boolean;
        isMobile?: boolean;
    };
    /** Body param: */
    visibleLinksOnly?: boolean;
    /** Body param: Wait for the selector to appear in page. Check [options](https://pptr.dev/api/puppeteer.page.waitforselector). */
    waitForSelector?: {
        selector: string;
        hidden?: true;
        timeout?: number;
        visible?: true;
    };
    /** Body param: Waits for a specified timeout before continuing. */
    waitForTimeout?: number;
}
export declare const CreateLinkRequest: Schema.Schema<CreateLinkRequest>;
export type CreateLinkResponse = string[];
export declare const CreateLinkResponse: Schema.Schema<CreateLinkResponse>;
export type CreateLinkError = DefaultErrors;
export declare const createLink: API.OperationMethod<CreateLinkRequest, CreateLinkResponse, CreateLinkError, Credentials | HttpClient.HttpClient>;
export interface CreateMarkdownRequest {
    /** Path param: Account ID. */
    accountId: string;
    /** Query param: Cache TTL default is 5s. Set to 0 to disable. */
    cacheTTL?: number;
    /** Body param: URL to navigate to, eg. `https://example.com`. */
    url: string;
    /** Body param: The maximum duration allowed for the browser action to complete after the page has loaded (such as taking screenshots, extracting content, or generating PDFs). If this time limit is exceed */
    actionTimeout?: number;
    /** Body param: Adds a `<script>` tag into the page with the desired URL or content. */
    addScriptTag?: {
        id?: string;
        content?: string;
        type?: string;
        url?: string;
    }[];
    /** Body param: Adds a `<link rel="stylesheet">` tag into the page with the desired URL or a `<style type="text/css">` tag with the content. */
    addStyleTag?: {
        content?: string;
        url?: string;
    }[];
    /** Body param: Only allow requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    allowRequestPattern?: string[];
    /** Body param: Only allow requests that match the provided resource types, eg. 'image' or 'script'. */
    allowResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: Provide credentials for HTTP authentication. */
    authenticate?: {
        password: string;
        username: string;
    };
    /** Body param: Attempt to proceed when 'awaited' events fail or timeout. */
    bestAttempt?: boolean;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setcookie). */
    cookies?: {
        name: string;
        value: string;
        domain?: string;
        expires?: number;
        httpOnly?: boolean;
        partitionKey?: string;
        path?: string;
        priority?: "Low" | "Medium" | "High";
        sameParty?: boolean;
        sameSite?: "Strict" | "Lax" | "None";
        secure?: boolean;
        sourcePort?: number;
        sourceScheme?: "Unset" | "NonSecure" | "Secure";
        url?: string;
    }[];
    /** Body param: */
    emulateMediaType?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.gotooptions). */
    gotoOptions?: {
        referer?: string;
        referrerPolicy?: string;
        timeout?: number;
        waitUntil?: "load" | "domcontentloaded" | "networkidle0" | "networkidle2" | ("load" | "domcontentloaded" | "networkidle0" | "networkidle2")[];
    };
    /** Body param: Block undesired requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    rejectRequestPattern?: string[];
    /** Body param: Block undesired requests that match the provided resource types, eg. 'image' or 'script'. */
    rejectResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: */
    setExtraHTTPHeaders?: Record<string, unknown>;
    /** Body param: */
    setJavaScriptEnabled?: boolean;
    /** Body param: */
    userAgent?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setviewport). */
    viewport?: {
        height: number;
        width: number;
        deviceScaleFactor?: number;
        hasTouch?: boolean;
        isLandscape?: boolean;
        isMobile?: boolean;
    };
    /** Body param: Wait for the selector to appear in page. Check [options](https://pptr.dev/api/puppeteer.page.waitforselector). */
    waitForSelector?: {
        selector: string;
        hidden?: true;
        timeout?: number;
        visible?: true;
    };
    /** Body param: Waits for a specified timeout before continuing. */
    waitForTimeout?: number;
}
export declare const CreateMarkdownRequest: Schema.Schema<CreateMarkdownRequest>;
export type CreateMarkdownResponse = string;
export declare const CreateMarkdownResponse: Schema.Schema<CreateMarkdownResponse>;
export type CreateMarkdownError = DefaultErrors;
export declare const createMarkdown: API.OperationMethod<CreateMarkdownRequest, CreateMarkdownResponse, CreateMarkdownError, Credentials | HttpClient.HttpClient>;
export interface CreatePdfRequest {
    /** Path param: Account ID. */
    accountId: string;
    /** Query param: Cache TTL default is 5s. Set to 0 to disable. */
    cacheTTL?: number;
    /** Body param: Set the content of the page, eg: `<h1>Hello World!!</h1>`. Either `html` or `url` must be set. */
    html: string;
    /** Body param: The maximum duration allowed for the browser action to complete after the page has loaded (such as taking screenshots, extracting content, or generating PDFs). If this time limit is exceed */
    actionTimeout?: number;
    /** Body param: Adds a `<script>` tag into the page with the desired URL or content. */
    addScriptTag?: {
        id?: string;
        content?: string;
        type?: string;
        url?: string;
    }[];
    /** Body param: Adds a `<link rel="stylesheet">` tag into the page with the desired URL or a `<style type="text/css">` tag with the content. */
    addStyleTag?: {
        content?: string;
        url?: string;
    }[];
    /** Body param: Only allow requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    allowRequestPattern?: string[];
    /** Body param: Only allow requests that match the provided resource types, eg. 'image' or 'script'. */
    allowResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: Provide credentials for HTTP authentication. */
    authenticate?: {
        password: string;
        username: string;
    };
    /** Body param: Attempt to proceed when 'awaited' events fail or timeout. */
    bestAttempt?: boolean;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setcookie). */
    cookies?: {
        name: string;
        value: string;
        domain?: string;
        expires?: number;
        httpOnly?: boolean;
        partitionKey?: string;
        path?: string;
        priority?: "Low" | "Medium" | "High";
        sameParty?: boolean;
        sameSite?: "Strict" | "Lax" | "None";
        secure?: boolean;
        sourcePort?: number;
        sourceScheme?: "Unset" | "NonSecure" | "Secure";
        url?: string;
    }[];
    /** Body param: */
    emulateMediaType?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.gotooptions). */
    gotoOptions?: {
        referer?: string;
        referrerPolicy?: string;
        timeout?: number;
        waitUntil?: "load" | "domcontentloaded" | "networkidle0" | "networkidle2" | ("load" | "domcontentloaded" | "networkidle0" | "networkidle2")[];
    };
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.pdfoptions). */
    pdfOptions?: {
        displayHeaderFooter?: boolean;
        footerTemplate?: string;
        format?: "letter" | "legal" | "tabloid" | "ledger" | "a0" | "a1" | "a2" | "a3" | "a4" | "a5" | "a6";
        headerTemplate?: string;
        height?: string | number;
        landscape?: boolean;
        margin?: {
            bottom?: string | number;
            left?: string | number;
            right?: string | number;
            top?: string | number;
        };
        omitBackground?: boolean;
        outline?: boolean;
        pageRanges?: string;
        preferCSSPageSize?: boolean;
        printBackground?: boolean;
        scale?: number;
        tagged?: boolean;
        timeout?: number;
        width?: string | number;
    };
    /** Body param: Block undesired requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    rejectRequestPattern?: string[];
    /** Body param: Block undesired requests that match the provided resource types, eg. 'image' or 'script'. */
    rejectResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: */
    setExtraHTTPHeaders?: Record<string, unknown>;
    /** Body param: */
    setJavaScriptEnabled?: boolean;
    /** Body param: */
    userAgent?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setviewport). */
    viewport?: {
        height: number;
        width: number;
        deviceScaleFactor?: number;
        hasTouch?: boolean;
        isLandscape?: boolean;
        isMobile?: boolean;
    };
    /** Body param: Wait for the selector to appear in page. Check [options](https://pptr.dev/api/puppeteer.page.waitforselector). */
    waitForSelector?: {
        selector: string;
        hidden?: true;
        timeout?: number;
        visible?: true;
    };
    /** Body param: Waits for a specified timeout before continuing. */
    waitForTimeout?: number;
}
export declare const CreatePdfRequest: Schema.Schema<CreatePdfRequest>;
export type CreatePdfResponse = unknown;
export declare const CreatePdfResponse: Schema.Schema<CreatePdfResponse>;
export type CreatePdfError = DefaultErrors;
export declare const createPdf: API.OperationMethod<CreatePdfRequest, CreatePdfResponse, CreatePdfError, Credentials | HttpClient.HttpClient>;
export interface CreateScrapeRequest {
    /** Path param: Account ID. */
    accountId: string;
    /** Query param: Cache TTL default is 5s. Set to 0 to disable. */
    cacheTTL?: number;
    /** Body param: */
    elements: {
        selector: string;
    }[];
    /** Body param: Set the content of the page, eg: `<h1>Hello World!!</h1>`. Either `html` or `url` must be set. */
    html: string;
    /** Body param: The maximum duration allowed for the browser action to complete after the page has loaded (such as taking screenshots, extracting content, or generating PDFs). If this time limit is exceed */
    actionTimeout?: number;
    /** Body param: Adds a `<script>` tag into the page with the desired URL or content. */
    addScriptTag?: {
        id?: string;
        content?: string;
        type?: string;
        url?: string;
    }[];
    /** Body param: Adds a `<link rel="stylesheet">` tag into the page with the desired URL or a `<style type="text/css">` tag with the content. */
    addStyleTag?: {
        content?: string;
        url?: string;
    }[];
    /** Body param: Only allow requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    allowRequestPattern?: string[];
    /** Body param: Only allow requests that match the provided resource types, eg. 'image' or 'script'. */
    allowResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: Provide credentials for HTTP authentication. */
    authenticate?: {
        password: string;
        username: string;
    };
    /** Body param: Attempt to proceed when 'awaited' events fail or timeout. */
    bestAttempt?: boolean;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setcookie). */
    cookies?: {
        name: string;
        value: string;
        domain?: string;
        expires?: number;
        httpOnly?: boolean;
        partitionKey?: string;
        path?: string;
        priority?: "Low" | "Medium" | "High";
        sameParty?: boolean;
        sameSite?: "Strict" | "Lax" | "None";
        secure?: boolean;
        sourcePort?: number;
        sourceScheme?: "Unset" | "NonSecure" | "Secure";
        url?: string;
    }[];
    /** Body param: */
    emulateMediaType?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.gotooptions). */
    gotoOptions?: {
        referer?: string;
        referrerPolicy?: string;
        timeout?: number;
        waitUntil?: "load" | "domcontentloaded" | "networkidle0" | "networkidle2" | ("load" | "domcontentloaded" | "networkidle0" | "networkidle2")[];
    };
    /** Body param: Block undesired requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    rejectRequestPattern?: string[];
    /** Body param: Block undesired requests that match the provided resource types, eg. 'image' or 'script'. */
    rejectResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: */
    setExtraHTTPHeaders?: Record<string, unknown>;
    /** Body param: */
    setJavaScriptEnabled?: boolean;
    /** Body param: */
    userAgent?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setviewport). */
    viewport?: {
        height: number;
        width: number;
        deviceScaleFactor?: number;
        hasTouch?: boolean;
        isLandscape?: boolean;
        isMobile?: boolean;
    };
    /** Body param: Wait for the selector to appear in page. Check [options](https://pptr.dev/api/puppeteer.page.waitforselector). */
    waitForSelector?: {
        selector: string;
        hidden?: true;
        timeout?: number;
        visible?: true;
    };
    /** Body param: Waits for a specified timeout before continuing. */
    waitForTimeout?: number;
}
export declare const CreateScrapeRequest: Schema.Schema<CreateScrapeRequest>;
export type CreateScrapeResponse = {
    results: {
        attributes: {
            name: string;
            value: string;
        }[];
        height: number;
        html: string;
        left: number;
        text: string;
        top: number;
        width: number;
    };
    selector: string;
}[];
export declare const CreateScrapeResponse: Schema.Schema<CreateScrapeResponse>;
export type CreateScrapeError = DefaultErrors;
export declare const createScrape: API.OperationMethod<CreateScrapeRequest, CreateScrapeResponse, CreateScrapeError, Credentials | HttpClient.HttpClient>;
export interface CreateScreenshotRequest {
    /** Path param: Account ID. */
    accountId: string;
    /** Query param: Cache TTL default is 5s. Set to 0 to disable. */
    cacheTTL?: number;
    /** Body param: Set the content of the page, eg: `<h1>Hello World!!</h1>`. Either `html` or `url` must be set. */
    html: string;
    /** Body param: The maximum duration allowed for the browser action to complete after the page has loaded (such as taking screenshots, extracting content, or generating PDFs). If this time limit is exceed */
    actionTimeout?: number;
    /** Body param: Adds a `<script>` tag into the page with the desired URL or content. */
    addScriptTag?: {
        id?: string;
        content?: string;
        type?: string;
        url?: string;
    }[];
    /** Body param: Adds a `<link rel="stylesheet">` tag into the page with the desired URL or a `<style type="text/css">` tag with the content. */
    addStyleTag?: {
        content?: string;
        url?: string;
    }[];
    /** Body param: Only allow requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    allowRequestPattern?: string[];
    /** Body param: Only allow requests that match the provided resource types, eg. 'image' or 'script'. */
    allowResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: Provide credentials for HTTP authentication. */
    authenticate?: {
        password: string;
        username: string;
    };
    /** Body param: Attempt to proceed when 'awaited' events fail or timeout. */
    bestAttempt?: boolean;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setcookie). */
    cookies?: {
        name: string;
        value: string;
        domain?: string;
        expires?: number;
        httpOnly?: boolean;
        partitionKey?: string;
        path?: string;
        priority?: "Low" | "Medium" | "High";
        sameParty?: boolean;
        sameSite?: "Strict" | "Lax" | "None";
        secure?: boolean;
        sourcePort?: number;
        sourceScheme?: "Unset" | "NonSecure" | "Secure";
        url?: string;
    }[];
    /** Body param: */
    emulateMediaType?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.gotooptions). */
    gotoOptions?: {
        referer?: string;
        referrerPolicy?: string;
        timeout?: number;
        waitUntil?: "load" | "domcontentloaded" | "networkidle0" | "networkidle2" | ("load" | "domcontentloaded" | "networkidle0" | "networkidle2")[];
    };
    /** Body param: Block undesired requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    rejectRequestPattern?: string[];
    /** Body param: Block undesired requests that match the provided resource types, eg. 'image' or 'script'. */
    rejectResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.screenshotoptions). */
    screenshotOptions?: {
        captureBeyondViewport?: boolean;
        clip?: {
            height: number;
            width: number;
            x: number;
            y: number;
            scale?: number;
        };
        encoding?: "binary" | "base64";
        fromSurface?: boolean;
        fullPage?: boolean;
        omitBackground?: boolean;
        optimizeForSpeed?: boolean;
        quality?: number;
        type?: "png" | "jpeg" | "webp";
    };
    /** Body param: */
    scrollPage?: boolean;
    /** Body param: */
    selector?: string;
    /** Body param: */
    setExtraHTTPHeaders?: Record<string, unknown>;
    /** Body param: */
    setJavaScriptEnabled?: boolean;
    /** Body param: */
    userAgent?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setviewport). */
    viewport?: {
        height: number;
        width: number;
        deviceScaleFactor?: number;
        hasTouch?: boolean;
        isLandscape?: boolean;
        isMobile?: boolean;
    };
    /** Body param: Wait for the selector to appear in page. Check [options](https://pptr.dev/api/puppeteer.page.waitforselector). */
    waitForSelector?: {
        selector: string;
        hidden?: true;
        timeout?: number;
        visible?: true;
    };
    /** Body param: Waits for a specified timeout before continuing. */
    waitForTimeout?: number;
}
export declare const CreateScreenshotRequest: Schema.Schema<CreateScreenshotRequest>;
export interface CreateScreenshotResponse {
    /** Response status */
    success: boolean;
    errors?: {
        code: number;
        message: string;
    }[] | null;
}
export declare const CreateScreenshotResponse: Schema.Schema<CreateScreenshotResponse>;
export type CreateScreenshotError = DefaultErrors;
export declare const createScreenshot: API.OperationMethod<CreateScreenshotRequest, CreateScreenshotResponse, CreateScreenshotError, Credentials | HttpClient.HttpClient>;
export interface CreateSnapshotRequest {
    /** Path param: Account ID. */
    accountId: string;
    /** Query param: Cache TTL default is 5s. Set to 0 to disable. */
    cacheTTL?: number;
    /** Body param: Set the content of the page, eg: `<h1>Hello World!!</h1>`. Either `html` or `url` must be set. */
    html: string;
    /** Body param: The maximum duration allowed for the browser action to complete after the page has loaded (such as taking screenshots, extracting content, or generating PDFs). If this time limit is exceed */
    actionTimeout?: number;
    /** Body param: Adds a `<script>` tag into the page with the desired URL or content. */
    addScriptTag?: {
        id?: string;
        content?: string;
        type?: string;
        url?: string;
    }[];
    /** Body param: Adds a `<link rel="stylesheet">` tag into the page with the desired URL or a `<style type="text/css">` tag with the content. */
    addStyleTag?: {
        content?: string;
        url?: string;
    }[];
    /** Body param: Only allow requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    allowRequestPattern?: string[];
    /** Body param: Only allow requests that match the provided resource types, eg. 'image' or 'script'. */
    allowResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: Provide credentials for HTTP authentication. */
    authenticate?: {
        password: string;
        username: string;
    };
    /** Body param: Attempt to proceed when 'awaited' events fail or timeout. */
    bestAttempt?: boolean;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setcookie). */
    cookies?: {
        name: string;
        value: string;
        domain?: string;
        expires?: number;
        httpOnly?: boolean;
        partitionKey?: string;
        path?: string;
        priority?: "Low" | "Medium" | "High";
        sameParty?: boolean;
        sameSite?: "Strict" | "Lax" | "None";
        secure?: boolean;
        sourcePort?: number;
        sourceScheme?: "Unset" | "NonSecure" | "Secure";
        url?: string;
    }[];
    /** Body param: */
    emulateMediaType?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.gotooptions). */
    gotoOptions?: {
        referer?: string;
        referrerPolicy?: string;
        timeout?: number;
        waitUntil?: "load" | "domcontentloaded" | "networkidle0" | "networkidle2" | ("load" | "domcontentloaded" | "networkidle0" | "networkidle2")[];
    };
    /** Body param: Block undesired requests that match the provided regex patterns, eg. '/^.\ \.(css)'. */
    rejectRequestPattern?: string[];
    /** Body param: Block undesired requests that match the provided resource types, eg. 'image' or 'script'. */
    rejectResourceTypes?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "prefetch" | "eventsource" | "websocket" | "manifest" | "signedexchange" | "ping" | "cspviolationreport" | "preflight" | "other")[];
    /** Body param: */
    screenshotOptions?: {
        captureBeyondViewport?: boolean;
        clip?: {
            height: number;
            width: number;
            x: number;
            y: number;
            scale?: number;
        };
        fromSurface?: boolean;
        fullPage?: boolean;
        omitBackground?: boolean;
        optimizeForSpeed?: boolean;
        quality?: number;
        type?: "png" | "jpeg" | "webp";
    };
    /** Body param: */
    setExtraHTTPHeaders?: Record<string, unknown>;
    /** Body param: */
    setJavaScriptEnabled?: boolean;
    /** Body param: */
    userAgent?: string;
    /** Body param: Check [options](https://pptr.dev/api/puppeteer.page.setviewport). */
    viewport?: {
        height: number;
        width: number;
        deviceScaleFactor?: number;
        hasTouch?: boolean;
        isLandscape?: boolean;
        isMobile?: boolean;
    };
    /** Body param: Wait for the selector to appear in page. Check [options](https://pptr.dev/api/puppeteer.page.waitforselector). */
    waitForSelector?: {
        selector: string;
        hidden?: true;
        timeout?: number;
        visible?: true;
    };
    /** Body param: Waits for a specified timeout before continuing. */
    waitForTimeout?: number;
}
export declare const CreateSnapshotRequest: Schema.Schema<CreateSnapshotRequest>;
export interface CreateSnapshotResponse {
    /** HTML content */
    content: string;
    /** Base64 encoded image */
    screenshot: string;
}
export declare const CreateSnapshotResponse: Schema.Schema<CreateSnapshotResponse>;
export type CreateSnapshotError = DefaultErrors;
export declare const createSnapshot: API.OperationMethod<CreateSnapshotRequest, CreateSnapshotResponse, CreateSnapshotError, Credentials | HttpClient.HttpClient>;
//# sourceMappingURL=browser-rendering.d.ts.map