// file: kb_lib/src/db/entities.rs

//! Database entities.
//!
//! These types are close to persisted rows and SQL query results.

mod analysis_signal;
mod chain_instruction;
mod chain_slot;
mod chain_transaction;
mod db_metadata;
mod db_runtime_event;
mod dex;
mod dex_decode_replay_ledger;
mod dex_decoded_event;
mod dex_event_coverage_entry;
mod fee_event;
mod fee_event_amount;
mod known_http_endpoint;
mod known_ws_endpoint;
mod instruction_observation;
mod launch_attribution;
mod launch_surface;
mod launch_surface_key;
mod liquidity_event;
mod observed_token;
mod onchain_observation;
mod orderbook_event;
mod pair;
mod pair_analytic_signal;
mod pair_candle;
mod pair_metric;
mod pool;
mod pool_admin_event;
mod pool_lifecycle_event;
mod pool_listing;
mod pool_origin;
mod pool_token;
mod program_instruction_diagnostic;
mod program_instruction_discriminator_row;
mod protocol_candidate;
mod protocol_candidate_summary;
mod reward_event;
mod swap;
mod token;
mod token_account_event;
mod token_burn_event;
mod token_mint_event;
mod trade_event;
mod transaction_classification;
mod wallet;
mod wallet_holding;
mod wallet_participation;

pub use analysis_signal::AnalysisSignalEntity;
pub use chain_instruction::ChainInstructionEntity;
pub use chain_slot::ChainSlotEntity;
pub use chain_transaction::ChainTransactionEntity;
pub use db_metadata::DbMetadataEntity;
pub use db_runtime_event::DbRuntimeEventEntity;
pub use dex::DexEntity;
pub use dex_decode_replay_ledger::DexDecodeReplayLedgerEntity;
pub use dex_decoded_event::DexDecodedEventEntity;
pub use dex_event_coverage_entry::DexEventCoverageEntryEntity;
pub use dex_event_coverage_entry::DexEventCoverageSummaryEntity;
pub use fee_event::FeeEventEntity;
pub use fee_event_amount::FeeEventAmountEntity;
pub use known_http_endpoint::KnownHttpEndpointEntity;
pub use known_ws_endpoint::KnownWsEndpointEntity;
pub use instruction_observation::InstructionObservationEntity;
pub use launch_attribution::LaunchAttributionEntity;
pub use launch_surface::LaunchSurfaceEntity;
pub use launch_surface_key::LaunchSurfaceKeyEntity;
pub use liquidity_event::LiquidityEventEntity;
pub use observed_token::ObservedTokenEntity;
pub use onchain_observation::OnchainObservationEntity;
pub use orderbook_event::OrderbookEventEntity;
pub use pair::PairEntity;
pub use pair_analytic_signal::PairAnalyticSignalEntity;
pub use pair_candle::PairCandleEntity;
pub use pair_metric::PairMetricEntity;
pub use pool::PoolEntity;
pub use pool_admin_event::PoolAdminEventEntity;
pub use pool_lifecycle_event::PoolLifecycleEventEntity;
pub use pool_listing::PoolListingEntity;
pub use pool_origin::PoolOriginEntity;
pub use pool_token::PoolTokenEntity;
pub use program_instruction_diagnostic::ProgramInstructionDiagnosticEntity;
pub use program_instruction_discriminator_row::ProgramInstructionDiscriminatorRowEntity;
pub use protocol_candidate::ProtocolCandidateEntity;
pub use protocol_candidate_summary::ProtocolCandidateSummaryEntity;
pub use reward_event::RewardEventEntity;
pub use swap::SwapEntity;
pub use token::TokenEntity;
pub use token_account_event::TokenAccountEventEntity;
pub use token_burn_event::TokenBurnEventEntity;
pub use token_mint_event::TokenMintEventEntity;
pub use trade_event::TradeEventEntity;
pub use transaction_classification::TransactionClassificationEntity;
pub use wallet::WalletEntity;
pub use wallet_holding::WalletHoldingEntity;
pub use wallet_participation::WalletParticipationEntity;
