ISecurityTokenPositionManager.sol

ISecurityTokenPositionManager

Git Source

Interface for managing positions in security tokens

This interface defines the core functionality for minting, burning, and managing security token positions

Functions

initializeAuthority

Initializes the authority for the position manager

This function should only be called once, typically during contract deployment

function initializeAuthority(address initialAuthority) external;

Parameters

Name
Type
Description

initialAuthority

address

The address to be set as the initial authority

initialize

Initializes the position manager and its associated ERC721 token

function initialize(string calldata name, string calldata symbol, address descriptor) external;

Parameters

Name
Type
Description

name

string

The name for the ERC721 token representing positions

symbol

string

The symbol for the ERC721 token representing positions

descriptor

address

The address of the descriptor contract

updateSecurityToken

Updates the details of a security token

Parameters

Name
Type
Description

securityToken

address

The address of the security token to update

details

SecurityTokenDetails

The new details for the security token

removeSecurityToken

Removes a security token from the position manager

Parameters

Name
Type
Description

securityToken

address

The address of the security token to remove

setDefaultRoyalty

Sets the default royalty for the contract

Parameters

Name
Type
Description

receiver

address

The address to receive royalties

feeNumerator

uint96

The fee numerator for calculating royalties

setTokenRoyalty

Sets the royalty for a specific token

Parameters

Name
Type
Description

tokenId

uint256

The ID of the token to set royalties for

receiver

address

The address to receive royalties

feeNumerator

uint96

The fee numerator for calculating royalties

mint

Mints a new position token representing a locked amount of security tokens

Parameters

Name
Type
Description

securityToken

address

The address of the security token to be locked in the position

amount

uint256

The amount of security tokens to be locked in the position

recipient

address

The address to receive the minted position token

data

bytes

Additional data for the mint operation

Returns

Name
Type
Description

tokenId

uint256

The ID of the newly minted position token

burn

Burns a position and releases the locked security tokens

Parameters

Name
Type
Description

tokenId

uint256

The ID of the position to burn

recipient

address

The address to receive the underlying security tokens

Returns

Name
Type
Description

data

TokenData

The TokenData of the burned position

setDelegate

Sets the delegate for a position's voting power

Parameters

Name
Type
Description

tokenId

uint256

The ID of the position token

target

address

The address of the new delegate

securityTokenDetails

Retrieves the details of a security token

Parameters

Name
Type
Description

securityToken

address

The address of the security token

Returns

Name
Type
Description

<none>

SecurityTokenDetails

The SecurityTokenDetails of the specified security token

tokenData

Retrieves the token data for a position

Parameters

Name
Type
Description

tokenId

uint256

The ID of the position token

Returns

Name
Type
Description

<none>

TokenData

The TokenData of the specified position

Events

Mint

Emitted when a new position is minted

Parameters

Name
Type
Description

tokenId

uint256

The unique identifier of the minted position

securityToken

address

The address of the security token

amount

uint256

The amount of tokens in the position

container

address

The address of the votes container

recipient

address

The address receiving the minted position

sender

address

The address initiating the mint

Burn

Emitted when a position is burned

Parameters

Name
Type
Description

tokenId

uint256

The unique identifier of the burned position

securityToken

address

The address of the security token

amount

uint256

The amount of tokens in the burned position

recipient

address

The address receiving the underlying tokens

sender

address

The address initiating the burn

UpdateSecurityToken

Emitted when a security token is updated

Parameters

Name
Type
Description

securityToken

address

The address of the updated security token

RemoveSecurityToken

Emitted when a security token is removed

Parameters

Name
Type
Description

securityToken

address

The address of the removed security token

Structs

TokenData

Struct representing token data for a position

Properties

Name
Type
Description

securityToken

address

The address of the security token

amount

uint256

The amount of tokens in the position

container

address

The address of the votes container

SecurityTokenDetails

Struct representing details of a security token

Properties

Name
Type
Description

data

bytes

Additional data associated with the security token

Last updated