import type { GeoJsonDataType } from './types';
import { DataPoint } from './DataPoint';
import { DataSeries } from './DataSeries';
import { DataPrimitive, DataType, IDataSeries, TypedValue } from './DataPrimitive';
import { ColumnVal } from './DataFrame';
/**
 * DataSeriesLite class and associated DataSeries selectors
 * @implements {DataPrimitive}
 */
export declare class DataSeriesLite<T extends DataType = DataType> extends DataSeries implements DataPrimitive<T>, IDataSeries<T> {
    get points(): DataPoint<T>[];
    internalPoints: DataPoint<T>[];
    private values;
    /**
     *
     * @param {string} type user explicitly sets the data type
     * @param {string} field or column name
     * @param {ColumnVal} the raw values
     */
    constructor(values: ColumnVal[], type: string, field: string);
    /**
     * Return first dataPoint in series.
     * @public
     * @returns {DataPoint}
     */
    firstPoint(): DataPoint<T>;
    /**
     * Return last dataPoint in series.
     * @public
     * @returns {DataPoint}
     */
    lastPoint(): DataPoint<T>;
    /**
     * Finds dataPoint(s) in DataSeries by index(es).
     * @public
     * @param {...number} indexes
     * @returns {DataSeries}
     */
    pointsByIndexes(...indexes: number[]): DataSeries<T>;
    /**
     * Finds and returns the individual dataPoint at the given index.
     * @public
     * @param {number} index
     * @returns {DataPoint}
     */
    pointByIndex(indexIn: number): DataPoint<T>;
    /**
     * Finds the delta between the last point and point at the given index.
     * A negative index can be used, indicating an offset from the end of the sequence.
     * @public
     * @param {number} index
     * @returns {DataPoint}
     */
    delta(index: number): DataPoint<T>;
    /**
     * Sets all the values in the Data Series to a static TypedValue.
     * @param {TypedValue} v
     */
    setValue(v: TypedValue<T>): void;
    /**
     * Gets all the values + their type in the Data Series.
     * @returns {TypedValue[]}
     */
    getValue(): TypedValue<T>[];
    /**
     * Gets all the values (only) in the Data Series.
     * @returns {array}
     */
    getRawValue(): (string | number | GeoJsonDataType)[];
    private createDataPointFromValueAtIndex;
}
