[API Reference](../README.md) > [DaoTokenWrapper](../classes/DaoTokenWrapper.md)

# Class: DaoTokenWrapper

## Hierarchy

↳  [MintableTokenWrapper](MintableTokenWrapper.md)

**↳ DaoTokenWrapper**

## Implements

* [IContractWrapper](../interfaces/IContractWrapper.md)
* [IErc827TokenWrapper](../interfaces/IErc827TokenWrapper.md)
* [IBurnableTokenWrapper](../interfaces/IBurnableTokenWrapper.md)

## Index

### Constructors

* [constructor](DaoTokenWrapper.md#constructor)

### Properties

* [Approval](DaoTokenWrapper.md#Approval)
* [Burn](DaoTokenWrapper.md#Burn)
* [Mint](DaoTokenWrapper.md#Mint)
* [MintFinished](DaoTokenWrapper.md#MintFinished)
* [Transfer](DaoTokenWrapper.md#Transfer)
* [contract](DaoTokenWrapper.md#contract)
* [factory](DaoTokenWrapper.md#factory)
* [friendlyName](DaoTokenWrapper.md#friendlyName)
* [name](DaoTokenWrapper.md#name)

### Accessors

* [address](DaoTokenWrapper.md#address)

### Methods

* [allowance](DaoTokenWrapper.md#allowance)
* [approve](DaoTokenWrapper.md#approve)
* [approveAndCall](DaoTokenWrapper.md#approveAndCall)
* [burn](DaoTokenWrapper.md#burn)
* [decreaseApproval](DaoTokenWrapper.md#decreaseApproval)
* [decreaseApprovalAndCall](DaoTokenWrapper.md#decreaseApprovalAndCall)
* [estimateGas](DaoTokenWrapper.md#estimateGas)
* [finishMinting](DaoTokenWrapper.md#finishMinting)
* [getBalanceOf](DaoTokenWrapper.md#getBalanceOf)
* [getParameters](DaoTokenWrapper.md#getParameters)
* [getParametersArray](DaoTokenWrapper.md#getParametersArray)
* [getTokenCap](DaoTokenWrapper.md#getTokenCap)
* [getTokenName](DaoTokenWrapper.md#getTokenName)
* [getTokenSymbol](DaoTokenWrapper.md#getTokenSymbol)
* [getTotalSupply](DaoTokenWrapper.md#getTotalSupply)
* [hydrateFromAt](DaoTokenWrapper.md#hydrateFromAt)
* [hydrateFromNew](DaoTokenWrapper.md#hydrateFromNew)
* [increaseApproval](DaoTokenWrapper.md#increaseApproval)
* [increaseApprovalAndCall](DaoTokenWrapper.md#increaseApprovalAndCall)
* [mint](DaoTokenWrapper.md#mint)
* [transfer](DaoTokenWrapper.md#transfer)
* [transferAndCall](DaoTokenWrapper.md#transferAndCall)
* [transferFrom](DaoTokenWrapper.md#transferFrom)
* [transferFromAndCall](DaoTokenWrapper.md#transferFromAndCall)
* [getGenToken](DaoTokenWrapper.md#getGenToken)
* [getGenTokenAddress](DaoTokenWrapper.md#getGenTokenAddress)
* [getGenTokenBalance](DaoTokenWrapper.md#getGenTokenBalance)

---

## Constructors

<a id="constructor"></a>

###  constructor

⊕ **new DaoTokenWrapper**(solidityContract: *`any`*, web3EventService: *[Web3EventService](Web3EventService.md)*): [DaoTokenWrapper](DaoTokenWrapper.md)

*Inherited from [ContractWrapperBase](ContractWrapperBase.md).[constructor](ContractWrapperBase.md#constructor)*

*Defined in [contractWrapperBase.ts:66](https://github.com/daostack/arc.js/blob/6f704389/lib/contractWrapperBase.ts#L66)*

ContractWrapperFactory constructs this

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| solidityContract | `any` |  The json contract truffle artifact |
| web3EventService | [Web3EventService](Web3EventService.md) |   |

**Returns:** [DaoTokenWrapper](DaoTokenWrapper.md)

___

## Properties

<a id="Approval"></a>

###  Approval

**● Approval**: *[EventFetcherFactory](../#EventFetcherFactory)<[ApprovalEventResult](../interfaces/ApprovalEventResult.md)>*

*Inherited from [StandardTokenWrapper](StandardTokenWrapper.md).[Approval](StandardTokenWrapper.md#Approval)*

*Defined in [wrappers/standardToken.ts:16](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/standardToken.ts#L16)*

___
<a id="Burn"></a>

###  Burn

**● Burn**: *[EventFetcherFactory](../#EventFetcherFactory)<[BurnEventResult](../interfaces/BurnEventResult.md)>*

*Implementation of [IBurnableTokenWrapper](../interfaces/IBurnableTokenWrapper.md).[Burn](../interfaces/IBurnableTokenWrapper.md#Burn)*

*Defined in [wrappers/daoToken.ts:64](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L64)*

___
<a id="Mint"></a>

###  Mint

**● Mint**: *[EventFetcherFactory](../#EventFetcherFactory)<[MintEventResult](../interfaces/MintEventResult.md)>*

*Inherited from [MintableTokenWrapper](MintableTokenWrapper.md).[Mint](MintableTokenWrapper.md#Mint)*

*Defined in [wrappers/mintableToken.ts:22](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/mintableToken.ts#L22)*

___
<a id="MintFinished"></a>

###  MintFinished

**● MintFinished**: *[EventFetcherFactory](../#EventFetcherFactory)<[MintFinishedEventResult](../interfaces/MintFinishedEventResult.md)>*

*Inherited from [MintableTokenWrapper](MintableTokenWrapper.md).[MintFinished](MintableTokenWrapper.md#MintFinished)*

*Defined in [wrappers/mintableToken.ts:23](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/mintableToken.ts#L23)*

___
<a id="Transfer"></a>

###  Transfer

**● Transfer**: *[EventFetcherFactory](../#EventFetcherFactory)<[TransferEventResult](../interfaces/TransferEventResult.md)>*

*Inherited from [StandardTokenWrapper](StandardTokenWrapper.md).[Transfer](StandardTokenWrapper.md#Transfer)*

*Defined in [wrappers/standardToken.ts:17](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/standardToken.ts#L17)*

___
<a id="contract"></a>

###  contract

**● contract**: *`any`*

*Implementation of [IContractWrapper](../interfaces/IContractWrapper.md).[contract](../interfaces/IContractWrapper.md#contract)*

*Inherited from [ContractWrapperBase](ContractWrapperBase.md).[contract](ContractWrapperBase.md#contract)*

*Defined in [contractWrapperBase.ts:66](https://github.com/daostack/arc.js/blob/6f704389/lib/contractWrapperBase.ts#L66)*

The underlying truffle contract object. Use this to access parts of the contract that aren't accessible via the wrapper.

___
<a id="factory"></a>

###  factory

**● factory**: *[IContractWrapperFactory](../interfaces/IContractWrapperFactory.md)<[DaoTokenWrapper](DaoTokenWrapper.md)>* =  DaoTokenFactory

*Implementation of [IContractWrapper](../interfaces/IContractWrapper.md).[factory](../interfaces/IContractWrapper.md#factory)*

*Overrides [MintableTokenWrapper](MintableTokenWrapper.md).[factory](MintableTokenWrapper.md#factory)*

*Defined in [wrappers/daoToken.ts:62](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L62)*

___
<a id="friendlyName"></a>

###  friendlyName

**● friendlyName**: *`string`* = "DAO Token"

*Implementation of [IContractWrapper](../interfaces/IContractWrapper.md).[friendlyName](../interfaces/IContractWrapper.md#friendlyName)*

*Overrides [MintableTokenWrapper](MintableTokenWrapper.md).[friendlyName](MintableTokenWrapper.md#friendlyName)*

*Defined in [wrappers/daoToken.ts:61](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L61)*

___
<a id="name"></a>

###  name

**● name**: *`string`* = "DAOToken"

*Implementation of [IContractWrapper](../interfaces/IContractWrapper.md).[name](../interfaces/IContractWrapper.md#name)*

*Overrides [MintableTokenWrapper](MintableTokenWrapper.md).[name](MintableTokenWrapper.md#name)*

*Defined in [wrappers/daoToken.ts:60](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L60)*

___

## Accessors

<a id="address"></a>

###  address

getaddress(): [Address](../#Address)

*Inherited from [ContractWrapperBase](ContractWrapperBase.md).[address](ContractWrapperBase.md#address)*

*Defined in [contractWrapperBase.ts:61](https://github.com/daostack/arc.js/blob/6f704389/lib/contractWrapperBase.ts#L61)*

The address of the contract

**Returns:** [Address](../#Address)

___

## Methods

<a id="allowance"></a>

###  allowance

▸ **allowance**(options: *[StandardTokenAllowanceOptions](../interfaces/StandardTokenAllowanceOptions.md)*): `Promise`<`BigNumber`>

*Inherited from [StandardTokenWrapper](StandardTokenWrapper.md).[allowance](StandardTokenWrapper.md#allowance)*

*Defined in [wrappers/standardToken.ts:198](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/standardToken.ts#L198)*

Returns a promise of the number of tokens that the given account "spender" is currently allowed to transfer from the given token holder's account.

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| options | [StandardTokenAllowanceOptions](../interfaces/StandardTokenAllowanceOptions.md) |   |

**Returns:** `Promise`<`BigNumber`>

___
<a id="approve"></a>

###  approve

▸ **approve**(options: * [StandardTokenApproveOptions](../interfaces/StandardTokenApproveOptions.md) & `TxGeneratingFunctionOptions`*): `Promise`<[ArcTransactionResult](ArcTransactionResult.md)>

*Overrides [MintableTokenWrapper](MintableTokenWrapper.md).[approve](MintableTokenWrapper.md#approve)*

*Defined in [wrappers/daoToken.ts:309](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L309)*

**Parameters:**

| Param | Type |
| ------ | ------ |
| options |  [StandardTokenApproveOptions](../interfaces/StandardTokenApproveOptions.md) & `TxGeneratingFunctionOptions`|

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

___
<a id="approveAndCall"></a>

###  approveAndCall

▸ **approveAndCall**(options: * [ApproveAndCallOptions](../interfaces/ApproveAndCallOptions.md) & `TxGeneratingFunctionOptions`*): `Promise`<[ArcTransactionResult](ArcTransactionResult.md)>

*Implementation of [IErc827TokenWrapper](../interfaces/IErc827TokenWrapper.md).[approveAndCall](../interfaces/IErc827TokenWrapper.md#approveAndCall)*

*Defined in [wrappers/daoToken.ts:122](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L122)*

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](../interfaces/ApproveAndCallOptions.md) & `TxGeneratingFunctionOptions`|   |

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

___
<a id="burn"></a>

###  burn

▸ **burn**(options: * [DaoTokenBurnOptions](../interfaces/DaoTokenBurnOptions.md) & `TxGeneratingFunctionOptions`*): `Promise`<[ArcTransactionResult](ArcTransactionResult.md)>

*Implementation of [IBurnableTokenWrapper](../interfaces/IBurnableTokenWrapper.md).[burn](../interfaces/IBurnableTokenWrapper.md#burn)*

*Defined in [wrappers/daoToken.ts:97](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L97)*

Burn the given number of tokens

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| options |  [DaoTokenBurnOptions](../interfaces/DaoTokenBurnOptions.md) & `TxGeneratingFunctionOptions`|   |

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

___
<a id="decreaseApproval"></a>

###  decreaseApproval

▸ **decreaseApproval**(options: * [StandardTokenChangeApprovalOptions](../interfaces/StandardTokenChangeApprovalOptions.md) & `TxGeneratingFunctionOptions`*): `Promise`<[ArcTransactionResult](ArcTransactionResult.md)>

*Inherited from [MintableTokenWrapper](MintableTokenWrapper.md).[decreaseApproval](MintableTokenWrapper.md#decreaseApproval)*

*Overrides [StandardTokenWrapper](StandardTokenWrapper.md).[decreaseApproval](StandardTokenWrapper.md#decreaseApproval)*

*Defined in [wrappers/mintableToken.ts:100](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/mintableToken.ts#L100)*

**Parameters:**

| Param | Type |
| ------ | ------ |
| options |  [StandardTokenChangeApprovalOptions](../interfaces/StandardTokenChangeApprovalOptions.md) & `TxGeneratingFunctionOptions`|

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

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

###  decreaseApprovalAndCall

▸ **decreaseApprovalAndCall**(options: * [ChangeApprovalAndCallOptions](../interfaces/ChangeApprovalAndCallOptions.md) & `TxGeneratingFunctionOptions`*): `Promise`<[ArcTransactionResult](ArcTransactionResult.md)>

*Implementation of [IErc827TokenWrapper](../interfaces/IErc827TokenWrapper.md).[decreaseApprovalAndCall](../interfaces/IErc827TokenWrapper.md#decreaseApprovalAndCall)*

*Defined in [wrappers/daoToken.ts:266](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L266)*

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](../interfaces/ChangeApprovalAndCallOptions.md) & `TxGeneratingFunctionOptions`|   |

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

___
<a id="estimateGas"></a>

###  estimateGas

▸ **estimateGas**(func: *[ITruffleContractFunction](../interfaces/ITruffleContractFunction.md)*, params: *`Array`<`any`>*, web3Params?: *`any`*): `Promise`<`number`>

*Inherited from [ContractWrapperBase](ContractWrapperBase.md).[estimateGas](ContractWrapperBase.md#estimateGas)*

*Defined in [contractWrapperBase.ts:140](https://github.com/daostack/arc.js/blob/6f704389/lib/contractWrapperBase.ts#L140)*

Estimate conservatively the amount of gas required to execute the given function with the given parameters. Adds 21000 to the estimate computed by web3.

**Parameters:**

| Param | Type | Default value | Description |
| ------ | ------ | ------ | ------ |
| func | [ITruffleContractFunction](../interfaces/ITruffleContractFunction.md) | - |  The function |
| params | `Array`<`any`> | - |  The parameters to send to the function |
| `Default value` web3Params | `any` |  {} |  The web3 parameters (like "from", for example). If it contains "gas" then that value is returned, effectively a no-op. |

**Returns:** `Promise`<`number`>

___
<a id="finishMinting"></a>

###  finishMinting

▸ **finishMinting**(options?: *`TxGeneratingFunctionOptions`*): `Promise`<[ArcTransactionResult](ArcTransactionResult.md)>

*Overrides [MintableTokenWrapper](MintableTokenWrapper.md).[finishMinting](MintableTokenWrapper.md#finishMinting)*

*Defined in [wrappers/daoToken.ts:341](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L341)*

**Parameters:**

| Param | Type |
| ------ | ------ |
| `Optional` options | `TxGeneratingFunctionOptions` |

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

___
<a id="getBalanceOf"></a>

###  getBalanceOf

▸ **getBalanceOf**(account: *[Address](../#Address)*): `Promise`<`BigNumber`>

*Inherited from [StandardTokenWrapper](StandardTokenWrapper.md).[getBalanceOf](StandardTokenWrapper.md#getBalanceOf)*

*Defined in [wrappers/standardToken.ts:175](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/standardToken.ts#L175)*

Returns a promise of the given account's current token balance.

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| account | [Address](../#Address) |   |

**Returns:** `Promise`<`BigNumber`>

___
<a id="getParameters"></a>

###  getParameters

▸ **getParameters**(paramsHash: *[Hash](../#Hash)*): `Promise`<`any`>

*Inherited from [ContractWrapperBase](ContractWrapperBase.md).[getParameters](ContractWrapperBase.md#getParameters)*

*Defined in [contractWrapperBase.ts:118](https://github.com/daostack/arc.js/blob/6f704389/lib/contractWrapperBase.ts#L118)*

Given a hash, returns the associated parameters as an object.

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| paramsHash | [Hash](../#Hash) |   |

**Returns:** `Promise`<`any`>

___
<a id="getParametersArray"></a>

###  getParametersArray

▸ **getParametersArray**(paramsHash: *[Hash](../#Hash)*): `Promise`<`Array`<`any`>>

*Inherited from [ContractWrapperBase](ContractWrapperBase.md).[getParametersArray](ContractWrapperBase.md#getParametersArray)*

*Defined in [contractWrapperBase.ts:127](https://github.com/daostack/arc.js/blob/6f704389/lib/contractWrapperBase.ts#L127)*

Given a hash, returns the associated parameters as an array, ordered by the order in which the parameters appear in the contract's Parameters struct.

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| paramsHash | [Hash](../#Hash) |   |

**Returns:** `Promise`<`Array`<`any`>>

___
<a id="getTokenCap"></a>

###  getTokenCap

▸ **getTokenCap**(): `Promise`<`BigNumber`>

*Defined in [wrappers/daoToken.ts:304](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L304)*

**Returns:** `Promise`<`BigNumber`>

___
<a id="getTokenName"></a>

###  getTokenName

▸ **getTokenName**(): `Promise`<`string`>

*Defined in [wrappers/daoToken.ts:294](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L294)*

**Returns:** `Promise`<`string`>

___
<a id="getTokenSymbol"></a>

###  getTokenSymbol

▸ **getTokenSymbol**(): `Promise`<`string`>

*Defined in [wrappers/daoToken.ts:299](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L299)*

**Returns:** `Promise`<`string`>

___
<a id="getTotalSupply"></a>

###  getTotalSupply

▸ **getTotalSupply**(): `Promise`<`BigNumber`>

*Inherited from [StandardTokenWrapper](StandardTokenWrapper.md).[getTotalSupply](StandardTokenWrapper.md#getTotalSupply)*

*Defined in [wrappers/standardToken.ts:187](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/standardToken.ts#L187)*

Returns a promise of the token's total number of tokens.

**Returns:** `Promise`<`BigNumber`>

___
<a id="hydrateFromAt"></a>

###  hydrateFromAt

▸ **hydrateFromAt**(address: *`string`*): `Promise`<[IContractWrapper](../interfaces/IContractWrapper.md)>

*Implementation of [IContractWrapper](../interfaces/IContractWrapper.md).[hydrateFromAt](../interfaces/IContractWrapper.md#hydrateFromAt)*

*Inherited from [ContractWrapperBase](ContractWrapperBase.md).[hydrateFromAt](ContractWrapperBase.md#hydrateFromAt)*

*Defined in [contractWrapperBase.ts:100](https://github.com/daostack/arc.js/blob/6f704389/lib/contractWrapperBase.ts#L100)*

Initialize from a given address on the current network.

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| address | `string` |  of the deployed contract |

**Returns:** `Promise`<[IContractWrapper](../interfaces/IContractWrapper.md)>
this or undefined if not found

___
<a id="hydrateFromNew"></a>

###  hydrateFromNew

▸ **hydrateFromNew**(...rest: *`Array`<`any`>*): `Promise`<[IContractWrapper](../interfaces/IContractWrapper.md)>

*Implementation of [IContractWrapper](../interfaces/IContractWrapper.md).[hydrateFromNew](../interfaces/IContractWrapper.md#hydrateFromNew)*

*Inherited from [ContractWrapperBase](ContractWrapperBase.md).[hydrateFromNew](ContractWrapperBase.md#hydrateFromNew)*

*Defined in [contractWrapperBase.ts:81](https://github.com/daostack/arc.js/blob/6f704389/lib/contractWrapperBase.ts#L81)*

Initialize from a newly-migrated instance. This will migrate a new instance of the contract to the net.

**Parameters:**

| Param | Type |
| ------ | ------ |
| `Rest` rest | `Array`<`any`> |

**Returns:** `Promise`<[IContractWrapper](../interfaces/IContractWrapper.md)>
this

___
<a id="increaseApproval"></a>

###  increaseApproval

▸ **increaseApproval**(options: * [StandardTokenChangeApprovalOptions](../interfaces/StandardTokenChangeApprovalOptions.md) & `TxGeneratingFunctionOptions`*): `Promise`<[ArcTransactionResult](ArcTransactionResult.md)>

*Overrides [MintableTokenWrapper](MintableTokenWrapper.md).[increaseApproval](MintableTokenWrapper.md#increaseApproval)*

*Defined in [wrappers/daoToken.ts:333](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L333)*

**Parameters:**

| Param | Type |
| ------ | ------ |
| options |  [StandardTokenChangeApprovalOptions](../interfaces/StandardTokenChangeApprovalOptions.md) & `TxGeneratingFunctionOptions`|

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

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

###  increaseApprovalAndCall

▸ **increaseApprovalAndCall**(options: * [ChangeApprovalAndCallOptions](../interfaces/ChangeApprovalAndCallOptions.md) & `TxGeneratingFunctionOptions`*): `Promise`<[ArcTransactionResult](ArcTransactionResult.md)>

*Implementation of [IErc827TokenWrapper](../interfaces/IErc827TokenWrapper.md).[increaseApprovalAndCall](../interfaces/IErc827TokenWrapper.md#increaseApprovalAndCall)*

*Defined in [wrappers/daoToken.ts:232](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L232)*

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](../interfaces/ChangeApprovalAndCallOptions.md) & `TxGeneratingFunctionOptions`|   |

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

___
<a id="mint"></a>

###  mint

▸ **mint**(options: * [DaoTokenMintOptions](../interfaces/DaoTokenMintOptions.md) & `TxGeneratingFunctionOptions`*): `Promise`<[ArcTransactionResult](ArcTransactionResult.md)>

*Overrides [MintableTokenWrapper](MintableTokenWrapper.md).[mint](MintableTokenWrapper.md#mint)*

*Defined in [wrappers/daoToken.ts:70](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L70)*

Mint tokens to recipient

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| options |  [DaoTokenMintOptions](../interfaces/DaoTokenMintOptions.md) & `TxGeneratingFunctionOptions`|   |

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

___
<a id="transfer"></a>

###  transfer

▸ **transfer**(options: * [StandardTokenTransferOptions](../interfaces/StandardTokenTransferOptions.md) & `TxGeneratingFunctionOptions`*): `Promise`<[ArcTransactionResult](ArcTransactionResult.md)>

*Overrides [MintableTokenWrapper](MintableTokenWrapper.md).[transfer](MintableTokenWrapper.md#transfer)*

*Defined in [wrappers/daoToken.ts:317](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L317)*

**Parameters:**

| Param | Type |
| ------ | ------ |
| options |  [StandardTokenTransferOptions](../interfaces/StandardTokenTransferOptions.md) & `TxGeneratingFunctionOptions`|

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

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

###  transferAndCall

▸ **transferAndCall**(options: * [TransferAndCallOptions](../interfaces/TransferAndCallOptions.md) & `TxGeneratingFunctionOptions`*): `Promise`<[ArcTransactionResult](ArcTransactionResult.md)>

*Implementation of [IErc827TokenWrapper](../interfaces/IErc827TokenWrapper.md).[transferAndCall](../interfaces/IErc827TokenWrapper.md#transferAndCall)*

*Defined in [wrappers/daoToken.ts:155](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L155)*

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](../interfaces/TransferAndCallOptions.md) & `TxGeneratingFunctionOptions`|   |

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

___
<a id="transferFrom"></a>

###  transferFrom

▸ **transferFrom**(options: * [StandardTokenTransferFromOptions](../interfaces/StandardTokenTransferFromOptions.md) & `TxGeneratingFunctionOptions`*): `Promise`<[ArcTransactionResult](ArcTransactionResult.md)>

*Overrides [MintableTokenWrapper](MintableTokenWrapper.md).[transferFrom](MintableTokenWrapper.md#transferFrom)*

*Defined in [wrappers/daoToken.ts:325](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L325)*

**Parameters:**

| Param | Type |
| ------ | ------ |
| options |  [StandardTokenTransferFromOptions](../interfaces/StandardTokenTransferFromOptions.md) & `TxGeneratingFunctionOptions`|

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

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

###  transferFromAndCall

▸ **transferFromAndCall**(options: * [TransferFromAndCallOptions](../interfaces/TransferFromAndCallOptions.md) & `TxGeneratingFunctionOptions`*): `Promise`<[ArcTransactionResult](ArcTransactionResult.md)>

*Implementation of [IErc827TokenWrapper](../interfaces/IErc827TokenWrapper.md).[transferFromAndCall](../interfaces/IErc827TokenWrapper.md#transferFromAndCall)*

*Defined in [wrappers/daoToken.ts:191](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L191)*

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](../interfaces/TransferFromAndCallOptions.md) & `TxGeneratingFunctionOptions`|   |

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

___
<a id="getGenToken"></a>

### `<Static>` getGenToken

▸ **getGenToken**(): `Promise`<[DaoTokenWrapper](DaoTokenWrapper.md)>

*Defined in [wrappers/daoToken.ts:46](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L46)*

Returns promise of DaoTokenWrapper on the global GEN token.

**Returns:** `Promise`<[DaoTokenWrapper](DaoTokenWrapper.md)>

___
<a id="getGenTokenAddress"></a>

### `<Static>` getGenTokenAddress

▸ **getGenTokenAddress**(): `string`

*Defined in [wrappers/daoToken.ts:39](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L39)*

Returns address of the global GEN token.

**Returns:** `string`

___
<a id="getGenTokenBalance"></a>

### `<Static>` getGenTokenBalance

▸ **getGenTokenBalance**(agentAddress: *[Address](../#Address)*): `Promise`<`BigNumber`>

*Defined in [wrappers/daoToken.ts:55](https://github.com/daostack/arc.js/blob/6f704389/lib/wrappers/daoToken.ts#L55)*

Returns a promise of the given account's GEN token balance.

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| agentAddress | [Address](../#Address) |   |

**Returns:** `Promise`<`BigNumber`>

___

