/** * One OHLCV candle (mirror of the indexer `Candle` entity). Candles exist for * ANY pool — spot or binary — so this is unprefixed, not binary-specific. * Prices are raw quote units per whole base (binary: the YES-probability * scale, same as `lastPrice`); volumes are raw. * * @category models */ export type Candle = { /** Bucket-open timestamp (unix seconds), aligned to the interval. */ bucketStart: string; /** First fill price in the bucket (raw). */ openPrice: string; /** Highest fill price in the bucket (raw). */ high: string; /** Lowest fill price in the bucket (raw). */ low: string; /** Last fill price in the bucket (raw). */ closePrice: string; /** Base/outcome-token volume in the bucket (raw). */ baseVolume: string; /** Quote/collateral volume in the bucket (raw). */ quoteVolume: string; /** Number of fills in the bucket. */ tradeCount: number; }; /** * OHLCV candles for one pool + interval (any market type), oldest-first * (ready for charting). */ export declare function getCandles(poolAddress: string, intervalSeconds: number, opts: { limit?: number; from?: number; to?: number; } | undefined, indexerUrl: string): Promise; /** * Candle bucket sizes (seconds): 1m, 5m, 15m, 1h, 4h, 1d — the intervals the * indexer rolls up. Keep in lockstep with `indexer/src/intervals.ts` * (CANDLE_INTERVALS) so {@link SomniaMarketsClient.getCandles} is only ever asked for a bucket the * indexer actually materializes. * * @category models */ export declare const CANDLE_INTERVALS: readonly [60, 300, 900, 3600, 14400, 86400];