import { BaseVector, GenericVector } from './GenericVector';
import { Multiname } from '../abc/lazy/Multiname';
import { AXObject } from '../run/AXObject';
/**
 * TypedArray Vector Template
 *
 * If you make any changes to this code you'll need to regenerate uint32Vector.ts &
 * float64Vector.ts. We duplicate all the code for vectors because we want to keep things
 * monomorphic as much as possible.
 *
 * NOTE: Not all of the AS3 methods need to be implemented natively, some are self-hosted in AS3
 * code. For better performance we should probably implement them all natively (in JS that is)
 * unless our compiler is good enough.
 */
export declare class Int32Vector extends BaseVector {
    static axClass: typeof Int32Vector;
    static EXTRA_CAPACITY: number;
    static INITIAL_CAPACITY: number;
    static DEFAULT_VALUE: number;
    static DESCENDING: number;
    static UNIQUESORT: number;
    static RETURNINDEXEDARRAY: number;
    static classInitializer(): void;
    private _fixed;
    private _buffer;
    private _length;
    private _offset;
    constructor(length?: number, fixed?: boolean);
    static axApply(_: AXObject, args: any[]): any;
    internalToString(): string;
    toString(): string;
    toLocaleString(): string;
    _view(): Int32Array;
    _ensureCapacity(length: any): void;
    concat(): Int32Vector;
    /**
   * Executes a |callback| function with three arguments: element, index, the vector itself as
   * well as passing the |thisObject| as |this| for each of the elements in the vector. If any of
   * the callbacks return |false| the function terminates, otherwise it returns |true|.
   */
    every(callback: any, thisObject: any): boolean;
    /**
   * Filters the elements for which the |callback| method returns |true|. The |callback| function
   * is called with three arguments: element, index, the vector itself as well as passing the
   * |thisObject| as |this| for each of the elements in the vector.
   */
    filter(callback: any, thisObject: any): Int32Vector;
    map(callback: any, thisObject: any): GenericVector;
    some(callback: any, thisObject: any): boolean;
    forEach(callback: any, thisObject: any): void;
    join(separator?: string): string;
    indexOf(searchElement: any, fromIndex?: number): number;
    lastIndexOf(searchElement: any, fromIndex?: number): number;
    push(arg1?: any, arg2?: any, arg3?: any, arg4?: any, arg5?: any, arg6?: any, arg7?: any, arg8?: any): void;
    pop(): number;
    reverse(): this;
    sort(sortBehavior?: any): this;
    shift(): number;
    unshift(): void;
    slice(start?: number, end?: number): Int32Vector;
    splice(start: number, deleteCount_: number): Int32Vector;
    _slide(distance: any): void;
    get length(): number;
    set length(value: number);
    set fixed(f: boolean);
    get fixed(): boolean;
    _checkFixed(): void;
    axGetNumericProperty(nm: number): number;
    axSetNumericProperty(nm: number, v: any): void;
    axHasPropertyInternal(mn: Multiname): boolean;
    axNextValue(index: number): any;
    axNextNameIndex(index: number): number;
}
//# sourceMappingURL=int32Vector.d.ts.map