Proxy Actions

Convenience class to call functions from GebProxyActions through a proxy contract registered in the GebProxyRegistry. These actions bundle multiple actions in one (e.g: open a safe + lock some ETH + draw some system coins).

Constructors

+ new GebProxyActions(proxyAddress: string, network: GebDeployment, chainProvider: GebProviderInterface): GebProxyActions

Defined in packages/geb/src/proxy-action.ts:57

Parameters:

Name

Type

proxyAddress

string

network

GebDeployment

chainProvider

GebProviderInterface

Returns: GebProxyActions

Properties

proxy

proxy: DsProxy

Defined in packages/geb/src/proxy-action.ts:28

Underlying proxy object. Can be used to make custom calls to the proxy using the proxy.execute() function.

proxyActionCoreAddress

proxyActionCoreAddress: string

Defined in packages/geb/src/proxy-action.ts:33

Address of the base proxy action contract.

proxyActionGlobalSettlementAddress

proxyActionGlobalSettlementAddress: string

Defined in packages/geb/src/proxy-action.ts:38

Address of the proxy action contract for global settlement.

proxyActionIncentiveAddress

proxyActionIncentiveAddress: string

Defined in packages/geb/src/proxy-action.ts:43

Address of the proxy action contract for Uniswap LP share staking.

proxyActionLeverageAddress

proxyActionLeverageAddress: string

Defined in packages/geb/src/proxy-action.ts:48

Address of the proxy action contract used for leverage with flash loans.

proxyAddress

proxyAddress: string

Defined in packages/geb/src/proxy-action.ts:62

Address of the underlying proxy.

Methods

allowSAFE

