degenbot.types.abstract¶

Abstract base classes and protocols for pools, tokens, and state.

Submodules¶

Package Contents¶

class degenbot.types.abstract.AbstractExchangeDeployment¶

AbstractExchangeDeployment class.

name: str¶
chain_id: degenbot.types.aliases.ChainId¶
class degenbot.types.abstract.AbstractErc20Token¶

Bases: degenbot.types.address_comparable.AddressComparable

AbstractErc20Token class.

address: degenbot._ffi.ChecksummedAddress¶
symbol: str¶
name: str¶
decimals: int¶
class degenbot.types.abstract.AbstractLiquidityPool¶

Bases: degenbot.types.address_comparable.AddressComparable, abc.ABC

AbstractLiquidityPool class.

address: degenbot.types.chain.ChecksummedAddress¶
name: str¶
property tokens: tuple[degenbot.erc20.erc20.Erc20Token, ...]¶
Abstractmethod:

Tokens.

class degenbot.types.abstract.AbstractPoolState¶

AbstractPoolState class.

address: degenbot.types.chain.ChecksummedAddress¶
block: degenbot.types.aliases.BlockNumber | None¶
class degenbot.types.abstract.AbstractPoolTracker[Pool: degenbot.types.abstract.liquidity_pool.AbstractLiquidityPool](factory_address: str, bot: degenbot.bot.Bot, *, chain_id: degenbot.types.aliases.ChainId | None = None, **kwargs: Any)¶

Base class for liquidity trackers.

pool_factory: type[Pool]¶
remove(pool_address: degenbot.types.chain.ChecksummedAddress | str) → None¶

Perform remove.

tracked_pool_count() → int¶

Return the number of pools currently tracked.

Narrow teardown-introspection probe: Bot.release_python_state / Bot.close clear the tracker caches; this exposes the tracked cache size without reaching into the private _tracked_pools dict. Idempotent and side-effect free.

Returns:

The number of pools in _tracked_pools.

untracked_pool_count() → int¶

Return the number of pools explicitly known to be untracked.

Counterpart to tracked_pool_count() for the _untracked_pools set; side-effect free.

Returns:

The number of addresses in _untracked_pools.

property chain_id: degenbot.types.aliases.ChainId¶

Chain id.

property deployer_address: degenbot.types.chain.ChecksummedAddress¶

Deployer address.

property factory_address: degenbot.types.chain.ChecksummedAddress¶

Factory address.

class degenbot.types.abstract.AbstractSimulationResult¶

Pool-agnostic result of a swap simulation.

amount0_delta: int¶
amount1_delta: int¶
initial_state: pool_state.AbstractPoolState¶
final_state: pool_state.AbstractPoolState¶
class degenbot.types.abstract.AbstractRegistry¶

Abstract base for pool and token registries.