# WebConsoleFront

[**@openpolyfill/firefox-rdp**](/docs/api/reference)

***

[@openpolyfill/firefox-rdp](/docs/api/reference/globals) / WebConsoleFront

# Class: WebConsoleFront

Defined in: [src/client.ts:446](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L446)

A generic actor client: use call() or the methods proxy to invoke actor methods.

## Extends

- [`ActorFront`](/docs/api/reference/classes/ActorFront)

## Constructors

### Constructor

> **new WebConsoleFront**(`client`, `actorId`): `WebConsoleFront`

Defined in: [src/client.ts:447](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L447)

#### Parameters

##### client

[`FirefoxRDP`](/docs/api/reference/classes/FirefoxRDP)

##### actorId

`string`

#### Returns

`WebConsoleFront`

#### Overrides

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`constructor`](/docs/api/reference/classes/ActorFront#constructor)

## Properties

### actorId

> `readonly` **actorId**: `string`

Defined in: [src/client.ts:60](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L60)

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`actorId`](/docs/api/reference/classes/ActorFront#actorid)

***

### api

> `readonly` **api**: `Record`\<`string`, (...`args`) => `Promise`\<`unknown`\>\>

Defined in: [src/client.ts:52](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L52)

Firefox-spec positional method calls; arguments are marshalled by Arg/Option templates.

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`api`](/docs/api/reference/classes/ActorFront#api)

***

### client

> `readonly` **client**: [`FirefoxRDP`](/docs/api/reference/classes/FirefoxRDP)

Defined in: [src/client.ts:59](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L59)

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`client`](/docs/api/reference/classes/ActorFront#client)

***

### form

> **form**: [`Params`](/docs/api/reference/type-aliases/Params) \| `undefined`

Defined in: [src/client.ts:49](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L49)

Most recent actor form, when supplied by the remote actor.

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`form`](/docs/api/reference/classes/ActorFront#form)

***

### methods

> `readonly` **methods**: `Record`\<`string`, (`params?`) => `Promise`\<[`RDPResponse`](/docs/api/reference/type-aliases/RDPResponse)\>\>

Defined in: [src/client.ts:50](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L50)

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`methods`](/docs/api/reference/classes/ActorFront#methods)

***

### spec?

> `protected` `optional` **spec?**: [`ActorSpec`](/docs/api/reference/interfaces/ActorSpec)

Defined in: [src/client.ts:53](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L53)

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`spec`](/docs/api/reference/classes/ActorFront#spec)

## Accessors

### specTypeName

#### Get Signature

> **get** **specTypeName**(): `string` \| `undefined`

Defined in: [src/client.ts:54](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L54)

##### Returns

`string` \| `undefined`

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`specTypeName`](/docs/api/reference/classes/ActorFront#spectypename)

## Methods

### adoptFrom()

> **adoptFrom**(`other`): `this`

Defined in: [src/client.ts:190](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L190)

Preserve listeners when a generic actor is upgraded to a specialized front.

#### Parameters

##### other

[`ActorFront`](/docs/api/reference/classes/ActorFront)

#### Returns

`this`

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`adoptFrom`](/docs/api/reference/classes/ActorFront#adoptfrom)

***

### call()

> **call**(`method`, `params?`): `Promise`\<[`RDPResponse`](/docs/api/reference/type-aliases/RDPResponse)\>

Defined in: [src/client.ts:109](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L109)

#### Parameters

##### method

`string`

##### params?

[`Params`](/docs/api/reference/type-aliases/Params) = `{String.fromCharCode(123)}{String.fromCharCode(125)}`

#### Returns

`Promise`\<[`RDPResponse`](/docs/api/reference/type-aliases/RDPResponse)\>

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`call`](/docs/api/reference/classes/ActorFront#call)

***

### dispatch()

> **dispatch**(`packet`): `void`

Defined in: [src/client.ts:208](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L208)

#### Parameters

##### packet

[`RDPResponse`](/docs/api/reference/type-aliases/RDPResponse)

#### Returns

`void`

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`dispatch`](/docs/api/reference/classes/ActorFront#dispatch)

***

### evaluateJS()

> **evaluateJS**(`text`, `options?`): `Promise`\<[`RDPResponse`](/docs/api/reference/type-aliases/RDPResponse)\>

Defined in: [src/client.ts:452](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L452)

Evaluate in the tab; wait for the evaluationResult event corresponding to the returned resultID.

#### Parameters

##### text

`string`

##### options?

[`Params`](/docs/api/reference/type-aliases/Params) = `{String.fromCharCode(123)}{String.fromCharCode(125)}`

#### Returns

`Promise`\<[`RDPResponse`](/docs/api/reference/type-aliases/RDPResponse)\>

***

### invoke()

> **invoke**(`method`, ...`args`): `Promise`\<`unknown`\>

Defined in: [src/client.ts:92](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L92)

Call the named Firefox actor method with its original positional JS signature.

#### Parameters

##### method

`string`

##### args

...`unknown`[]

#### Returns

`Promise`\<`unknown`\>

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`invoke`](/docs/api/reference/classes/ActorFront#invoke)

***

### isEvent()

> **isEvent**(`packet`): `boolean`

Defined in: [src/client.ts:202](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L202)

#### Parameters

##### packet

[`RDPResponse`](/docs/api/reference/type-aliases/RDPResponse)

#### Returns

`boolean`

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`isEvent`](/docs/api/reference/classes/ActorFront#isevent)

***

### listen()

> **listen**(`type`, `listener`): `this`

Defined in: [src/client.ts:114](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L114)

Subscribe with Firefox's native positional Front event signature.

#### Parameters

##### type

`string`

##### listener

(...`args`) => `void`

#### Returns

`this`

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`listen`](/docs/api/reference/classes/ActorFront#listen)

***

### off()

> **off**(`type`, `listener`): `this`

Defined in: [src/client.ts:176](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L176)

#### Parameters

##### type

`string`

##### listener

[`PacketListener`](/docs/api/reference/type-aliases/PacketListener)

#### Returns

`this`

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`off`](/docs/api/reference/classes/ActorFront#off)

***

### on()

> **on**(`type`, `listener`): `this`

Defined in: [src/client.ts:168](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L168)

#### Parameters

##### type

`string`

##### listener

[`PacketListener`](/docs/api/reference/type-aliases/PacketListener)

#### Returns

`this`

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`on`](/docs/api/reference/classes/ActorFront#on)

***

### once()

> **once**(`type`, `listener`): `this`

Defined in: [src/client.ts:181](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L181)

#### Parameters

##### type

`string`

##### listener

[`PacketListener`](/docs/api/reference/type-aliases/PacketListener)

#### Returns

`this`

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`once`](/docs/api/reference/classes/ActorFront#once)

***

### registerEvents()

> **registerEvents**(...`types`): `this`

Defined in: [src/client.ts:163](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L163)

Mark event packet types explicitly, even if no listener is currently attached.

#### Parameters

##### types

...`string`[]

#### Returns

`this`

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`registerEvents`](/docs/api/reference/classes/ActorFront#registerevents)

***

### unlisten()

> **unlisten**(`type`, `listener`): `this`

Defined in: [src/client.ts:122](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L122)

#### Parameters

##### type

`string`

##### listener

(...`args`) => `void`

#### Returns

`this`

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`unlisten`](/docs/api/reference/classes/ActorFront#unlisten)

***

### useSpec()

> **useSpec**(`spec`): `this`

Defined in: [src/client.ts:85](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L85)

Attach an actor spec to enable schema-based calls and automatic event routing.

#### Parameters

##### spec

[`ActorSpec`](/docs/api/reference/interfaces/ActorSpec)

#### Returns

`this`

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`useSpec`](/docs/api/reference/classes/ActorFront#usespec)

***

### waitFor()

> **waitFor**(`type`, `options?`): `Promise`\<[`RDPResponse`](/docs/api/reference/type-aliases/RDPResponse)\>

Defined in: [src/client.ts:128](https://github.com/OpenPolyfill/FirefoxRDP/blob/50728dfa35fc2a06b6d8a70fbaf9c0ef0a5bd3a4/src/client.ts#L128)

Await one event, optionally with cancellation and timeout.

#### Parameters

##### type

`string`

##### options?

###### signal?

`AbortSignal`

###### timeoutMs?

`number`

#### Returns

`Promise`\<[`RDPResponse`](/docs/api/reference/type-aliases/RDPResponse)\>

#### Inherited from

[`ActorFront`](/docs/api/reference/classes/ActorFront).[`waitFor`](/docs/api/reference/classes/ActorFront#waitfor)
