import type { SeriesData, FrameData, Axis, Extra } from './types';
declare type NDArray = any[] | any[][];
/** Base data structure */
export default abstract class BaseFrame {
    axes: [Axis[]] | [Axis[], Axis[]];
    data: NDArray;
    colData?: NDArray;
    constructor(data: SeriesData | FrameData, extra?: Extra);
    abstract get shape(): [number] | [number, number];
    get indexes(): Axis[];
    get columns(): Axis[];
    private getAxis;
    /**
     * Set axis. Only the 0 and 1 are currently supported.
     * @param axis
     * @param labels
     */
    setAxis(axis: number, values: Axis[]): void;
    /** get value functions */
    /**
     * Get data by row location and column location.
     * @param rowLoc
     * @param colLoc
     */
    abstract get(rowLoc: Axis | Axis[] | string, colLoc?: Axis | Axis[] | string): BaseFrame;
    /**
     * Get data by row location and column location using integer index.
     * @param rowLoc
     * @param colLoc
     */
    abstract getByIndex(rowLoc: number | number[] | string, colLoc?: number | number[] | string): BaseFrame;
}
export {};
