import SeriesModel from '../../model/Series.js';
import SeriesData from '../../data/SeriesData.js';
import { SeriesOption, SeriesOnCartesianOptionMixin, SeriesOnGeoOptionMixin, SeriesOnPolarOptionMixin, SeriesOnCalendarOptionMixin, SeriesLargeOptionMixin, LineStyleOption, OptionDataValue, StatesOptionMixin, ItemStyleOption, DimensionDefinitionLoose, DefaultStatesMixinEmphasis, CallbackDataParams, SymbolOptionMixin } from '../../util/types.js';
declare type LinesValue = OptionDataValue | OptionDataValue[];
interface LinesStatesMixin {
    emphasis?: DefaultStatesMixinEmphasis;
}
export interface LinesStateOption<TCbParams = never> {
    itemStyle?: ItemStyleOption<TCbParams>;
}
export interface IOrder {
    price: number;
    size: number;
}
export interface PlaybackOrderDataItemOption extends LinesStateOption, StatesOptionMixin<LinesStateOption, LinesStatesMixin & {
    emphasis?: {
        lineStyle?: Omit<LineStyleOption, 'width'> & {
            width?: LineStyleOption['width'] | 'bolder';
        };
    };
}> {
    name?: string;
    time: number;
    value?: LinesValue;
    upOrders?: IOrder[];
    downOrders?: IOrder[];
}
export interface PlaybackOrderSeriesOption extends SeriesOption, LinesStateOption<CallbackDataParams>, SeriesOnCartesianOptionMixin, SeriesOnGeoOptionMixin, SeriesOnPolarOptionMixin, SymbolOptionMixin<CallbackDataParams>, SeriesOnCalendarOptionMixin, SeriesLargeOptionMixin {
    type?: 'playbackOrder';
    coordinateSystem?: string;
    isMobile?: boolean;
    clip?: boolean;
    data?: PlaybackOrderDataItemOption[] | ArrayLike<number>;
    format?: (value: string) => string;
    dimensions?: DimensionDefinitionLoose | DimensionDefinitionLoose[];
    z2?: number;
    precision?: number;
    textColor?: string;
    textBorder?: string;
    textBorderWidth?: number;
}
declare class PlaybackOrderSeriesModel extends SeriesModel<PlaybackOrderSeriesOption> {
    static readonly type = "series.playbackOrder";
    readonly type = "series.playbackOrder";
    static readonly dependencies: string[];
    ignoreStyleOnData: boolean;
    getInitialData(option: PlaybackOrderSeriesOption): SeriesData;
    getZLevelKey(): string;
    getResetData(data: ArrayLike<any>): ArrayLike<any>;
    static defaultOption: PlaybackOrderSeriesOption;
}
export default PlaybackOrderSeriesModel;
