Skip to content

ITaxTermsRegistry

ITaxTermsRegistry

MissingUniverseTaxTerms

error MissingUniverseTaxTerms(bytes4 taxStrategyId, uint256 universeId, address warperAddress)

Thrown upon attempting to work with universe without tax terms.

MissingProtocolTaxTerms

error MissingProtocolTaxTerms(bytes4 taxStrategyId, uint256 universeId, address warperAddress)

Thrown upon attempting to work with protocol without tax terms.

UniverseLocalTaxTermsMismatch

error UniverseLocalTaxTermsMismatch(uint256 universeId, bytes4 taxStrategyId)

Thrown upon attempting to work with universe without tax terms on local level.

UniverseWarperTaxTermsMismatch

error UniverseWarperTaxTermsMismatch(uint256 universeId, address warperAddress, bytes4 taxStrategyId)

Thrown upon attempting to work with universe without tax terms on warper level.

ProtocolGlobalTaxTermsMismatch

error ProtocolGlobalTaxTermsMismatch(bytes4 taxStrategyId)

Thrown upon attempting to work with protocol without tax terms on global level.

ProtocolUniverseTaxTermsMismatch

error ProtocolUniverseTaxTermsMismatch(uint256 universeId, bytes4 taxStrategyId)

Thrown upon attempting to work with protocol without tax terms on universe level.

ProtocolWarperTaxTermsMismatch

error ProtocolWarperTaxTermsMismatch(address warperAddress, bytes4 taxStrategyId)

Thrown upon attempting to work with protocol without tax terms on warper level.

UniverseLocalTaxTermsRegistered

event UniverseLocalTaxTermsRegistered(uint256 universeId, bytes4 strategyId, bytes strategyData)

Emitted when universe local tax terms are registered.

Name Type Description
universeId uint256 Universe ID.
strategyId bytes4 Tax strategy ID.
strategyData bytes Tax strategy data.

UniverseLocalTaxTermsRemoved

event UniverseLocalTaxTermsRemoved(uint256 universeId, bytes4 strategyId)

Emitted when universe local tax terms are removed.

Name Type Description
universeId uint256 Universe ID.
strategyId bytes4 Tax strategy ID.

UniverseWarperTaxTermsRegistered

event UniverseWarperTaxTermsRegistered(uint256 universeId, address warperAddress, bytes4 strategyId, bytes strategyData)

Emitted when universe warper tax terms are registered.

Name Type Description
universeId uint256 Universe ID.
warperAddress address Warper address.
strategyId bytes4 Tax strategy ID.
strategyData bytes Tax strategy data.

UniverseWarperTaxTermsRemoved

event UniverseWarperTaxTermsRemoved(uint256 universeId, address warperAddress, bytes4 strategyId)

Emitted when universe warper tax terms are removed.

Name Type Description
universeId uint256 Universe ID.
warperAddress address Warper address.
strategyId bytes4 Tax strategy ID.

ProtocolGlobalTaxTermsRegistered

event ProtocolGlobalTaxTermsRegistered(bytes4 strategyId, bytes strategyData)

Emitted when protocol global tax terms are registered.

Name Type Description
strategyId bytes4 Tax strategy ID.
strategyData bytes Tax strategy data.

ProtocolGlobalTaxTermsRemoved

event ProtocolGlobalTaxTermsRemoved(bytes4 strategyId)

Emitted when protocol global tax terms are removed.

Name Type Description
strategyId bytes4 Tax strategy ID.

ProtocolUniverseTaxTermsRegistered

event ProtocolUniverseTaxTermsRegistered(uint256 universeId, bytes4 strategyId, bytes strategyData)

Emitted when protocol global tax terms are registered.

Name Type Description
universeId uint256 Universe ID.
strategyId bytes4 Tax strategy ID.
strategyData bytes Tax strategy data.

ProtocolUniverseTaxTermsRemoved

event ProtocolUniverseTaxTermsRemoved(uint256 universeId, bytes4 strategyId)

Emitted when protocol global tax terms are removed.

Name Type Description
universeId uint256 Universe ID.
strategyId bytes4 Tax strategy ID.

ProtocolWarperTaxTermsRegistered

event ProtocolWarperTaxTermsRegistered(address warperAddress, bytes4 strategyId, bytes strategyData)

Emitted when protocol warper tax terms are registered.

Name Type Description
warperAddress address Warper address.
strategyId bytes4 Tax strategy ID.
strategyData bytes Tax strategy data.

ProtocolWarperTaxTermsRemoved

event ProtocolWarperTaxTermsRemoved(address warperAddress, bytes4 strategyId)

Emitted when protocol warper tax terms are removed.

Name Type Description
warperAddress address Warper address.
strategyId bytes4 Tax strategy ID.

TaxTerms

struct TaxTerms {
  bytes4 strategyId;
  bytes strategyData;
}

Params

struct Params {
  bytes4 taxStrategyId;
  uint256 universeId;
  address warperAddress;
}

registerUniverseLocalTaxTerms

function registerUniverseLocalTaxTerms(uint256 universeId, struct ITaxTermsRegistry.TaxTerms terms) external

Registers universe local tax terms.

Name Type Description
universeId uint256 Universe ID.
terms struct ITaxTermsRegistry.TaxTerms Tax terms data.

removeUniverseLocalTaxTerms

function removeUniverseLocalTaxTerms(uint256 universeId, bytes4 taxStrategyId) external

Removes universe local tax terms.

Name Type Description
universeId uint256 Universe ID.
taxStrategyId bytes4 Tax strategy ID.

registerUniverseWarperTaxTerms

function registerUniverseWarperTaxTerms(uint256 universeId, address warperAddress, struct ITaxTermsRegistry.TaxTerms terms) external

