export interface PolyfillArray extends Array { /** extended methods */ peek(callbackfn: (value: number, index: number, array: this) => void, thisArg?: any): this; /** from es5 */ concat(...items: ConcatArray[]): PolyfillArray; concat(...items: (T | ConcatArray)[]): PolyfillArray; reverse(): PolyfillArray; slice(start?: number, end?: number): PolyfillArray; splice(start: number, deleteCount?: number): PolyfillArray; splice(start: number, deleteCount: number, ...items: T[]): PolyfillArray; every(callbackfn: (value: T, index: number, array: PolyfillArray) => unknown, thisArg?: any): boolean; some(callbackfn: (value: T, index: number, array: PolyfillArray) => unknown, thisArg?: any): boolean; forEach(callbackfn: (value: T, index: number, array: PolyfillArray) => void, thisArg?: any): void; map(callbackfn: (value: T, index: number, array: PolyfillArray) => U, thisArg?: any): PolyfillArray; filter(callbackfn: (value: T, index: number, array: T[]) => value is S, thisArg?: any): PolyfillArray; filter(callbackfn: (value: T, index: number, array: T[]) => unknown, thisArg?: any): PolyfillArray; reduce(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: PolyfillArray) => T): T; reduce(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: PolyfillArray) => T, initialValue: T): T; reduce(callbackfn: (previousValue: U, currentValue: T, currentIndex: number, array: PolyfillArray) => U, initialValue: U): U; reduceRight(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: PolyfillArray) => T): T; reduceRight(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: PolyfillArray) => T, initialValue: T): T; reduceRight(callbackfn: (previousValue: U, currentValue: T, currentIndex: number, array: PolyfillArray) => U, initialValue: U): U; /** from es2005.core */ fill(value: T, start?: number, end?: number): this; copyWithin(target: number, start: number, end?: number): this; } export interface PolyfillArrayConstructor extends ArrayConstructor { /** extended methods */ /** @deprecated use from() or of() directly */ fromArray(xs: A[]): PolyfillArray; /** from es5 */ new (arrayLength?: number): PolyfillArray; new (arrayLength: number): PolyfillArray; new (...items: T[]): PolyfillArray; (arrayLength?: number): PolyfillArray; (arrayLength: number): PolyfillArray; (...items: T[]): PolyfillArray; /** from es2015.core */ from(arrayLike: ArrayLike): PolyfillArray; from(arrayLike: ArrayLike, mapfn: (v: T, k: number) => U, thisArg?: any): PolyfillArray; of(...items: T[]): PolyfillArray; } export declare let PolyfillArray: PolyfillArrayConstructor;