import type { ApiTypes } from '@polkadot/api/types'; import type { Vec } from '@polkadot/types'; import type { AccountData, BalanceLock } from '@polkadot/types/interfaces/balances'; import type { Observable } from '@polkadot/types/types'; import type { CurrencyId } from '@reef-defi/types/interfaces/primitives'; import type { AccountId, Balance } from '@reef-defi/types/interfaces/runtime'; declare module '@polkadot/api/types/storage' { interface AugmentedQueries { tokens: { /** * The balance of a token type under an account. * * NOTE: If the total is ever zero, decrease account ref account. * * NOTE: This is only used in the case that this module is used to store * balances. **/ accounts: AugmentedQuery Observable, [AccountId, CurrencyId]> & QueryableStorageEntry; /** * Any liquidity locks of a token type under an account. * NOTE: Should only be accessed when setting, changing and freeing a lock. **/ locks: AugmentedQuery Observable>, [AccountId, CurrencyId]> & QueryableStorageEntry; /** * The total issuance of a token type. **/ totalIssuance: AugmentedQuery Observable, [CurrencyId]> & QueryableStorageEntry; /** * Generic query **/ [key: string]: QueryableStorageEntry; }; } interface QueryableStorage extends AugmentedQueries { [key: string]: QueryableModuleStorage; } }