# DefineDisplayReactorParameters

Defined in: [react/src/defineReactor.ts:126](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/react/src/defineReactor.ts#L126)

Parameters for a DisplayReactor (UI-friendly string principals/bigints).

## Extends

- [`DefineReactorSharedParameters`](https://ic-reactor.b3pay.net/v3/libs/interfaces/definereactorsharedparameters/)

## Type Parameters

### Service

`Service`

## Properties

### agentOptions?

> `optional` **agentOptions?**: `HttpAgentOptions`

Defined in: [core/src/types/client.ts:18](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/core/src/types/client.ts#L18)

Optional configuration for the underlying HttpAgent.

#### Inherited from

[`ClientManagerParameters`](https://ic-reactor.b3pay.net/v3/libs/interfaces/clientmanagerparameters/).[`agentOptions`](https://ic-reactor.b3pay.net/v3/libs/interfaces/clientmanagerparameters/#agentoptions)

***

### allowEnvConfig?

> `optional` **allowEnvConfig?**: `boolean`

Defined in: [core/src/types/client.ts:36](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/core/src/types/client.ts#L36)

Whether to trust the configuration carried by the `ic_env` cookie.

Three values are read from that cookie, and this flag governs all of them:
the agent root key certificate verification is checked against, the
Internet Identity provider, and the canister ID a reactor resolves by name
when none is configured.

Defaults to `true` only when the agent host AND the page the code is
running on are both unambiguously a local replica (loopback, `localhost`,
and the dev-container domains that tunnel one). Cookies are not
origin-isolated — any sibling subdomain of the registrable domain can write
`ic_env` — and it is the PAGE that decides who those siblings are, so a
document on a real domain is not trusted even when it points its agent at
a loopback replica. Anything else must opt in: set this when you run a
custom testnet on a real domain and trust its `ic_env`.

#### Inherited from

[`ClientManagerParameters`](https://ic-reactor.b3pay.net/v3/libs/interfaces/clientmanagerparameters/).[`allowEnvConfig`](https://ic-reactor.b3pay.net/v3/libs/interfaces/clientmanagerparameters/#allowenvconfig)

***

### ~~allowEnvRootKey?~~

> `optional` **allowEnvRootKey?**: `boolean`

Defined in: [core/src/types/client.ts:46](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/core/src/types/client.ts#L46)

#### Deprecated

Superseded by [allowEnvConfig](https://ic-reactor.b3pay.net/v3/libs/interfaces/clientmanagerparameters/#allowenvconfig), which governs every value
read from the `ic_env` cookie rather than the root key alone.

Still honoured, and still scoped to what it always granted: the root key.
It deliberately does not extend to the Internet Identity provider or to a
reactor's canister ID — setting it for a custom testnet was not an
agreement to take those from a cookie too. Use `allowEnvConfig` for that.

#### Inherited from

[`ClientManagerParameters`](https://ic-reactor.b3pay.net/v3/libs/interfaces/clientmanagerparameters/).[`allowEnvRootKey`](https://ic-reactor.b3pay.net/v3/libs/interfaces/clientmanagerparameters/#allowenvrootkey)

***

### name

> **name**: `string`

Defined in: [core/src/types/reactor.ts:71](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/core/src/types/reactor.ts#L71)

#### Inherited from

[`ReactorParameters`](https://ic-reactor.b3pay.net/v3/libs/interfaces/reactorparameters/).[`name`](https://ic-reactor.b3pay.net/v3/libs/interfaces/reactorparameters/#name)

***

### idlFactory

> **idlFactory**: (`IDL`) => `any`

Defined in: [core/src/types/reactor.ts:72](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/core/src/types/reactor.ts#L72)

#### Parameters

##### IDL

`any`

#### Returns

`any`

#### Inherited from

[`ReactorParameters`](https://ic-reactor.b3pay.net/v3/libs/interfaces/reactorparameters/).[`idlFactory`](https://ic-reactor.b3pay.net/v3/libs/interfaces/reactorparameters/#idlfactory)

***

### canisterId?

> `optional` **canisterId?**: [`CanisterId`](https://ic-reactor.b3pay.net/v3/libs/type-aliases/canisterid/)

Defined in: [core/src/types/reactor.ts:73](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/core/src/types/reactor.ts#L73)

#### Inherited from

[`ReactorParameters`](https://ic-reactor.b3pay.net/v3/libs/interfaces/reactorparameters/).[`canisterId`](https://ic-reactor.b3pay.net/v3/libs/interfaces/reactorparameters/#canisterid)

***

### pollingOptions?

> `optional` **pollingOptions?**: `PollingOptions`

Defined in: [core/src/types/reactor.ts:74](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/core/src/types/reactor.ts#L74)

#### Inherited from

[`ReactorParameters`](https://ic-reactor.b3pay.net/v3/libs/interfaces/reactorparameters/).[`pollingOptions`](https://ic-reactor.b3pay.net/v3/libs/interfaces/reactorparameters/#pollingoptions)

***

### clientManager?

> `optional` **clientManager?**: [`ClientManager`](https://ic-reactor.b3pay.net/v3/libs/classes/clientmanager/)

Defined in: [react/src/defineReactor.ts:93](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/react/src/defineReactor.ts#L93)

Reuse an existing ClientManager (e.g. to share one agent across canisters).
When omitted, a ClientManager is created from the agent options below.

A supplied or adopted manager brings its own agent and QueryClient, so
`agentOptions`, `queryClient` and `allowEnvConfig` apply only when this
call creates one.

#### Inherited from

[`DefineReactorSharedParameters`](https://ic-reactor.b3pay.net/v3/libs/interfaces/definereactorsharedparameters/).[`clientManager`](https://ic-reactor.b3pay.net/v3/libs/interfaces/definereactorsharedparameters/#clientmanager)

***

### queryClient?

> `optional` **queryClient?**: `QueryClient`

Defined in: [react/src/defineReactor.ts:100](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/react/src/defineReactor.ts#L100)

QueryClient for a ClientManager created by this call.

Ignored when `clientManager` or `authentication` is supplied — queries run
against that manager's own QueryClient, which is what is returned.

#### Inherited from

[`DefineReactorSharedParameters`](https://ic-reactor.b3pay.net/v3/libs/interfaces/definereactorsharedparameters/).[`queryClient`](https://ic-reactor.b3pay.net/v3/libs/interfaces/definereactorsharedparameters/#queryclient)

***

### authentication?

> `optional` **authentication?**: [`AuthenticationManager`](https://ic-reactor.b3pay.net/v3/libs/classes/authenticationmanager/)

Defined in: [react/src/defineReactor.ts:109](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/react/src/defineReactor.ts#L109)

Reuse an existing AuthenticationManager, so several reactors share one
Internet Identity session. When omitted, one is created for this reactor.

Its `clientManager` is adopted for this reactor, so sign-in updates the
same agent the reactor calls through. Supplying a different `clientManager`
alongside it is rejected.

#### Inherited from

[`DefineReactorSharedParameters`](https://ic-reactor.b3pay.net/v3/libs/interfaces/definereactorsharedparameters/).[`authentication`](https://ic-reactor.b3pay.net/v3/libs/interfaces/definereactorsharedparameters/#authentication)

***

### auth?

> `optional` **auth?**: `Omit`\<[`AuthenticationManagerParameters`](https://ic-reactor.b3pay.net/v3/libs/interfaces/authenticationmanagerparameters/), `"clientManager"`\>

Defined in: [react/src/defineReactor.ts:117](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/react/src/defineReactor.ts#L117)

Internet Identity options forwarded to the AuthenticationManager
(`identityProvider`, `derivationOrigin`, `idleOptions`, `storage`, …).

Mutually exclusive with `authentication`: a manager built elsewhere is
already configured, so these could not be applied to it.

#### Inherited from

[`DefineReactorSharedParameters`](https://ic-reactor.b3pay.net/v3/libs/interfaces/definereactorsharedparameters/).[`auth`](https://ic-reactor.b3pay.net/v3/libs/interfaces/definereactorsharedparameters/#auth)

***

### display

> **display**: `true`

Defined in: [react/src/defineReactor.ts:129](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/react/src/defineReactor.ts#L129)

***

### validators?

> `optional` **validators?**: `Partial`\<`{ [M in string]: DisplayValidator<Service, M> }`\>

Defined in: [react/src/defineReactor.ts:131](https://github.com/B3Pay/ic-reactor/blob/70bedf3c8779611a3b35710510442dee7f630b87/packages/react/src/defineReactor.ts#L131)

Optional initial argument validators (receive display types).