# Percentage

Handles all Percentage Transfer Restriction related functionality

## Hierarchy

* TransferRestrictionBase‹[Percentage](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/enums/transferrestrictiontype#percentage)›

  ↳ **Percentage**

## Index

### Properties

* [addRestriction](#addrestriction)
* [context](#protected-context)
* [get](#get)
* [parent](#protected-parent)
* [removeRestrictions](#removerestrictions)
* [setRestrictions](#setrestrictions)
* [type](#protected-type)

## Properties

### addRestriction

• **addRestriction**: *ProcedureMethod‹Omit‹*[*AddPercentageTransferRestrictionParams*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/globals#addpercentagetransferrestrictionparams)*, "type"›, number›*

*Overrides* [*TransferRestrictionBase*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/classes/transferrestrictionbase)*.*[*addRestriction*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/transferrestrictionbase#addrestriction)

*Defined in* [*src/api/entities/SecurityToken/TransferRestrictions/Percentage.ts:31*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/SecurityToken/TransferRestrictions/Percentage.ts#L31)

Add a Percentage Transfer Restriction to this Security Token

**`param`** limit on the proportion of the total supply of this Security Token that can be held by a single investor at once

**`param`** array of Scope IDs that are exempted from the Restriction

**`param`** array of Identities (or DIDs) that are exempted from the Restriction

**`note`** the result is the total amount of restrictions after the procedure has run

**`note`** required role:

* Security Token Owner

### `Protected` context

• **context**: [*Context*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/classes/context)

*Inherited from void*

*Defined in* [*src/api/entities/Namespace.ts:11*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/Namespace.ts#L11)

### get

• **get**: *function*

*Overrides* [*TransferRestrictionBase*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/classes/transferrestrictionbase)*.*[*get*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/transferrestrictionbase#get)

*Defined in* [*src/api/entities/SecurityToken/TransferRestrictions/Percentage.ts:65*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/SecurityToken/TransferRestrictions/Percentage.ts#L65)

Retrieve all active Percentage Transfer Restrictions

**`note`** there is a maximum number of restrictions allowed accross all types. The `availableSlots` property of the result represents how many more restrictions can be added before reaching that limit

#### Type declaration:

▸ (): *Promise‹*[*ActiveTransferRestrictions*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/interfaces/activetransferrestrictions)*‹*[*PercentageTransferRestriction*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/interfaces/percentagetransferrestriction)*››*

### `Protected` parent

• **parent**: [*SecurityToken*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/classes/securitytoken)

*Inherited from void*

*Defined in* [*src/api/entities/Namespace.ts:9*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/Namespace.ts#L9)

### removeRestrictions

• **removeRestrictions**: *ProcedureMethod‹void, number›*

*Overrides* [*TransferRestrictionBase*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/classes/transferrestrictionbase)*.*[*removeRestrictions*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/transferrestrictionbase#removerestrictions)

*Defined in* [*src/api/entities/SecurityToken/TransferRestrictions/Percentage.ts:56*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/SecurityToken/TransferRestrictions/Percentage.ts#L56)

Removes all Percentage Transfer Restrictions from this Security Token

**`note`** the result is the total amount of restrictions after the procedure has run

### setRestrictions

• **setRestrictions**: *ProcedureMethod‹Omit‹*[*SetPercentageTransferRestrictionsParams*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/interfaces/setpercentagetransferrestrictionsparams)*, "type"›, number›*

*Overrides* [*TransferRestrictionBase*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/classes/transferrestrictionbase)*.*[*setRestrictions*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/transferrestrictionbase#setrestrictions)

*Defined in* [*src/api/entities/SecurityToken/TransferRestrictions/Percentage.ts:46*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/SecurityToken/TransferRestrictions/Percentage.ts#L46)

Sets all Percentage Transfer Restrictions on this Security Token

**`param`** array of Percentage Transfer Restrictions with their corresponding exemptions (if applicable)

**`note`** the result is the total amount of restrictions after the procedure has run

**`note`** required role:

* Security Token Owner

### `Protected` type

• **type**: [*Percentage*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/enums/transferrestrictiontype#percentage) = TransferRestrictionType.Percentage as const

*Overrides* [*TransferRestrictionBase*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/classes/transferrestrictionbase)*.*[*type*](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/transferrestrictionbase#protected-abstract-type)

*Defined in* [*src/api/entities/SecurityToken/TransferRestrictions/Percentage.ts:17*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/SecurityToken/TransferRestrictions/Percentage.ts#L17)
