import type { Params } from '@feathersjs/feathers'; import type { Application } from '../../../declarations'; import { type EquityPoint, type RiskMetrics } from '../../../helpers/performance.helper'; import type { BenchmarkComparisonQuery } from './comparison.schema'; export interface BenchmarkComparisonParams extends Params { } export interface ComparisonSeries { key: string; label: string; points: EquityPoint[]; metrics: RiskMetrics; } export interface StressRegion { from: number; to: number; band: string; score: number; } export type TimelineEventKind = 'concern' | 'decision' | 'strategy' | 'trader'; export interface TimelineEvent { t: number; kind: TimelineEventKind; label: string; } export interface TradeMarker { t: number; kind: 'best' | 'worst'; pnl: number; } export interface ComparisonResult { scope: 'account' | 'trader'; start: number; end: number; series: ComparisonSeries[]; stress: StressRegion[]; events: TimelineEvent[]; tradeMarkers: TradeMarker[]; } export declare class BenchmarkComparisonService { app: Application; constructor(app: Application); find(params: BenchmarkComparisonParams): Promise; private loadTradeMarkers; private loadEvents; private loadStressRegions; private parseBenchmarks; private loadBenchmarkPrices; private loadSnapshotEquity; private loadTradesEquity; } export declare const getOptions: (app: Application) => Application;