declare class PineArrayObject {
    array: any;
    constructor(array: any);
}
/**
 * This class implements an array port of PineScript's array functions.
 */
export declare class PineArray {
    private context;
    private _cache;
    constructor(context: any);
    param(source: any, index?: number): any;
    /**
     * This function simulates PineScript's array.get() function
     * @param id - the array object to get the value from
     * @param index - the index of the value to get
     * @returns the value at the given index
     */
    get(id: PineArrayObject, index: number): any;
    set(id: PineArrayObject, index: number, value: any): void;
    push(id: PineArrayObject, value: any): void;
    sum(id: PineArrayObject): number;
    avg(id: PineArrayObject): number;
    min(id: PineArrayObject, nth?: number): number;
    max(id: PineArrayObject, nth?: number): number;
    size(id: PineArrayObject): number;
    new_bool(size: number, initial_value?: boolean): PineArrayObject;
    new_float(size: number, initial_value?: number): PineArrayObject;
    new_int(size: number, initial_value?: number): PineArrayObject;
    new_string(size: number, initial_value?: string): PineArrayObject;
    new<T>(size: number, initial_value: T): PineArrayObject;
    slice(id: PineArrayObject, start: number, end?: number): PineArrayObject;
    reverse(id: PineArrayObject): void;
    includes(id: PineArrayObject, value: any): boolean;
    indexof(id: PineArrayObject, value: any): number;
    lastindexof(id: PineArrayObject, value: any): number;
    stdev(id: PineArrayObject, biased?: boolean): number;
    variance(id: PineArrayObject, biased?: boolean): number;
    covariance(arr1: PineArrayObject, arr2: PineArrayObject, biased?: boolean): number;
    first(id: PineArrayObject): any;
    last(id: PineArrayObject): any;
    clear(id: PineArrayObject): void;
    join(id: PineArrayObject, separator?: string): string;
    /** Array Manipulation Functions */
    abs(id: PineArrayObject): PineArrayObject;
    concat(id: PineArrayObject, other: PineArrayObject): PineArrayObject;
    copy(id: PineArrayObject): PineArrayObject;
    every(id: PineArrayObject, callback: (val: any) => boolean): boolean;
    fill(id: PineArrayObject, value: any, start?: number, end?: number): void;
    from(source: any[]): PineArrayObject;
    insert(id: PineArrayObject, index: number, value: any): void;
    pop(id: PineArrayObject): any;
    range(id: PineArrayObject): number;
    remove(id: PineArrayObject, index: number): any;
    shift(id: PineArrayObject): any;
    sort(id: PineArrayObject, order?: 'asc' | 'desc'): void;
    sort_indices(id: PineArrayObject, comparator?: (a: any, b: any) => number): PineArrayObject;
    standardize(id: PineArrayObject): PineArrayObject;
    unshift(id: PineArrayObject, value: any): void;
    some(id: PineArrayObject, callback: (val: any) => boolean): boolean;
}
export {};
