# ReactorProviderProps

Defined in: [react/src/index.tsx:250](https://github.com/B3Pay/ic-reactor/blob/6b3b9f58b7868082175216ca6e3688d278d17c1f/packages/react/src/index.tsx#L250)

Props of [ReactorProvider](https://ic-reactor.b3pay.net/v4/libs/functions/reactorprovider/).

## Properties

### client

> `readonly` **client**: () => [`Client`](https://ic-reactor.b3pay.net/v4/libs/interfaces/client/)

Defined in: [react/src/index.tsx:267](https://github.com/B3Pay/ic-reactor/blob/6b3b9f58b7868082175216ca6e3688d278d17c1f/packages/react/src/index.tsx#L267)

Returns the client of this tree. Either it creates one, such as
`() => createClient({ network: "ic", auth: () => new AuthClient() })`, and
the provider owns that client and disposes it when it unmounts; or it
returns a client the app created before, at module scope, as
`() => client`, and the provider borrows it and never disposes it.

A factory, not a client, so that the provider decides when it runs: once
per mounted provider, never per render. Give it no work beyond creating or
returning the client (`createClient` does none until the client is used):
React may call it twice in development and keep one result.

Only the factory of the first render is used. A different function on a
later render does not rebuild the client; to replace it, remount the
provider by giving it another `key`.

#### Returns

[`Client`](https://ic-reactor.b3pay.net/v4/libs/interfaces/client/)

***

### children

> `readonly` **children**: `ReactNode`

Defined in: [react/src/index.tsx:269](https://github.com/B3Pay/ic-reactor/blob/6b3b9f58b7868082175216ca6e3688d278d17c1f/packages/react/src/index.tsx#L269)

The tree that reads the client with [useClient](https://ic-reactor.b3pay.net/v4/libs/functions/useclient/) and [useAuth](https://ic-reactor.b3pay.net/v4/libs/functions/useauth/).