allowSAFE(safe: BigNumberish, usr: string, ok: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:115

Parameters:

Name

Type

safe

BigNumberish

usr

string

ok

BigNumberish

Returns: TransactionRequest

approveSAFEModification

approveSAFEModification(obj: string, usr: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:130

Parameters:

Name

Type

obj

string

usr

string

Returns: TransactionRequest

coinJoin_join

coinJoin_join(apt: string, safeHandler: string, wad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:136

Parameters:

Name

Type

apt

string

safeHandler

string

wad

BigNumberish

Returns: TransactionRequest

denySAFEModification

denySAFEModification(obj: string, usr: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:146

Parameters:

Name

Type

obj

string

usr

string

Returns: TransactionRequest

enterSystem

enterSystem(src: string, safe: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:152

Parameters:

Name

Type

src

string

safe

BigNumberish

Returns: TransactionRequest

exitETH

exitETH(safe: BigNumberish, wad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:162

Parameters:

Name

Type

safe

BigNumberish

wad

BigNumberish

Returns: TransactionRequest

exitTokenCollateral

exitTokenCollateral(collateralJoin: string, safe: BigNumberish, amt: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:173

Parameters:

Name

Type

collateralJoin

string

safe

BigNumberish

amt

BigNumberish

Returns: TransactionRequest

flashDeleverage

flashDeleverage(uniswapV2Pair: string, callbackProxy: string, collateralType: BytesLike, safe: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:815

Parameters:

Name

Type

uniswapV2Pair

string

callbackProxy

string

collateralType

BytesLike

safe

BigNumberish

Returns: TransactionRequest

flashDeleverageFreeETH

flashDeleverageFreeETH(uniswapV2Pair: string, callbackProxy: string, collateralType: BytesLike, safe: BigNumberish, amountToFree: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:836

Parameters:

Name

Type

uniswapV2Pair

string

callbackProxy

string

collateralType

BytesLike

safe

BigNumberish

amountToFree

BigNumberish

Returns: TransactionRequest

flashLeverage

flashLeverage(uniswapV2Pair: string, callbackProxy: string, collateralType: BytesLike, safe: BigNumberish, leverage: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:859

Parameters:

Name

Type

uniswapV2Pair

string

callbackProxy

string

collateralType

BytesLike

safe

BigNumberish

leverage

BigNumberish

Returns: TransactionRequest

freeETH

freeETH(safe: BigNumberish, wad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:188

Parameters:

Name

Type

safe

BigNumberish

wad

BigNumberish

Returns: TransactionRequest

freeTokenCollateral

freeTokenCollateral(collateralJoin: string, safe: BigNumberish, amt: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:199

Parameters:

Name

Type

collateralJoin

string

safe

BigNumberish

amt

BigNumberish

Returns: TransactionRequest

freeTokenCollateralGlobalSettlement

freeTokenCollateralGlobalSettlement(collateralJoin: string, safe: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:765

Parameters:

Name

Type

collateralJoin

string

safe

BigNumberish

Returns: TransactionRequest

generateDebt

generateDebt(safe: BigNumberish, wad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:214

Parameters:

Name

Type

safe

BigNumberish

wad

BigNumberish

Returns: TransactionRequest

generateDebtAndProtectSAFE

generateDebtAndProtectSAFE(safe: BigNumberish, wad: BigNumberish, saviour: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:226

Parameters:

Name

Type

safe

BigNumberish

wad

BigNumberish

saviour

string

Returns: TransactionRequest

lockETH

lockETH(ethValue: BigNumberish, safe: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:244

Parameters:

Name

Type

ethValue

BigNumberish

safe

BigNumberish

Returns: TransactionRequest

lockETHAndGenerateDebt

lockETHAndGenerateDebt(ethValue: BigNumberish, safe: BigNumberish, deltaWad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:255

Parameters:

Name

Type

ethValue

BigNumberish

safe

BigNumberish

deltaWad

BigNumberish

Returns: TransactionRequest

lockETHLeverage

lockETHLeverage(ethValue: BigNumberish, uniswapV2Pair: string, callbackProxy: string, collateralType: BytesLike, safe: BigNumberish, leverage: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:882

Parameters:

Name

Type

ethValue

BigNumberish

uniswapV2Pair

string

callbackProxy

string

collateralType

BytesLike

safe

BigNumberish

leverage

BigNumberish

Returns: TransactionRequest

lockTokenCollateral

lockTokenCollateral(collateralJoin: string, safe: BigNumberish, amt: BigNumberish, transferFrom: boolean): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:273

Parameters:

Name

Type

collateralJoin

string

safe

BigNumberish

amt

BigNumberish

transferFrom

boolean

Returns: TransactionRequest

lockTokenCollateralAndGenerateDebt

lockTokenCollateralAndGenerateDebt(collateralJoin: string, safe: BigNumberish, collateralAmount: BigNumberish, deltaWad: BigNumberish, transferFrom: boolean): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:290

Parameters:

Name

Type

collateralJoin

string

safe

BigNumberish

collateralAmount

BigNumberish

deltaWad

BigNumberish

transferFrom

boolean

Returns: TransactionRequest

lockTokenCollateralGenerateDebtAndProtectSAFE

lockTokenCollateralGenerateDebtAndProtectSAFE(collateralJoin: string, safe: BigNumberish, collateralAmount: BigNumberish, deltaWad: BigNumberish, transferFrom: boolean, saviour: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:311

Parameters:

Name

Type

collateralJoin

string

safe

BigNumberish

collateralAmount

BigNumberish

deltaWad

BigNumberish

transferFrom

boolean

saviour

string

Returns: TransactionRequest

makeCollateralBag

makeCollateralBag(collateralJoin: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:335

Parameters:

Name

Type

collateralJoin

string

Returns: TransactionRequest

modifySAFECollateralization

modifySAFECollateralization(safe: BigNumberish, deltaCollateral: BigNumberish, deltaDebt: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:341

Parameters:

Name

Type

safe

BigNumberish

deltaCollateral

BigNumberish

deltaDebt

BigNumberish

Returns: TransactionRequest

moveSAFE

moveSAFE(safeSrc: BigNumberish, safeDst: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:356

Parameters:

Name

Type

safeSrc

BigNumberish

safeDst

BigNumberish

Returns: TransactionRequest

openLockETHAndGenerateDebt

openLockETHAndGenerateDebt(ethValue: BigNumberish, collateralType: BytesLike, deltaWad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:366

Parameters:

Name

Type

ethValue

BigNumberish

collateralType

BytesLike

deltaWad

BigNumberish

Returns: TransactionRequest

openLockETHGenerateDebtAndProtectSAFE

openLockETHGenerateDebtAndProtectSAFE(ethValue: BigNumberish, collateralType: BytesLike, deltaWad: BigNumberish, saviour: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:384

Parameters:

Name

Type

ethValue

BigNumberish

collateralType

BytesLike

deltaWad

BigNumberish

saviour

string

Returns: TransactionRequest

openLockETHLeverage

openLockETHLeverage(ethValue: BigNumberish, uniswapV2Pair: string, callbackProxy: string, collateralType: BytesLike, leverage: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:907

Parameters:

Name

Type

ethValue

BigNumberish

uniswapV2Pair

string

callbackProxy

string

collateralType

BytesLike

leverage

BigNumberish

Returns: TransactionRequest

openLockGNTAndGenerateDebt

openLockGNTAndGenerateDebt(gntJoin: string, collateralType: BytesLike, collateralAmount: BigNumberish, deltaWad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:405

Parameters:

Name

Type

gntJoin

string

collateralType

BytesLike

collateralAmount

BigNumberish

deltaWad

BigNumberish

Returns: TransactionRequest

openLockGNTGenerateDebtAndProtectSAFE

openLockGNTGenerateDebtAndProtectSAFE(gntJoin: string, collateralType: BytesLike, collateralAmount: BigNumberish, deltaWad: BigNumberish, saviour: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:424

Parameters:

Name

Type

gntJoin

string

collateralType

BytesLike

collateralAmount

BigNumberish

deltaWad

BigNumberish

saviour

string

Returns: TransactionRequest

openLockTokenCollateralAndGenerateDebt

openLockTokenCollateralAndGenerateDebt(collateralJoin: string, collateralType: BytesLike, collateralAmount: BigNumberish, deltaWad: BigNumberish, transferFrom: boolean): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:446

Parameters:

Name

Type

collateralJoin

string

collateralType

BytesLike

collateralAmount

BigNumberish

deltaWad

BigNumberish

transferFrom

boolean

Returns: TransactionRequest

openLockTokenCollateralGenerateDebtAndProtectSAFE

openLockTokenCollateralGenerateDebtAndProtectSAFE(collateralJoin: string, collateralType: BytesLike, collateralAmount: BigNumberish, deltaWad: BigNumberish, transferFrom: boolean, saviour: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:467

Parameters:

Name

Type

collateralJoin

string

collateralType

BytesLike

collateralAmount

BigNumberish

deltaWad

BigNumberish

transferFrom

boolean

saviour

string

Returns: TransactionRequest

openSAFE

openSAFE(collateralType: BytesLike, usr: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:491

Parameters:

Name

Type

collateralType

BytesLike

usr

string

Returns: TransactionRequest

prepareCoinsForRedeemingGlobalSettlement

prepareCoinsForRedeemingGlobalSettlement(wad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:753

Parameters:

Name

Type

wad

BigNumberish

Returns: TransactionRequest

protectSAFE

protectSAFE(safe: BigNumberish, saviour: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:501

Parameters:

Name

Type

safe

BigNumberish

saviour

string

Returns: TransactionRequest

quitSystem

quitSystem(safe: BigNumberish, dst: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:512

Parameters:

Name

Type

safe

BigNumberish

dst

string

Returns: TransactionRequest

redeemETHGlobalSettlement

redeemETHGlobalSettlement(ethJoin: string, collateralType: BytesLike, wad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:779

Parameters:

Name

Type

ethJoin

string

collateralType

BytesLike

wad

BigNumberish

Returns: TransactionRequest

redeemTokenCollateralGlobalSettlement

redeemTokenCollateralGlobalSettlement(collateralJoin: string, collateralType: BytesLike, wad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:794

Parameters:

Name

Type

collateralJoin

string

collateralType

BytesLike

wad

BigNumberish

Returns: TransactionRequest

repayAllDebt

repayAllDebt(safe: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:522

Parameters:

Name

Type

safe

BigNumberish

Returns: TransactionRequest

repayAllDebtAndFreeETH

repayAllDebtAndFreeETH(safe: BigNumberish, collateralWad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:532

Parameters:

Name

Type

safe

BigNumberish

collateralWad

BigNumberish

Returns: TransactionRequest

repayAllDebtAndFreeTokenCollateral

repayAllDebtAndFreeTokenCollateral(collateralJoin: string, safe: BigNumberish, collateralAmount: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:547

Parameters:

Name

Type

collateralJoin

string

safe

BigNumberish

collateralAmount

BigNumberish

Returns: TransactionRequest

repayDebt

repayDebt(safe: BigNumberish, wad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:563

Parameters:

Name

Type

safe

BigNumberish

wad

BigNumberish

Returns: TransactionRequest

repayDebtAndFreeETH

repayDebtAndFreeETH(safe: BigNumberish, collateralWad: BigNumberish, deltaWad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:574

Parameters:

Name

Type

safe

BigNumberish

collateralWad

BigNumberish

deltaWad

BigNumberish

Returns: TransactionRequest

repayDebtAndFreeTokenCollateral

repayDebtAndFreeTokenCollateral(collateralJoin: string, safe: BigNumberish, collateralAmount: BigNumberish, deltaWad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:591

Parameters:

Name

Type

collateralJoin

string

safe

BigNumberish

collateralAmount

BigNumberish

deltaWad

BigNumberish

Returns: TransactionRequest

safeLockETH

safeLockETH(ethValue: BigNumberish, safe: BigNumberish, owner: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:609

Parameters:

Name

Type

ethValue

BigNumberish

safe

BigNumberish

owner

string

Returns: TransactionRequest

safeLockTokenCollateral

safeLockTokenCollateral(collateralJoin: string, safe: BigNumberish, amt: BigNumberish, transferFrom: boolean, owner: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:625

Parameters:

Name

Type

collateralJoin

string

safe

BigNumberish

amt

BigNumberish

transferFrom

boolean

owner

string

Returns: TransactionRequest

safeRepayAllDebt

safeRepayAllDebt(safe: BigNumberish, owner: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:644

Parameters:

Name

Type

safe

BigNumberish

owner

string

Returns: TransactionRequest

safeRepayDebt

safeRepayDebt(safe: BigNumberish, wad: BigNumberish, owner: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:655

Parameters:

Name

Type

safe

BigNumberish

wad

BigNumberish

owner

string

Returns: TransactionRequest

tokenCollateralJoin_join

tokenCollateralJoin_join(apt: string, safe: string, amt: BigNumberish, transferFrom: boolean): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:671

Parameters:

Name

Type

apt

string

safe

string

amt

BigNumberish

transferFrom

boolean

Returns: TransactionRequest

transfer

transfer(collateral: string, dst: string, amt: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:687

Parameters:

Name

Type

collateral

string

dst

string

amt

BigNumberish

Returns: TransactionRequest

transferCollateral

transferCollateral(safe: BigNumberish, dst: string, wad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:697

Parameters:

Name

Type

safe

BigNumberish

dst

string

wad

BigNumberish

Returns: TransactionRequest

transferInternalCoins

transferInternalCoins(safe: BigNumberish, dst: string, rad: BigNumberish): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:712

Parameters:

Name

Type

safe

BigNumberish

dst

string

rad

BigNumberish

Returns: TransactionRequest

transferSAFEOwnership

transferSAFEOwnership(safe: BigNumberish, usr: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:727

Parameters:

Name

Type

safe

BigNumberish

usr

string

Returns: TransactionRequest

transferSAFEOwnershipToProxy

transferSAFEOwnershipToProxy(safe: BigNumberish, dst: string): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:737

Parameters:

Name

Type

safe

BigNumberish

dst

string

Returns: TransactionRequest

uniswapV2Call

uniswapV2Call(_sender: string, _amount0: BigNumberish, _amount1: BigNumberish, _data: BytesLike): TransactionRequest

Defined in packages/geb/src/proxy-action.ts:930

Parameters:

Name

Type

_sender

string

_amount0

BigNumberish

_amount1

BigNumberish

_data

BytesLike

Returns: TransactionRequest