import { type Static } from "@sinclair/typebox"; import type { SmMarket } from "../types.js"; declare const smFlipConfigSchema: import("@sinclair/typebox").TObject<{ minConviction: import("@sinclair/typebox").TOptional; }>; export type SmFlipConfig = Static; export interface SmFlipState { /** Total number of completed scans. */ scans: number; /** Total number of flips detected across all scans. */ totalFlips: number; } /** * Scores smart-money conviction for a flip event. * * Based on Fox's sm-flip-check.py conviction algorithm: * - pctOfTopTradersGain contribution (0-3 points) * - traderCount concentration (0-3 points) * * Returns a score from 0 to 6. Fox uses minConviction=4 as default threshold. */ export declare function scoreConviction(sm: SmMarket): number; /** * Detects whether a smart-money direction flips against a position direction. */ export declare function isFlipped(positionDirection: string, smDirection: string): boolean; /** * Creates the SM Flip scanner. * * Monitors open positions against the smart-money leaderboard and detects * when smart-money conviction reverses direction against a held position. * Emits high-priority FLIP_NOW signals that should trigger immediate * position closure. * * Inputs: * - smData: smart-money leaderboard from `leaderboard_get_markets` * - activePositions: current positions from `strategy_get_clearinghouse_state` */ export declare function smFlipScanner(): import("../index.js").Scanner<{ minConviction?: number | undefined; }, SmFlipState>; export {}; //# sourceMappingURL=sm-flip.d.ts.map