import { OffChainTokenConfig, OnChainTokenConfig, SolanaIssuerConfig, UltraIssuerConfig } from './interface'; import { DecodedToken } from '../outlet/ticketStorage'; interface IssuerLookup { [collectionID: string]: TokenConfig & { timestamp: number; }; } export interface TokenData { tokenId: string | number; walletAddress?: string; image?: string; [key: string]: any; } type TokenConfig = OnChainTokenConfig | OffChainTokenConfig | SolanaIssuerConfig | UltraIssuerConfig; type SelectedTokens = { [collectionId: string]: { tokens: DecodedToken[] | TokenData[]; }; }; export declare class TokenStore { private autoEnableTokens; private tokenPersistenceTTL; private currentIssuers; private tokenData; private tokenLookup; private selectedTokens; constructor(autoEnableTokens: boolean, tokenPersistenceTTL: number); clearTokenStore(): void; private loadTokenStore; private saveTokenStore; updateIssuers(issuers: TokenConfig[]): void; clearCachedTokens(onChain?: boolean, walletAddress?: string): void; hasOnChainTokens(): boolean; getCurrentIssuers(onChainFilter?: boolean): IssuerLookup; getIssuerConfig(collectionId: string): TokenConfig & { timestamp: number; }; getCurrentBlockchains(): any[]; getCurrentTokens(onChainFilter?: boolean): { [issuer: string]: any[]; }; getTotalTokenCount(onChainFilter?: boolean): number; hasUnloadedIssuers(): boolean; hasUnloadedTokens(): boolean; getIssuerTokens(issuer: string): TokenData[]; setTokens(issuer: string, tokens: TokenData[] | DecodedToken[]): void; setIncrementCollectionLoadAttempts(issuer: string): void; getCollectionLoadAttempts(issuer: string): number; getSelectedTokens(): SelectedTokens; setSelectedTokens(selectedTokens: SelectedTokens): void; private prePopulateTokenLookupStore; updateTokenLookupStore(tokenKey: string, data: OnChainTokenConfig | OffChainTokenConfig, save?: boolean): void; private formatCollectionChain; private formatCollectionID; } export {};