Skip to content

IAvmDirectoryViews

Read-only view surface for the AVM directory.

Current canonical pricing-engine proxy for a market kind.

function engineForKind(MarketKind kind) returns (address) view

Parameters

Returns

  • engineaddress
function eventEmitter() returns (address) view

Returns

  • address
function getMarketAddressById(MarketId marketId) returns (address) view

Parameters

Returns

  • marketAddressaddress
function getMarketGroup(GroupId groupId) returns (struct DataTypes.MarketGroup) view

Parameters

Returns

function getMarketIdByAddress(address marketAddress) returns (MarketId) view

Parameters

  • marketAddressaddress

Returns

function getMarketKindConfig(MarketKind kind) returns (struct DataTypes.MarketTypeConfig) view

Parameters

Returns

function getTenant(TenantId tenantId) returns (struct DataTypes.Tenant) view

Parameters

Returns

function isAuthorizedEmitter(address caller) returns (bool) view

Parameters

  • calleraddress

Returns

  • bool

Current implementation address that every market proxy delegatecalls to for delegated permissionless action methods.

One pointer, shared by every market. Each market re-reads this value on every delegated action call, so a protocol-admin rotation takes effect on every market simultaneously, on the next delegated action call after the rotation transaction is mined. donateLiquidity is served by the market proxy directly and is not routed through this pointer.

function marketActionsImpl() returns (address) view

Returns

  • address

Current implementation address that every market proxy delegatecalls to for auth-gated market admin methods.

One pointer, shared by every market. Each market re-reads this value on every delegated admin call, so a protocol-admin rotation takes effect on every market simultaneously, on the next delegated admin call after the rotation transaction is mined. The proxy keeps the admin auth gates; setting the pointer to address(0) pauses the whole admin family.

function marketAdminActionsImpl() returns (address) view

Returns

  • address

Single UpgradeableBeacon shared by every market BeaconProxy.

Every market is engine-agnostic at the bytecode layer; engine flavor differences are resolved through engineForKind, not separate market implementations. So one beacon is sufficient.

function marketBeacon() returns (address) view

Returns

  • address

Canonical factory allowed to call registerMarket.

Deployed by the directory constructor; IAvmFactory.createMarket is the only supported path for new market registration.

function marketFactory() returns (address) view

Returns

  • address
function marketKindExists(MarketKind kind) returns (bool) view

Parameters

Returns

  • bool

Current implementation address that every market proxy delegatecalls to for delegated permissionless leverage-related action methods.

One pointer, shared by every market. Each market re-reads this value on every delegated action call, so a protocol-admin rotation takes effect on every market simultaneously, on the next delegated action call after the rotation transaction is mined.

function marketLeverageActionsImpl() returns (address) view

Returns

  • address

Maximum allowed group-fee rate for buy, sell, borrow, and exercise-option operations.

Mirrors FeePolicy.MAX_GROUP_FEE_MICRO_BPS. Group fees are charged on gross reserve-token flow for the relevant operation. See IAvmDirectoryGroupAdmin.setMarketGroupFees.

function maxGroupFeeMicroBps() returns (MicroBps) view

Returns

Maximum allowed platform-fee share applied to group-fee revenue.

Mirrors FeePolicy.MAX_PLATFORM_FEE_MICRO_BPS. The platform fee is a slice of group-fee revenue, not an additive surcharge on top of the group fee. See IAvmDirectoryProtocolAdmin.setPlatformFee.

function maxPlatformFeeMicroBps() returns (MicroBps) view

Returns

function owner() returns (address) view

Returns

  • address
function proposedProtocolAdmin() returns (address) view

Returns

  • address
function protocolAdmin() returns (address) view

Returns

  • address