<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [puppeteer](./puppeteer.md) &gt; [Puppeteer](./puppeteer.puppeteer.md)

## Puppeteer class

The main Puppeteer class.

IMPORTANT: if you are using Puppeteer in a Node environment, you will get an instance of [PuppeteerNode](./puppeteer.puppeteernode.md) when you import or require `puppeteer`. That class extends `Puppeteer`, so has all the methods documented below as well as all that are defined on [PuppeteerNode](./puppeteer.puppeteernode.md).

<b>Signature:</b>

```typescript
export declare class Puppeteer 
```

## Remarks

The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `Puppeteer` class.

## Properties

|  Property | Modifiers | Type | Description |
|  --- | --- | --- | --- |
|  [\_changedProduct](./puppeteer.puppeteer._changedproduct.md) |  | boolean |  |
|  [\_isPuppeteerCore](./puppeteer.puppeteer._ispuppeteercore.md) |  | boolean |  |
|  [devices](./puppeteer.puppeteer.devices.md) |  | [DevicesMap](./puppeteer.devicesmap.md) |  |
|  [errors](./puppeteer.puppeteer.errors.md) |  | [PuppeteerErrors](./puppeteer.puppeteererrors.md) |  |
|  [networkConditions](./puppeteer.puppeteer.networkconditions.md) |  | [PredefinedNetworkConditions](./puppeteer.predefinednetworkconditions.md) |  |

## Methods

|  Method | Modifiers | Description |
|  --- | --- | --- |
|  [clearCustomQueryHandlers()](./puppeteer.puppeteer.clearcustomqueryhandlers.md) |  | Clears all registered handlers. |
|  [connect(options)](./puppeteer.puppeteer.connect.md) |  | This method attaches Puppeteer to an existing browser instance. |
|  [customQueryHandlerNames()](./puppeteer.puppeteer.customqueryhandlernames.md) |  |  |
|  [registerCustomQueryHandler(name, queryHandler)](./puppeteer.puppeteer.registercustomqueryhandler.md) |  | Registers a [custom query handler](./puppeteer.customqueryhandler.md). After registration, the handler can be used everywhere where a selector is expected by prepending the selection string with <code>&lt;name&gt;/</code>. The name is only allowed to consist of lower- and upper case latin letters. |
|  [unregisterCustomQueryHandler(name)](./puppeteer.puppeteer.unregistercustomqueryhandler.md) |  |  |

