import type { Static } from '@feathersjs/typebox'; import type { HookContext } from '../../declarations'; import type { SnapshotService } from './snapshot.class'; export declare const snapshotSchema: import("@feathersjs/typebox").TObject<{ _id: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; userId: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; type: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; timestamp: import("@feathersjs/typebox").TString<"date-time">; account: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; traders: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; market: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; lastResearch: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; signals: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; decision: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; triage: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; supervisorDispatchedAt: import("@feathersjs/typebox").TOptional>; createdAt: import("@feathersjs/typebox").TString<"date-time">; }>; export type Snapshot = Static; export declare const snapshotValidator: import("@feathersjs/schema").Validator; export declare const snapshotResolver: import("@feathersjs/schema").Resolver<{ _id: string | {}; userId: string | {}; type: "daily" | "intraday" | "weekly"; timestamp: string; account: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; traders: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; market: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; lastResearch?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; signals: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; decision?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; triage?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; supervisorDispatchedAt?: string | undefined; createdAt: string; }, HookContext>>; export declare const snapshotExternalResolver: import("@feathersjs/schema").Resolver<{ _id: string | {}; userId: string | {}; type: "daily" | "intraday" | "weekly"; timestamp: string; account: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; traders: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; market: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; lastResearch?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; signals: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; decision?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; triage?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; supervisorDispatchedAt?: string | undefined; createdAt: string; }, HookContext>>; export declare const snapshotDataSchema: import("@feathersjs/typebox").TOmit, import("@feathersjs/typebox").TObject<{}>]>; userId: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; type: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; timestamp: import("@feathersjs/typebox").TString<"date-time">; account: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; traders: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; market: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; lastResearch: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; signals: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; decision: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; triage: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; supervisorDispatchedAt: import("@feathersjs/typebox").TOptional>; createdAt: import("@feathersjs/typebox").TString<"date-time">; }>, ["_id"]>; export type SnapshotData = Static; export declare const snapshotDataValidator: import("@feathersjs/schema").Validator; export declare const snapshotDataResolver: import("@feathersjs/schema").Resolver<{ _id: string | {}; userId: string | {}; type: "daily" | "intraday" | "weekly"; timestamp: string; account: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; traders: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; market: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; lastResearch?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; signals: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; decision?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; triage?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; supervisorDispatchedAt?: string | undefined; createdAt: string; }, HookContext>>; export declare const snapshotPatchSchema: import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TObject<{}>]>; userId: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; type: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; timestamp: import("@feathersjs/typebox").TString<"date-time">; account: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; traders: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; market: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; lastResearch: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; signals: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; decision: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; triage: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; supervisorDispatchedAt: import("@feathersjs/typebox").TOptional>; createdAt: import("@feathersjs/typebox").TString<"date-time">; }>>; export type SnapshotPatch = Static; export declare const snapshotPatchValidator: import("@feathersjs/schema").Validator; export declare const snapshotPatchResolver: import("@feathersjs/schema").Resolver<{ _id: string | {}; userId: string | {}; type: "daily" | "intraday" | "weekly"; timestamp: string; account: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; traders: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; market: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; lastResearch?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; signals: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; decision?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; triage?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; supervisorDispatchedAt?: string | undefined; createdAt: string; }, HookContext>>; export declare const snapshotQueryProperties: import("@feathersjs/typebox").TPick, import("@feathersjs/typebox").TObject<{}>]>; userId: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; type: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; timestamp: import("@feathersjs/typebox").TString<"date-time">; account: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; traders: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; market: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; lastResearch: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; signals: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; decision: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; triage: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; supervisorDispatchedAt: import("@feathersjs/typebox").TOptional>; createdAt: import("@feathersjs/typebox").TString<"date-time">; }>, ["_id", "userId", "type", "timestamp", "account", "traders", "market", "signals", "decision", "triage", "lastResearch", "supervisorDispatchedAt", "createdAt"]>; export declare const snapshotQuerySchema: import("@feathersjs/typebox").TIntersect<[import("@feathersjs/typebox").TIntersect<[import("@feathersjs/typebox").TPartial; account: import("@feathersjs/typebox").TOptional; createdAt: import("@feathersjs/typebox").TOptional; decision: import("@feathersjs/typebox").TOptional; lastResearch: import("@feathersjs/typebox").TOptional; market: import("@feathersjs/typebox").TOptional; signals: import("@feathersjs/typebox").TOptional; supervisorDispatchedAt: import("@feathersjs/typebox").TOptional; timestamp: import("@feathersjs/typebox").TOptional; traders: import("@feathersjs/typebox").TOptional; triage: import("@feathersjs/typebox").TOptional; type: import("@feathersjs/typebox").TOptional; userId: import("@feathersjs/typebox").TOptional; }>; $select: import("@feathersjs/typebox").TUnsafe<("_id" | "account" | "createdAt" | "decision" | "lastResearch" | "market" | "signals" | "supervisorDispatchedAt" | "timestamp" | "traders" | "triage" | "type" | "userId")[]>; $and: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TObject<{}>]>; $gte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lt: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $ne: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; account: import("@feathersjs/typebox").TOptional; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>, import("@feathersjs/typebox").TPartial; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $gte: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $lt: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $lte: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $ne: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $in: import("@feathersjs/typebox").TArray; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>> | import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $nin: import("@feathersjs/typebox").TArray; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>> | import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; createdAt: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TPartial; $gte: import("@feathersjs/typebox").TString<"date-time">; $lt: import("@feathersjs/typebox").TString<"date-time">; $lte: import("@feathersjs/typebox").TString<"date-time">; $ne: import("@feathersjs/typebox").TString<"date-time">; $in: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; $nin: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; decision: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>, import("@feathersjs/typebox").TPartial; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $gte: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $lt: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $lte: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $ne: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $in: import("@feathersjs/typebox").TArray; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>> | import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $nin: import("@feathersjs/typebox").TArray; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>> | import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; lastResearch: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>, import("@feathersjs/typebox").TPartial; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $gte: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $lt: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $lte: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $ne: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $in: import("@feathersjs/typebox").TArray; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>> | import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $nin: import("@feathersjs/typebox").TArray; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>> | import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; market: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $gte: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $lt: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $lte: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $ne: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>> | import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>> | import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; signals: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TPartial; $gte: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $lt: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $lte: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $ne: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $in: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $nin: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; supervisorDispatchedAt: import("@feathersjs/typebox").TOptional>, import("@feathersjs/typebox").TPartial>; $gte: import("@feathersjs/typebox").TOptional>; $lt: import("@feathersjs/typebox").TOptional>; $lte: import("@feathersjs/typebox").TOptional>; $ne: import("@feathersjs/typebox").TOptional>; $in: import("@feathersjs/typebox").TArray>> | import("@feathersjs/typebox").TOptional>; $nin: import("@feathersjs/typebox").TArray>> | import("@feathersjs/typebox").TOptional>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; timestamp: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TPartial; $gte: import("@feathersjs/typebox").TString<"date-time">; $lt: import("@feathersjs/typebox").TString<"date-time">; $lte: import("@feathersjs/typebox").TString<"date-time">; $ne: import("@feathersjs/typebox").TString<"date-time">; $in: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; $nin: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; traders: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $gte: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $lt: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $lte: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $ne: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>> | import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>> | import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; triage: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $gte: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $lt: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $lte: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $ne: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>> | import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>> | import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; type: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $gte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $lt: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $lte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $ne: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; userId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TObject<{}>]>; $gte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lt: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $ne: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; }>>, import("@feathersjs/typebox").TObject<{ $or: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TObject<{}>]>; $gte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lt: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $ne: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; account: import("@feathersjs/typebox").TOptional; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>, import("@feathersjs/typebox").TPartial; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $gte: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $lt: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $lte: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $ne: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $in: import("@feathersjs/typebox").TArray; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>> | import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $nin: import("@feathersjs/typebox").TArray; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>> | import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; createdAt: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TPartial; $gte: import("@feathersjs/typebox").TString<"date-time">; $lt: import("@feathersjs/typebox").TString<"date-time">; $lte: import("@feathersjs/typebox").TString<"date-time">; $ne: import("@feathersjs/typebox").TString<"date-time">; $in: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; $nin: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; decision: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>, import("@feathersjs/typebox").TPartial; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $gte: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $lt: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $lte: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $ne: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $in: import("@feathersjs/typebox").TArray; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>> | import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $nin: import("@feathersjs/typebox").TArray; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>> | import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; lastResearch: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>, import("@feathersjs/typebox").TPartial; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $gte: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $lt: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $lte: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $ne: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $in: import("@feathersjs/typebox").TArray; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>> | import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $nin: import("@feathersjs/typebox").TArray; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>> | import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; market: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $gte: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $lt: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $lte: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $ne: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>> | import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>> | import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; signals: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TPartial; $gte: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $lt: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $lte: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $ne: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $in: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $nin: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; supervisorDispatchedAt: import("@feathersjs/typebox").TOptional>, import("@feathersjs/typebox").TPartial>; $gte: import("@feathersjs/typebox").TOptional>; $lt: import("@feathersjs/typebox").TOptional>; $lte: import("@feathersjs/typebox").TOptional>; $ne: import("@feathersjs/typebox").TOptional>; $in: import("@feathersjs/typebox").TArray>> | import("@feathersjs/typebox").TOptional>; $nin: import("@feathersjs/typebox").TArray>> | import("@feathersjs/typebox").TOptional>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; timestamp: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TPartial; $gte: import("@feathersjs/typebox").TString<"date-time">; $lt: import("@feathersjs/typebox").TString<"date-time">; $lte: import("@feathersjs/typebox").TString<"date-time">; $ne: import("@feathersjs/typebox").TString<"date-time">; $in: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; $nin: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; traders: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $gte: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $lt: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $lte: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $ne: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>> | import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>> | import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; triage: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $gte: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $lt: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $lte: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $ne: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>> | import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>> | import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; type: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $gte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $lt: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $lte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $ne: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; userId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TObject<{}>]>; $gte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lt: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $ne: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; }>>>; }>]>>; $or: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TObject<{}>]>; $gte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lt: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $ne: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; account: import("@feathersjs/typebox").TOptional; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>, import("@feathersjs/typebox").TPartial; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $gte: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $lt: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $lte: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $ne: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $in: import("@feathersjs/typebox").TArray; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>> | import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $nin: import("@feathersjs/typebox").TArray; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>> | import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; createdAt: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TPartial; $gte: import("@feathersjs/typebox").TString<"date-time">; $lt: import("@feathersjs/typebox").TString<"date-time">; $lte: import("@feathersjs/typebox").TString<"date-time">; $ne: import("@feathersjs/typebox").TString<"date-time">; $in: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; $nin: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; decision: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>, import("@feathersjs/typebox").TPartial; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $gte: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $lt: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $lte: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $ne: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $in: import("@feathersjs/typebox").TArray; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>> | import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $nin: import("@feathersjs/typebox").TArray; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>> | import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; lastResearch: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>, import("@feathersjs/typebox").TPartial; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $gte: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $lt: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $lte: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $ne: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $in: import("@feathersjs/typebox").TArray; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>> | import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $nin: import("@feathersjs/typebox").TArray; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>> | import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; market: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $gte: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $lt: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $lte: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $ne: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>> | import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>> | import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; signals: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TPartial; $gte: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $lt: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $lte: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $ne: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $in: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $nin: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; supervisorDispatchedAt: import("@feathersjs/typebox").TOptional>, import("@feathersjs/typebox").TPartial>; $gte: import("@feathersjs/typebox").TOptional>; $lt: import("@feathersjs/typebox").TOptional>; $lte: import("@feathersjs/typebox").TOptional>; $ne: import("@feathersjs/typebox").TOptional>; $in: import("@feathersjs/typebox").TArray>> | import("@feathersjs/typebox").TOptional>; $nin: import("@feathersjs/typebox").TArray>> | import("@feathersjs/typebox").TOptional>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; timestamp: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TPartial; $gte: import("@feathersjs/typebox").TString<"date-time">; $lt: import("@feathersjs/typebox").TString<"date-time">; $lte: import("@feathersjs/typebox").TString<"date-time">; $ne: import("@feathersjs/typebox").TString<"date-time">; $in: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; $nin: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; traders: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $gte: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $lt: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $lte: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $ne: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>> | import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>> | import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; triage: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $gte: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $lt: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $lte: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $ne: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>> | import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>> | import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; type: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $gte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $lt: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $lte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $ne: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; userId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TObject<{}>]>; $gte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lt: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $ne: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; }>>>; }>>, import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TObject<{}>]>; $gte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lt: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $ne: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; account: import("@feathersjs/typebox").TOptional; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>, import("@feathersjs/typebox").TPartial; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $gte: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $lt: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $lte: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $ne: import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $in: import("@feathersjs/typebox").TArray; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>> | import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; $nin: import("@feathersjs/typebox").TArray; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>> | import("@feathersjs/typebox").TObject<{ plan: import("@feathersjs/typebox").TString; profile: import("@feathersjs/typebox").TOptional>; traderCount: import("@feathersjs/typebox").TInteger; runningTraderCount: import("@feathersjs/typebox").TInteger; totalBalanceFiat: import("@feathersjs/typebox").TNumber; totalPnlFiat: import("@feathersjs/typebox").TNumber; combinedDrawdownPct: import("@feathersjs/typebox").TNumber; }>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; createdAt: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TPartial; $gte: import("@feathersjs/typebox").TString<"date-time">; $lt: import("@feathersjs/typebox").TString<"date-time">; $lte: import("@feathersjs/typebox").TString<"date-time">; $ne: import("@feathersjs/typebox").TString<"date-time">; $in: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; $nin: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; decision: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>, import("@feathersjs/typebox").TPartial; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $gte: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $lt: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $lte: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $ne: import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $in: import("@feathersjs/typebox").TArray; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>> | import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; $nin: import("@feathersjs/typebox").TArray; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>> | import("@feathersjs/typebox").TOptional; reasoning: import("@feathersjs/typebox").TString; confidence: import("@feathersjs/typebox").TNumber; params: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TAny>>; message: import("@feathersjs/typebox").TString; decidedAt: import("@feathersjs/typebox").TString<"date-time">; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; lastResearch: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>, import("@feathersjs/typebox").TPartial; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $gte: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $lt: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $lte: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $ne: import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $in: import("@feathersjs/typebox").TArray; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>> | import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; $nin: import("@feathersjs/typebox").TArray; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>> | import("@feathersjs/typebox").TOptional; prompt: import("@feathersjs/typebox").TString; status: import("@feathersjs/typebox").TString; completedAt: import("@feathersjs/typebox").TOptional>; bestStrategy: import("@feathersjs/typebox").TOptional>; summary: import("@feathersjs/typebox").TOptional>; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; market: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $gte: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $lt: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $lte: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $ne: import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>> | import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>> | import("@feathersjs/typebox").TObject<{ regime: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"bull">, import("@feathersjs/typebox").TLiteral<"bear">, import("@feathersjs/typebox").TLiteral<"sideways">, import("@feathersjs/typebox").TLiteral<"unknown">]>; fearAndGreed: import("@feathersjs/typebox").TObject<{ value: import("@feathersjs/typebox").TNumber; classification: import("@feathersjs/typebox").TString; }>; global: import("@feathersjs/typebox").TObject<{ marketCap: import("@feathersjs/typebox").TNumber; volume: import("@feathersjs/typebox").TNumber; btcDominance: import("@feathersjs/typebox").TNumber; marketCapChange: import("@feathersjs/typebox").TNumber; }>; }>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; signals: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TPartial; $gte: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $lt: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $lte: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $ne: import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $in: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; $nin: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TObject<{ highDrawdown: import("@feathersjs/typebox").TBoolean; consecutiveLosses: import("@feathersjs/typebox").TBoolean; underperforming: import("@feathersjs/typebox").TBoolean; locksActive: import("@feathersjs/typebox").TBoolean; unhealthyTraders: import("@feathersjs/typebox").TBoolean; capitalAtRisk: import("@feathersjs/typebox").TBoolean; }>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; supervisorDispatchedAt: import("@feathersjs/typebox").TOptional>, import("@feathersjs/typebox").TPartial>; $gte: import("@feathersjs/typebox").TOptional>; $lt: import("@feathersjs/typebox").TOptional>; $lte: import("@feathersjs/typebox").TOptional>; $ne: import("@feathersjs/typebox").TOptional>; $in: import("@feathersjs/typebox").TArray>> | import("@feathersjs/typebox").TOptional>; $nin: import("@feathersjs/typebox").TArray>> | import("@feathersjs/typebox").TOptional>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; timestamp: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TPartial; $gte: import("@feathersjs/typebox").TString<"date-time">; $lt: import("@feathersjs/typebox").TString<"date-time">; $lte: import("@feathersjs/typebox").TString<"date-time">; $ne: import("@feathersjs/typebox").TString<"date-time">; $in: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; $nin: import("@feathersjs/typebox").TArray> | import("@feathersjs/typebox").TString<"date-time">; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; traders: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $gte: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $lt: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $lte: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $ne: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>> | import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>> | import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>; traderName: import("@feathersjs/typebox").TString; strategyId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; strategyName: import("@feathersjs/typebox").TOptional>; exchange: import("@feathersjs/typebox").TString; stakeCurrency: import("@feathersjs/typebox").TString; dryRun: import("@feathersjs/typebox").TBoolean; running: import("@feathersjs/typebox").TBoolean; healthy: import("@feathersjs/typebox").TOptional; pnl: import("@feathersjs/typebox").TObject<{ closedCoin: import("@feathersjs/typebox").TNumber; closedPercent: import("@feathersjs/typebox").TNumber; closedFiat: import("@feathersjs/typebox").TNumber; allCoin: import("@feathersjs/typebox").TNumber; allPercent: import("@feathersjs/typebox").TNumber; allFiat: import("@feathersjs/typebox").TNumber; }>; winLoss: import("@feathersjs/typebox").TObject<{ totalTrades: import("@feathersjs/typebox").TInteger; closedTrades: import("@feathersjs/typebox").TInteger; winningTrades: import("@feathersjs/typebox").TInteger; losingTrades: import("@feathersjs/typebox").TInteger; winRate: import("@feathersjs/typebox").TNumber; consecutiveLosses: import("@feathersjs/typebox").TInteger; consecutiveWins: import("@feathersjs/typebox").TInteger; }>; drawdown: import("@feathersjs/typebox").TObject<{ maxDrawdown: import("@feathersjs/typebox").TNumber; currentDrawdownPct: import("@feathersjs/typebox").TNumber; profitFactor: import("@feathersjs/typebox").TNumber; }>; balance: import("@feathersjs/typebox").TObject<{ total: import("@feathersjs/typebox").TNumber; totalBot: import("@feathersjs/typebox").TNumber; startingCapital: import("@feathersjs/typebox").TNumber; startingCapitalPct: import("@feathersjs/typebox").TNumber; valueFiat: import("@feathersjs/typebox").TNumber; }>; openTrades: import("@feathersjs/typebox").TObject<{ count: import("@feathersjs/typebox").TInteger; totalStakeExposed: import("@feathersjs/typebox").TNumber; unrealizedPnl: import("@feathersjs/typebox").TNumber; pairs: import("@feathersjs/typebox").TArray>; holdings: import("@feathersjs/typebox").TArray; stakeAmount: import("@feathersjs/typebox").TNumber; amount: import("@feathersjs/typebox").TNumber; openRate: import("@feathersjs/typebox").TNumber; currentRate: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; profitPct: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; tradeId: import("@feathersjs/typebox").TOptional; }>>; }>; locks: import("@feathersjs/typebox").TObject<{ activeLockCount: import("@feathersjs/typebox").TInteger; lockedPairs: import("@feathersjs/typebox").TArray; reason: import("@feathersjs/typebox").TString; until: import("@feathersjs/typebox").TString; }>>; }>; dailyPnl: import("@feathersjs/typebox").TArray; absProfit: import("@feathersjs/typebox").TNumber; relProfit: import("@feathersjs/typebox").TNumber; tradeCount: import("@feathersjs/typebox").TInteger; }>>; recentClosedTrades: import("@feathersjs/typebox").TOptional; profitPct: import("@feathersjs/typebox").TNumber; profitAbs: import("@feathersjs/typebox").TNumber; openDate: import("@feathersjs/typebox").TString; closeDate: import("@feathersjs/typebox").TString; exitReason: import("@feathersjs/typebox").TOptional>; }>>>; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; triage: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $gte: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $lt: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $lte: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $ne: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>> | import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>> | import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"low">, import("@feathersjs/typebox").TLiteral<"medium">, import("@feathersjs/typebox").TLiteral<"high">, import("@feathersjs/typebox").TLiteral<"critical">]>; triggers: import("@feathersjs/typebox").TArray; signal: import("@feathersjs/typebox").TOptional>; traderId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>>; detail: import("@feathersjs/typebox").TString; severity: import("@feathersjs/typebox").TString; }>>; summary: import("@feathersjs/typebox").TString; }>>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; type: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $gte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $lt: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $lte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $ne: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TLiteral<"daily">, import("@feathersjs/typebox").TLiteral<"weekly">, import("@feathersjs/typebox").TLiteral<"intraday">]>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; userId: import("@feathersjs/typebox").TOptional, import("@feathersjs/typebox").TObject<{}>]>, import("@feathersjs/typebox").TPartial, import("@feathersjs/typebox").TObject<{}>]>; $gte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lt: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $lte: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $ne: import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $in: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; $nin: import("@feathersjs/typebox").TArray, import("@feathersjs/typebox").TObject<{}>]>> | import("@feathersjs/typebox").TUnion<[import("@feathersjs/typebox").TString, import("@feathersjs/typebox").TObject<{}>]>; }>, import("@feathersjs/typebox").TObject<{ [key: string]: import("@feathersjs/typebox").TSchema; } | undefined>]>>]>>; }>>]>, import("@feathersjs/typebox").TObject<{}>]>; export type SnapshotQuery = Static; export declare const snapshotQueryValidator: import("@feathersjs/schema").Validator; export declare const snapshotQueryResolver: import("@feathersjs/schema").Resolver | {} | undefined; account?: Partial<{ $gt: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $gte: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $lt: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $lte: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $ne: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $in: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }[] | { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $nin: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }[] | { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; } & {}> | { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; } | undefined; createdAt?: string | Partial<{ $gt: string; $gte: string; $lt: string; $lte: string; $ne: string; $in: string | string[]; $nin: string | string[]; } & {}> | undefined; decision?: Partial<{ $gt?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $gte?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $lt?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $lte?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $ne?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $in: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }[] | { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }; $nin: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }[] | { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }; } & {}> | { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; lastResearch?: Partial<{ $gt?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $gte?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $lt?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $lte?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $ne?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $in: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }[] | { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }; $nin: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }[] | { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }; } & {}> | { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; market?: Partial<{ $gt: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $gte: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $lt: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $lte: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $ne: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $in: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }[] | { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $nin: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }[] | { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; } & {}> | { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; } | undefined; signals?: Partial<{ $gt: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $gte: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $lt: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $lte: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $ne: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $in: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }[] | { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $nin: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }[] | { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; } & {}> | { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; } | undefined; supervisorDispatchedAt?: string | Partial<{ $gt?: string | undefined; $gte?: string | undefined; $lt?: string | undefined; $lte?: string | undefined; $ne?: string | undefined; $in: string | string[]; $nin: string | string[]; } & {}> | undefined; timestamp?: string | Partial<{ $gt: string; $gte: string; $lt: string; $lte: string; $ne: string; $in: string | string[]; $nin: string | string[]; } & {}> | undefined; traders?: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[] | Partial<{ $gt: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $gte: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $lt: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $lte: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $ne: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $in: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[][] | { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $nin: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[][] | { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; } & {}> | undefined; triage?: Partial<{ $gt?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $gte?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $lt?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $lte?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $ne?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $in: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }[] | { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }; $nin: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }[] | { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }; } & {}> | { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; type?: "daily" | "intraday" | "weekly" | Partial<{ $gt: "daily" | "intraday" | "weekly"; $gte: "daily" | "intraday" | "weekly"; $lt: "daily" | "intraday" | "weekly"; $lte: "daily" | "intraday" | "weekly"; $ne: "daily" | "intraday" | "weekly"; $in: "daily" | "intraday" | "weekly" | ("daily" | "intraday" | "weekly")[]; $nin: "daily" | "intraday" | "weekly" | ("daily" | "intraday" | "weekly")[]; } & {}> | undefined; userId?: string | Partial<{ $gt: string | {}; $gte: string | {}; $lt: string | {}; $lte: string | {}; $ne: string | {}; $in: string | (string | {})[] | {}; $nin: string | (string | {})[] | {}; } & {}> | {} | undefined; } | { $or: { _id?: string | Partial<{ $gt: string | {}; $gte: string | {}; $lt: string | {}; $lte: string | {}; $ne: string | {}; $in: string | (string | {})[] | {}; $nin: string | (string | {})[] | {}; } & {}> | {} | undefined; account?: Partial<{ $gt: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $gte: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $lt: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $lte: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $ne: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $in: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }[] | { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $nin: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }[] | { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; } & {}> | { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; } | undefined; createdAt?: string | Partial<{ $gt: string; $gte: string; $lt: string; $lte: string; $ne: string; $in: string | string[]; $nin: string | string[]; } & {}> | undefined; decision?: Partial<{ $gt?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $gte?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $lt?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $lte?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $ne?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $in: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }[] | { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }; $nin: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }[] | { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }; } & {}> | { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; lastResearch?: Partial<{ $gt?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $gte?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $lt?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $lte?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $ne?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $in: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }[] | { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }; $nin: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }[] | { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }; } & {}> | { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; market?: Partial<{ $gt: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $gte: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $lt: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $lte: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $ne: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $in: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }[] | { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $nin: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }[] | { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; } & {}> | { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; } | undefined; signals?: Partial<{ $gt: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $gte: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $lt: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $lte: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $ne: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $in: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }[] | { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $nin: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }[] | { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; } & {}> | { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; } | undefined; supervisorDispatchedAt?: string | Partial<{ $gt?: string | undefined; $gte?: string | undefined; $lt?: string | undefined; $lte?: string | undefined; $ne?: string | undefined; $in: string | string[]; $nin: string | string[]; } & {}> | undefined; timestamp?: string | Partial<{ $gt: string; $gte: string; $lt: string; $lte: string; $ne: string; $in: string | string[]; $nin: string | string[]; } & {}> | undefined; traders?: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[] | Partial<{ $gt: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $gte: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $lt: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $lte: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $ne: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $in: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[][] | { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $nin: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[][] | { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; } & {}> | undefined; triage?: Partial<{ $gt?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $gte?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $lt?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $lte?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $ne?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $in: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }[] | { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }; $nin: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }[] | { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }; } & {}> | { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; type?: "daily" | "intraday" | "weekly" | Partial<{ $gt: "daily" | "intraday" | "weekly"; $gte: "daily" | "intraday" | "weekly"; $lt: "daily" | "intraday" | "weekly"; $lte: "daily" | "intraday" | "weekly"; $ne: "daily" | "intraday" | "weekly"; $in: "daily" | "intraday" | "weekly" | ("daily" | "intraday" | "weekly")[]; $nin: "daily" | "intraday" | "weekly" | ("daily" | "intraday" | "weekly")[]; } & {}> | undefined; userId?: string | Partial<{ $gt: string | {}; $gte: string | {}; $lt: string | {}; $lte: string | {}; $ne: string | {}; $in: string | (string | {})[] | {}; $nin: string | (string | {})[] | {}; } & {}> | {} | undefined; }[]; })[]; $or: { _id?: string | Partial<{ $gt: string | {}; $gte: string | {}; $lt: string | {}; $lte: string | {}; $ne: string | {}; $in: string | (string | {})[] | {}; $nin: string | (string | {})[] | {}; } & {}> | {} | undefined; account?: Partial<{ $gt: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $gte: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $lt: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $lte: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $ne: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $in: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }[] | { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $nin: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }[] | { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; } & {}> | { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; } | undefined; createdAt?: string | Partial<{ $gt: string; $gte: string; $lt: string; $lte: string; $ne: string; $in: string | string[]; $nin: string | string[]; } & {}> | undefined; decision?: Partial<{ $gt?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $gte?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $lt?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $lte?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $ne?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $in: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }[] | { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }; $nin: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }[] | { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }; } & {}> | { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; lastResearch?: Partial<{ $gt?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $gte?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $lt?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $lte?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $ne?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $in: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }[] | { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }; $nin: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }[] | { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }; } & {}> | { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; market?: Partial<{ $gt: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $gte: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $lt: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $lte: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $ne: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $in: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }[] | { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $nin: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }[] | { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; } & {}> | { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; } | undefined; signals?: Partial<{ $gt: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $gte: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $lt: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $lte: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $ne: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $in: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }[] | { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $nin: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }[] | { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; } & {}> | { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; } | undefined; supervisorDispatchedAt?: string | Partial<{ $gt?: string | undefined; $gte?: string | undefined; $lt?: string | undefined; $lte?: string | undefined; $ne?: string | undefined; $in: string | string[]; $nin: string | string[]; } & {}> | undefined; timestamp?: string | Partial<{ $gt: string; $gte: string; $lt: string; $lte: string; $ne: string; $in: string | string[]; $nin: string | string[]; } & {}> | undefined; traders?: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[] | Partial<{ $gt: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $gte: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $lt: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $lte: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $ne: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $in: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[][] | { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $nin: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[][] | { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; } & {}> | undefined; triage?: Partial<{ $gt?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $gte?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $lt?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $lte?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $ne?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $in: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }[] | { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }; $nin: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }[] | { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }; } & {}> | { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; type?: "daily" | "intraday" | "weekly" | Partial<{ $gt: "daily" | "intraday" | "weekly"; $gte: "daily" | "intraday" | "weekly"; $lt: "daily" | "intraday" | "weekly"; $lte: "daily" | "intraday" | "weekly"; $ne: "daily" | "intraday" | "weekly"; $in: "daily" | "intraday" | "weekly" | ("daily" | "intraday" | "weekly")[]; $nin: "daily" | "intraday" | "weekly" | ("daily" | "intraday" | "weekly")[]; } & {}> | undefined; userId?: string | Partial<{ $gt: string | {}; $gte: string | {}; $lt: string | {}; $lte: string | {}; $ne: string | {}; $in: string | (string | {})[] | {}; $nin: string | (string | {})[] | {}; } & {}> | {} | undefined; }[]; }> & { _id?: string | Partial<{ $gt: string | {}; $gte: string | {}; $lt: string | {}; $lte: string | {}; $ne: string | {}; $in: string | (string | {})[] | {}; $nin: string | (string | {})[] | {}; } & {}> | {} | undefined; account?: Partial<{ $gt: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $gte: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $lt: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $lte: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $ne: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $in: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }[] | { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; $nin: { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }[] | { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; }; } & {}> | { plan: string; profile?: string | undefined; traderCount: number; runningTraderCount: number; totalBalanceFiat: number; totalPnlFiat: number; combinedDrawdownPct: number; } | undefined; createdAt?: string | Partial<{ $gt: string; $gte: string; $lt: string; $lte: string; $ne: string; $in: string | string[]; $nin: string | string[]; } & {}> | undefined; decision?: Partial<{ $gt?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $gte?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $lt?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $lte?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $ne?: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; $in: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }[] | { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }; $nin: { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }[] | { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; }; } & {}> | { action: string; reasoning: string; confidence: number; params?: Record | undefined; message: string; decidedAt: string; } | undefined; lastResearch?: Partial<{ $gt?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $gte?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $lt?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $lte?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $ne?: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; $in: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }[] | { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }; $nin: { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }[] | { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; }; } & {}> | { researchId: string; prompt: string; status: string; completedAt?: string | undefined; bestStrategy?: string | undefined; summary?: string | undefined; } | undefined; market?: Partial<{ $gt: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $gte: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $lt: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $lte: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $ne: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $in: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }[] | { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; $nin: { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }[] | { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; }; } & {}> | { regime: "bear" | "bull" | "sideways" | "unknown"; fearAndGreed: { value: number; classification: string; }; global: { marketCap: number; volume: number; btcDominance: number; marketCapChange: number; }; } | undefined; signals?: Partial<{ $gt: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $gte: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $lt: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $lte: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $ne: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $in: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }[] | { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; $nin: { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }[] | { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; }; } & {}> | { highDrawdown: boolean; consecutiveLosses: boolean; underperforming: boolean; locksActive: boolean; unhealthyTraders: boolean; capitalAtRisk: boolean; } | undefined; supervisorDispatchedAt?: string | Partial<{ $gt?: string | undefined; $gte?: string | undefined; $lt?: string | undefined; $lte?: string | undefined; $ne?: string | undefined; $in: string | string[]; $nin: string | string[]; } & {}> | undefined; timestamp?: string | Partial<{ $gt: string; $gte: string; $lt: string; $lte: string; $ne: string; $in: string | string[]; $nin: string | string[]; } & {}> | undefined; traders?: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[] | Partial<{ $gt: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $gte: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $lt: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $lte: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $ne: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $in: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[][] | { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; $nin: { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[][] | { traderId: string | {}; traderName: string; strategyId?: string | {} | undefined; strategyName?: string | undefined; exchange: string; stakeCurrency: string; dryRun: boolean; running: boolean; healthy?: boolean | undefined; pnl: { closedCoin: number; closedPercent: number; closedFiat: number; allCoin: number; allPercent: number; allFiat: number; }; winLoss: { totalTrades: number; closedTrades: number; winningTrades: number; losingTrades: number; winRate: number; consecutiveLosses: number; consecutiveWins: number; }; drawdown: { maxDrawdown: number; currentDrawdownPct: number; profitFactor: number; }; balance: { total: number; totalBot: number; startingCapital: number; startingCapitalPct: number; valueFiat: number; }; openTrades: { count: number; totalStakeExposed: number; unrealizedPnl: number; pairs: string[]; holdings: { pair: string; stakeAmount: number; amount: number; openRate: number; currentRate: number; profitAbs: number; profitPct: number; openDate: string; tradeId?: number | undefined; }[]; }; locks: { activeLockCount: number; lockedPairs: { pair: string; reason: string; until: string; }[]; }; dailyPnl: { date: string; absProfit: number; relProfit: number; tradeCount: number; }[]; recentClosedTrades?: { pair: string; profitPct: number; profitAbs: number; openDate: string; closeDate: string; exitReason?: string | undefined; }[] | undefined; }[]; } & {}> | undefined; triage?: Partial<{ $gt?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $gte?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $lt?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $lte?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $ne?: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; $in: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }[] | { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }; $nin: { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }[] | { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; }; } & {}> | { shouldTrigger: boolean; severity: "critical" | "high" | "low" | "medium" | "none"; triggers: { type: string; signal?: string | undefined; traderId?: string | {} | undefined; detail: string; severity: string; }[]; summary: string; } | undefined; type?: "daily" | "intraday" | "weekly" | Partial<{ $gt: "daily" | "intraday" | "weekly"; $gte: "daily" | "intraday" | "weekly"; $lt: "daily" | "intraday" | "weekly"; $lte: "daily" | "intraday" | "weekly"; $ne: "daily" | "intraday" | "weekly"; $in: "daily" | "intraday" | "weekly" | ("daily" | "intraday" | "weekly")[]; $nin: "daily" | "intraday" | "weekly" | ("daily" | "intraday" | "weekly")[]; } & {}> | undefined; userId?: string | Partial<{ $gt: string | {}; $gte: string | {}; $lt: string | {}; $lte: string | {}; $ne: string | {}; $in: string | (string | {})[] | {}; $nin: string | (string | {})[] | {}; } & {}> | {} | undefined; } & {}, HookContext>>;