stake.link
  • 💡Introduction
  • 🤔FAQ
  • 🔒SDL Pool Contracts
    • SDL Pool Primary
    • SDL Pool Secondary
    • Linear Boost Controller
    • SDL Pool CCIP Controller Primary
    • SDL Pool CCIP Controller Secondary
    • reSDL Token Bridge
  • 🔧Core Staking Contracts
    • Staking Allowance
    • Staking Pool
    • Priority Pool
    • Withdrawal Pool
    • Wrapped SD Token
    • WrappedTokenBridge
    • Rewards Initiator
  • 💧LST Rewards Splitter Contracts
    • LST Rewards Splitter Controller
    • LST Rewards Splitter
  • 🏆Rewards Pool Contracts
    • Rewards Pool
    • Rewards Pool WSD
  • ⛓️LINK Staking Contracts
    • Operator VCS
    • Operator Vault
    • Community VCS
    • Community Vault
    • Fund Flow Controller
    • Operator Staking Pool
  • 📝Resources
    • Deployed Contracts
Powered by GitBook
On this page
  • ERC20 Functions
  • View Functions
  • sdToken
  • getWrappedByUnderlying
  • getUnderlyingByWrapped
  • Write Functions
  • onTokenTransfer
  • wrap
  • unwrap
  • transferAndCall
  1. Core Staking Contracts

Wrapped SD Token

WrappedSDToken wraps rebasing liquid staking tokens (such as stLINK) with a normal ERC20 token.

ERC20 Functions

All standard ERC20 functions are implemented for WrappedSDToken

View Functions

sdToken

Returns the underlying staking receipt token that this contract wraps

function sdToken() external view returns (address)

Return Values

Name
Type
Description

sdToken

address

Address of staking receipt token

getWrappedByUnderlying

Returns the amount of wrapped tokens that corresponds an amount of unwrapped tokens

function getWrappedByUnderlying(uint256 _amount) external view returns (uint256)

Parameters

Name
Type
Description

_amount

uint256

Amount of unwrapped tokens

Return Values

Name
Type
Description

wrappedAmount

uint256

Amount of corresponding wrapped tokens

getUnderlyingByWrapped

Returns the amount of unwrapped tokens that corresponds to an amount of wrapped tokens

function getUnderlyingByWrapped(uint256 _amount) external view returns (uint256)

Parameters

Name
Type
Description

_amount

uint256

Amount of wrapped tokens

Return Values

Name
Type
Description

unwrappedAmount

uint256

Corresponding amount of unwrapped tokens

Write Functions

onTokenTransfer

ERC677 implementation that proxies wrapping

function onTokenTransfer(address _sender, uint256 _value, bytes) external

Parameters

Name
Type
Description

_sender

address

Sender of the token transfer

_value

uint256

Value of the token transfer

bytes

wrap

Wraps tokens

function wrap(uint256 _amount) external

Parameters

Name
Type
Description

_amount

uint256

Amount of unwrapped tokens to wrap

unwrap

Unwraps tokens

function unwrap(uint256 _amount) external

Parameters

Name
Type
Description

_amount

uint256

Amount of wrapped tokens to unwrap

transferAndCall

Transfers tokens to an address and calls onTokenTransfer with additional data if the recipient is a contract

function transferAndCall(address _to, uint256 _value, bytes _data) external returns (bool)

Parameters

Name
Type
Description

_to

address

Address to send the tokens to

_value

uint256

Value of token transfer

_data

bytes

Calldata included in the transfer

PreviousWithdrawal PoolNextWrappedTokenBridge

Last updated 1 year ago

🔧