import { Variable } from 'pddl-workspace';
export declare class FunctionValues {
    variable: Variable;
    values: number[][];
    private legend;
    constructor(variable: Variable);
    addValue(time: number, value: number): void;
    lastTime(): number;
    getValueAtIndex(index: number): number;
    getTimeAtIndex(index: number): number;
    getValue(time: number): number;
    getLegend(): string;
}
export declare class StateValues {
    time: number;
    private values;
    constructor(time: number);
    setValue(variable: Variable, value: number): StateValues;
    getValue(variable: Variable): number;
    toNumbers(variables: Variable[]): number[];
}
/**
 * Structure that holds values for multiple functions
 */
export declare class FunctionsValues {
    readonly liftedVariable: Variable;
    readonly values: number[][];
    readonly functions: Variable[];
    legend: string[];
    constructor(liftedVariable: Variable, values: number[][], functions: Variable[]);
    isConstant(): boolean;
}
export declare class PlanTimeSeriesParser {
    readonly functions: Variable[];
    private readonly functionValues;
    private readonly warnings;
    static readonly TIME_DELTA = 1e-10;
    constructor(functions: Variable[], timeSeriesCsv: string, adjustDuplicatedTimeStamps?: boolean);
    findMatchingFunction(line: string, functions: Variable[]): Variable | undefined;
    private addFunctionValues;
    getFunctionValues(variable: Variable): FunctionValues | undefined;
    getGroundedFunctionsValues(liftedVariable: Variable): FunctionValues[];
    getFunctionData(liftedVariable: Variable): FunctionsValues;
    static join(previousValues: StateValues[], currentValues: FunctionValues): StateValues[];
}