Registers universe warper tax terms.

Name Type Description
universeId uint256 Universe ID.
warperAddress address Warper address.
terms struct ITaxTermsRegistry.TaxTerms Tax terms data.

removeUniverseWarperTaxTerms

function removeUniverseWarperTaxTerms(uint256 universeId, address warperAddress, bytes4 taxStrategyId) external

Removes universe warper tax terms.

Name Type Description
universeId uint256 Universe ID.
warperAddress address Warper address.
taxStrategyId bytes4 Tax strategy ID.

registerProtocolGlobalTaxTerms

function registerProtocolGlobalTaxTerms(struct ITaxTermsRegistry.TaxTerms terms) external

Registers protocol global tax terms.

Name Type Description
terms struct ITaxTermsRegistry.TaxTerms Tax terms.

removeProtocolGlobalTaxTerms

function removeProtocolGlobalTaxTerms(bytes4 taxStrategyId) external

Removes protocol global tax terms.

Name Type Description
taxStrategyId bytes4 Tax strategy ID.

registerProtocolUniverseTaxTerms

function registerProtocolUniverseTaxTerms(uint256 universeId, struct ITaxTermsRegistry.TaxTerms terms) external

Registers protocol universe tax terms.

Name Type Description
universeId uint256 Universe ID.
terms struct ITaxTermsRegistry.TaxTerms Tax terms.

removeProtocolUniverseTaxTerms

function removeProtocolUniverseTaxTerms(uint256 universeId, bytes4 taxStrategyId) external

Removes protocol universe tax terms.

Name Type Description
universeId uint256 Universe ID
taxStrategyId bytes4 Tax strategy ID.

registerProtocolWarperTaxTerms

function registerProtocolWarperTaxTerms(address warperAddress, struct ITaxTermsRegistry.TaxTerms terms) external

Registers protocol warper tax terms.

Name Type Description
warperAddress address Warper address.
terms struct ITaxTermsRegistry.TaxTerms Tax terms.

removeProtocolWarperTaxTerms

function removeProtocolWarperTaxTerms(address warperAddress, bytes4 taxStrategyId) external

Removes protocol warper tax terms.

Name Type Description
warperAddress address Warper address.
taxStrategyId bytes4 Tax strategy ID.

universeTaxTerms

function universeTaxTerms(struct ITaxTermsRegistry.Params params) external view returns (struct ITaxTermsRegistry.TaxTerms)

Returns universe's tax terms.

Name Type Description
params struct ITaxTermsRegistry.Params The tax terms params.
Name Type Description
[0] struct ITaxTermsRegistry.TaxTerms Tax terms.

protocolTaxTerms

function protocolTaxTerms(struct ITaxTermsRegistry.Params params) external view returns (struct ITaxTermsRegistry.TaxTerms)

Returns protocol's tax terms.

Name Type Description
params struct ITaxTermsRegistry.Params The tax terms params.
Name Type Description
[0] struct ITaxTermsRegistry.TaxTerms Tax terms.

checkRegisteredUniverseTaxTermsWithParams

function checkRegisteredUniverseTaxTermsWithParams(struct ITaxTermsRegistry.Params params) external view

Checks registration of universe tax terms on either local or Warper levels. Reverts in case of absence of listing terms on all levels.

Name Type Description
params struct ITaxTermsRegistry.Params ListingTermsParams specific params.

checkRegisteredProtocolTaxTermsWithParams

function checkRegisteredProtocolTaxTermsWithParams(struct ITaxTermsRegistry.Params params) external view

Checks registration of universe tax terms on either global, universe or Warper levels. Reverts in case of absence of listing terms on all levels.

Name Type Description
params struct ITaxTermsRegistry.Params ListingTermsParams specific params.

areRegisteredUniverseLocalTaxTerms

function areRegisteredUniverseLocalTaxTerms(uint256 universeId, bytes4 taxStrategyId) external view returns (bool)

Checks registration of universe local tax terms.

Name Type Description
universeId uint256 Universe ID.
taxStrategyId bytes4 Tax Strategy ID.
Name Type Description
[0] bool Boolean that is positive in case of existance

areRegisteredUniverseWarperTaxTerms

function areRegisteredUniverseWarperTaxTerms(uint256 universeId, address warperAddress, bytes4 taxStrategyId) external view returns (bool)

Checks registration of universe warper tax terms.

Name Type Description
universeId uint256 Universe ID.
warperAddress address Warper address.
taxStrategyId bytes4 Tax Strategy ID.
Name Type Description
[0] bool Boolean that is positive in case of existance

areRegisteredProtocolGlobalTaxTerms

function areRegisteredProtocolGlobalTaxTerms(bytes4 taxStrategyId) external view returns (bool)

Checks registration of protocol global tax terms.

Name Type Description
taxStrategyId bytes4 Tax Strategy ID.
Name Type Description
[0] bool Boolean that is positive in case of existance

areRegisteredProtocolUniverseTaxTerms

function areRegisteredProtocolUniverseTaxTerms(uint256 universeId, bytes4 taxStrategyId) external view returns (bool)

Checks registration of protocol universe tax terms.

Name Type Description
universeId uint256 Universe ID.
taxStrategyId bytes4 Tax Strategy ID.
Name Type Description
[0] bool Boolean that is positive in case of existance

areRegisteredProtocolWarperTaxTerms

function areRegisteredProtocolWarperTaxTerms(address warperAddress, bytes4 taxStrategyId) external view returns (bool)

Checks registration of global protocol warper tax terms.

Name Type Description
warperAddress address Warper address.
taxStrategyId bytes4 Tax Strategy ID.
Name Type Description
[0] bool Boolean that is positive in case of existance