# ReactorArgsOf

> **ReactorArgsOf**\<`R`, `M`\> = [`ReactorArgs`](https://ic-reactor.b3pay.net/v3/libs/type-aliases/reactorargs/)\<[`ServiceOf`](https://ic-reactor.b3pay.net/v3/libs/type-aliases/serviceof/)\<`R`\>, `M`, [`TransformOf`](https://ic-reactor.b3pay.net/v3/libs/type-aliases/transformof/)\<`R`\>\>

Defined in: [core/src/types/reactor.ts:323](https://github.com/B3Pay/ic-reactor/blob/f1956947ae037304fce1675a38695964c1aa9e32/packages/core/src/types/reactor.ts#L323)

The arguments a reactor's method takes, in the reactor's own form: raw
Candid values for a `Reactor`, display values (text for a `nat` or a
`principal`) for a `DisplayReactor`. It is
`ReactorArgs<Service, M, Transform>` with the service and transform read
from `typeof reactor`, so neither has to be named.

## Type Parameters

### R

`R` *extends* `object`

The reactor's type, as `typeof reactor`.

### M

`M` *extends* [`FunctionName`](https://ic-reactor.b3pay.net/v3/libs/type-aliases/functionname/)\<[`ServiceOf`](https://ic-reactor.b3pay.net/v3/libs/type-aliases/serviceof/)\<`R`\>\>

The method.

## Example

```typescript
const ledger = new DisplayReactor<Ledger>({ clientManager, name: "ledger", idlFactory })

// `{ owner: string; subaccount?: ... }`: the account in display form,
// derived rather than written out by hand
type Account = ReactorArgsOf<typeof ledger, "icrc1_balance_of">[0]
```