import { ExternalChain } from "../../types/bridge/external-chain.js"; import { type BridgeToken } from "../../types/bridge/bridge-token.js"; import { type StarkZapLogger } from "../../logger/index.js"; export type BridgeTokenApiEnv = "mainnet" | "testnet"; export interface BridgeTokenQuery { env?: BridgeTokenApiEnv; chain?: ExternalChain; } export interface BridgeTokenRepositoryOptions { apiUrl?: string; cacheTtlMs?: number; fetchFn?: typeof fetch; now?: () => number; logger?: StarkZapLogger; } export declare const STARKGATE_TOKENS_API_URL = "https://starkgate.starknet.io/tokens/api/tokens"; export declare const BRIDGE_TOKEN_CACHE_TTL_MS: number; export declare class BridgeTokenRepository { private readonly apiUrl; private readonly cacheTtlMs; private readonly fetchFn; private readonly now; private readonly logger; private readonly cache; private readonly inflight; constructor(options?: BridgeTokenRepositoryOptions); clearCache(): void; getTokens(query?: BridgeTokenQuery): Promise; private fetchAndCache; } //# sourceMappingURL=repository.d.ts.map