[API Reference](../README.md) > [IErc827TokenWrapper](../interfaces/IErc827TokenWrapper.md)



# Interface: IErc827TokenWrapper

## Implemented by

* [DaoTokenWrapper](../classes/DaoTokenWrapper.md)


## Methods
<a id="approveAndCall"></a>

###  approveAndCall

► **approveAndCall**(options: *[ApproveAndCallOptions](ApproveAndCallOptions.md)`TxGeneratingFunctionOptions`*): `Promise`.<[ArcTransactionResult](../classes/ArcTransactionResult.md)>



*Defined in [wrappers/iErc827Token.ts:19](https://github.com/daostack/arc.js/blob/f343aa24/lib/wrappers/iErc827Token.ts#L19)*



Approve transfer of tokens by msg.sender (or `onBehalfOf`, if given) from the given "spender". Then call the function specified by `callData`, all in a single transaction.


**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| options | [ApproveAndCallOptions](ApproveAndCallOptions.md)`TxGeneratingFunctionOptions`   |  - |





**Returns:** `Promise`.<[ArcTransactionResult](../classes/ArcTransactionResult.md)>





___

<a id="decreaseApprovalAndCall"></a>

###  decreaseApprovalAndCall

► **decreaseApprovalAndCall**(options: *[ChangeApprovalAndCallOptions](ChangeApprovalAndCallOptions.md)`TxGeneratingFunctionOptions`*): `Promise`.<[ArcTransactionResult](../classes/ArcTransactionResult.md)>



*Defined in [wrappers/iErc827Token.ts:51](https://github.com/daostack/arc.js/blob/f343aa24/lib/wrappers/iErc827Token.ts#L51)*



Decrease the number of tokens approved that msg.sender (or `onBehalfOf` if given) may transfer from the given "spender". Then call the function specified by `callData`, all in a single transaction.


**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| options | [ChangeApprovalAndCallOptions](ChangeApprovalAndCallOptions.md)`TxGeneratingFunctionOptions`   |  - |





**Returns:** `Promise`.<[ArcTransactionResult](../classes/ArcTransactionResult.md)>





___

<a id="increaseApprovalAndCall"></a>

###  increaseApprovalAndCall

► **increaseApprovalAndCall**(options: *[ChangeApprovalAndCallOptions](ChangeApprovalAndCallOptions.md)`TxGeneratingFunctionOptions`*): `Promise`.<[ArcTransactionResult](../classes/ArcTransactionResult.md)>



*Defined in [wrappers/iErc827Token.ts:42](https://github.com/daostack/arc.js/blob/f343aa24/lib/wrappers/iErc827Token.ts#L42)*



Increase the number of tokens approved that msg.sender (or `onBehalfOf`, if given) may transfer from the given "spender". Then call the function specified by `callData`, all in a single transaction.


**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| options | [ChangeApprovalAndCallOptions](ChangeApprovalAndCallOptions.md)`TxGeneratingFunctionOptions`   |  - |





**Returns:** `Promise`.<[ArcTransactionResult](../classes/ArcTransactionResult.md)>





___

<a id="transferAndCall"></a>

###  transferAndCall

► **transferAndCall**(options: *[TransferAndCallOptions](TransferAndCallOptions.md)`TxGeneratingFunctionOptions`*): `Promise`.<[ArcTransactionResult](../classes/ArcTransactionResult.md)>



*Defined in [wrappers/iErc827Token.ts:26](https://github.com/daostack/arc.js/blob/f343aa24/lib/wrappers/iErc827Token.ts#L26)*



Transfer tokens from the current account to another. Then call the function specified by `callData`, all in a single transaction.


**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| options | [TransferAndCallOptions](TransferAndCallOptions.md)`TxGeneratingFunctionOptions`   |  - |





**Returns:** `Promise`.<[ArcTransactionResult](../classes/ArcTransactionResult.md)>





___

<a id="transferFromAndCall"></a>

###  transferFromAndCall

► **transferFromAndCall**(options: *[TransferFromAndCallOptions](TransferFromAndCallOptions.md)`TxGeneratingFunctionOptions`*): `Promise`.<[ArcTransactionResult](../classes/ArcTransactionResult.md)>



*Defined in [wrappers/iErc827Token.ts:33](https://github.com/daostack/arc.js/blob/f343aa24/lib/wrappers/iErc827Token.ts#L33)*



Transfer tokens from one address to another. Then call the function specified by `callData`, all in a single transaction.


**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| options | [TransferFromAndCallOptions](TransferFromAndCallOptions.md)`TxGeneratingFunctionOptions`   |  - |





**Returns:** `Promise`.<[ArcTransactionResult](../classes/ArcTransactionResult.md)>





___


