@kamino-finance/kamino-db
Version:
Kamino database models
288 lines (282 loc) • 14.8 kB
text/typescript
export * from './BorrowOrderEventTypeEntity';
export * from './BorrowOrderAlertEntity';
export * from './ClusterEntity';
export * from './OwnerEntity';
export * from './TokenEntity';
export * from './StrategyEntity';
export * from './ShareMintEntity';
export * from './ShareHolderEntity';
export * from './StrategyStateEntity';
export * from './WhirlpoolEntity';
export * from './WhirlpoolStateEntity';
export * from './DexTypeEntity';
export * from './VaultEntity';
export * from './PriceEntity';
export * from './TokenHistoryEntity';
export * from './TokenHistorySourceEntity';
export * from './TokenHistoryFieldEntity';
export * from './ProgramAccountEntity';
export * from './TokenMintEntity';
export * from './TradeAggregatorEntity';
export * from './TradeEntity';
export * from './TradeSourceEntity';
export * from './StrategyMetricsEntity';
export * from './TradePoolEntity';
export * from './SimulatorPoolEntity';
export * from './MetricsSourceEntity';
export * from './KlendMarketEntity';
export * from './KlendMarketStateEntity';
export * from './KlendObligationEntity';
export * from './KLendObligationStateEntity';
export * from './KlendReserveEntity';
export * from './KlendReserveStateEntity';
export * from './KaminoInstructionEntity';
export * from './InstructionEntity';
export * from './UserMetricsEntity';
export * from './PriceTypeEntity';
export * from './FarmEntity';
export * from './FarmStateEntity';
export * from './FarmUserEntity';
export * from './FarmUserStateEntity';
export * from './FarmRewardEntity';
export * from './FarmInstructionEntity';
export * from './FarmManagementInstructionEntity';
export * from './kdex';
export * from './KlendLeverageMetricsEntity';
export * from './PointsTotalEntity';
export * from './PointsKlendEntity';
export * from './PointsStrategiesEntity';
export * from './PointsSourceEntity';
export * from './KlendObligationTypeEntity';
export * from './StakedSolTokenEntity';
export * from './StablecoinTokenEntity';
export * from './PointsLeaderboardBlacklistEntity';
export * from './KlendBorrowOrderInstructionEntity';
export * from './KlendInstructionEntity';
export * from './KlendWithdrawQueueInstructionEntity';
export * from './KlendWithdrawTicketEntity';
export * from './RawInstructionEntity';
export * from './YieldEntity';
export * from './StakingRateEntity';
export * from './PointsTotalHistoryEntity';
export * from './AirdropMetricsEntity';
export * from './AirdropSourceEntity';
export * from './AirdropEntity';
export * from './PointsSourceBoostEntity';
export * from './PointsOwnerBoostEntity';
export * from './PointsOwnerBoostSourceEntity';
export * from './StakingBoostEntity';
export * from './PointsStakingEntity';
export * from './OwnerScreeningEntity';
export * from './accounting';
export * from './RecentSlotEntity';
export * from './EpochEntity';
export * from './StakingYieldEntity';
export * from './kvault';
export * from './portfolio';
export * from './limo';
export * from './KlendNotificationEntity';
export * from './KlendWalletNotificationEntity';
export * from './NotificationTypeEntity';
export * from './OwnerNetValueEntity';
export * from './kswap';
export * from './referral';
export * from './LookupTableEntity';
export * from './LookupTableAccountEntity';
export * from './OwnerScreeningAuditLogEntity';
export * from './OwnerScreeningConfigEntity';
export * from './ReplaySampleEntity';
export * from './reward';
export * from './TelegramInviteLinkEntity';
export * from './ScopeFeedEntity';
export * from './OracleMappingsEntity';
export * from './ScopeFeedStateEntity';
export * from './ScopeFeedStateMetadataEntity';
export * from './KlendRewardStateEntity';
export * from './LutProductEntity';
export * from './LutEntryEntity';
export * from './LutAccountFrequencyEntity';
export * from './LutMissingGroupEntity';
export * from './LutMissingGroupAccountEntity';
export const CLUSTER_TABLE: string = 'cluster';
export const DEX_TYPE: string = 'dex_type';
export const OWNER_TABLE: string = 'owner';
export const VAULT_TABLE: string = 'vault';
export const TOKEN_TABLE: string = 'token';
export const STRATEGY_TABLE: string = 'strategy';
export const SHARE_MINT_TABLE: string = 'share_mint';
export const STRATEGY_STATE_TABLE: string = 'strategy_state';
export const SHARE_HOLDER_TABLE: string = 'share_holder';
export const WHIRLPOOL_TABLE: string = 'whirlpool';
export const WHIRLPOOL_STATE_TABLE: string = 'whirlpool_state';
export const REWARD_TABLE = 'reward';
export const REWARD_EARNED_TABLE = 'reward_earned';
export const PRICE_TABLE = 'price';
export const TOKEN_HISTORY_TABLE = 'token_history';
export const TOKEN_HISTORY_FIELD_TABLE = 'token_history_field';
export const TOKEN_HISTORY_SOURCE_TABLE = 'token_history_source';
export const TRADE_TABLE = 'trade';
export const TOKEN_MINT_TABLE = 'token_mint';
export const PROGRAM_ACCOUNT_TABLE = 'program_account';
export const TRADE_AGGREGATOR_TABLE = 'trade_aggregator';
export const TRADE_SOURCE_TABLE = 'trade_source';
export const TRADE_POOL_TABLE = 'trade_pool';
export const STRATEGY_METRICS_TABLE = 'strategy_metrics';
export const SIMULATOR_POOL_TABLE = 'simulator_pool';
export const METRICS_SOURCE_TABLE = 'metrics_source';
export const KLEND_MARKET_TABLE = 'klend_market';
export const KLEND_RESERVE_TABLE = 'klend_reserve';
export const KLEND_OBLIGATION_TABLE = 'klend_obligation';
export const KLEND_MARKET_STATE_TABLE = 'klend_market_state';
export const KLEND_RESERVE_STATE_TABLE = 'klend_reserve_state';
export const KLEND_OBLIGATION_STATE_TABLE = 'klend_obligation_state';
export const INSTRUCTION_TABLE = 'instruction';
export const USER_METRICS_TABLE = 'user_metrics';
export const PRICE_TYPE_TABLE = 'price_type';
export const FARM_TABLE = 'farm';
export const FARM_STATE_TABLE = 'farm_state';
export const FARM_USER_TABLE = 'farm_user';
export const FARM_USER_STATE_TABLE = 'farm_user_state';
export const FARM_REWARD_TABLE = 'farm_reward_state';
export const FARM_INSTRUCTION_TABLE = 'farm_instruction';
export const FARM_MANAGEMENT_INSTRUCTION_TABLE = 'farm_management_instruction';
export const KDEX_CURVE_TYPE_TABLE = 'kdex_curve_type';
export const KDEX_POOL_TABLE = 'kdex_pool';
export const KDEX_INSTRUCTION_TABLE = 'kdex_instruction';
export const KLEND_LEVERAGE_METRICS_TABLE = 'klend_leverage_metrics';
export const POINTS_SOURCE_TABLE = 'points_source';
export const KLEND_OBLIGATION_TYPE_TABLE = 'klend_obligation_type';
export const POINTS_STRATEGIES_TABLE = 'points_strategies';
export const POINTS_KLEND_TABLE = 'points_klend';
export const POINTS_TOTAL_TABLE = 'points_total';
export const POINTS_LEADERBOARD_TABLE = 'points_leaderboard';
export const STAKED_SOL_TOKEN_TABLE = 'staked_sol_token';
export const POINTS_LEADERBOARD_BLACKLIST_TABLE = 'points_leaderboard_blacklist';
export const STABLECOIN_TOKEN_TABLE = 'stablecoin_token';
export const RAW_INSTRUCTION_TABLE = 'raw_instruction';
export const KAMINO_INSTRUCTION_TABLE = 'kamino_instruction';
export const BORROW_ORDER_EVENT_TYPE_TABLE = 'borrow_order_event_type';
export const BORROW_ORDER_ALERT_TABLE = 'borrow_order_alert';
export const KLEND_BORROW_ORDER_INSTRUCTION_TABLE = 'klend_borrow_order_instruction';
export const KLEND_INSTRUCTION_TABLE = 'klend_instruction';
export const KLEND_WITHDRAW_QUEUE_INSTRUCTION_TABLE = 'klend_withdraw_queue_instruction';
export const KLEND_WITHDRAW_TICKET_TABLE = 'klend_withdraw_ticket';
export const YIELD_TABLE = 'yield';
export const STAKING_RATE_TABLE = 'staking_rate';
export const POINTS_TOTAL_HISTORY_TABLE = 'points_total_history';
export const AIRDROP_TABLE = 'airdrop';
export const AIRDROP_METRICS_TABLE = 'airdrop_metrics';
export const AIRDROP_SOURCE_TABLE = 'airdrop_source';
export const POINTS_SOURCE_BOOST_TABLE = 'points_source_boost';
export const POINTS_OWNER_BOOST_SOURCE_TABLE = 'points_owner_boost_source';
export const POINTS_OWNER_BOOST_TABLE = 'points_owner_boost';
export const STAKING_BOOST_TABLE = 'staking_boost';
export const POINTS_STAKING_TABLE = 'points_staking';
export const OWNER_SCREENING_TABLE = 'owner_screening';
export const ACCOUNTING_CONFIG_TABLE = 'accounting_config';
export const ACCOUNTING_TRANSACTION_TABLE = 'accounting_transaction';
export const ACCOUNTING_BALANCE_TABLE = 'accounting_balance';
export const RECENT_SLOT_TABLE = 'recent_slot';
export const STAKING_YIELD_TABLE = 'staking_yield';
export const EPOCH_TABLE = 'epoch';
export const KVAULT_TABLE = 'kvault';
export const KVAULT_HOLDER_TABLE = 'kvault_holder';
export const KVAULT_HOLDER_TOTAL_TABLE = 'kvault_holder_total';
export const KVAULT_INSTRUCTION_TABLE = 'kvault_instruction';
export const KVAULT_STATE_TABLE = 'kvault_state';
export const KVAULT_RESERVE_STATE_TABLE = 'kvault_reserve_state';
export const KVAULT_ALLOCATION_STATE_TABLE = 'kvault_allocation_state';
export const KVAULT_FARM_REWARD_STATE_TABLE = 'kvault_farm_reward_state';
export const KVAULT_RESERVE_REWARD_STATE_TABLE = 'kvault_reserve_reward_state';
export const KVAULT_REWARD_STATE_TABLE = 'kvault_reward_state';
export const KVAULT_METRICS_TABLE = 'kvault_metrics';
export const PRIVATE_CREDIT_LOAN_TABLE = 'private_credit_loan';
export const PRIVATE_CREDIT_LOAN_STATE_TABLE = 'private_credit_loan_state';
export const PRIVATE_CREDIT_METRICS_TABLE = 'private_credit_metrics';
export const PRIVATE_CREDIT_LIQUIDATION_STATUS_TABLE = 'private_credit_liquidation_status';
export const PRIVATE_CREDIT_STATUS_METRICS_TABLE = 'private_credit_status_metrics';
export const LIMO_ORDER_TABLE = 'limo_order';
export const LIMO_ORDER_STATUS_TABLE = 'limo_order_status';
export const LIMO_ORDER_TYPE_TABLE = 'limo_order_type';
export const LIMO_INSTRUCTION_TABLE = 'limo_instruction';
export const LIMO_METRICS_TABLE = 'limo_metrics';
export const LIMO_WEEKLY_LEADERBOARD_TABLE = 'limo_weekly_leaderboard';
export const KLEND_NOTIFICATION_TABLE = 'klend_notification';
export const KLEND_WALLET_NOTIFICATION_TABLE = 'klend_wallet_notification';
export const NOTIFICATION_TYPE_TABLE = 'notification_type';
export const OWNER_NET_VALUE_TABLE = 'owner_net_value';
export const KSWAP_TOKEN_TABLE = 'kswap_token';
export const REFERRAL_CODE_TABLE = 'referral_code';
export const REFERRED_OWNER_TABLE = 'referred_owner';
export const REFERRAL_LEADERBOARD_TABLE = 'referral_leaderboard';
export const KSWAP_INSTRUCTION_TABLE = 'kswap_instruction';
export const KSWAP_LEADERBOARD_TABLE = 'kswap_leaderboard';
export const KSWAP_AGGREGATOR_TABLE = 'kswap_aggregator';
export const LOOKUP_TABLE = 'lookup_table';
export const LOOKUP_TABLE_ACCOUNT = 'lookup_table_account';
export const OWNER_SCREENING_AUDIT_LOG_TABLE = 'owner_screening_audit_log';
export const OWNER_SCREENING_CONFIG_TABLE = 'owner_screening_config';
export const REPLAY_SAMPLE_TABLE = 'replay_sample';
export const REWARD_KVAULT_TABLE = 'reward_kvault';
export const REWARD_KVAULT_METRICS_TABLE = 'reward_kvault_metrics';
export const REWARD_KLEND_TABLE = 'reward_klend';
export const REWARD_KLEND_METRICS_TABLE = 'reward_klend_metrics';
export const TELEGRAM_INVITE_LINKS_TABLE = 'telegram_invite_links';
export const SCOPE_FEED_TABLE = 'scope_feed';
export const SCOPE_FEED_STATE_TABLE = 'scope_feed_state';
export const SCOPE_FEED_STATE_METADATA_TABLE = 'scope_feed_state_metadata';
export const ORACLE_MAPPINGS_TABLE = 'oracle_mappings';
export const KLEND_REWARD_STATE_TABLE = 'klend_reward_state';
export const LUT_PRODUCT_TABLE = 'lut_product';
export const LUT_ENTRY_TABLE = 'lut_entry';
export const LUT_ACCOUNT_FREQUENCY_TABLE = 'lut_account_frequency';
export const LUT_MISSING_GROUP_TABLE = 'lut_missing_group';
export const LUT_MISSING_GROUP_ACCOUNT_TABLE = 'lut_missing_group_account';
export const PORTFOLIO_PRICE_SOURCE_TABLE = 'portfolio_price_source';
export const PORTFOLIO_PRODUCT_TABLE = 'portfolio_product';
export const PORTFOLIO_SECTION_TABLE = 'portfolio_section';
export const PORTFOLIO_ACCOUNT_KIND_TABLE = 'portfolio_account_kind';
export const PORTFOLIO_STREAM_STATUS_TABLE = 'portfolio_stream_status';
export const PORTFOLIO_RECONCILIATION_STATUS_TABLE = 'portfolio_reconciliation_status';
export const PORTFOLIO_POSITION_KIND_TABLE = 'portfolio_position_kind';
export const PORTFOLIO_VAULT_KIND_TABLE = 'portfolio_vault_kind';
export const PORTFOLIO_PRICE_TABLE = 'portfolio_price';
export const PORTFOLIO_SECTION_REFRESH_TABLE = 'portfolio_section_refresh';
export const PORTFOLIO_STREAM_ERROR_TABLE = 'portfolio_stream_error';
export const PORTFOLIO_RECONCILIATION_RUN_TABLE = 'portfolio_reconciliation_run';
export const PORTFOLIO_SHARE_MINT_MAPPING_TABLE = 'portfolio_share_mint_mapping';
export const PORTFOLIO_SHARE_TOKEN_ACCOUNT_TABLE = 'portfolio_share_token_account';
export const PORTFOLIO_KLEND_OBLIGATION_TABLE = 'portfolio_klend_obligation';
export const PORTFOLIO_KLEND_OBLIGATION_POSITION_TABLE = 'portfolio_klend_obligation_position';
export const PORTFOLIO_KLEND_RESERVE_TABLE = 'portfolio_klend_reserve';
export const PORTFOLIO_KLEND_RESERVE_BORROW_RATE_CURVE_POINT_TABLE = 'portfolio_klend_reserve_borrow_rate_curve_point';
export const PORTFOLIO_KLEND_RESERVE_ELEVATION_GROUP_TABLE = 'portfolio_klend_reserve_elevation_group';
export const PORTFOLIO_KLEND_MARKET_TABLE = 'portfolio_klend_market';
export const PORTFOLIO_KLEND_MARKET_ELEVATION_GROUP_TABLE = 'portfolio_klend_market_elevation_group';
export const PORTFOLIO_LIQUIDITY_POSITION_TABLE = 'portfolio_liquidity_position';
export const PORTFOLIO_LIQUIDITY_STRATEGY_TABLE = 'portfolio_liquidity_strategy';
export const PORTFOLIO_VAULT_POSITION_TABLE = 'portfolio_vault_position';
export const PORTFOLIO_KVAULT_TABLE = 'portfolio_kvault';
export const PORTFOLIO_FARM_USER_REWARD_TABLE = 'portfolio_farm_user_reward';
export const PORTFOLIO_FARM_USER_STATE_TABLE = 'portfolio_farm_user_state';
export const PORTFOLIO_FARM_REWARD_CURVE_POINT_TABLE = 'portfolio_farm_reward_curve_point';
export const PORTFOLIO_FARM_REWARD_TABLE = 'portfolio_farm_reward';
export const PORTFOLIO_FARM_TABLE = 'portfolio_farm';
export const PORTFOLIO_STAKING_POSITION_TABLE = 'portfolio_staking_position';
export type RESAMPLE_FREQUENCY = 'hour' | 'day';
export const HOURLY_FREQUENCY = 'hour';
export const DAILY_FREQUENCY = 'day';
function validateFrequency(frequency: RESAMPLE_FREQUENCY) {
if (frequency !== HOURLY_FREQUENCY && frequency !== DAILY_FREQUENCY) {
throw Error(`Frequency ${frequency} not supported`);
}
}
export const GET_OBLIGATION_STATE_RESAMPLED_TABLE = (frequency: RESAMPLE_FREQUENCY) => {
validateFrequency(frequency);
return `klend_obligation_state_resampled_${frequency}`;
};
export const GET_RESAMPLED_TABLE = (tableName: string, frequency: RESAMPLE_FREQUENCY) => {
validateFrequency(frequency);
return `${tableName}_${frequency}`;
};
export const API_SCHEMA: string = 'api';