import { PluginInterface, TimeFrame } from '@debut/types';
export type StatsOptions = {
    amount: number;
    interval: TimeFrame;
};
export interface StatsState {
    startBalance: number;
    balance: number;
    maxBalance: number;
    minBalance: number;
    maxMarginUsage: number;
    profit: number;
    long: number;
    longRight: number;
    short: number;
    shortRight: number;
    absoluteDD: number;
    relativeDD: number;
    potentialDD: number;
    maxWin: number;
    maxLoose: number;
    profitProb: number;
    looseProb: number;
    avgProfit: number;
    avgLoose: number;
    expectation: number;
    failLine: number;
    rightLine: number;
    avgFailLine: number;
    avgRightLine: number;
    ticksHandled: number;
    candlesHandled: number;
    avgProfitLifespan: number;
    avgLooseLifespan: number;
}
export interface StatsPluginAPI {
    stats: Methods;
}
export interface Methods {
    report(): StatsState;
    getState(): StatsState;
    cleanup(): void;
}
export interface StatsInterface extends PluginInterface {
    name: 'stats';
    api: Methods;
}
export declare function statsPlugin(opts: StatsOptions): StatsInterface;
