import SequentialContainer from './Base/index'; import { initContainer } from "../ContainerBase/index"; import { RandomIterator } from "./Base/RandomIterator"; export declare class VectorIterator extends RandomIterator { copy(): VectorIterator; } declare class Vector extends SequentialContainer { private readonly vector; /** * @description Vector's constructor. * @param container Initialize container, must have a forEach function. * @param copy When the container is an array, you can choose to directly operate on the original object of * the array or perform a shallow copy. The default is shallow copy. */ constructor(container?: initContainer, copy?: boolean); clear(): void; begin(): VectorIterator; end(): VectorIterator; rBegin(): VectorIterator; rEnd(): VectorIterator; front(): T | undefined; back(): T | undefined; forEach(callback: (element: T, index: number) => void): void; getElementByPos(pos: number): T; eraseElementByPos(pos: number): void; eraseElementByValue(value: T): void; eraseElementByIterator(iter: VectorIterator): VectorIterator; pushBack(element: T): void; popBack(): void; setElementByPos(pos: number, element: T): void; insert(pos: number, element: T, num?: number): void; find(element: T): VectorIterator; reverse(): void; unique(): void; sort(cmp?: (x: T, y: T) => number): void; [Symbol.iterator](): Generator; } export default Vector;